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
相关推荐
子燕若水1 小时前
Unreal Engine 5中的AI知识
人工智能
极限实验室2 小时前
Coco AI 实战(一):Coco Server Linux 平台部署
人工智能
杨过过儿3 小时前
【学习笔记】4.1 什么是 LLM
人工智能
巴伦是只猫3 小时前
【机器学习笔记Ⅰ】13 正则化代价函数
人工智能·笔记·机器学习
大千AI助手3 小时前
DTW模版匹配:弹性对齐的时间序列相似度度量算法
人工智能·算法·机器学习·数据挖掘·模版匹配·dtw模版匹配
AI生存日记3 小时前
百度文心大模型 4.5 系列全面开源 英特尔同步支持端侧部署
人工智能·百度·开源·open ai大模型
LCG元3 小时前
自动驾驶感知模块的多模态数据融合:时序同步与空间对齐的框架解析
人工智能·机器学习·自动驾驶
why技术3 小时前
Stack Overflow,轰然倒下!
前端·人工智能·后端
超龄超能程序猿4 小时前
(三)PS识别:基于噪声分析PS识别的技术实现
图像处理·人工智能·计算机视觉