引入Gradient  descent(梯度下降)的目的是找到参数使损失函数的值最小。


假设损失函数有两个参数,θ={θ1,θ2}

首先任意找一个初始值θ0,再依次求下一个θ。具体如下图。橙色部分为梯度。

李宏毅机器学习-----------Gradient descent(梯度下降)

下图为找使损失函数最小的θ的过程。红线表示的是梯度(是两个向量在空间上的和),蓝线表示的是-η▼L(θ)

李宏毅机器学习-----------Gradient descent(梯度下降)


做梯度下降时的注意点。

1.小心调整learning rate(η)。

如下图所示,左图表示的不同大小的η对LOSS的影响。红线时正确的合适的η下的过程。蓝线是η过小时,这种的会很耗费时间。绿线表示的是η偏大,LOSS无法找到使值最小的参数θ,黄线表示的是η过大,会直接跳过所有θ。右图是将η的大小对LOSS的影响可视化。

李宏毅机器学习-----------Gradient descent(梯度下降)

能不能自动调整η呢?

首先,我们的参数的起始点距离要找的点的距离较大,可以使用较大的learning rate(η)

更新几次参数之后我们的参数接近于要找的参数的值,需要用较小的learning rate(η)。我们可以假设李宏毅机器学习-----------Gradient descent(梯度下降),在某次之后的η就按照这个公式变化。但是这样的η并不适合。我们需要给不同的参数不同的learning rate。

给不同的参数不同的learning rate---Adagrde。

 

相关文章: