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

相关推荐
网易智企34 分钟前
智能玩具新纪元:一个AI能力底座开启创新“加速度”
人工智能·microsoft
ituff34 分钟前
微软认证考试又免费了
后端·python·flask
咚咚王者36 分钟前
人工智能之数据分析 numpy:第十二章 数据持久化
人工智能·数据分析·numpy
沛沛老爹42 分钟前
AI应用入门之LangChain中SerpAPI、LLM-Math等Tools的集成方法实践
人工智能·langchain·llm·ai入门·serpapi
roman_日积跬步-终至千里1 小时前
【强化学习基础(5)】策略搜索与学徒学习:从专家行为中学习加速学习过程
人工智能
梁正雄2 小时前
2、Python流程控制
开发语言·python
Eric.Lee20213 小时前
ubuntu 安装 Miniconda
linux·运维·python·ubuntu·miniconda
无心水3 小时前
【Python实战进阶】1、Python高手养成指南:四阶段突破法从入门到架构师
开发语言·python·django·matplotlib·gil·python实战进阶·python工程化实战进阶
杭州泽沃电子科技有限公司3 小时前
在线监测:为医药精细化工奠定安全、合规与质量基石
运维·人工智能·物联网·安全·智能监测
GIS数据转换器3 小时前
GIS+大模型助力安全风险精细化管理
大数据·网络·人工智能·安全·无人机