torch.utils.data工具包,包括以下4个类:
1)Dataset: 是一个抽象类,其他数据集需要继承这个类,并且覆盖其中的两个方法(getitem, len)
2) DataLoader: 定义一个新的迭代器,实现批量(batch)读取,打乱数据(shuffle)并提供并行加速等功能
3)random_split: 把数据集随机拆分为给定长度的非重叠的新数据集
4)*sampler:多种采样函数
utils.data包括Dataset和DataLoader。torch.utils.data.Dataset为抽象类。自定义数据集需要继承这个类,并实现两个函数,一个是__len__, 另一个是__getitem__, 前者听数据的大小(size),后者通过给定索引获取数据和标签。__getitem__一次只能获取一个数据,所以需要通过torch.utils.data.DataLoader来定义一个新的迭代器,实现batch读取。
torchvision有4个功能模块:model, datasets, transforms和utils。
transforms提供了对PIL Image对象和Tensor对象的常用操作
1)对PIL Image的常见操作如下