Mad*_*ker 3 machine-learning deep-learning conv-neural-network keras
我使用 Keras 的 CNN 对 MNIST 数据集进行分类。我发现使用不同的批量大小会产生不同的精度。为什么会这样呢?
使用批量大小 1000 (Acc = 0.97600)
使用批量大小 10 (Acc = 0.97599)
虽然差别很小,但为什么会有差别呢? 编辑-我发现差异只是因为精度问题,它们实际上是相等的。
这是因为训练过程中存在小批量梯度下降效应。您可以在这里找到很好的解释,我在这里提到了该链接的一些注释:
批量大小是学习过程中的一个滑块。
- 小值可以使学习过程快速收敛,但会在训练过程中产生噪声。
- 大值会导致学习过程缓慢收敛并准确估计误差梯度。
该链接的一个重要说明是:
所呈现的结果证实,在给定的计算成本下,在广泛的实验中,使用小批量可以实现最佳的训练稳定性和泛化性能。在所有情况下,批量大小 m = 32 或更小都获得了最佳结果
这就是本文的结果。
编辑
在这里我还应该提两点:
| 归档时间: |
|
| 查看次数: |
7625 次 |
| 最近记录: |