首页 > 解决方案 > Mini-batch 表现不如 Batch 梯度下降?

问题描述

我能够从批量梯度下降(批量大小 37000)中获得相当不错的结果,但是当我尝试小批量梯度下降时,我得到的结果非常差(即使使用 adam 和 dropout)。

在批处理 gd 中,我能够获得 100% 的训练和 97% 的 dev/cv 准确度。而在大小为 128 的小批量中,两者的准确率都只有 88% 左右。

训练损失似乎围绕 1.6 旋转,并且不会随着任何进一步的迭代而减少,但当我增加批量大小(因此提高准确性)时会缓慢减少。最终我达到 37000 的批量大小以获得最大准确度。

我尝试调整 alpha 但仍然具有相同的准确性。

我正在训练 mnist 数字数据集。

可能是什么原因?请帮忙

标签: deep-learningneural-network

解决方案


我找到了解决方案

我用于批处理 gd 的 lmbda 值(即 10)对于 mini batch gd 似乎太大了。通过将其降低到 0.1 ,我解决了这个问题。


推荐阅读