Pytorch 学习记录
DATASETS & DATALOADERS
Datasets
Datasets类是Pytorch中存储数据的结构,也可以自己定制Datasets类,方法很简单,可参考上方的Pytorch Tutorials 链接。
Datasets有以下特性,容易忘记,记录一下:
- Datasets类的对象支持索引:如dataset[0] 就是第0条数据(data0, label0),是一个turple; 其中data0 的类型为tensor;
- 查看数据集长度的方法: len();
- 已经忘了…
DataLoader
DataLoader将Datasets的对象变为一个迭代器,在初始化DataLoader的同时可完成多种训练所需的优化,比如将训练数据分成多个batch,batch的大小为多少,在每一个epoch中是否要reshuffle数据防止过拟合,以及是否要使用Python的multiprocessing来加速数据的读取操作。
DataLoader的一些特性:
- 不支持索引,只能迭代读取数据 for i in test_data_loader:…
- DataLoader的每一项都是一个list,[data_tensor, label_tensor];
2.1.~ 其中data_tensor.size() = [batch_size, data.size()]; 比如[100, 1, 32, 32]
2.2.~ label_tensor.size() = [batch_size]; 比如 [100]