1、报错时候的写法,查了很多,就说以下:

可能的原因:传入的Dataset中的len(self.data_info)==0,即传入该dataloader的dataset里没有数据

解决方法:

  1. 检查dataset中的路径,路径不对,读取不到数据。

  2. 检查Dataset的__len__()函数为何输出为零

ValueError: num_samples should be a positive integer value, but got num_samples=0

2、后来一个个debug,dataset.__getitem__(1)打印输出,确实存在数据的,后来没辙,就找跑的通的代码比对,然后我就发现了不一样的

3、发现是直接传的数据,并没有在__getitem__()中读入文件数据,然后我就单独写了方法读数据,把读的数据传入dataset,然后就ok了。

原理我不懂,有知道的小伙伴可以告诉我一下,非常感谢。下面是我修改后,成功跑通的代码

ValueError: num_samples should be a positive integer value, but got num_samples=0

相关文章: