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用法相关推荐

  1. tf.data.Dataset 用法

    tf.data.DatasetAPI支持写入的描述性和高效的输入管线.Dataset用法遵循一个常见模式: 从输入数据创建源数据集. 应用数据集转换来预处理数据. 迭代数据集并处理元素. 迭代以流式方 ...

  2. DataSet用法详细

    DataSet用法详细 一.特点介绍 1.处理脱机数据,在多层应用程序中很有用. 2.可以在任何时候查看DataSet中任意行的内容,允许修改查询结果的方法. 3.处理分级数据 4.缓存更改 5.XM ...

  3. tensorflow 读取图片 Dataset用法

    目录 bmp Dataset.from_tensor_slices: Dataset简单用法 png这个测试ok: 读图片,resize,预测 构建dateset png格式可以训练: bmp Dat ...

  4. 并不简单的翻页时钟(一):样式篇(Flex布局、line-height、data-set用法、css before after伪元素)

    目录 并不简单的翻页时钟 我以为的翻页时钟 实际上的翻页时钟 关键的知识点 效果展示 代码解析 HTML CSS 详解CSS 1.display:flex 元素居中 2.:before .:after ...

  5. DataSet用法1

    DataSet是表和列结构在内存中的表示方式,DataSet支持多表.表间关系.数据约束等,和关系数据库的模型基本一致.(本质上是微型的数据库.包含一组DataTable对象和DataTable之间的 ...

  6. ASP.NETnbsp;nbsp;DATASET用法

    : c#.net 使用方法 1.创建DataSet对象 DataSet ds = new DataSet(); DataSet ds = new DataSet("DataSetName&q ...

  7. 【日常】pytorch编写“自创”的MRR损失函数

    序言 最近重新开始学习Pytorch, 期初抽时间把 PyTorch 中文文档给过了一遍, 主要是把几个重要的模块中的方法熟悉了一下, markdown记了数千行, 但是纸上谈兵的学习方法终究还是浮于 ...

  8. Pytorch使用笔记

    Pytorch使用笔记 nn.Module CNN torch.nn.Conv1d torch.nn.Conv2d torch.nn.ConvTranspose1d RNN LSTM self.reg ...

  9. PyTorch - 多任务网络之年龄与性别预测

    目录 数据集类的构建 torch.utils.data.Dataset implementation 导入包 \__init__() \__len__() \__getitem__() 检验数据集类 ...

最新文章

  1. python表白代码如何运行-程序员如何实现表白代码
  2. Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element
  3. 【Linux】一步一步学Linux——usernetctl命令(175)
  4. JEPaas代码_((列表,表单)刷新列表||刷新表单数据
  5. 开源纯C#工控网关+组态软件(七)数据采集与归档
  6. 问题解决:使用angularjs、ionic框架如何实现返回上一页并刷新
  7. 如何计算一只鸡的表面积?
  8. 如何使柱状图左右展示_Excel多次层柱状图,让数据展示更清晰,简单五步就完成...
  9. jquery.zclip轻量级复制失效问题
  10. iOS底层探索之多线程(八)—GCD源码分析(函数的同步性、异步性、单例)
  11. 分组数据筛选(group by后取出每组的第n条数据)
  12. Java链表创建及遍历方法
  13. Google已将 xxx 标记为恶意程序并阻止安装的解决办法
  14. 创新洞察|为什么中国企业更擅长用户导向创新
  15. linux看oracle数据库实例,oracle数据库实例的创建[linux]
  16. eclipse+ADT使用第三方静态库及COCOS2d问题汇总
  17. 小程序 picker下拉菜单实现
  18. python读取图片像素矩阵
  19. 惠普打印机2132故障灯大全图解_绝对干货!二手打印机选购攻略!
  20. html ico 图片 无效,设置favicon.ico manifest.json无效

热门文章

  1. linux notepad 安装教程,在Linux系统下安装Notepad++最简单的方法
  2. 关于 SAP UI5 Container 控件 aggregation 的深入分析试读版
  3. 多智能体强化学习之QMIX
  4. java面试资料(一)
  5. 求生之路2服务器指令比较全
  6. Java中省市区三级联动,附前后台及数据库
  7. nagios 安装脚本
  8. Boost型开关电源应用之TPS54340
  9. VMware-workstation Pro 16 详细安装教程以及Linux镜像下载(以CentOS7为例)
  10. QT-功能-实现文件操作一系列功能(打开,写入,更改,删除)