AdaBelief Optimizer: Adapting Stepsizes by the Belief in Observed Gradients

Zhuang J., Tang T., Ding Y., Tatikonda S., Dvornek N., Papademetris X. and Duncan J. S. AdaBelief Optimizer: Adapting stepsizes by the belief in observed gradients. NeurIPS, 2020.

本文提出了一种 Adam 优化器上的改进, 能够更加有效地设计步长.

AdaBelief

  • AdaBelief 的初衷很简单, 如上图所示, 据此我们分析三种情况下的合理步长.

  • 对于第一种情况, 梯度 \(|g|\) 很小, 此时理想的 optimizer 理应给予一个较大的步长, Adam 的确有能力做到这一点 (估计的方差比较小);

  • 对于第二种情况, 梯度 \(|g|\) 很大, 且位于极小值附近, 理应设置一个较小的步长, Adam 也有能力做到这一点 (此时估计的方差比较大);

  • 对于第三种情况, 梯度 \(|g|\) 很大, 但是此时可以设置一个较大的步长, 但是实际上 Adam 依然给予一个较小的步长. 由于前后梯度差异很大, 所以 AdaBelief 实际上依然可以给予一个较大的步长.

注: 根据 github 的 issue 里, 有人发现 \(\epsilon\) 对于替代 SGD 的一个重要性, 注意到, 当 \(\epsilon\) 足够大的时候, \(s_t\) 后面会收敛到相同的值, 此时 AdaBelief 的表现就和 SGD 类似了. 所以这也可能是为什么 AdaBelief 也能够在 CV 上取得比较好的结果原因之一.

注: 我不是很清楚 Update

\[\theta_{t} \leftarrow \prod_{\mathcal{F}, \ldots} (\cdots) \]

是怎么来的, 好像和 online learning 有点关系.

代码

[official-code]

posted @ 2024-07-10 17:05  馒头and花卷  阅读(19)  评论(0编辑  收藏  举报