torchvision中的数据使用

1、下载数据集

在pytorch官网中找到docs选择Domains,在该页面中有各种数据类型的数据集

在左边菜单栏中选择datasets

python 复制代码
import torchvision
train_set=torchvision.datasets.CIFAR10(root='/data',train=True,download=True)
test_set=torchvision.datasets.CIFAR10(root='./data',train=False,download=True)

2、Dataloader的使用

Dataloader参数介绍

  • dataset :加载的数据集,必须是 torch.utils.data.Dataset 的子类实例。

  • batch_size:每个批次的数据样本数,默认值为1。

  • shuffle:是否在每个周期开始时打乱数据,默认为 False。

  • sampler:定义从数据集中抽取样本的策略,如果指定,则忽略 shuffle 参数。

  • num_workers:用于数据加载的子进程数量,默认为0,表示数据将在主进程中加载。

  • collate_fn:如何将多个数据样本整合成一个批次,通常不需要指定。

  • pin_memory:如果为 True,会将数据放置到 GPU 上去,默认为 False。

  • drop_last:如果数据集大小不能被批次大小整除,是否丢弃最后一个不完整的批次,默认为 False。

python 复制代码
test_loader=DataLoader(dataset=test_set,batch_size=4,shuffle=True,num_workers=0,drop_last=False)
#获取一张图片的信息
img,target=test_set[0]
print(img.shape)
print(target)

writer=SummaryWriter("dataloader")
#taet_loader是一个迭代对象,用for循环进行迭代
step=0
for data in test_loader:
    imgs,targets=data
    # print(imgs.shape)
    # print(targets)
    writer.add_image("test_data",imgs,step,dataformats='NCHW')
    step+=1

writer.close()

添加轮次

python 复制代码
for epoch in range(2):
    step=0
    for data in test_loader:
        imgs,targets=data
        # print(imgs.shape)
        # print(targets)
        writer.add_image("Epoch:{}".format(epoch),imgs,step,dataformats='NCHW')
        step+=1
相关推荐
天天进步20152 分钟前
InfiniteTalk 源码解析 #12:二次开发路线:做一个可商用的长视频口播生成平台
人工智能
Elastic 中国社区官方博客4 分钟前
谁来评判评判者?在 Elasticsearch Workflows 中使用 LLM-as-a-Judge
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
yqd6668 分钟前
OpenCV
人工智能·opencv·计算机视觉
糖糖的AI心得20 分钟前
AI重塑跨境运营效率:产品从精修到上架的全链路实战拆解
图像处理·人工智能·aigc
中微极客25 分钟前
Gemini Omni Flash:对话式AI视频编辑新范式
人工智能·音视频·新人首发
mit6.82425 分钟前
一些从researcher角度的观察和思考
人工智能
牛企老板俱乐部27 分钟前
2026 年合肥专业 GEO 优化服务商深度测评|分行业精准选型指南
大数据·人工智能
kuankeTech29 分钟前
数据驱动替代经验经营,AI外贸ERP从记录工具升级为经营决策助手
大数据·人工智能·开源·软件开发·erp
饼干哥哥30 分钟前
单篇100万阅读文章,如何用AI 做好内容创作?
人工智能·正则表达式·代码规范
易观Analysys33 分钟前
易观AI基础设施系列研究-《2026年中国第三方普惠智算云市场专题报告(华东篇)》
人工智能