pytorch 加载数据集
pytorch初学者,想加载自己的数据,了解了一下数据类型、维度等信息,方便以后加载其他数据。
1 torchvision.transforms实现数据预处理
transforms.Totensor()操作必须要有,将数据转为张量格式。
2 torch.utils.data.Dataset实现数据读取
要使用自己的数据集,需要构建Dataset子类,定义子类为MyDataset,在MyDataset的init函数中定义path_dict变量,来获取不同类型的数据的路径。
定义子类MyDataset时,必须要重载两个函数 getitem 和 len,
__getitem__:实现数据集的下标索引,返回对应的数据及标签;
__len__:返回数据集的大小。
设加载的数据集大小为L;
定义MyDataset实例:my_datasets = MyDataset(data_dir, transform = data_transform) 。

my_datasets 由L个tuple组成,len(my_datasets) = L;
每个tuple长度为2:0:tensor 样本(Channel,Height,Width)
1:int 标签



3 torch.utils.data.DataLoader实现数据集加载
torch.utils.data.DataLoader()合成数据并提供迭代访问,由两部分组成:
—dataset(Dataset):输入要加载的数据,就是上面的my_datasets;
—batch_size,shuffle,sampler,batch_sampler,num_workers,collate_fn, drop_last,timeout,worker_init_fn等参数。
其中:batch_size:批尺寸,默认为1;
shuffle:是否在每个epoch开始随机打乱数据,默认为False;
设data_loader长度为 l ;
加载数据:data_loader = DataLoader(my_datasets, batch_size = BATCH_SIZE, shuffle = True)
data_loader 由 l 个 tuple组成,l = len(data_loader) = len(my_datasets) / batch_size;
迭代访问:


e 长度为2:0:int step 表示第几个batch
1:list(长度为2)表示一个batch包含的所有样本和标签
0:tensor 样本(Batch_size,Channel,Height,Width)
1:tensor 标签 Batch_size


pytorch 加载数据集的更多相关文章
- pytorch 加载mnist数据集报错not gzip file
利用pytorch加载mnist数据集的代码如下 import torchvision import torchvision.transforms as transforms from torch.u ...
- SciKit-Learn 加载数据集
章节 SciKit-Learn 加载数据集 SciKit-Learn 数据集基本信息 SciKit-Learn 使用matplotlib可视化数据 SciKit-Learn 可视化数据:主成分分析(P ...
- pytorch加载语音类自定义数据集
pytorch对一下常用的公开数据集有很方便的API接口,但是当我们需要使用自己的数据集训练神经网络时,就需要自定义数据集,在pytorch中,提供了一些类,方便我们定义自己的数据集合 torch.u ...
- Pytorch加载并可视化FashionMNIST指定层(Udacity)
加载并可视化FashionMNIST 在这个notebook中,我们要加载并查看 Fashion-MNIST 数据库中的图像. 任何分类问题的第一步,都是查看你正在使用的数据集.这样你可以了解有关图像 ...
- [Pytorch]Pytorch加载预训练模型(转)
转自:https://blog.csdn.net/Vivianyzw/article/details/81061765 东风的地方 1. 直接加载预训练模型 在训练的时候可能需要中断一下,然后继续训练 ...
- [Python]-sklearn模块-机器学习Python入门《Python机器学习手册》-02-加载数据:加载数据集
<Python机器学习手册--从数据预处理到深度学习> 这本书类似于工具书或者字典,对于python具体代码的调用和使用场景写的很清楚,感觉虽然是工具书,但是对照着做一遍应该可以对机器学习 ...
- pytorch加载预训练模型参数的方式
1.直接使用默认程序里的下载方式,往往比较慢: 2.通过修改源代码,使得模型加载已经下载好的参数,修改地方如下: 通过查找自己代码里所调用网络的类,使用pycharm自带的函数查找功能(ctrl+鼠标 ...
- pytorch加载数据的方法-没弄,打算弄
参考:https://www.jianshu.com/p/aee6a3d72014 # 网络,netg为生成器,netd为判别器 netg, netd = NetG(opt), NetD(opt) # ...
- pytorch 加载训练好的模型做inference
前提: 模型参数和结构是分别保存的 1. 构建模型(# load model graph) model = MODEL() 2.加载模型参数(# load model state_dict) mode ...
随机推荐
- 安装gnvm (windows下nodejs版本管理工具)
一些写在前面的话,为什么装这个?前两天看avalon视频的时候,里面有介绍去哪儿的前端构建工具fekit.我这人吧,好奇心特别强,就打算安装用用看.在安装时它提示要求node版本0.8.x,所以我选择 ...
- 我的NopCommerce之旅(9): 编写Plugin实例
一.基础介绍 ——In computing, a plug-in (or plugin) is a set of software components that add specific abili ...
- FTP上传下载 C#辅助类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- Hibernate三种批量处理数据
概念:批量处理数据是指在一个事务场景中处理大量数据. 在应用程序中难以避免进行批量操作,Hibernate提供了以下方式进行批量处理数据: (1)使用HQL进行批量操作 数据库层面 execute ...
- ios 自定义消息提示框
自定义提示框,3秒钟后自动消失.如上图显示效果. 提示框加载代码: - (void)viewDidLoad { [super viewDidLoad]; //将view背景颜色变更为黄色 self.v ...
- block 应用说明
一.Block定义 Block可以理解为一个函数指针(即它是一个指针,指向某个函数) returnType (^blockName) (parameter list) = ^ (parameter l ...
- 利用UnblockNeteaseMusic实现网易云破版权,并实现shell可快速访问
注:本篇包含mac及windows下安装方式详细 mac安装 前提:安装有node环境,可参考 mac下安装nodejs 安装 下载git代码到本地 git clone https://github. ...
- 使用python查询天气
python主代码 weather.py import urllib2 import json from city import city cityname = raw_input('你想查哪个城市的 ...
- ios push Payload
https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotifi ...
- mybatis 原理研究
1. mybatis 是使用JDBC来实现的, 所以需要我们首先了解JDBC 的查询 ①加载JDBC驱动 ②建立并获取数据库连接 ③设置sql语句的传递参数 ④执行sql语句并获得结果 ⑤对结果进行转 ...