当处于完美的“长谷”状态时,动力有帮助吗?

数据挖掘 神经网络 优化 梯度下降
2021-10-02 20:41:31

我正在考虑下图,其中我们有两个权重和一个错误(因此我们可以进行 3D 可视化)。在这种情况下,“长谷”看起来像x2在梯度平面中,但在垂直平面中,函数仍然可以最小化:

在此处输入图像描述

根据我的理解,所有基于梯度的优化算法都应该像 SGD 一样被“困”在鞍点上。为什么在这种情况下使用动量项会有所帮助?

(对不起,我不知道这些图片是谁制作的。还有更多可用的。)

2个回答

答案很简单:在完美的情况下永远不会。这些优化器是一阶方法(与 Hessian-Free 优化不同)。它们从上面的静止点逃逸的原因是在“正确”方向上有一些小的梯度(对于普通的 SGD 来说太小了)。动量和 Nesterov 梯度可以随着时间的推移在该方向上建立速度,而 Adagrad/Adadelta/RMS 可以立即缩放梯度(在过去梯度较小的方向上增加它)。

动画由亚历克·拉德福创作

动量通过“推动”局部最小值或鞍点来提供帮助。当然,它不会向最佳方向推进,这就是它表现出振荡的原因,正如您在上面看到的,但它最终会恢复。

为了进一步研究,我建议阅读有关preconditioningcondition number的内容。