【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否则不能运行

相关推荐
IT_陈寒12 小时前
React的useEffect把我坑惨了,这些闭包陷阱真要命
前端·人工智能·后端
财经资讯数据_灵砚智能12 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月1日
大数据·人工智能·python·信息可视化·自然语言处理
ting945200012 小时前
动手学深度学习(PyTorch版)深度详解(8):现代循环神经网络(实战 + 避坑)
pytorch·rnn·深度学习
Flandern111112 小时前
# 学习AI Agent中了解到的几个概念
人工智能·学习
2601_9583205712 小时前
【零基础新手入门 】OpenClaw 2.6.6 对接阿里云百炼配置教程(包含安装包)
人工智能·阿里云·云计算·open claw·小龙虾·open claw安装·open claw一键安装
java1234_小锋12 小时前
Spring AI 2.0 开发Java Agent智能体 - Spring AI项目调用本地Ollama模型
java·人工智能·spring·spring ai2.0
深海鱼在掘金12 小时前
深入浅出 LangChain —— 第六章:记忆与状态管理
人工智能·langchain·agent
qq_2837200512 小时前
Python+LangChain 调用大模型全方案深度实战:原生调用、统一接口、流式输出、异步、自定义模型全解析
人工智能·langchain·agent·rag
葫三生12 小时前
三生原理文章被AtomGit‌开源社区收录的意义探析?
人工智能·深度学习·神经网络·算法·搜索引擎·开源·transformer
好奇龙猫12 小时前
[大学院ーpython-base learning3: python and recommendation system ]
开发语言·python