首页 . 理学 . 统计学 . 大数据统计分析 . 深度神经网络 . 梯度下降 . 学习率

学习率

/learning rate/
条目作者王汉生

王汉生

最后更新 2024-03-29
浏览 293
最后更新 2024-03-29
浏览 293
0 意见反馈 条目引用

梯度下降方法中的学习步长。

英文名称
learning rate
所属学科
统计学

在机器学习和统计学中,学习率是梯度下降算法中的一个调整参数。大量的数据分析问题都会涉及优化。例如,经典的极大似然估计就是通过优化对数似然函数获得的。传统数据优化问题所涉及的数据量不大,而且维度较低,因此传统的牛顿方法以及各种相关改进得到了广泛的应用。但是,该方法有一个明显的缺点就是要计算二阶导数,即黑塞(Hessian矩阵。对于超高维数据而言,这是非常困难,甚至不现实的任务。因此,人们创造性地提出了梯度下降方法。所谓梯度下降方法,就是一个逐步迭代的数值优化方法。其核心是对每一个当前估计,基于梯度的方向,做优化。梯度方向可以通过对损失函数求导获得。而决定在该方向(或者其反方向上)所移动步长的,就是学习率。学习率隐喻了模型“学习”(向损失函数的最小值移动)的速度。

理论上人们可以证明,沿着梯度的负方向,移动一小步,只要步长足够小,那么损失函数一定可以获得优化。但在实际工作中,通常需要在收敛率和过冲之间进行权衡,设置一个过小的学习率会造成算法的数值收敛速度过慢。但是,设置一个过大的学习率,不仅仅使得算法可能数值不收敛,甚至会影响到最终估计量的统计学效率。因此,如何合理的设置学习率是一个非常重要的问题,为了实现较快的收敛,在训练过程中,学习率往往按照一个策略,称为学习率时间表或者自适应地进行改变。

对于学习率策略,直观上讲,在算法的初期,学习率应该尽量大一些,让算法的数值收敛速度更快。但是,在算法的末期,学习率应该尽量小一些,让最终估计量得到尽可能精细的调整,以获得最优的统计学效率(见图)。实际中,有许多不同的学习率时间表,最常见的是基于时间的、基于步骤的和指数式的。但学习率时间表的问题是,它们都受到额外的超参数控制,而这些超参数必须由每个具体给定的任务人为选择,并且可能因不同的问题或模型而有很大的不同。为了解决这个问题,出现了不同类型的自适应学习率方法,如自适应梯度法(Adagrad)、自适应学习率调整法(Adadelta)、均方根传播梯度下降法(RMSprop)、自适应矩估计(Adam)等。这些刚方法会在整个优化过程中,自动适应地调整学习率,以较快的收敛速度达到最优的统计学效率。

各种学习率对收敛的影响示意图各种学习率对收敛的影响示意图

相关条目

阅读历史

    意见反馈

    提 交

    感谢您的反馈

    我们会尽快处理您的反馈!
    您可以进入个人中心的反馈栏目查看反馈详情。
    谢谢!