【ML06】Learning Rate 学习率

学习率 单纯概念

对于学习率,想说的不多,因为理解起来很容易。

学习率就是一个常量,如果用在 梯度下降 Gradient Descent 里的话,一般为一个 0-1 之间的常数值。

而学习率理解起来,就是你每一步梯度下降的大小。就像一个人要下山,步子迈的大下的就快,而步子迈的小下山必然慢。如图1所示:
【ML06】Learning Rate 学习率_第1张图片

那很自然的提出一个问题,步子大好还是小好?

还拿下山举例,步子迈的太小会有什么坏处呢?太慢了,每一步一厘米你可能得几年才到山底;而步子太大有啥坏处?不知道读者小时候有没有调皮过,从山上或者有坡度的地方冲下去,会发现需要很长的距离才停下。而如果山的对面还是山,那么你就极有可能冲上那座山的半山腰。
有句古话,“步子迈的大容易抻着腰”,就是这个道理。

【ML06】Learning Rate 学习率_第2张图片

所以,我们该怎么办呢?
其实这个问题古人就已经回答了:“凡是要有度”。

在梯度下降中,试想最简单的情景,即 b=0,且只有一个 w,那么 cost function 关于 w 的方程曲线就是:
w = w − α d d w J ( w , b ) w = w- α\frac{d}{dw} J(w,b) w=wαdwdJ(w,b)
其中,可以将 w 定义为自变量,α 为学习率,即常数;J 为损失函数 cost function
通过梯度下降,我们最终找到了目标,也就是J损失为最小时的系数w。

【ML06】Learning Rate 学习率_第3张图片

而若“步子”迈的大,会有什么缺点?步子迈的小又会怎样呢?

【ML06】Learning Rate 学习率_第4张图片

一般来说,learning rate 的取值为0-1之间,可以选择从0.01开始进行尝试。


end —>

你可能感兴趣的:(【机器学习】,学习,算法,机器学习)