1.回顾线性回归的平方误差代价函数
代价函数,它可以测量出一组特定参数与训练数据的吻合程度,从而为我们提供了一种更好参数的方法,在本节课中,我们会看到平方误差代价函数并不是逻辑回归的理想代价函数。
下面我们来看一个不同的成本函数,它可以逻辑回归选择更好的参数
训练集
平方误差代价函数
由下图可知,逻辑回归的平方误差代价函数是非凸代价函数,不是凸的,这意味着,如果使用梯度下降法,因为有很多局部最小值,很容易卡在这些地方,事实证明,对于逻辑回归,平方误差代价函数并不是一个好选择。
这里有一个可以使得代价函数再次凸化的代价函数,保证梯度下降可以收敛到全局最小值。唯一的改变就是把1/2放在了求和里面,而不是外面,仔细观察这个求和的式子,我们把这个项叫做单个训练例子的损失,用大写的L表示损失函数,它是关于f(x)和真实标签y的函数,在这个例子中损失(给了f(x)和y)等于平方差的一半
2.逻辑损失函数
·逻辑回归使用的损失函数更适合于目标为0或1而不是任何数字的分类任务。
注:在本课程中,使用以下定义:
Loss(损耗)是衡量单个示例与目标值之间的差异,而
Cost(成本)是对训练集损失的度量
这是定义:
·为单个数据点的代价,为:
·为模型的预测值,为目标值。
·其中函数是sigmoid函数。
这个损失函数的决定性特征是它使用两条独立的曲线。一个用于目标为0或(=0)时,另一个用于目标为1时(=1)。结合起来,这些曲线提供了对损失函数有用的行为,即当预测与目标匹配时为零,当预测与目标不同时值迅速增加。考虑下面的曲线:
综合起来,这两条曲线类似于误差损失平方的二次曲线。注意,x轴是,是sigmoid的输出。sigmoid输出严格在0和1之间。
上面的损失函数可以重写以更容易实现。
这是一个看起来相当可怕的方程。当您考虑只能有两个值,即0和1时,就不那么令人畏惧了。我们可以将这个方程分为两部分:当=0时,左项被消去:
当=1时,右项消去:
好的,有了这个新的逻辑损失函数,就可以产生一个成本函数它包含了所有例子中的损失。这将是下次实验的主题。现在,让我们看看上面我们考虑的简单例子的成本vs参数曲线:
这条曲线非常适合梯度下降!它没有高原、局部极小值或不连续。注意,在平方误差的情况下,它不是一个碗。成本和成本的对数都被绘制出来,以说明这样一个事实:当成本很小时,曲线有一个斜率,并继续下降。提示:您可以使用鼠标旋转上面的情节。
3.简化的代价函数
这个特殊的代价函数是用一种叫做极大似然估计的统计原理中推导出来的