torchvision之Dataset用法
pytorch本身自带的Dataset类提供了一些列数据集,比如常用的EMNIST,CIRFAR10诸如此类。这里简要介绍如何用Dataset导入这些数据集,以及将这些数据集和transforms配合使用。
以导入CIRFAR10为例,代码如下:
import torchvision# 第一步:导入CIFAR10数据集
# 训练集 设置参数train=True
from torch.utils.tensorboard import SummaryWritertrain_set = torchvision.datasets.CIFAR10(root='./dataset', train=True, download=True) # './dataset'为当前路径下的dataset文件夹
#
# # 测试集 设置参数train=False
test_set = torchvision.datasets.CIFAR10(root='./dataset', train=False, download=True)
#
# # 第二步,运用transform对训练集和测试集进行处理
trans_totensor = torchvision.transforms.ToTensor() # 实例化totensor类
trans_resize = torchvision.transforms.Resize((10, 20)) # 实例化totensor类
img, target = train_set[0]
train_set_resize = trans_resize(img)
train_set_tensor = trans_totensor(train_set_resize)writer = SummaryWriter('dataset_ex')
writer.add_image('way_1', train_set_tensor)# 当然,若是想组合拳可以使用transforms.Compose()# 此外,除了先导入数据外,也可在导入的时候就处理好数据,因为dataset.CIFAR10中可传递transform这个参数
# 例如:
trans_compose = torchvision.transforms.Compose([torchvision.transforms.Resize((100, 5)), torchvision.transforms.ToTensor()])
train_set_1 = torchvision.datasets.CIFAR10(root='./dataset', train=True, transform=trans_compose, download=True)
test_set_1 = torchvision.datasets.CIFAR10(root='./dataset', train=False, transform=trans_compose, download=True)img_1, target1 = train_set_1[0]writer.add_image('way_2', img_1)
# 这里建议无论下载与否download = True都添加,因为可以检验数据,若下载了也不会再重复下载。
writer.close()
以上代码采用了2种方法对数据集进行处理,可以是:
1、在导入数据集之后实例化一些transforms类,比如这里用到的ToTensor和Resize;
2、在导入数据集前实例化一些transforms类,比如这里用到的ToTensor和Resize,并将其放在Compose中。
需要注意的是:
1、在用到transforms类的功能时一定要注意作用对象,比如这里的Resize作用的图片对象是PIL Image而非Tensor,因此Resize操作要在ToTensor之前;
2、download = True这一项可以一直保留,因为如果下载则会自动跳过而非重复下载;
3、表示相对路径可以是'./文件名',表示“文件名”这个文件位于当前工作目录下。
torchvision之Dataset用法相关推荐
- tf.data.Dataset 用法
tf.data.DatasetAPI支持写入的描述性和高效的输入管线.Dataset用法遵循一个常见模式: 从输入数据创建源数据集. 应用数据集转换来预处理数据. 迭代数据集并处理元素. 迭代以流式方 ...
- DataSet用法详细
DataSet用法详细 一.特点介绍 1.处理脱机数据,在多层应用程序中很有用. 2.可以在任何时候查看DataSet中任意行的内容,允许修改查询结果的方法. 3.处理分级数据 4.缓存更改 5.XM ...
- tensorflow 读取图片 Dataset用法
目录 bmp Dataset.from_tensor_slices: Dataset简单用法 png这个测试ok: 读图片,resize,预测 构建dateset png格式可以训练: bmp Dat ...
- 并不简单的翻页时钟(一):样式篇(Flex布局、line-height、data-set用法、css before after伪元素)
目录 并不简单的翻页时钟 我以为的翻页时钟 实际上的翻页时钟 关键的知识点 效果展示 代码解析 HTML CSS 详解CSS 1.display:flex 元素居中 2.:before .:after ...
- DataSet用法1
DataSet是表和列结构在内存中的表示方式,DataSet支持多表.表间关系.数据约束等,和关系数据库的模型基本一致.(本质上是微型的数据库.包含一组DataTable对象和DataTable之间的 ...
- ASP.NETnbsp;nbsp;DATASET用法
: c#.net 使用方法 1.创建DataSet对象 DataSet ds = new DataSet(); DataSet ds = new DataSet("DataSetName&q ...
- 【日常】pytorch编写“自创”的MRR损失函数
序言 最近重新开始学习Pytorch, 期初抽时间把 PyTorch 中文文档给过了一遍, 主要是把几个重要的模块中的方法熟悉了一下, markdown记了数千行, 但是纸上谈兵的学习方法终究还是浮于 ...
- Pytorch使用笔记
Pytorch使用笔记 nn.Module CNN torch.nn.Conv1d torch.nn.Conv2d torch.nn.ConvTranspose1d RNN LSTM self.reg ...
- PyTorch - 多任务网络之年龄与性别预测
目录 数据集类的构建 torch.utils.data.Dataset implementation 导入包 \__init__() \__len__() \__getitem__() 检验数据集类 ...
最新文章
- python表白代码如何运行-程序员如何实现表白代码
- Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element
- 【Linux】一步一步学Linux——usernetctl命令(175)
- JEPaas代码_((列表,表单)刷新列表||刷新表单数据
- 开源纯C#工控网关+组态软件(七)数据采集与归档
- 问题解决:使用angularjs、ionic框架如何实现返回上一页并刷新
- 如何计算一只鸡的表面积?
- 如何使柱状图左右展示_Excel多次层柱状图,让数据展示更清晰,简单五步就完成...
- jquery.zclip轻量级复制失效问题
- iOS底层探索之多线程(八)—GCD源码分析(函数的同步性、异步性、单例)
- 分组数据筛选(group by后取出每组的第n条数据)
- Java链表创建及遍历方法
- Google已将 xxx 标记为恶意程序并阻止安装的解决办法
- 创新洞察|为什么中国企业更擅长用户导向创新
- linux看oracle数据库实例,oracle数据库实例的创建[linux]
- eclipse+ADT使用第三方静态库及COCOS2d问题汇总
- 小程序 picker下拉菜单实现
- python读取图片像素矩阵
- 惠普打印机2132故障灯大全图解_绝对干货!二手打印机选购攻略!
- html ico 图片 无效,设置favicon.ico manifest.json无效