CUDA内存不足。尝试分配14.00 MiB(GPU 0;4.00 GiB总容量;已分配2 GiB;6.20 MiB空闲;PyTorch在总计中保留2Gb)

CUDA内存不足。尝试分配14.00 MiB(GPU 0;4.00 GiB总容量;已分配2 GiB;6.20 MiB空闲;PyTorch在总计中保留2Gb),pytorch,fast-ai,Pytorch,Fast Ai,我正在尝试从fastai运行此代码 from fastai.vision.all import * path = untar_data(URLs.PETS)/'images' def is_cat(x): return x[0].isupper() dls = ImageDataLoaders.from_name_func( path, get_image_files(path), valid_pct=0.2, seed=42, label_func=is_cat, item_

我正在尝试从fastai运行此代码

from fastai.vision.all import *
path = untar_data(URLs.PETS)/'images'

def is_cat(x): return x[0].isupper()
dls = ImageDataLoaders.from_name_func(
    path, get_image_files(path), valid_pct=0.2, seed=42,
    label_func=is_cat, item_tfms=Resize(224), num_workers = 0)

learn = cnn_learner(dls, resnet34, metrics=error_rate)
learn.fine_tune(1)
我得到以下错误

运行时错误:CUDA内存不足。尝试分配14.00 MiB(GPU 0; 4.00 GiB总容量;2.20 GiB已分配;6.20 MiB空闲;PyTorch共预留2.23 GiB)

我还试着跑步

import torch
torch.cuda.empty_cache()
重新启动无用的内核


如果您有任何帮助,我们将不胜感激。
ImageDataLoaders中使用的默认
batch\u size
。根据文档,from\u name\u func
为64。减少这些应该可以解决你的问题。将另一个参数传递给
ImageDataLoaders。从\u name\u func
bs=32
或任何其他较小的值,直到没有抛出错误为止

这是有效的,谢谢