尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
torchvision数据集及DataLoader的使用
本文主要介绍torchvision内置数据集及DataLoader使用文章目录一、CIFAR10 数据集初识举例1.一句话理解2.CIFAR10 数据档案3.数据集下载二、查看数据集内容1.基本操作2.数据结构三、与 transforms 联动四、DataLoader — 从一副牌到一手牌1.为什么要 DataLoader2.基本用法五、DataLoader 参数速查表总结一、CIFAR10 数据集初识举例1.一句话理解以前要手动写 Dataset 类现在 torchvision 帮你把常用数据集都封装好了一行代码下载 加载。2.CIFAR10 数据档案属性数值总样本数60,000 张训练集 / 测试集50,000 / 10,000图像尺寸32×32 像素RGB 三通道类别10 类飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船、卡车3.数据集下载importtorchvision animals_transformtorchvision.transforms.Compose([torchvision.transforms.ToTensor()])train_settorchvision.datasets.CIFAR10(root./animals,#存在哪trainTrue,## True训练集, False测试集downloadTrue)# 自动下载已有则跳过test_settorchvision.datasets.CIFAR10(root./animals,trainFalsedownloadTrue)参数含义root数据集存放目录trainTrue 训练集 / False 测试集downloadTrue 自动下载transform预处理转换二、查看数据集内容1.基本操作代码如下示例# 查看所有类别名print(test_set.classes)# [airplane, automobile, bird, cat, deer,# dog, frog, horse, ship, truck]# 取第 0 个样本img,targettest_set[0]print(img)# PIL.Image.Image modeRGB size32x32print(target)# 3数字标签print(test_set.classes[target])# catimg.show()# 弹窗显示图片2.数据结构test_set[0] → (PIL图片, 数字标签)↓ ↓32×32 RGB 0~9 整数三、与 transforms 联动CIFAR10 给的是 PIL Image必须转成 Tensor 才能训练。fromtorchvisionimporttransforms# 定义转换管道dataset_transformtransforms.Compose([transforms.ToTensor()# PIL → Tensor (C, H, W)])# 下载时直接应用 transformtrain_settorchvision.datasets.CIFAR10(root./dataset,trainTrue,transformdataset_transform,# ← 关键参数downloadTrue)CIFAR10 原始数据 (PIL) ──transform──▶ Tensor (可直接训练)四、DataLoader — 从一副牌到一手牌1.为什么要 DataLoaderDataset一副牌DataLoader抓牌器告诉你总共有多少张牌每次抓多少张batch_size可以一张一张拿是否洗牌shuffle返回 (图片, 标签)返回批量 (图片们, 标签们)模型不吃一张图要吃一批图。DataLoader 就是那个打包工人。2.基本用法fromtorch.utils.dataimportDataLoader test_loaderDataLoader(datasettest_data,batch_size64,# 一次抓 64 张shuffleTrue,# 打乱顺序num_workers0,# Windows 下必须设为 0drop_lastFalse# 最后不足 64 张也保留)遍历 DataLoaderforimgs,targetsintest_loader:print(imgs.shape)# torch.Size([64, 3, 32, 32])print(targets.shape)# torch.Size([64])break结合 TensorBoard 可视化fromtorch.utils.tensorboardimportSummaryWriter writerSummaryWriter(dataloader_logs)forepochinrange(2):# 跑两轮观察 shuffle 效果forstep,(imgs,targets)inenumerate(test_loader):writer.add_images(fEpoch_{epoch},imgs,step)writer.close()终端输入tensorboard --logdirdataloader_logs五、DataLoader 参数速查表参数作用建议值dataset指定数据集必填batch_size每批多少张图32 / 64 / 128shuffle是否打乱训练True测试Falsenum_workers多进程加载Windows 必须设为 0drop_last丢弃最后不完整的 batch一般 False总结本文主要介绍了怎么使用torchvision的数据集以及DataLoader。
RELATED

相关推荐

C++实现2D椭圆内部点网格生成:算法详解与工程实践

C++实现2D椭圆内部点网格生成:算法详解与工程实践

1. 项目概述:为什么要在椭圆内部生成点网格?在图形学、物理仿真、数值计算乃至游戏开发中,我们常常会遇到一个看似简单却非常基础的需求:在一个二维的椭圆区域内,均匀或按某种规则生成一系列的点。这个需求&#xff0c…

📅 2026/10/14 16:57:34
几何中位数:鲁棒空间聚合的核心算法与工程落地

几何中位数:鲁棒空间聚合的核心算法与工程落地

1. 什么是几何中位数:一个被低估却无处不在的统计核心“几何中位数”这四个字听起来像数学课上一闪而过的术语,但如果你正在处理GPS轨迹纠偏、医学图像配准、多传感器融合定位,或者哪怕只是在做一份城市共享单车调度热力图的异常点清洗——你…

📅 2026/9/24 3:17:57
血清微量元素建模实战:为何对数转换与LMM诊断比p值更重要

血清微量元素建模实战:为何对数转换与LMM诊断比p值更重要

1. 项目概述:一头奶牛、一管血清与一场现实世界的建模突围战你手头有一批来自奶牛的血清检测数据——锌(Zn.ppm)和铜(Cu.ppm)浓度,时间跨度覆盖多个采样日,实验设计是典型的随机区组&#xff08…

📅 2026/10/18 23:52:31
MORE NEWS

更多资讯

📰

证书过期了不知道怎么复审延期?官方回应来了,江门低压电工证价格全解析

证书过期了不知道怎么复审延期?官方回应来了,江门低压电工证价格全解析 证书过期了不知道怎么复审延期?你不是一个人。昨天还在跟江门某建筑公司电工老李聊天,他说:“去年刚把低压电工证换了个新证,结果工作太忙,今年一忙就忘了复审,现在公司要开工,…

📰

工地太忙根本没时间复习考试?真实经历告诉你劳动局电工证有用么

工地太忙根本没时间复习考试?真实经历告诉你劳动局电工证有用么 工地太忙根本没时间复习考试,这不是个例,而是大部分一线电工师傅的真实写照。特别是像郑州金水区这种建筑施工项目密集的区域,施工周期紧、任务重,很多工人一边赶工期一边还得抽空准备电工…

📰

渠县考高压电工证通过率揭秘:工地太忙根本没时间复习考试

渠县考高压电工证通过率揭秘:工地太忙根本没时间复习考试 工地太忙根本没时间复习考试,这种感觉我懂,尤其是在渠县这样的工程聚集地,很多人白天忙得脚不沾地,晚上还得赶工期,哪还有精力去备考高压电工证?但如果你打算在电工行业长久发展,…

📰

低压电工证需要社保吗?上岗必备的实操考试技巧全揭秘

低压电工证需要社保吗?上岗必备的实操考试技巧全揭秘 实操考试心里没底怕挂科?低压电工证作为电工类岗位的“上岗必备”,在很多工地、工厂、建筑项目中都是必须持证上岗的。但很多学员最关心的问题是: 低压电工证需要社保吗?…

📰

重庆电工证报名多少钱全流程办理指南:外省证怎么转?电子证书怎么用?

重庆电工证报名多少钱全流程办理指南:外省证怎么转?电子证书怎么用? 之前考的证在外省能不能转过来?这是很多电工朋友的共同疑问,尤其是像你这样在外地打工、打算回重庆发展的人。别急,今天就来聊聊重庆电工证报名多少钱,怎么把外省证转过来,还有电子…

📰

电工证如何在网上找到报名入口与办理流程 郑州报考避坑指南

电工证如何在网上找到报名入口与办理流程 郑州报考避坑指南 工地太忙根本没时间复习考试,这几乎是所有一线电工的共同困扰。特别是像郑州这样的城市,施工项目密集,工时长,休息时间少,想要抽出时间准备电工证考试几乎成了奢望。但现实是,没有电工证,很…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬