Adam优化器的Initialization Bias Corr

2020-03-04  本文已影响0人  四碗饭儿
Adam

如上图所示,算法中涉及两个滑动平均m_tv_tm_t是梯度的滑动平均,v_t是梯度的平方的的滑动平均。问题出在这两个变量的初始化,它们都被初始化为0,那么在迭代之初和decay非常弱的时候(\beta \sim 1),会出现 0/0,导致溢出。

因此,Adam使用了一个简单的初始化校正。为了纠正滑动平均v_t和我们真正想要的E[g_t^2]之间的差距,我们来算一下E[v_t]

$v_t$
discrepancy

如果E(g_i^2)是平稳的,即每个时刻的均值一样,那么我们有\zeta = 0。那么唯一的差别就仅有1 - \beta_2^t。所以除掉它就好啦!

上一篇 下一篇

猜你喜欢

热点阅读