目的

在上一篇文章中,我们通过成本函数可以求出关于w和偏置b所对应的一个损失率,损失率越小,说明预测越接近结果值,所以梯度下降算法就是得到J(w,b)函数中,最小的损失率,也就是J(w,b) 的最小值。

介绍

我们先来展示J(w,b)函数的三维图:

这张三维图可以看出,j(w,b)的值会因w,b的不断变化而变化。

图中点J1是我们需要找到的最小值,w1b1是最小损失率对应的参数。

这里补充一个逻辑回归函数σ关于线性回归z的求导的公式:

寻找

那么我们如何寻找到最小损失率J1和对应的w1b1呢?

在我们寻找过程中,需要不断的更新w和b的值,那么更新函数如下:

如何理解更新函数

我们逐一拆解更新函数,红色的w表示下一步寻找的w值,绿色的w表示当前所处的w值,紫色的α代表学习速率,后面的蓝色公式为该点的偏导值。

那么怎么理解α是学习速率呢?

下面我们引入一张图片来解释:

从图中可以看出,在寻找过程中,我画了两条路线,红色路线相比粉色路线α值更小,也就是寻找到J1的速度会比粉色要慢。

怎么理解偏导值?

在数学中,当导数为0的时候,该点是函数的极值。那么我们看左边的函数图,此时的导数值为正数,所以根据更新公式,w的值是不断在往小的方向更新的,当随着w更新,导数值为0时,公式变为w=w,那么便找到了极小值。同理,右图中导数为负,那么w不断更新的时候是往大的方向更新,从而找到当导数为0的时候取到极小值。当然偏置b的寻找原理和这个相同。

偏导值就是所说的梯度。

总结

通过不断的使用梯度下降算法,可以寻找到损失率最小的点。