机器学习基础 - [第一章:单变量线性回归](6)梯度下降算法(参数学习方法)

1、梯度下降算法的核心公式

机器学习基础 - [第一章:单变量线性回归](6)梯度下降算法(参数学习方法)_第1张图片
该公式主要由三部分组成:初始迭代值 θ j \theta_{j} θj、学习率 α \alpha α、以及偏导数 ∂ J ( θ 0 , θ 1 ) ∂ θ j \frac{\partial J(\theta_{0},\theta_{1})}{\partial \theta_{j}} θjJ(θ0,θ1),注意,在这里 θ 0 \theta_{0} θ0 θ 1 \theta_{1} θ1是同时被更新的。

2、梯度下降算法如何得到代价函数 J ( θ ) J(\theta) J(θ)的最小值?

机器学习基础 - [第一章:单变量线性回归](6)梯度下降算法(参数学习方法)_第2张图片
假设假设函数 h ( θ ) h(\theta) h(θ)只有一个参数 θ 1 \theta_{1} θ1,上图是根据 θ 1 \theta_{1} θ1的取值画出的对应损失函数。从图中可以看出,当偏导数为正时, θ 1 \theta_{1} θ1的值减小, J ( θ ) J(\theta) J(θ)向局部最小值靠近,当偏导数为负时, θ 1 \theta_{1} θ1的值减增大, J ( θ ) J(\theta) J(θ)仍然向局部最小值靠近,所以通过梯度下降 θ 1 \theta_{1} θ1总能收敛到局部最小值。

3、学习率的取值对梯度下降算法效率的影响

机器学习基础 - [第一章:单变量线性回归](6)梯度下降算法(参数学习方法)_第3张图片
当学习率取不同值时,梯度下降算法的效率会有不同的结果,如图3所示,:
(1)如果 α \alpha α的值太小,那么 θ 1 \theta_{1} θ1每次的变化非常小,需要经过很多次迭代才能收敛到最小值,算法会非常慢;
(2)如果 α \alpha α的值太大,那么 θ 1 \theta_{1} θ1每次的变化也会非常大,甚至会发散,无法收敛到最小值。
注意,当 θ 1 \theta_{1} θ1收敛到局部最小值时,偏导数为0, θ 1 \theta_{1} θ1的值将不再改变。

4、为什么学习率固定,梯度下降算法仍能收敛到局部最优值?

机器学习基础 - [第一章:单变量线性回归](6)梯度下降算法(参数学习方法)_第4张图片
即使 θ 1 \theta_{1} θ1的值固定,梯度下降算法仍能收敛到局部最小值,主要是因为每次迭代接近局部最小值时,偏导数的绝对值在逐渐减小,当 θ 1 \theta_{1} θ1的值固定, θ 1 \theta_{1} θ1的变化幅度就会减小。

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