1、模型中使用数据加载器的目的
在前面的线性回归模型中,我们使用的数据很少,所以直接把全部数据放到模型中去使用。但是在深度学习中,数据量通常是都非常多,非常大的,如此大量的数据,不可能一次性的在模型中进行向前的计算和反向传播,经常我们会对整个数据进行随机的打乱顺序,把数据处理成个个的batch,同时还会对数据进行预处理。
所以,接下来介绍pytorch中的数据加载的方法。
2、数据集类
2.1 Dataset基类介绍:
在torch中提供了数据集的基类
torch.utils.data.Dataset, 继承这个基类,我们能够非常快速的实现对数据的加载。
torch.utils.data.Dataset的源码如下:
from torch.utils.data import Dataset
class Dataset(object):
def __getitem__(self, index):
raise NotImplementedError
def __len__(se1f):
raise NotImp lementedError
def __add__(se1f, other):
return ConcatDataset([self, other])
可知:我们需要在自定义的数据集类中继承D

本文介绍了在PyTorch中如何使用数据加载器Dataset和DataLoader处理大规模数据。通过自定义数据集类,实现数据的读取、批处理、打乱顺序和多线程加载。详细解析了Dataset基类的__len__和__getitem__方法,并给出了数据加载的示例代码,展示了DataLoader参数的设置和使用。
最低0.47元/天 解锁文章
3840

被折叠的 条评论
为什么被折叠?



