PyTorch深度学习笔记(十一)DataLoader的使用
课程学习笔记
·
课程学习笔记,课程链接
一、dataloader 简介
dataset 在程序中起到的作用是告诉程序数据在哪,以及每个索引所对应的数据是什么。相当于一系列的存储单元,每个单元都存储了数据。这里可以类比成一幅扑克牌,一张扑克牌就是一个数据,一幅扑克牌就是一个完整的数据集。
dataloader 是一个加载器,将数据加载到神经网络中。类比成手(神经网络),dataloader 每次从dataset 中去取数据,每次取多少,怎么取,通过 dataloader 参数进行设置。用手去抓扑克牌,每次抓几张,用一只手去抓取,还是用两只手,这就是 dataloader 要做的事,可以通过参数进行一个设置。
Pytoch 官网对 dataloader 的介绍,各个参数都有详细的描述,这里就不再赘述。
二、dataloader 的使用
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(dataset=test_data, batch_size=4, shuffle=True, num_workers=0, drop_last=False)
# 测试数据集中第一张图片及 target
img, target = test_data[0]
print(img.shape) # 查看图片大小
print(target)
writer = SummaryWriter("dataloader")
step = 0
for data in test_loader:
imgs, targets = data
# print(imgs.shape)
# print(targets)
writer.add_images("test_data", imgs, step) # 注意加 s
step = step + 1
writer.close()
更多推荐
已为社区贡献1条内容
所有评论(0)