动作定型之梯度下降优化方法
首先,梯度下降的作用求函数最小值问题。
梯度下降的原理就不多说了,求导,再将当前自变量参数(权重)减去导数一步一步即可求出函数最小值。
那么如何优化梯度下降,目的使梯度下降的速度增加呢?
答案:将普通梯度下降改为动量(momentum)梯度下降。
普通梯度下降的权重更新公式为:W = W - α * (dW)
动量梯度下降权重更新公式为:W = W - α * (V_dW)
明显两者的差别在于最后括号内容,dW都知道就是函数值对W的导数。
那么V_dW是什么呢:
公式 : V_dW = β * V_dW + (1-β)dW
其中,β为动量因子,经前人实验经验得知最好另β = 0.9, 当然你也可以取0-1其他数字,0.9是鲁棒性最好得数字。最开始的V_dW = 0。
事实上动量梯度下降就是在更新权重时将前者的梯度更新与本次的梯度更新结合起来,取代了普通梯度下降的只通过本次的数据来更新权重。 通俗解释,当你知道前因的情况下,和你不知道前因的情况下进行梯度下降。
附两张唐‘加索’的真迹感受一下!
普通梯度下降图示:
动量梯度下降图示: