分类问题不使用平方损失函数的原因

 

一般平方损失函数的公式如下图所示:

h表示的是你的预测结果,y表示对应的标签,J就可以理解为用二范数的方式将预测和标签的差距表示出来,模型学习的过程就是优化权重参数,使得J达到近似最小值,理论上这个损失函数是很有效果的,但是在实践中却又些问题,它这个h是激活函数激活后的结果,激活函数通常是非线性函数,例如sigmoid之类的,这就使得这个J的曲线变得很复杂,并不是凸函数,不利于优化,很容易陷入到局部最优解的情况。吴恩达说当激活函数是sigmoid的时候,J的曲线就如下图所示,可以看到这个曲线是很难求出全局最小值的,稍不留神就是局部最小值。

分类问题不使用平方损失函数的原因_第1张图片

我们当然希望J的曲线能使下图所示,这样可以很容易通过梯度下降来求近似的全局最优解。

分类问题不使用平方损失函数的原因_第2张图片

所以用均方来做损失函数就显得有局限性,现在大多数损失函数的设计都是基于交叉熵的,如下公式:

他们的曲线就是下图所示:

分类问题不使用平方损失函数的原因_第3张图片

分类问题不使用平方损失函数的原因_第4张图片

这样更加容易优化。

均方误差适用于回归问题,计算预测的数据与真实数据间的距离,最终目的是缩小两者间的距离,表现上就是减小均方误差,呈下降趋势。分类问题的结果是每一类所对应的概率,0-1之间,所以MSE不太适用,而使用交叉熵函数。

你可能感兴趣的:(机器学习)