python torch.utils.data.DataLoader使用方法


Posted in Python onApril 02, 2020

PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中,只要是用PyTorch来训练模型基本都会用到该接口,该接口主要用来将自定义的数据读取接口的输出或者PyTorch已有的数据读取接口的输入按照batch size封装成Tensor,后续只需要再包装成Variable即可作为模型的输入,因此该接口有点承上启下的作用,比较重要。

数据加载器,结合了数据集和取样器,并且可以提供多个线程处理数据集。

在训练模型时使用到此函数,用来把训练数据分成多个小组,此函数每次抛出一组数据。直至把所有的数据都抛出。就是做一个数据的初始化。

python torch.utils.data.DataLoader使用方法

生成迭代数据非常方便,请看如下示例:

"""
  批训练,把数据变成一小批一小批数据进行训练。
  DataLoader就是用来包装所使用的数据,每次抛出一批数据
"""
import torch
import torch.utils.data as Data

BATCH_SIZE = 5

x = torch.linspace(1, 10, 10)
y = torch.linspace(10, 1, 10)
# 把数据放在数据库中
torch_dataset = Data.TensorDataset(x, y)
loader = Data.DataLoader(
  # 从数据库中每次抽出batch size个样本
  dataset=torch_dataset,
  batch_size=BATCH_SIZE,
  shuffle=True,
  num_workers=2,
)


def show_batch():
  for epoch in range(3):
    for step, (batch_x, batch_y) in enumerate(loader):
      # training


      print("steop:{}, batch_x:{}, batch_y:{}".format(step, batch_x, batch_y))


if __name__ == '__main__':
  show_batch()

结果:

python torch.utils.data.DataLoader使用方法

我们来看一下变量类型:

python torch.utils.data.DataLoader使用方法

到此这篇关于python torch.utils.data.DataLoader使用方法的文章就介绍到这了,更多相关torch.utils.data.DataLoader内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现ipsec开权限实例
Nov 11 Python
Python变量作用范围实例分析
Jul 07 Python
详解python进行mp3格式判断
Dec 23 Python
Python实现二分查找与bisect模块详解
Jan 13 Python
Python实现的从右到左字符串替换方法示例
Jul 06 Python
对python requests发送json格式数据的实例详解
Dec 19 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
ipad上运行python的方法步骤
Oct 12 Python
Python for循环及基础用法详解
Nov 08 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
如何用Anaconda搭建虚拟环境并创建Django项目
Aug 02 Python
解决pytorch 保存模型遇到的问题
Mar 03 Python
Python基于stuck实现scoket文件传输
Apr 02 #Python
Python要求O(n)复杂度求无序列表中第K的大元素实例
Apr 02 #Python
Pytorch 使用不同版本的cuda的方法步骤
Apr 02 #Python
pytorch 中的重要模块化接口nn.Module的使用
Apr 02 #Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
Apr 02 #Python
PyTorch中的C++扩展实现
Apr 02 #Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 #Python
You might like
php allow_url_include的应用和解释
2010/04/22 PHP
PHP模块 Memcached功能多于Memcache
2011/06/14 PHP
php查找字符串出现次数的方法
2014/12/01 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
超简单JS二级、多级联动的简单实例
2014/02/18 Javascript
js实现滑动触屏事件监听的方法
2015/05/05 Javascript
jQuery实现div拖拽效果实例分析
2016/02/20 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
IScroll5 中文API参数说明和调用方法
2016/05/21 Javascript
Bootstrap框架的学习教程详解(二)
2016/10/18 Javascript
Vue v-for循环之@click点击事件获取元素示例
2019/11/09 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
在vue中实现某一些路由页面隐藏导航栏的功能操作
2020/09/21 Javascript
python中使用OpenCV进行人脸检测的例子
2014/04/18 Python
收藏整理的一些Python常用方法和技巧
2015/05/18 Python
利用python获取某年中每个月的第一天和最后一天
2016/12/15 Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
Python3如何解决字符编码问题详解
2017/04/23 Python
浅析PHP与Python进行数据交互
2018/05/15 Python
Python实现多线程的两种方式分析
2018/08/29 Python
Python pip 安装与使用(安装、更新、删除)
2019/10/06 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
详解pycharm配置python解释器的问题
2020/10/15 Python
捷克多品牌在线时尚商店:ANSWEAR.cz
2020/10/03 全球购物
如何实现一个自定义类的序列化
2012/05/22 面试题
实习自我鉴定范文
2013/10/30 职场文书
《老王》教学反思
2014/02/23 职场文书
财产公证书样本
2014/04/04 职场文书
作文评语集锦大全
2014/04/23 职场文书
答谢词范文
2015/01/05 职场文书
2015年部门工作总结范文
2015/03/31 职场文书
新员工入职感想
2015/08/07 职场文书
世界文化遗产导游词
2019/08/07 职场文书
Python中Cookies导出某站用户数据的方法
2021/05/17 Python
Pandas加速代码之避免使用for循环
2021/05/30 Python
Mysql数据库索引面试题(程序员基础技能)
2021/05/31 MySQL