使用Pytorch DataLoader快捷封装训练数据、测试数据的X与Y
DataSet
的用法可以参考:pytorch 构造读取数据的工具类 Dataset 与 DataLoader (pytorch Data学习一)
DataLoader
的封装方法可以参考:Pytorch DataLoader一次性封装多种数据集(pytorch Data学习六)
这里博主提供的是一个工具,整个封装流程是:
- 构造
DataSet
用以定义数据集x与y的模板 - 使用
sklearn.datasets.make_regression
生成回归任务的数据 - 使用
pytorch
的Tensor
格式封装产生的数据 - 将
Tensor
格式数据封装如DataSet
- 将
DataSet
封装入DataLoader
示例代码
from torch.utils.data import Dataset
import torchclass DatasetXY(Dataset):def __init__(self, x, y):self._x = xself._y = yself._len = len(x)def __getitem__(self, item): # 每次循环的时候返回的值return self._x[item], self._y[item]def __len__(self):return self._lendef load_data(samples=1000, n_features=10, split_train_size: float = 0.3):"""用来生成回归任务的训练、测试数据"""from sklearn.datasets import make_regressionfrom sklearn.model_selection import train_test_splitfrom torch.utils.data import DataLoader# 使用sklearn生成回归任务数据data_x, data_y = make_regression(n_samples=samples, n_features=n_features)x_train, x_test, y_train, y_test = train_test_split(data_x, data_y, train_size=split_train_size, random_state=0)# 封装为dataloadertrain_loader = DataLoader(DatasetXY(torch.Tensor(x_train).float(), torch.Tensor(y_train).float()),batch_size=10, shuffle=False, drop_last=True, num_workers=0)test_loader = DataLoader(DatasetXY(torch.Tensor(x_test).float(), torch.Tensor(y_test).float()),batch_size=10, shuffle=False, drop_last=True, num_workers=0)return train_loader, test_loaderdef main():train_loader, test_loader = load_data()for train_x, train_y in train_loader:print("打印训练数据:")print("train_x:", train_x)print('train_y:', train_y)breakfor test_x, test_y in test_loader:print("打印训练数据:")print("test_x:", test_x)print('test_y:', test_y)breakif __name__ == '__main__':main()
使用Pytorch DataLoader快捷封装训练数据、测试数据的X与Y相关推荐
- python sklearn生成分类、回归任务数据集(可选切分训练数据/测试数据)
主要是基于sklearn的make_regression与make_classification生成数据 import pandas as pddef load_data(samples=1000, ...
- Pytorch专题实战——批训练数据(DataLoader)
文章目录 1.计算流程 2.Pytorch构造批处理数据 2.1.导入必要模块 2.2.定义数据类 2.3.定义DataLoader 2.4.打印效果 1.计算流程 # Implement a cus ...
- Pytorch DataLoader一次性封装多种数据集(pytorch Data学习六)
Pytorch的DataLoader不能够直接达到这个效果,必须要借助DataSet来实现 DataSet的用法可以参考:pytorch 构造读取数据的工具类 Dataset 与 DataLoader ...
- pytorch apex +ddp 分布式训练+数据优化
1.DDP代码添加讲解 https://blog.csdn.net/cdknight_happy/article/details/108262595 2.apex 官网 apex + ddp + 数据 ...
- pytorch Dataset, DataLoader产生自定义的训练数据
pytorch Dataset, DataLoader产生自定义的训练数据 目录 pytorch Dataset, DataLoader产生自定义的训练数据 1. torch.utils.data.D ...
- pytorch dataset读取数据流程_高效 PyTorch :如何消除训练瓶颈
加入极市专业CV交流群,与 10000+来自港科大.北大.清华.中科院.CMU.腾讯.百度 等名校名企视觉开发者互动交流! 同时提供每月大咖直播分享.真实项目需求对接.干货资讯汇总,行业技术交流.关注 ...
- tensorflow2.0中valid_data的作用是在训练的过程对对比训练数据与测试数据的准确率 损失率,便于判断模型的训练效果:是过拟合还是欠拟合(过拟合)
tensorflow2.0中valid_data的作用是在训练的过程对对比训练数据与测试数据的准确率,便于判断模型的训练效果:是过拟合还是欠拟合 过拟合:训练数据的准确率较高而测试数据的准确率较低 欠 ...
- 机器学习的训练数据(Training Dataset)、测试数据(Testing Dataset)和验证数据(Validation Dataset)
三者的意义 - 训练数据:用来训练模型的数据 - 验证数据:用来检验模型准确率 - 测试数据:再一次确认验证数据集中的模型是好的模型. 一般步骤: 测试数据集和验证数据的数据一定不能用来训练,否则会出 ...
- 【pytorch】MobileNetV2迁移学习+可视化+训练数据保存
一.前言 由于写论文,不单单需要可视化数据,最好能将训练过程的完整数据全部保存下来.所以,我又又又写了篇迁移学习的文章,主要的改变是增加了训练数据记录的模块,可以将训练全过程的数据记录为项目路径下的E ...
最新文章
- C#中将字符串内容换行写入到txt文件中
- Strategic game(树的最小点覆盖)
- A*搜索算法--游戏寻路
- 丁克是什么意思,丁克家庭是什么意思,丁克家庭为什么越来越多
- 如何防范电改下分布式光伏的风险
- 聊聊ES7与ES8特性
- php修改语法错误,php语法检查的方法总结
- 语音识别相关工具和资料分享
- 2013第44周日小结
- visa虚拟卡生成器_虚拟银行卡汇总
- 使用油猴脚本在网页中插入按键
- 3DMax环境贴图无法正常显示的一种解决方法
- 虚拟机VirtualBox中Ubuntu和windows共享文件夹访问权限问题
- Android: 如何切换 SCO 链路。
- Casbin-authz-plugin:基于Casbin的Docker权限管理、访问控制插件
- Android开发应用案例——简易计算器(附完整源码)
- 2013年各大小IT公司待遇,绝对真实,一线数据!(初版)
- 关于safiry开启无痕浏览时本地存储的处理
- 位(Bit)与字节(Byte)
- 在线播放音乐AVPlayer的使用