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

相关推荐
ikun_文15 分钟前
Django框架路由Router的使用
python·pycharm·django
黄油面包16 分钟前
Codex 额度三天见底后,我重新做了一周预算
前端·人工智能
IvanCodes18 分钟前
Python 基础语法(二):字符串与常用操作
python
AI效率君22 分钟前
Deer‑Flow 2.0 + Go‑MCP‑Server(add加法工具)保姆级完整教程
人工智能·agent
阿拉斯攀登22 分钟前
SpringCloud微服务MQTT架构:设备消息统一接入、业务分发设计
人工智能
昭昭日月明24 分钟前
LangChain 生态:从链到代理,开发者需要掌握的三大核心
python·langchain·agent
Csvn31 分钟前
🐍 Day 8:面向对象编程
后端·python
程序员天天困33 分钟前
向量检索不准怎么办:混合检索与 Rerank 重排序召回优化实战
后端·python·ai编程
Csvn43 分钟前
第 12 章 并行化 Parallelization
人工智能·aigc·agent