最小二乘解
这个能用的推导太多了,在此不赘述。
当
X
T
X
X^{T} X
XTX 为满秩矩阵或正定矩阵时,可以求得:
w
⃗
∗
=
(
X
T
X
)
−
1
X
T
y
⃗
\vec{w}^{*}=\left(X^{T} X\right)^{-1} X^{T} \vec{y}
w∗=(XTX)−1XTy
但是,在实际问题中,
X
T
X
X^{T} X
XTX往往并不是满秩矩阵:自行列向量之间存在高度多重共线
性,或列向量数大于行向量数。这会导致偏回归系数无解或结果无效,为了能够克服这问题,可以使用子集选择将高自相关变量删除,或者选用岭回归也能够避免
X
T
X
X^{T} X
XTX不可逆的情况。
岭回归推导和Shrinkage
岭回归在$X^{T} X$的基础上加上一个较小的λ扰动,从而使得行列式不再为0:
w
⃗
∗
=
(
X
T
X
+
λ
I
)
−
1
X
T
y
⃗
\vec{w}^{*}=\left(X^{T} X+\lambda I\right)^{-1} X^{T} \vec{y}
w∗=(XTX+λI)−1XTy
设 OLS (最小二乘回归)的解为 w ˉ \bar{w} wˉ,岭回归的解为 w ′ ˉ \bar{w'} w′ˉ
w
′
ˉ
i
=
(
X
T
X
+
λ
I
)
−
1
X
T
y
=
(
X
T
X
+
λ
I
)
−
1
(
X
T
X
)
(
X
T
X
)
−
1
X
T
y
=
(
X
T
X
+
λ
I
)
−
1
(
X
T
X
)
w
ˉ
=
(
X
T
X
+
λ
I
)
−
1
(
X
T
X
+
λ
I
−
λ
I
)
w
ˉ
=
(
I
−
λ
(
X
T
X
+
λ
I
)
−
1
)
w
ˉ
<
w
ˉ
\begin{array}{l} \bar{w'}_{i}=\left(X^{T} X+\lambda I\right)^{-1} X^{T} y \\ =\left(X^{T} X+\lambda I\right)^{-1}\left(X^{T} X\right)\left(X^{T} X\right)^{-1} X^{T} y \\ =\left(X^{T} X+\lambda I\right)^{-1}\left(X^{T} X\right) \bar{w} \\ =\left(X^{T} X+\lambda I\right)^{-1}\left(X^{T} X+\lambda I-\lambda I\right) \bar{w} \\ =\left(I-\lambda\left(X^{T} X+\lambda I\right)^{-1}\right) \bar{w}<\bar{w} \end{array}
w′ˉi=(XTX+λI)−1XTy=(XTX+λI)−1(XTX)(XTX)−1XTy=(XTX+λI)−1(XTX)wˉ=(XTX+λI)−1(XTX+λI−λI)wˉ=(I−λ(XTX+λI)−1)wˉ<wˉ
这里就出现了shrinkage。
可以看出, w ′ ˉ \bar{w'} w′ˉ是对 w ˉ \bar{w} wˉ向原点的压缩,并不会出现某一系数为 0 的稀疏解情况。但是,在实际问题中,特征存在冗余,稀疏解有利于找到有用的维度并减少冗余,提预测高鲁棒性和准确性。
Lasso稀疏性推导
Lasso公式:
w
⃗
∗
=
arg
min
w
⃗
∗
[
∑
1
N
(
W
T
X
⃗
ι
−
y
i
)
2
+
λ
∑
j
=
1
p
+
1
∣
w
j
∣
]
=
arg
min
w
⃗
∗
∑
i
=
1
N
(
W
T
X
⃗
i
−
y
i
)
2
∑
j
=
1
p
+
1
∣
w
j
∣
≤
t
\vec{w}^{*}=\arg \min _{\vec{w}^{*}}\left[\sum_{1}^{N}\left(W^{T} \vec{X}_{\iota}-y_{i}\right)^{2}+\lambda \sum_{j=1}^{p+1}\left|w_{j}\right|\right]=\arg \min _{\vec{w}^{*}} \sum_{i=1}^{N}\left(W^{T} \vec{X}_{i}-y_{i}\right)^{2} \\ \sum_{j=1}^{p+1}\left|w_{j}\right| \leq t
w∗=argw∗min[1∑N(WTXι−yi)2+λj=1∑p+1∣wj∣]=argw∗mini=1∑N(WTXi−yi)2j=1∑p+1∣wj∣≤t
原文中作者还讨论了:
β
^
j
=
sign
(
β
^
j
0
)
(
∣
β
^
j
0
∣
−
γ
)
+
\hat{\beta}_{j}=\operatorname{sign}\left(\hat{\beta}_{j}^{0}\right)\left(\left|\hat{\beta}_{j}^{0}\right|-\gamma\right)^{+}
β^j=sign(β^j0)(∣∣∣β^j0∣∣∣−γ)+
有兴趣的同学可以去原文看看。
总结
对于回归问题,lasso 有两个重要特点:
- 对系数进行压缩;
- 能特征选择。
这两个特点解决了 OLS 的无解情况,相比岭回归多了特征选择的作用。
从另一角度,lasso 可以看作对 OLS 加上 l1 正则化,有控制模型复杂度的作用。