LR为什么不可以用MSE作为损失函数

原因总结:

  1. MSE 会有梯度消失现象
  2. MSE 的导数非凸函数,求解最优解困难

证明:

1. 梯度消失公式证明:

LR为什么不可以用MSE作为损失函数 ,记为 LR为什么不可以用MSE作为损失函数

LR为什么不可以用MSE作为损失函数

只关注其中单项的公式,并简化可得:

LR为什么不可以用MSE作为损失函数

可见, 当 h 趋近于 0 时或者趋近于 1 时,该 Loss 的导数都会趋近为 0,从而造成梯度消失现象。

2. 非凸函数公式证明

关注LR为什么不可以用MSE作为损失函数 其二阶导数,可以得出其二阶导数矩阵即 Hessian 矩阵不是正定矩阵。 该导数是非凸函数,不是凸函数,难以优化。

LR为什么不可以用MSE作为损失函数

h(1-h) 在(0,1)内都大于 0, 假设 y=0 时, LR为什么不可以用MSE作为损失函数则由LR为什么不可以用MSE作为损失函数 决定。
因为LR为什么不可以用MSE作为损失函数 的根为0, LR为什么不可以用MSE作为损失函数, 即其在 [0,1] 范围内有正有负。 从而得出 LR为什么不可以用MSE作为损失函数有正有负,即为非凸函数。

 

参考:https://www.jianshu.com/p/af1e5cff21b9