学习率

作者: yalesaleng | 来源:发表于2018-07-13 14:47 被阅读26次

学习速率(learning rate,η)

运用梯度下降算法进行优化时,权重的更新规则中,在梯度项前会乘以一个系数,这个系数就叫学习速率α。下面讨论在训练时选取α的策略。

  • 固定的学习速率。如果学习速率太小,则会使收敛过慢,如果学习速率太大,则会导致代价函数振荡,如下图所示。就下图来说,一个比较好的策略是先将学习速率设置为0.25,然后在训练到第20个Epoch时,学习速率改为0.025。
image.png

关于为什么学习速率太大时会振荡,看看这张图就知道了,绿色的球和箭头代表当前所处的位置,以及梯度的负方向(下降最快),学习速率越大,那么往箭头方向前进得越多,如果太大则会导致直接跨过谷底到达另一端,所谓“步子太大,迈过山谷”。

image.png

下面是一个lr选择太大导致的错误结果栗子:(lr的选择为1,导致训练/测试误差都在0.5左右)

在实践中,怎么粗略地确定一个比较好的学习速率呢?好像也只能通过尝试。你可以先把学习速率设置为0.01,然后观察training cost的走向,如果cost在减小,那你可以逐步地调大学习速率,试试0.1,1.0….如果cost在增大,那就得减小学习速率,试试0.001,0.0001….经过一番尝试之后,你可以大概确定学习速率的合适的值。

为什么是根据training cost来确定学习速率,而不是根据validation accuracy来确定呢?这里直接引用一段话,有兴趣可以看看:

image.png

相关文章

  • 深度学习:学习率learning rate 的设定规律

    Introduction 学习率 (learning rate),控制 模型的 学习进度 : 学习率大小 学习率 ...

  • 2018-04-07 深度学习训练中 超参数调整 笔记

    超参数 1 学习率 初始值0.1, 如何调整学习率,准确率不再下降,就减小学习率。准确率下降太慢,就增大学习率 2...

  • 学习率

    学习速率(learning rate,η) 运用梯度下降算法进行优化时,权重的更新规则中,在梯度项前会乘以一个系数...

  • 学习率

    特征缩放和学习速率选取 特征缩放 实际当我们在计算线性回归模型的时候,会发现特征变量x,不同维度之间的取值范围差异...

  • Keras使用

    参考:Keras学习率调整深度学习框架Keras使用心得 一、如何调整学习率 Keras提供两种学习率适应方法,可...

  • 如何提高个人学习效率的五大模型

    学习金字塔 原理:学习记忆留存率随时间而下降,主动学习比被动学习效果好操作:主动学习留存率90%被动学习留存率20...

  • tensorflow 学习率控制

    为什么调整学习率 学习率的调整 离散下降(discrete staircase)对于深度学习来说,每 tt 轮学习...

  • 机器学习,模型学不到东西或者开始学习学的很慢

    出现这种情况,可以试着把学习率调高,学习率太低就需要学习很多个epoch才能学到东西。

  • caffe Layers及参数

    1、Convolution层: 层类型:Convolution参数:lr_mult: 学习率系数,最终的学习率 =...

  • 2019-03-24

    学习率的调整 从梯度下降算法的角度来说,通过选择合适的学习率,可以使梯度下降法得到更好的性能。学习率,即参数到达最...

网友评论

      本文标题:学习率

      本文链接:https://www.haomeiwen.com/subject/monjpftx.html