DataLoader的使用【学习笔记】

趁着假期,准备好好学习PyTorch,以下是DataLoader的学习笔记。在此,特别感谢B站UP主【我是土堆】,土堆老师讲解得非常认真详细,各位pytorch入门学习者可以去看看~

视频链接:PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】_哔哩哔哩_bilibili

从dataset里面取数据,怎么取,取多少,这些就是由DataLoader实现的。

PyTorch官网的DataLoader解释:torch.utils.data — PyTorch 1.10.1 documentation

以下代码实现的功能是,对test_data进行不放回随机抽取,每次抽取64张图片及其标签并打包为imgs和targets,直到把dataset抽取完毕。若最后一次抽取少于64张,则舍去(drop_last=Ture)。这样的抽取进行两次(for epoch in range(2)),每次抽取前先进行洗牌(Shuffle=True)。

import torchvision.datasets
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

test_data = torchvision.datasets.CIFAR10(root="./dataset",train=False,transform=torchvision.transforms.ToTensor())

test_loader = DataLoader(dataset=test_data,batch_size=64,shuffle=True,num_workers=0,drop_last=True)

writer = SummaryWriter("dataloader")
for epoch in range(2):
    step = 0
    for data in test_loader:
        imgs,targets = data
        # print(imgs.shape)
        # print(targets)
        writer.add_images("Epoch:{}".format(epoch),imgs,step)
        step = step + 1

writer.close()

Tensorboard展示两次抽取结果:

      

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DataLoader()是PyTorch中用于加载数据集的函数。在使用DataLoader()函数时,首先需要创建一个数据集对象,如train_data = trainset(),然后将该数据集对象作为参数传入DataLoader()中,同时可以设置一些参数,如batch_size(每个批次的样本数量)和shuffle(是否打乱数据集)。最后,通过训练循环可以迭代地从DataLoader对象中获取每个批次的数据样本。 根据引用中的博文内容,DataLoader的主要使用包括以下几个方面: 1. DataLoader的基础使用:创建数据集对象和DataLoader对象,并设置一些参数。 2. 数据集和DataLoader的区别:数据集对象是存储和处理数据的对象,而DataLoader对象是用于加载数据集的对象。 3. 数据集的处理:可以根据实际需求自定义数据集对象,如MyDataset(),并将该数据集对象传入DataLoader中进行加载。 4. 在训练循环中使用DataLoader:通过迭代DataLoader对象即可逐批次获取数据样本进行训练。 综上所述,DataLoader()函数是PyTorch中用于加载数据集的函数,可以方便地进行数据的批量加载和处理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [AGPCNet——dataloader()函数](https://blog.csdn.net/python_Ezreal/article/details/125094746)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [PyTorch学习笔记(4)--DataLoader使用](https://blog.csdn.net/weixin_43981621/article/details/119685671)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值