栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

PyTorch:如何将DataLoader用于自定义数据集

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PyTorch:如何将DataLoader用于自定义数据集

是的,那是可能的。只需自己创建对象,例如

import torch.utils.data as data_utilstrain = data_utils.TensorDataset(features, targets)train_loader = data_utils.DataLoader(train, batch_size=50, shuffle=True)

其中,

features
targets
是张量。
features
必须为2D,即矩阵,其中每行代表一个训练样本,并且
targets
可以为1D或2D,具体取决于您要预测标量还是矢量。

希望有帮助!


编辑 :对@sarthak的问题的答复

基本上是。如果您创建了类型的对象

TensorData
,则构造函数将调查特征张量(实际上称为
data_tensor
)和目标张量(称为
target_tensor
)的第一个维度是否具有相同的长度:

assert data_tensor.size(0) == target_tensor.size(0)

但是,如果您希望随后将这些数据馈入神经网络,则需要小心。虽然卷积层可以像您一样处理数据,但是(我认为)所有其他类型的层都希望数据以矩阵形式给出。因此,如果遇到这样的问题,那么一个简单的解决方案就是使用方法将4D数据集(例如,以某种张量给定

FloatTensor
)转换为矩阵
view
。对于您的5000xnxnx3数据集,它看起来像这样:

2d_dataset = 4d_dataset.view(5000, -1)

(该值

-1
告诉PyTorch自动找出第二维的长度。)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/596419.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号