7.2 批大小的调整实验
为了观察不同批大小对模型收敛速度的影响,我们使用经典的LeNet网络进行图像分类。
- 调用
paddle.vision.datasets.MNIST函数读取MNIST数据集,并将数据进行规范化预处理。 - 使用
paddle.vision.models.LeNet快速构建LeNet网络 - 使用
paddle.io.DataLoader根据批大小对数据进行划分 - 使用交叉熵损失函数
- 标准的随机梯度下降优化器
paddle.optimizer.SGD
通常情况下,批大小与学习率大小成正比。
选择批大小为16、32、64、128、256的情况进行训练。
相应地,
学习率大小被设置为0.01、0.02、0.04、0.08、0.16。
- 可视化损失函数的变化趋势
- 尝试画出按迭代的损失变化图,观察不同的批大小在两种损失图中的下降效果是否相同。
对比下面两种实验设置,分析和比较它们的区别。
- 批大小增大一倍,学习率不变。
- 批大小不变,学习率减少一半。