如愚见指月,观指不观月。
目录
上节回顾——logistic回归模型和成本函数
梯度下降
梯度下降法的执行过程
计算图
logistic模型中的梯度下降算法
上节回顾——logistic回归模型和成本函数

是在

条件下,

的概率。
。如果想要让我们的模型更加精确的话,就要让

尽可能的接近

。所以,我们定义了损失函数和成本函数,用于评估

与

的接近程度,以及模型的准确率。
损失函数是对单个样本来说的。
成本函数是对整个数据集来说的。

是输入的样本数据,

是样本对应的标签,

是我们对

的估计。

是我们logistic模型的参数,我们希望找到合适的

来让成本函数尽可能的小。接下来我们会介绍让成本函数

尽可能小的方法。
之所以用这种形式的成本函数,因为这样的成本函数是凸的(convex),只有一个极值,我们用梯度下降法很容易的找到最小值,而不是局部极值。

梯度下降
首先让我们来复习一下高数,什么是梯度?

方向导数:多元函数在某一方向上的导数,代表了多元函数某点在某一方向上的斜率。
例如,二元函数

在某点

上沿

方向的方向导数为

,其中,向量

为单位向量。
梯度:是多元函数某点上的一个向量。多元函数某点上梯度的方向,就是能让这一点处方向导数最大的方向。而梯度的模则是方向导数的最大值。(梯度就是方向导数最大的方向)
对于二元函数来说,某一点的梯度就是

。(

是

对

求的偏导,看不懂的话复习一下高数)
用爬山来举例,你在一座山上爬山,你这个位置的梯度,就是这座山上,你所在的这个位置,最陡的那个方向。
梯度下降就像下山,怎么下山才能尽可能快的下山呢?有一个方法就是,向着最陡的那个方向(梯度)走。
当然这样也有问题,就是我们有可能会走到局部极值(局部最优解),而不是最小值(全局最优解),所以我们才要求我们的成本函数是凸的。

梯度下降法的执行过程
梯度下降法就是重复执行这样的步骤:


在这里代表的是学习率,就是梯度下降法中一步的步长。(就是你在“下山”的过程中,一步迈多大)

在这里就是梯度,和

代表的是同一种东西。注意:

是n维平面上的一个点。

是成本函数。
计算图
例:

这个函数的计算图便是:

与这个蓝色箭头指向的流程相反,便可以进行导数的计算,如红色的箭头所示。

假如我们想要求得

,因为

,所以
。
反向传播 backpropagatioin
假如我们想求得

,
(这不就是链式求导法则吗?)
logistic模型中的梯度下降算法

如何用反向运算求导如图所示:

于是,我们就可以用梯度下降法,这是一次梯度的更新步骤。

















