文章目录

  • 1.前言
  • 2.DataLoader

1.前言

Pytorch 中提供了一种帮你整理你的数据结构的好东西, 叫做 DataLoader, 我们能用它来包装自己的数据, 进行批训练。

2.DataLoader

DataLoader 是 torch 给你用来包装你的数据的工具. 所以你要将自己的 (numpy array 或其他) 数据形式装换成 Tensor, 然后再放进这个包装器中. 使用 DataLoader 有什么好处呢? 就是他们帮你有效地迭代数据

import torch
from torch.utils.data import DataLoader, TensorDataset
torch.manual_seed(1)BATCH_SIZE = 4     #意味着一个epoch有两个迭代
x = torch.linspace(1,20,20)
y = torch.linspace(20,1,20)torch_dataset = TensorDataset(x,y)      loader = DataLoader(dataset = torch_dataset,batch_size = BATCH_SIZE,shuffle = True,num_workers = 4
)for epoch in range(3):for step , (batch_x, batch_y) in enumerate(loader):    #stepb表示一个eopch中的迭代次数print('Epoch:',epoch, '|Step:',step,'|batch x:',batch_x.numpy(),'|batch y:',batch_y.numpy() )


可以看出, 每步都导出了4个数据进行学习. 然后每个 epoch 的导出数据都是先打乱了以后再导出.(通过shuffle = True控制)

真正方便的还不是这点. 如果我们改变一下 BATCH_SIZE = 8, 这样我们就知道, step=0 会导出8个数据, 但是, step=2 时数据库中的数据不够 8个, 这时怎么办呢:

这时, 在 step=1 就只给你返回这个 epoch 中剩下的数据就好了.

Pytorch——DataLoader(批训练)相关推荐

  1. PyTorch 实现批训练和 Optimizer 优化器

    批训练 import torch import torch.utils.data as DataBATCH_SIZE = 5x = torch.linspace(1, 10, 10) # this i ...

  2. pytorch dataloader num_workers参数设置导致训练阻塞

    参考:https://blog.csdn.net/qian1122221/article/details/88579684 问题描述: 最近在用RFBnet (源码是pytorch的)训练RSNA的比 ...

  3. 使用Pytorch DataLoader快捷封装训练数据、测试数据的X与Y

    DataSet的用法可以参考:pytorch 构造读取数据的工具类 Dataset 与 DataLoader (pytorch Data学习一) DataLoader的封装方法可以参考:Pytorch ...

  4. pytorch加载训练数据集dataloader操作耗费时间太久,该如何解决?

    笔者在使用pytorch加载训练数据进行模型训练的时候,发现数据加载需要耗费太多时间,该如何缩短数据加载的时间消耗呢?经过查询相关文档,总结实际操作过程如下: 1.尽量将jpg等格式的文件保存为bmp ...

  5. pytorch读取文本训练

    2019独角兽企业重金招聘Python工程师标准>>> # References # https://github.com/yunjey/pytorch-tutorial/blob/ ...

  6. pytorch如何将训练提速?

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx 入门pytorch似乎不慢,写好dataloader和model就可以跑起来了,然而把模型搭好 ...

  7. 使用PyTorch Lightning自动训练你的深度神经网络

    点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 作者:Erfandi Maula Yusnu, Lalu 编译:ronghuai ...

  8. PyTorch安装测试训练建自己的数据集

    Pytorch安装测试训练建自己的数据集 前言 一.PyTorch是什么? 二.PyTorch环境搭建 1.设备要求 2.安装Pytorch 3.验证PyTorch 二.CIFAR10测试 1.关于C ...

  9. [PyTorch]——DataLoader Num_workers

    前段时间,我在调整yolo系列代码的时候,运行代码后,会提示 win页面太小问题,这种问题的解决办法之一就是通过调整 DataLoader的num_workers值的大小来解决,为了进一步了解num_ ...

最新文章

  1. ​“后进生”数学学科上演完美逆袭,成最具竞争力专业之一
  2. Microbiome:宏基因组分箱流程MetaWRAP简介
  3. SQL语句小tips(持续更新)
  4. SAP UI5 CreateBindingContext 方法的实现逻辑
  5. 解决Cannot change version of project facet Dynamic Web M
  6. mysql 事实表 维度表_数据库的事实表与维度表
  7. Centos Docker 安装 Redis 并测试使用记录
  8. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals
  9. 关于elastic-job 分片与线程问题
  10. WIN32汇编语言之通用对话框的使用
  11. THINKPAD SL400 重装XP系统的经历
  12. 符号——Alt+数字键
  13. pcsx2解决竖线问题:
  14. 2021最新 python爬取12306列车信息自动抢票并自动识别验证码(三)购票篇
  15. 极致的遮罩处理(一):DeepFaceLab手动遮罩编辑。
  16. 解决Windows找不到steam_api.dll文件
  17. 骰子 (入门概率DP)
  18. 伯克利大学sawyer机器人环境配置
  19. 2021年熔化焊接与热切割找解析及熔化焊接与热切割模拟考试
  20. 程序数据集散地:数据库(1)

热门文章

  1. 第3章 快速开始:HelloWorld 《Kotin 编程思想·实战》
  2. 前端开发-Weex初试
  3. 解决NSTextContainer分页时文本截断问题
  4. linux 脚本 列表,shell -脚本 给出多个数据列表 执行任务
  5. ETL 工具的比较:Talend,Kettle,Informatica 等
  6. C#中使用GUID的笔记
  7. 程序员的自我修养(序)-量子
  8. ExtJs 设置GridPanel表格文本垂直居中
  9. Java使用XFire调用WebService接口
  10. Oracle数据同步接口,增量数据从ERP系统到本地临时表封装解决方案