首页 > 其他分享 >torchvision中的数据集使用

torchvision中的数据集使用

时间:2023-08-11 12:23:29浏览次数:42  
标签:set torchvision print train transforms 使用 test 数据

torchvision中的数据集使用

1.torchvision介绍

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

pytorch官网-Docs-torchvision(左侧修改为0.90版本就可以直接看到datasets)

torchvision.datasets:包含常用的数据集API文档,设置一些参数即可下载和使用这些数据集。

COCO数据集:常用于目标检测、语义分割

MNIST数据集:手写文字数据集(一般为入门数据集)

CIFAR数据集:常用于物体识别

torchvision.io:输入输出模块。

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

torchvision.ops:提供一些少见的特殊的操作。

torchvision.transforms:常用的图片变换,例如类型转换、裁剪等。
torchvision.utils:其他的一些有用的方法。

2.举例说明

本次以CIFAR10为例进行数据集的使用(观察参数设置):

数据集的使用代码

import torchvision

# 将数据集下载到本地的文件夹中用作训练集和测试集
train_set = torchvision.datasets.CIFAR10(root="./dataset2",train=True,download=True)
test_set = torchvision.datasets.CIFAR10(root="./dataset2",train=False,download=True)

print(test_set[0])
print(test_set.classes)

img, target = test_set[0]
print(img)
print(target)
print(train_set.classes[target])
img.show()

dataset和transforms的结合使用:

import torchvision
from torch.utils.tensorboard import SummaryWriter

dataset_transforms = torchvision.transforms.Compose([
    torchvision.transforms.ToTensor()
])

# 添加transforms参数可以对数据集进行转换操作
train_set = torchvision.datasets.CIFAR10(root="./dataset2",train=True,transform=dataset_transforms, download=True)
test_set = torchvision.datasets.CIFAR10(root="./dataset2",train=False,transform=dataset_transforms, download=True)

# print(test_set[0])

writer = SummaryWriter("logs")
for i in range(10):
    img, target = test_set[i]
    writer.add_image("test_set", img, i)

writer.close()

标签:set,torchvision,print,train,transforms,使用,test,数据
From: https://www.cnblogs.com/yq-ydky/p/17621557.html

相关文章

  • 使用LiveData、ViewModel在Activity和Fragment,Fragment和Fragment之间共享数据
    一、概述传统的Activity与Fragment之间共享数据,Fragment与Fragment之间共享数据,我一般会采用EventBus事件总线来实现。不过现在可以借助另外一种简单的方式LiveData+ViewModel也可以实现这种共享二、代码示例示例描述:要求FragmentA发送出数据,FragmentB和Activity都能接......
  • 简单介绍LiveData、ViewModel以及使用二者封装一个简单的基类用于测试
    一、概述1.LiveData概述什么事LiveData?1.LiveData是一种可观察的数据存储器类2.LiveData是一个数据持有者,给源数据包装一层。3.源数据使用LiveData包装后,可以被observer观察,数据有更新时observer可感知。4.但observer的感知,只发生在(Activity/Fragment......
  • 合宙ESP32C3使用PlatformIO开发点亮ST7735S
    开发背景模块使用的合宙的ESP32-C3(经典款)购买连接COREESP32核心板是基于乐鑫ESP32-C3进行设计的一款核心板,尺寸仅有21mm*51mm,板边采用邮票孔设计,方便开发者在不同场景下的使用。核心板支持UART、GPIO、SPI、I2C、ADC、PWM等接口,可根据实际需要选择。屏幕使用的LuatOS屏......
  • PHP 使用xhprof 分析程序
    PHP增加扩展xhrofgitclonehttps://github.com/longxinH/xhprof.git./xhprofcdxhprof/extension//path/to/php7/bin/phpize./configure--with-php-config=/path/to/php7/bin/php-configmake&&sudomakeinstallPHP配置增加ini[xhprof]extension=xhprof.so......
  • 合成数据平台:释放结构化数据的生成式 AI 的力量
    推荐:使用NSDT场景编辑器快速助你搭建可二次编辑的3D应用场景创建机器学习或深度学习模型非常简单。如今,有不同的工具和平台不仅可以自动化创建模型的整个过程,甚至可以帮助您为特定数据集选择最佳模型。通过创建模型解决问题所需的基本内容之一是包含描述您尝试解决的问题的所有......
  • 7个顶级开源数据集来训练自然语言处理(NLP)和文本模型
    推荐:使用NSDT场景编辑器快速助你搭建可二次编辑的3D应用场景 NLP现在是一个令人兴奋的领域,特别是在像AutoNLP这样的用例中,但很难掌握。开始使用NLP的主要问题是缺乏适当的指导和该领域的过度广度。很容易迷失在各种论文和代码中,试图吸收所有内容。要意识到的是,当涉及到NLP......
  • 记录一次数据库连接数超限问题(ArcSDE)
    环境:Oracle11.2.0.4RAC集群  ArcGIS10.1问题说明:服务器间歇性的会报连接数超限的问题,经常需要手动释放部分连接才能解决。之前遇到过类似的问题,主要是增大数据库连接数,同时检查死链接的情况,因为修改配置需要重启数据库,所以前期一直手动释放连接,待其他操作再一起重启数据库。......
  • 字节跳动基于火山引擎DataLeap的一站式数据治理架构实践
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群在7月22日举行的ArchSummit全球架构师峰会(深圳站)上,来自火山引擎DataLeap的技术专家为大家带来了字节跳动基于火山引擎DataLeap的全域数据治理方案分享。本次分享共分为机遇挑战、字节数......
  • C++ 初学者如何正确使用指针
    一、指针的基本概念指针是C++中非常重要的概念,也是初学者经常会遇到的问题。指针是一个存储变量地址的变量,它指向存储器中的一个地址。使用指针可以直接操作存储器中的数据,因此常用于处理复杂的数据结构和算法。二、指针的定义和使用定义指针以及使用指针的步骤如下:1......
  • 使用awk分析nginx访问日志access.log
    1.awk简介awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk的处理文本和数......