Dataloader

1.去PyTorch官网上查找Dataloader的文档

使用测试集的原因是测试集样本数更少,运行起来时间会短一些(指用DataLoader遍历的时间):

python 复制代码
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=64, shuffle=True, num_workers=0, drop_last=False)

# 测试数据中的第一张图片
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)
    step = step + 1

writer.close()

drop_last参数

windows系统下如果出现BrokenPipeError的错误,可以考虑将 num_workers设置为0

2.采样器默认是随机采样

python 复制代码
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=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
        # print(imgs.shape)
        # print(targets)
        writer.add_images("Epoch:{}".format(epoch), imgs, step)
        step = step + 1

writer.close()

用TensorBoard展示图片

①注意要用add_images而不是之前用过的add_image

②一定要等到程序运行结束了再在Terminal(终端)里使用tensorboard命令,不然会出现图片加载不全的情况!可以在程序末尾加一行语句来打印程序结束。

相关推荐
2401_871492854 分钟前
Vue.js计算属性computed依赖追踪与副作用函数effect关联机制
jvm·数据库·python
qq_283720054 分钟前
本地大模型部署全教程:Python 低成本调用开源 AI 模型
人工智能·python·开源
2401_882273728 分钟前
SQL如何快速提取分组中最晚时间点数据_结合窗口函数实现
jvm·数据库·python
小何code8 分钟前
【Python零基础入门】第4篇:Python变量与数据类型详解
开发语言·python
卷心菜狗19 分钟前
Python进阶--生成器(Generator)
python
2301_8148098627 分钟前
如何用 cookie 的 HttpOnly 与 Secure 属性防范 XSS 攻击
jvm·数据库·python
李松桃27 分钟前
实战:手刃豆瓣电影TOP250
python·爬虫实战·requests·re
m0_5150984229 分钟前
如何用 Object.keys 与 getOwnPropertyNames 遍历键名
jvm·数据库·python
databook33 分钟前
如何让多个动画“齐步走”?
python·数学·动效
qq_1898070338 分钟前
golang如何实现日志按级别过滤_golang日志按级别过滤实现教程
jvm·数据库·python