PyTorch入门备忘-4-torchvision

Torchvision

torchvision是pytorch的一个图形库,它服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。

  • torchvision.datasets: 一些加载数据的函数及常用的数据集接口;
  • torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;
  • torchvision.transforms: 常用的图片变换,例如裁剪、旋转等;
  • torchvision.utils: 其他的一些有用的方法。

数据集准备 - CIFAR10

此次代码中要用到的数据集,见附件有 介绍与中文的参数。

下载数据集-CIFAR10

通过py代码

python 复制代码
# 使用CIFAR10数据集
# 训练集
# 如果下载比较慢,可以将控制台打印的下载链接放到专门的下载工具中下载
# 首先下载的是一个压缩包,会自动解压

train_set = torchvision.datasets.CIFAR10(root="./torchvision_dataset", train=True, download=True)


# 测试集
test_set = torchvision.datasets.CIFAR10(root="./torchvision_dataset", train=False, download=True)

运行代码,控制台显示如下信息

50000 -- 说明有5w张训练数据

10000 --说明有1w张测试数据

会自动下载数据集到torchvision_dataset文件夹

已下载就不会继续下载,控制台会出输Files already downloaded and verified字样

代码

目标: torchvision和transform的联合使用

python 复制代码
import torchvision.datasets
from torch.utils.tensorboard import SummaryWriter

# 将图片数据都转为tensor类型
# 可以对数据集做任何transforms范围内的操作,该例子只针对数据做toTensor
dataset_transform = torchvision.transforms.Compose([
    torchvision.transforms.ToTensor
])

# 使用CIFAR10数据集
train_set = torchvision.datasets.CIFAR10(root="./torchvision_dataset",  train=True, transform=dataset_transform, download=True)

# 测试集
test_set = torchvision.datasets.CIFAR10(root="./torchvision_dataset", train=False, transform=dataset_transform, download=True)


# 用tensorboard显示前10张图片
# 运行tensorboard  --logdir=p10
writer = SummaryWriter('p10')
for i in range(0):
    img, target = test_set[i]
    writer.add_image("test_set", img,i)

writer.close()

附:Torchvision介绍

torchvision.datasets: 一些加载数据的函数及常用的数据集接口;

torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;

torchvision.transforms: 常用的图片变换,例如裁剪、旋转等;

torchvision.utils: 其他的一些有用的方法。

pytorch官网

Pytorch的官网:pytorch.org/

上图是官方的首页,图中同时标出了Docs菜单下常用的子菜单项目,其中torchvision与视觉相关,transform就出自于出此。

torchvison.dataset

进入 torchvision-> datasets 菜单可以找到相当的数据集链接,如下图

其中:

  • COCO: 用于目标检测,语义分割

MNIST

MNIST 常用的入门级数据集,手写文字数据集

包名 torchvision.datasets.MNIST()

Fashion MNIST

该数据集与 MNIST 类似,但该数据集不是手写数字,而是 T 恤、裤子、包等服装项目。

包名 torchvision.datasets.FashionMNIST()

CIFAR10

CIFAR10由10个不同标签的图像组成。其中包括卡车、青蛙、船、汽车、鹿等常见图像。还有一个CIFAR100版本,有 100 个不同的类别

CIFAR10/CIFAR100一般用于物价识别,其广泛用于机器学习领域的计算机视觉算法基准测试。详情 官网地址 包名 torchvision.datasets.FashionMNIST()

包名 torchvision.datasets.CIFAR10()

参数说明:

  • root: 数据集根路径,可以是相对路径
  • train: = ture 训练集,否则为测试集
  • transform: 对数据集进行的transform操作
  • target_transform: 训练后的目标数据集执行指定的transform操作
  • download:=true 自动下载数据集,false不会下载

COOC

目前有超过 100,000 个日常物品,如人、瓶子、文具、书籍等。这个图像数据集广泛用于对象检测和图像描述. (来自知乎...)

torchvision.models

提供神经网络常见的神经网络,有一些神经网络已经预训练好了。

torchvision.transform

图像处理与变形等

torchvision.utils

提供一些常用的工具,比如tensorboard等

javascript 复制代码
from torch.utils.tensorboard import SummaryWriter

创建于:2012/11/10

参考

www.bilibili.com/video/BV1hE...

pytorch.org/vision/stab...

相关推荐
ZhangJun954 分钟前
Mobike 共享单车分析项目
人工智能·python·算法·kmeans·聚类·knn
互联网资讯6 分钟前
本地创业者入局 AI 短剧,本地化部署怎么选更省钱
大数据·人工智能
唐维康9 分钟前
昆工计算机408考研2027招285人,比去年少6人
人工智能·考研·昆明理工大学
Martina_032112 分钟前
AI生成的过山车轨道导入后频繁脱轨?用5步检查样条、轨距与碰撞
图像处理·人工智能·游戏·3d·材质·游戏策划·关卡设计
小猴子爱上树16 分钟前
跨马翻译:批量图片翻译+视频字幕+智能抠图,跨境电商在线图片翻译工具
大数据·人工智能·python·音视频
佳瑞Jarrett17 分钟前
从 0 到 1 手搓 AI 调解训练系统:双 NPC 实时语音 + AI 自动评分(FastAPI + Qwen-Audio Realtime 实战)
人工智能
W***259217 分钟前
2026 企业 AI 办公工具怎么选:选型框架与平台全景分析
大数据·人工智能
薛定e的猫咪20 分钟前
(AISTATS 2023)BaCaDI 逐章阅读
人工智能·深度学习·算法·机器学习
记得开心一点嘛23 分钟前
Trellora:基于 Electron、React 和本地知识库的 AI 知识工作台
人工智能·react.js·electron
桃西西呀31 分钟前
LangChain 之八:流式与透传
人工智能·langchain·llm