梯度下降法(Gradient Descent)
逻辑回归算法如下式子:
成本函数J(w,b)用于训练w(特征权重,维度与特征向量相同),b(实数,表示偏差)
成本函数J(w,b)是损失函数平均值的和,展开式如下:
梯度下降法的形象化说明
在实际中w可能是更高维度,但是此时定义也和b一样,表示一个实数,也就是一维。我们所要做的就是使w,b尽可能小,也就是图中尽可能在曲面的底端。
抽象为一维坐标
之后重复如下式子,迭代更新出最小w:
:= 表示更新参数
α 表示学习率(learning rate),用来控制步长(step),即向下走一步的长度
函数J(w)对w求导,代码中用dw变量表示。
上图中所在位置斜率为正,套用公式,则w减去的是一个正数,更新后w减小,即图中w往左边移动。
初始点在右边,则斜率为负数,套用公式,则w减去的是一个负数,更新后w增大,即图中w往右边移动。
同理对b也是上述如此。
最后得到两个公式:
这就是梯度下降法。