逻辑回归损失函数不使用MSE的原因

原因总结:

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

公式证明

1. 梯度消失公式证明

令 ,记为 。



\begin{equation}\begin{split} J'(\theta) &= \sum_{i=1}^{m}(y_i - h_i(s_i) )^2 \\ &=\sum_{i=1}^{m}2(y_i - h_i(s_i) )*(-h'(s))*(\frac {\partial f(\theta)} {\partial \theta}) \\ &= -2 \sum_{i=1}^{m}(y_i - h_i(s_i) )*h(s_i) *(1- h(s_i)))*x_i \\ \end{split}\end{equation} \tag{1.4}
只关注其中单项的公式,并简化可得:

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

2. 非凸函数公式证明

关注 其二阶导数,可以得出其二阶导数矩阵即Hessian矩阵不是正定矩阵。 该导数是非凸函数,不是凸函数,难以优化。
\begin{equation}\begin{split} L''(\theta) &= \frac {\partial (y-h)(h-h^2)x} {\partial \theta} \\ &= x \frac {\partial (yh- yh^2 -h^2 + h^3)} {\partial \theta} \\ &= x (y- 2yh -2h +3h^2) \frac{\partial h} {\partial \theta} \\ &= x^2 (y- 2yh -2h +3h^2)h(1-h) \\ \end{split}\end{equation} \tag{1.6}
在内都大于0, 假设时, 则由 决定。
因为 的根为,即其在范围内有正有负。 从而得出 有正有负,即为非凸函数。

附录: Hessian矩阵性质

image.png

你可能感兴趣的:(逻辑回归损失函数不使用MSE的原因)