线性回归
下面是线性回归的公式推导,没有加上 L2 正则化因子。
假设 y ^ = X w \hat y = Xw y^=Xw,因为
L ( w ) = ∣ ∣ y ^ − y ∣ ∣ 2 2 = ∣ ∣ X w − y ∣ ∣ 2 2 = ( X w − y ) T ( X w − y ) = w T X T X w − y T X w − w T X T y + y T y , \begin{aligned} L(w) &= ||\hat y - y||_2^2=||Xw-y||_2^2 \\ &= (Xw-y)^T(Xw-y) \\ &= w^TX^TXw - y^TXw - w^TX^Ty + y^Ty, \end{aligned} L(w)=∣∣y^−y∣∣22=∣∣Xw−y∣∣22=(Xw−y)T(Xw−y)=wTXTXw−yTXw−wTXTy+yTy,
所以
∂
L
(
w
)
∂
w
=
2
X
T
X
w
−
X
T
y
−
X
T
y
,
\frac{\partial L(w)}{\partial w}= 2X^TXw-X^Ty-X^Ty,
∂w∂L(w)=2XTXw−XTy−XTy,
令
∂
L
(
w
)
∂
w
=
0
\frac{\partial L(w)}{\partial w}=0
∂w∂L(w)=0,得
w
=
(
X
T
X
)
−
1
X
T
y
.
w=(X^TX)^{-1}X^Ty.
w=(XTX)−1XTy.
- 参考:周志华《机器学习》P55 “线性回归”这一节的叙述。
岭回归
上面定义的 L ( w ) = ∣ ∣ y ^ − y ∣ ∣ 2 2 L(w) =||\hat y - y||_2^2 L(w)=∣∣y^−y∣∣22 是经验风险,在经验风险的基础上加上表示模型复杂度的正则化项(regularization)或者惩罚项(penalty term),即结构风险。所以线性回归是经验风险最小化,岭回归是结构风险最小化。
- 参考:李航《统计学习方法》(第二版)P18关于“经验风险最小化”与“结构风险最小化”一节的叙述。
岭回归其实就是在损失函数上加上了一个 L2 正则,使得每个变量的权重不会太大。当某些特征权重比较大的时候,自变化变化一点点,就会导致因变量变化很大,使得方差变大,有过拟合风险。
此时损失函数变为:
L ( w ) = ∣ ∣ y ^ − y ∣ ∣ 2 2 + λ ∣ ∣ w ∣ ∣ 2 2 = ∣ ∣ X w − y ∣ ∣ 2 2 + λ w T w = ( X w − y ) T ( X w − y ) + λ w T w = w T X T X w − y T X w − w T X T y + y T y + λ w T w , \begin{aligned} L(w) &= ||\hat y - y||_2^2 + \lambda ||w||^2_2 =||Xw-y||_2^2 + \lambda w^Tw\\ &= (Xw-y)^T(Xw-y) + \lambda w^Tw\\ &= w^TX^TXw - y^TXw - w^TX^Ty+y^Ty + \lambda w^Tw, \end{aligned} L(w)=∣∣y^−y∣∣22+λ∣∣w∣∣22=∣∣Xw−y∣∣22+λwTw=(Xw−y)T(Xw−y)+λwTw=wTXTXw−yTXw−wTXTy+yTy+λwTw,
所以
∂
L
(
w
)
∂
w
=
2
X
T
X
w
−
X
T
y
−
X
T
y
+
2
λ
w
,
\frac{\partial L(w)}{\partial w}= 2X^TXw-X^Ty-X^Ty + 2 \lambda w,
∂w∂L(w)=2XTXw−XTy−XTy+2λw,
令
∂
L
(
w
)
∂
w
=
0
\frac{\partial L(w)}{\partial w}=0
∂w∂L(w)=0,得
w
=
(
X
T
X
+
λ
E
)
−
1
X
T
y
.
w=(X^TX + \lambda E)^{-1}X^Ty.
w=(XTX+λE)−1XTy.
这里 E E E 是一个单位矩阵。
参考资料
1、岭回归原理及代码实现
https://blog.csdn.net/computerme/article/details/50486937
2、矩阵求导公式,及MathJax公式编辑
https://blog.csdn.net/lilong117194/article/details/77418269
3、MathJax基本的使用方式
https://blog.csdn.net/u010945683/article/details/46757757