Logistic 回归的梯度下降法 (Logistic Regression Gradient Descent)
本节我们讨论怎样通过计算偏导数来实现逻辑回归的梯度下降算法。关键点是几个重要公式,其作用是用来实现逻辑回归中梯度下降算法。在本节视频中,我将使用计算图对梯度下降算法进行计算。我必须要承认的是,使用计算图来计算逻辑回归的梯度下降算法有点大材小用了。但是,我认为以这个例子作为开始来讲解,可以使你更好的理解背后的思想。从而在讨论神经网络时,你可以更深刻而全面地理解神经网络。接下来让我们开始学习逻辑回归的梯度下降算法。
回顾之前我们建立了如下图的逻辑回归方程的公式定义:
假设样本有两个特征,为了计算,还需要输入参数,因此的公式为。接着计算, 。最后计算。在逻辑回归中我们要做的是修改参数和,来减少损失函数 。
之前讲前向传播的步骤中已经说明了如何计算单个样本的损失函数。现在来讲如何反向计算导数?如下图:
要计算关于损失函数的导数,反向传播时,首先要做的是损失函数关于的导数,在编写代码时,你只需要用来表示。(下面都是简写,如)然后根据求导法则,得到如下图(此处应该是以e为底):
现在已经算出了,你可以继续往回算出(同样表示),求导公式算得:
反向传播的最后一步也就是算出你需要改变多少?特别地,可以算出对 的导数 ,如下:
所以如果你要对于一个例子进行梯度下降,你需要做:用公式算出,然后算出,然后进行更新, ; ;
现在你已经知道了怎样计算导数,并且实现针对单个训练样本的逻辑回归的梯度下降算法。但训练一个逻辑回归模型,你不止有一个样本,而是有个。下节课我们将这些思想应用到整个训练样本集中,而不仅仅只是单个样本上。