斯坦福大学公开课机器学习:梯度下降运算的学习率a(gradient descent in practice 2:learning rate alpha)

本章节主要讲怎么确定梯度下降的工作是正确的,第二是怎么选择学习率α,如下图所示:

上图显示的是梯度下降算法迭代过程中的代价函数j(θ)的值,横轴是迭代步数,纵轴是j(θ)的值

如果梯度算法正常工作,那么每一步迭代之后,那么j(θ)值应该是每一次迭代后都会相应降低,曲线的用处在于告诉你迭代到哪一步之后,已经收敛了,比如上图迭代到400次之后,j(θ)值基本就收敛了,因为迭代函数并没有随着迭代次数降低。

另外一个方法,叫自动收敛测试,也可以很好的判断梯度下降是否已经达到了收敛,比如j(θ)值在每一步迭代后下降至是否小于10-3,如果小于这个值,说明已经收敛了。

如果代价函数没有下降的话,可能是学习率过大,这个时候就要尝试一个较小的学习率,当然,学习率太小的话,梯度下降算法可能收敛得很慢。一般而言,学习率α可以选择0.001,0.01,0.1,1等,尝试不同的学习率,同时绘制代价函数,看哪种学习率是最合适的。

原文地址:https://www.cnblogs.com/chenwenyan/p/7299580.html