关于Logistic Regression的一些知识点:
- 为什么损失函数不用平方误差:
L = 1 2 m ∑ i m ( y ^ − y ) 2 L = \frac{1}{2m}\sum_i^m(\hat{y}-y)^2 L=2m1i∑m(y^−y)2
答:这样的损失函数不是凸的,梯度下降法会陷入局部最小值。
二分类问题的损失函数:
L = − 1 m ∑ i m ( y log y ^ + ( 1 − y ) log ( 1 − y ^ ) ) L = -\frac{1}{m}\sum_i^m(y\log\hat{y}+(1-y)\log(1-\hat{y})) L=−m1i∑m(ylogy^+(1−y)log(1−y^))
另外,使用平方误差 + sigmoid激活函数,所得backprop梯度为:
{
δ
L
=
(
y
^
−
y
)
⊙
σ
′
(
z
L
)
δ
l
=
(
W
l
+
1
)
T
δ
l
+
1
⊙
σ
′
(
z
l
)
\left\{\begin{aligned} &\delta^L = (\hat{y} - y)\odot \sigma'(z^L)\\ &\delta^l = (W^{l+1})^T\delta^{l+1}\odot \sigma'(z^l) \end{aligned}\right.
{δL=(y^−y)⊙σ′(zL)δl=(Wl+1)Tδl+1⊙σ′(zl)
而使用交叉熵,所得backprop梯度为:
δ
L
=
y
^
−
y
\delta^L = \hat{y} - y
δL=y^−y
表达式里面没有了
σ
′
(
z
)
\sigma'(z)
σ′(z),一定程度上避免了反向传播梯度小,收敛速度慢的问题。