【Pytorch】5.DataLoder的使用

什么是DataLoader

个人理解是,如果Dataset的所有数据相当于一副扑克牌,DataLoader就相当于从扑克牌中抽取几张,我们可以规定一次抽取的张数,或者以什么规则进行抽取

DataLoader的使用

查阅官网的文档,主要有这几个参数比较常用

其中dataset可以用上一篇文章来进行创建

具体的实现方法为

py 复制代码
import torchvision
from torch.utils.data import DataLoader

test_dataset = torchvision.datasets.CIFAR10(root='./dataset', train=False, transform=torchvision.transforms.ToTensor(), download=True)
# 这里采用测试集是因为测试集较小,运行较快

test_dataLoader = DataLoader(test_dataset, batch_size=64, shuffle=False, num_workers=0, drop_last=True)


for data in test_dataLoader:            #从test_dataLoader中取出data
    imgs, labels = data
    print(labels)

然后我们可以加入tensorBoard可视化处理

py 复制代码
import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

test_dataset = torchvision.datasets.CIFAR10(root='./dataset', train=False, transform=torchvision.transforms.ToTensor(),
                                            download=True)
# 这里采用测试集是因为测试集较小,运行较快

test_dataLoader = DataLoader(test_dataset, batch_size=64, shuffle=False, num_workers=0, drop_last=False)

writer = SummaryWriter(log_dir='./logs')
i = 0
for data in test_dataLoader:  # 从test_dataLoader中取出data
    imgs, labels = data
    print(imgs.shape)
    writer.add_images('test_loader1', imgs, i)       # 注意这是add_images
    i = i + 1

writer.close()

注意这里的writer.add_images()需要加s否则不能运行

相关推荐
threelab几秒前
Three.js 初中数学函数可视化 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
咖啡里的茶i17 分钟前
视觉显著目标的自适应分割与动态网格生成算法研究
人工智能·算法·目标跟踪
怪祝浙17 分钟前
AI实战之RAG知识库构建和私有化agent设计
人工智能
weelinking18 分钟前
【企业级】企业级大模型合规实战:数据安全与跨境传输的技术解决方案
数据库·人工智能·机器学习·云计算·github
m0_4708576419 分钟前
golang如何实现目录大小统计_golang目录大小统计实现方案
jvm·数据库·python
耕烟煮云31 分钟前
本文深入解析AI Native产品设计的核心范式——Linear三层架构模型
人工智能·架构
Rewloc36 分钟前
人生计算器
人工智能
消晨消晨38 分钟前
MONAI初上手——模型构建
pytorch·python·monai
weixin_4440129342 分钟前
如何在多实例管理时隐藏MySQL版本信息_安全混淆与配置
jvm·数据库·python
波动几何1 小时前
内容执行创新正交组合闭集
人工智能