python torch.utils.data.DataLoader使用方法
作者:今夜无风 时间:2023-02-20 16:00:16
PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中,只要是用PyTorch来训练模型基本都会用到该接口,该接口主要用来将自定义的数据读取接口的输出或者PyTorch已有的数据读取接口的输入按照batch size封装成Tensor,后续只需要再包装成Variable即可作为模型的输入,因此该接口有点承上启下的作用,比较重要。
数据加载器,结合了数据集和取样器,并且可以提供多个线程处理数据集。
在训练模型时使用到此函数,用来把训练数据分成多个小组,此函数每次抛出一组数据。直至把所有的数据都抛出。就是做一个数据的初始化。
生成迭代数据非常方便,请看如下示例:
"""
批训练,把数据变成一小批一小批数据进行训练。
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()
结果:
我们来看一下变量类型:
来源:https://www.cnblogs.com/demo-deng/p/10623334.html
标签:torch.utils.data.DataLoader
0
投稿
猜你喜欢
mysql 查询当天、本周,本月,上一个月的数据
2024-01-27 02:10:53
python实时检测键盘输入函数的示例
2023-01-27 19:19:28
django 前端页面如何实现显示前N条数据
2023-06-07 10:50:33
MYSQL METADATA LOCK(MDL LOCK) 理论及加锁类型测试
2024-01-23 11:16:46
关于Python中的if __name__ == __main__详情
2022-05-04 10:16:28
用Frontpage设计网站主页
2008-10-23 13:44:00
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2024-01-25 20:06:36
python中input()的用法及扩展
2021-07-05 08:45:57
Dreamweaver滑动菜单的制作[图]
2007-11-08 12:43:00
Python利用redis-py实现集合与有序集合的常用指令操作
2021-02-11 21:29:24
详细分析Python可变对象和不可变对象
2021-03-10 22:50:10
JavaScript实现复制内容到粘贴板代码
2024-04-25 13:14:01
python的三目运算符和not in运算符使用示例
2021-07-18 23:36:35
Python实现返回数组中第i小元素的方法示例
2021-12-23 14:58:44
一篇文章搞懂python的转义字符及用法
2022-01-29 17:19:12
keras做CNN的训练误差loss的下降操作
2023-09-03 07:41:07
vue+canvas实现数据实时从上到下刷新瀑布图效果(类似QT的)
2024-05-09 09:16:28
ASP 错误代码
2009-05-11 12:38:00
一篇文章带你入门SQL编程
2024-01-12 13:05:22
asp数组去重复和数组排序
2008-10-30 12:51:00