在训练神经网络模型时,加载数据过程报如下错误:
ValueError: num_samples should be a positive integer value, but got num_samp=0
问题描述
我的代码如下:
self.dataloader = DataLoader(ImageDataset(config['dataroot'], transforms_1=transforms_1, transforms_2=transforms_2, unaligned=False),
batch_size=config['batchSize'], shuffle=True, num_workers=config['n_cpu'])
}
原因分析:
DataLoader()传入的shuffle参数出错。
此时传入的batchsize是大于1的,且shuffle设置为True
解决方案:
当batch_size接收到的参数是大于1时,此时不需要shuffle来进行随机。
当batch_size不传参时,shuffle设置为True
self.dataloader = DataLoader(ImageDataset(config['dataroot'], transforms_1=transforms_1, transforms_2=transforms_2, unaligned=False),
batch_size=1, shuffle=True, num_workers=config['n_cpu'])
或者
self.dataloader = DataLoader(ImageDataset(config['dataroot'], transforms_1=transforms_1, transforms_2=transforms_2, unaligned=False),
batch_size=4, shuffle=False, num_workers=config['n_cpu'])
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)