RMSprop

1. 简介

RMSprop 算法是 AdaGrad 算法的改进,可以在有些情况下避免 AdaGrad 算法中学习率不断单调下降以至于过早衰减的缺点。

2. 原理

第 tt 次迭代时:

  • RMSprop 算法首先计算每次迭代梯度 ∂L∂W\frac{\partial L}{\partial \boldsymbol{W}} 平方的指数衰减移动平均:

ht=βht−1+(1−β)∂L∂Wt−1⊙∂L∂Wt−1\begin{array}{c} \boldsymbol{h}_t = \beta \boldsymbol{h}_{t-1} + (1-\beta)\frac{\partial L}{\partial \boldsymbol{W}_{t-1}} \odot \frac{\partial L}{\partial \boldsymbol{W}_{t-1}} \end{array}

其中,β\beta 为衰减率,一般取指为 0.90.9 。

  • RMSprop 算法的参数更新公式为:

Wt=Wt−1−η1ht+ε∂L∂Wt−1\begin{array}{c} \boldsymbol{W}_t = \boldsymbol{W}_{t-1} - \eta \frac{1}{\sqrt{\boldsymbol{h}_t+\boldsymbol{\varepsilon}}} \frac{\partial L}{\partial \boldsymbol{W}_{t-1}} \end{array}

其中,W\boldsymbol{W} 为需要更新的参数,LL 为损失函数,∂L∂W\frac{\partial L}{\partial \boldsymbol{W}} 为 LL 关于 W\boldsymbol{W} 的梯度,η\eta 为学习率,⊙\odot 表示对应矩阵元素的乘法,ε\boldsymbol{\varepsilon} 是为了保持数值稳定而设置的非常小的常数(一般取 e−7e^{-7} 到 e−10e^{-10})。