跟着小土堆学习pytorch(五)——dataloader

零、什么是dataloader

dataset是数据集的获取,dataloader就是决定如何对数据集进行分类和整理
在这里插入图片描述

一、官方文档

关于dataloader的链接:https://pytorch.org/docs/stable/data.html#torch.utils.data.DataLoader
下拉找到这里
(注意:是torch.utils.data.DataLoader这个关键词下)

在这里插入图片描述
这里解释下这些参数
dataset:路径地址
batch_size:步长(一次取多少张图片)
shuffle:(大循环)两次(是否再次打乱,True就是不一样,被打乱,Fales就是一样的,不打乱)
num_workers:多进场(0的话就是主进程,大于0的话,可能就会出错)
drop_last:到最后取不尽的时候,最后的余数是保留,还是剔除

二、代码解析

import torchvision

from torch.utils.data import DataLoader
from torch.utils.tensorboard import Summarywriter
test_data = torchvision.datasets.CIFAR10("./dataset",train=False,transform=torchvision.transforms.ToTensor())
test_loader = DataLoader(datasets = test_data,batch_size=64,shuffle=True,num_workers=0,drop_last=True)

img,target = test_data[0]
print(img.shape)
print(target)
writer = Summarywriter("dataloader")
for epoch in range(2):
	step = 0
	for data in test_loader:
		imgs,targets = data
		#pr1nt(imgs,shape】
		#print(torgets)
		writer.add_images("Epoch:()"format(epoch),imgs,step)
		step = step+1
writer.close()

看返回类型时候,看的是__getitem__类的返回(相当于函数的使用)
在这里插入图片描述打包成imgs、targets

猜你喜欢

转载自blog.csdn.net/m0_52592798/article/details/143355778