学习率为什么要逐渐衰减?这个问题其实是个很简单的问题,首先回顾一下梯度下降算法的优化原理(batchsize):
对于Batchsize和公式的理解可以参考上一篇Blog:https://blog.csdn.net/m0_51339444/article/details/128745611
,其中ε是学习率,根据公式不难看出,学习率越大,下降速度越快。我们以下图为例,直观地理解一下梯度下降的过程:
初始点随便选取,因此可能梯度很大,梯度越大,下降越快,因此,梯度下降刚开始会以很快的速度逼近极小值点,但是当逐渐逼近最小值点时,(梯度不是我们人为可以控制的,但是可以通过学习率来控制下降的速率),如果学习率很大,则可能最最小值点附近反复横跳,甚至不收敛,因此应当随着Run time的增大,Learning Rate不断减小,减小的方程可以根据需求自行设定。