DataLoader的使用

官方网站进行查看DataLoader

batch_size 的含义

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

# 准备的测试数据集
test_data = torchvision.datasets.CIFAR10('D:\Pytorch\pythonProject\Transform\dataset', train=False, transform=torchvision.transforms.ToTensor())

test_loader = DataLoader(dataset=test_data, batch_size=4, shuffle=False, num_workers=0, drop_last=False)

# 测试数据集中第一张图片及target
img, target = test_data[0]
print(img.shape) # torch.Size([3, 32, 32])
print(target) # 3

for data in test_loader:
    imgs, targets = data
    print(imgs.shape) # torch.Size([4, 3, 32, 32]); 4就是batch_size, 3是通道, 32×32是图片大小
    print(targets) # tensor([3, 8, 8, 0]); 4张图片的target
python 复制代码
import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter

# 准备的测试数据集
test_data = torchvision.datasets.CIFAR10('D:\Pytorch\pythonProject\Transform\dataset', train=False, transform=torchvision.transforms.ToTensor())

test_loader = DataLoader(dataset=test_data, batch_size=64, shuffle=True, num_workers=0, drop_last=True)

# 测试数据集中第一张图片及target
img, target = test_data[0]
print(img.shape) # torch.Size([3, 32, 32])
print(target) # 3

writer = SummaryWriter('dataloader')
for epoch in range(2):
    step = 0
    for data in test_loader:
        imgs, targets = data
        # print(imgs.shape) # torch.Size([4, 3, 32, 32]); 4就是batch_size, 3是通道, 32×32是图片大小
        # print(targets) # tensor([3, 8, 8, 0]); 4张图片的target
        writer.add_images('Epoch: {}'.format(epoch), imgs, step)
        step += 1

writer.close()

shuffle=True 的话,会随机成batch

相关推荐
江华森11 分钟前
【玩转 AtomCode】隐藏高级功能挖掘:MCP、Hooks、Skills、Plugin 完全指南
人工智能
qq_2915792536 分钟前
AI电商主图视频在线生成:技术解析、工具横评与实战指南
人工智能·音视频
风途科技~40 分钟前
多参数水质在线监测设备—水环境实时管控解决方案
大数据·人工智能
柒和远方1 小时前
LeetCode 4. 寻找两个正序数组的中位数 —— 二分划分的艺术
javascript·python·算法
lh17931 小时前
数据产业服务分类(53)——分类设计——数据能力集成
java·人工智能·分类
使用小功能大师1 小时前
从零到一:使用阿里云百炼搭建企业级 AI Agent 完全实战手册(2026超详细版)
人工智能·阿里云·云计算
十铭忘1 小时前
VideoMAE v2:使用双重掩码扩展视频掩码自编码器
人工智能
金色的暴发户1 小时前
一劳永逸解决Codex手机验证
前端·人工智能·开源
YOLO数据集集合1 小时前
无人机松材线虫病树监测:早期与晚期感染阶段目标检测数据集全解析10125期
人工智能·目标检测·无人机
天天进步20151 小时前
InfiniteTalk 源码解析 #12:二次开发路线:做一个可商用的长视频口播生成平台
人工智能