数据部分由数据收集、数据划分、数据读取、数据预处理四部分组成。
Dataloader与Dataset是Pytorch数据读取的核心
torch.utils.data.DataLoader()
功能:构建可迭代的数据装载器
• dataset: Dataset类,决定数据从哪读取及如何读取
• batchsize : 批大小
• num_works: 是否多进程读取数据
• shuffle: 每个epoch是否乱序
• drop_last:当样本数不能被batchsize整 除时,是否舍弃最后一批数据
Epoch: 所有训练样本都已输入到模型中,称为一个Epoch
Iteration:一批样本输入到模型中,称之为一个Iteration
Batchsize:批大小,决定一个Epoch有多少个Iteration
样本总数:80, Batchsize:8
1 Epoch = 10 Iteration
样本总数:87, Batchsize:8
1 Epoch = 10 Iteration ? drop_last = True
1 Epoch = 11 Iteration ? drop_last = False
torch.utils.data.Dataset()
功能:Dataset抽象类,所有自定义的 Dataset需要继承它,并且复写 getitem()
getitem :
接收一个索引,返回一个样本