当前位置:   article > 正文

len(dataset)、len(dataloader)、len(label)的区别

len(dataloader)
  1. from torchvision import datasets
  2. from torch.utils.data import DataLoader
  3. from torchvision import transforms
  4. import os
  5. #数据集的位置,我的已经是下好的
  6. dir = 'D:/Research_Time/一些通用的东西/torch日积月累/some_copy_model/data/mnist'
  7. #自动创建数据集文件,代码意思是,如果上面的文件不存在,就创建这个文件夹
  8. if not os.path.exists(dir):
  9. os.makedirs(dir)
  10. test_dataset = datasets.MNIST(root=dir,
  11. train=False,
  12. transform=transforms.ToTensor(),
  13. download=True)
  14. test_data = DataLoader(dataset=test_dataset,
  15. batch_size=16,
  16. shuffle=False)
  17. print(len(test_dataset))
  18. print(len(test_data))
  19. for data in (test_data):
  20. input, label = data
  21. print(label.shape)

上面代码执行的结果是:

  1. 10000
  2. 625
  3. torch.Size([16])
  4. torch.Size([16])
  5. torch.Size([16])
  6. …………
  7. torch.Size([16])
  8. #最后是torch.size([16])乘625次,因为我写了一个循环取出test_data,
  9. #我不知道怎么只取出一个batch,所以把所有batch_size都取出来了

文字讲述:

  1. 以mnist为例子
  2. len(test_dataset)是整个数据集测试集的大小,也就是10000
  3. len(test_data)是整个测试集/batch_size的大小,batch_size是16
  4. dataloader每次从测试集中取出16张图,就将测试集分为了10000/16个小组,于是它的长度是625
  5. len(label)是一个批次的数据大小,batch_size=16,所以label=16

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/57545?site
推荐阅读
相关标签
  

闽ICP备14008679号