梯度下降算法优化
new optimizers for Deep Learning(深度学习的新优化器)
梯度下降算法最重要的的是梯度和学习率两个变量,优化梯度下降算法可以从这两个方面优化
- SGDM(SGD with Momentum)带动量的随机梯度下降
在更新梯度时保留原来的梯度,由原来的梯度和动量矢量合成新的梯度,原来的梯度称为动量
- 累计梯度:v ← α v + ( 1 − α ) g
- 梯度更新:w ← w − η ∗ v
其中α为动量参数,v 是动量,η 是学习率
我们也可以从学习率角度出发,试想随着梯度的下降学习率也可以自动下降才对,由此产生AdaGrad(自适应学习率优化算法)和RMSProp(均方根传播)算法
AdaGrad算法关键是对不同的参数会设置不同的学习率
主要思想: 根据每个参数在训练过程中的历史梯度信息来调整学习率,从而使得每个参数的学习率可以自适应地调整,更好地适应不同参数的特性。
特点: 对每个参数的学习率进行适应性调整,使得在训练过程中梯度较大的参数的学习率变小,而梯度较小的参数的学习率变大。
RMSProp算法: RMSProp算法是在AdaGrad算法的基础上,进一步在学习率的方向上进行优化: AdaGrad算法中,由于历史梯度的累积可能会导致学习率不断减小,从而影响算法的收敛速度。RMSProp通过引入一个衰减系数λ来解决这个问题,从而使得学习率的衰减更加平缓,提高了算法的稳定性和收敛速度。
计算方式: