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

2020-03-22  本文已影响0人  CapsulE_07

原因总结:

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

公式证明

1. 梯度消失公式证明

f(x)=\theta x+b,记为 s
h(s)=\frac{1}{1+e^{-s}} \tag{1.1}
h'(s) = h(s) (1- h(s))\tag{1.2}
J(\theta) = \sum_{i=1}^{m}(y_i - h_i(s_i) )^2 \tag{1.3}
\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}
只关注其中单项的公式,并简化可得:
L'(\theta) = (y-h)h(1-h)x \tag{1.5}
可见, 当h趋近于0时或者趋近于1时,该Loss的导数都会趋近为0,从而造成梯度消失现象。

2. 非凸函数公式证明

关注L'(\theta) 其二阶导数,可以得出其二阶导数矩阵即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}
h(1-h)(0,1)内都大于0, 假设y=0时,L''(\theta) 则由 3h^2 - 2h决定。
因为3h^2 - 2h 的根为0, \frac {2}{3},即其在[0,1]范围内有正有负。 从而得出L''(\theta) 有正有负,即为非凸函数。

附录: Hessian矩阵H性质

image.png
上一篇下一篇

猜你喜欢

热点阅读