一文读不懂系列之“线性回归”
1. 模型
- 训练集 D = { ( x ( n ) , y ( n ) ) } i = 1 N \mathcal{D}=\{(\mathbf{x}^{(n)},y^{(n)})\}^N_{i=1} D={(x(n),y(n))}i=1N,自变量为样本的特征向量 x ∈ R D \mathbf{x}\in\mathbb{R}^D x∈RD,因变量为 y ∈ R y\in \mathbb{R} y∈R;
- 权重向量 w ∈ R D \mathbb{w}\in \mathbb{R}^D w∈RD和偏置 b ∈ R b\in\mathbb{R} b∈R为可学习参数;
- 线性模型:函数 f ( x ; w , b ) f(\mathbf{x};\mathbf{w},b) f(x;w,b)
f
(
x
;
w
,
b
)
=
w
T
x
+
b
f(\mathbf{x};\mathbf{w},b)=\mathbf{w}^T\mathbf{x}+b
f(x;w,b)=wTx+b
下面就把增广权重向量和增广特征向量统一为
w
\mathbf{w}
w和
x
\mathbf{x}
x,那么线性模型就简写成
f
(
x
;
w
)
=
w
T
x
f(\mathbf{x};\mathbf{w})=\mathbf{w}^T\mathbf{x}
f(x;w)=wTx
- 训练集
D
\mathcal{D}
D上的经验风险
R
(
w
)
\mathcal{R}(\mathbf{w})
R(w)
- 取平方损失函数
L
(
y
(
n
)
,
f
(
x
(
n
)
;
w
)
)
=
1
2
(
y
(
n
)
−
w
T
x
(
n
)
)
\mathcal{L}(y^{(n)},f(\mathbf{x}^{(n)};\mathbf{w}))=\frac{1}{2}(y^{(n)}-\mathbf{w}^T\mathbf{x}^{(n)})
L(y(n),f(x(n);w))=21(y(n)−wTx(n))
R ( w ) = 1 2 ∣ ∣ y − X T w ∣ ∣ 2 \mathcal{R}(\mathbf{w}) = \frac{1}{2}||\mathbf{y}-\mathbf{X}^T\mathbf{w}||^2 R(w)=21∣∣y−XTw∣∣2
- 取平方损失函数
L
(
y
(
n
)
,
f
(
x
(
n
)
;
w
)
)
=
1
2
(
y
(
n
)
−
w
T
x
(
n
)
)
\mathcal{L}(y^{(n)},f(\mathbf{x}^{(n)};\mathbf{w}))=\frac{1}{2}(y^{(n)}-\mathbf{w}^T\mathbf{x}^{(n)})
L(y(n),f(x(n);w))=21(y(n)−wTx(n))
2. 参数估计
{ y = h ( x ) p ( y ∣ x ) \begin{cases} y=h(\mathbf{x}) \\ \\ p(y|\mathbf{x}) \end{cases} ⎩⎪⎨⎪⎧y=h(x)p(y∣x)
2.1 LSM | Least Square Method:平方损失的经验风险最小化
∂
R
(
w
)
∂
w
=
1
2
∂
∣
∣
y
−
X
T
w
∣
∣
2
∂
w
=
−
X
(
y
−
X
T
w
)
\begin{aligned} \frac{\partial\mathcal{R}(\mathbf{w})}{\partial\mathbf{w}} &= \frac{1}{2}\frac{\partial||\mathbf{y}-\mathbf{X}^T\mathbf{w}||^2}{\partial\mathbf{w}}\\ &=-\mathbf{X}(\mathbf{y}-\mathbf{X}^T\mathbf{w}) \end{aligned}
∂w∂R(w)=21∂w∂∣∣y−XTw∣∣2=−X(y−XTw)
令
∂
R
(
w
)
∂
w
=
0
\frac{\partial\mathcal{R}(\mathbf{w})}{\partial\mathbf{w}}=0
∂w∂R(w)=0
w
∗
=
(
X
X
T
)
−
1
X
y
\mathbf{w}^*=(\mathbf{X}\mathbf{X}^T)^{-1}\mathbf{X}\mathbf{y}
w∗=(XXT)−1Xy
可以看到在LSM中我们需要
X
X
T
∈
R
(
D
+
1
)
×
(
D
+
1
)
\mathbf{X}\mathbf{X}^T\in \mathbb{R}^{(D+1)\times(D+1)}
XXT∈R(D+1)×(D+1)是可逆的(
r
a
n
k
(
X
X
T
)
=
D
+
1
rank(\mathbf{X}\mathbf{X}^T)=D+1
rank(XXT)=D+1),即可以知道
X
\mathbf{X}
X的行向量是线性不相关,换句话说特征之间是互相独立的(不存在完美的多重共线性[说人话就是不存在精确的线性关系]);
存在的问题
-
当 X X T \mathbf{X}\mathbf{X}^T XXT不可逆时,比较常见的情况是样本数量 N N N小于特征数量 D + 1 D+1 D+1,则此时 r a n k ( X X T ) = N rank(\mathbf{X}\mathbf{X}^T)=N rank(XXT)=N,就会有无穷多解 w ∗ \mathbf{w^*} w∗使得 R ( w ∗ ) = 0 \mathcal{R}(\mathbf{w}^*)=0 R(w∗)=0;
- 解决方案
- 预处理时采用PCA等方法消除不同特征之间的相关性,再使用LSM进行参数估计;
- 使用LMS(梯度下降迭代)求解参数;
- 解决方案
-
当 X X T \mathbf{X}\mathbf{X}^T XXT可逆时,有可能存在多重共线性(数据集 X \mathbf{X} X上小的扰动会导致 ( X X T ) − 1 (\mathbf{X}\mathbf{X}^T)^{-1} (XXT)−1发生大的改变),使得LSM的计算变得不稳定;
- 解决方案:
- 岭回归:
(
X
X
T
+
λ
I
)
(\mathbf{X}\mathbf{X}^T+\lambda I)
(XXT+λI),最优参数为
w ∗ = ( X X T + λ I ) − 1 X y \mathbf{w}^*=(\mathbf{X}\mathbf{X}^T+\lambda I)^{-1}\mathbf{X}\mathbf{y} w∗=(XXT+λI)−1Xy
- 岭回归:
(
X
X
T
+
λ
I
)
(\mathbf{X}\mathbf{X}^T+\lambda I)
(XXT+λI),最优参数为
- 解决方案:
岭回归也可以看作结构风险最小化准则下的LSM,其中
R
(
w
)
=
1
2
∣
∣
y
−
X
T
w
∣
∣
2
+
1
2
λ
∣
∣
w
∣
∣
2
\mathcal{R}(\mathbf{w}) = \frac{1}{2}||\mathbf{y}-\mathbf{X}^T\mathbf{w}||^2+\frac{1}{2}\lambda||\mathbf{w}||^2
R(w)=21∣∣y−XTw∣∣2+21λ∣∣w∣∣2
> 其实多重共线性还有很多其他解决办法【挖🕳待补】
2.2 LMS | Least Mean Square
w ← w − α ∂ ∂ w R ( w ) w ← w + α X ( y − X T w ) \begin{aligned} \mathbf{w} &\leftarrow \mathbf{w}-\alpha \frac{\partial}{\partial \mathbf{w}}\mathcal{R}(\mathbf{w})\\ \mathbf{w} &\leftarrow \mathbf{w}+\alpha\mathbf{X}(\mathbf{y}-\mathbf{X}^T\mathbf{w}) \end{aligned} ww←w−α∂w∂R(w)←w+αX(y−XTw)
- 多个样本时梯度下降两种方式
- 批量梯度下降法 | Batch Gradient Descent
- 每一步检查整个训练集中的所有样本;
- 容易被局部最小值影响;[此处不会, R ( w ) \mathcal{R}(\mathbf{w}) R(w)为凸函数,极小值就是最小值]
- 随机梯度下降法 | Stochastic Gradient Descent
- 每次遇到一个样本就对参数进行更新,对整个训练集进行循环遍历;
- 训练集( N N N)很大的时候,一般偏向于选择SGD(BGD需要对整个训练集进行扫描,引起性能开销)
- 批量梯度下降法 | Batch Gradient Descent
2.3 MLE | Maximum Likelihood Estimation
[Maximum Likelihood Estimation] Choose value that maximizes the probability of observed data
θ
^
M
L
E
=
a
r
g
m
a
x
θ
P
(
D
∣
θ
)
\hat{\theta}_{MLE}=\underset{\theta}{argmax}\ P(\mathcal{D}|\theta)
θ^MLE=θargmax P(D∣θ)
条件概率 p ( y ∣ x ) p(y|\mathbf{x}) p(y∣x) 角度
假设随机变量
y
y
y由函数
f
(
x
;
w
)
=
w
T
x
f(\mathbf{x};\mathbf{w})=\mathbf{w}^T\mathbf{x}
f(x;w)=wTx和随机噪声
ϵ
\epsilon
ϵ(
ϵ
∼
N
(
0
,
σ
2
)
\epsilon\sim\mathcal{N}(0,\sigma^2)
ϵ∼N(0,σ2)),即
y
=
f
(
x
;
w
)
+
ϵ
=
w
T
x
+
ϵ
\begin{aligned} y &= f(\mathbf{x};\mathbf{w})+\epsilon\\ &= \mathbf{w}^T\mathbf{x}+\epsilon \end{aligned}
y=f(x;w)+ϵ=wTx+ϵ
由此我们可以得到随机变量
y
∣
x
;
w
,
σ
∼
N
(
w
T
x
,
σ
2
)
y|\mathbf{x};\mathbf{w},\sigma\sim\mathcal{N}(\mathbf{w}^T\mathbf{x},\sigma^2)
y∣x;w,σ∼N(wTx,σ2)
p
(
y
∣
x
;
w
,
σ
)
=
N
(
y
;
w
T
x
,
σ
2
)
\begin{aligned} p(y|\mathbf{x};\mathbf{w},\sigma)&=\mathcal{N}(y;\mathbf{w}^T\mathbf{x},\sigma^2) \end{aligned}
p(y∣x;w,σ)=N(y;wTx,σ2)
则参数
w
\mathbf{w}
w在训练集
D
\mathcal{D}
D上的似然函数为
p
(
y
∣
X
;
w
,
σ
)
=
∏
n
=
1
N
p
(
y
(
n
)
∣
x
(
n
)
;
w
,
σ
)
=
∏
n
=
1
N
N
(
y
(
n
)
;
w
T
x
(
n
)
,
σ
2
)
\begin{aligned} p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)&=\prod^N_{n=1}p(y^{(n)}|\mathbf{x}^{(n)};\mathbf{w},\sigma)\\ &=\prod^N_{n=1}\mathcal{N}(y^{(n)};\mathbf{w}^T\mathbf{x}^{(n)},\sigma^2) \end{aligned}
p(y∣X;w,σ)=n=1∏Np(y(n)∣x(n);w,σ)=n=1∏NN(y(n);wTx(n),σ2)
其对数似然函数为
l
o
g
p
(
y
∣
X
;
w
,
σ
)
=
∑
n
=
1
N
N
(
y
(
n
)
;
w
T
x
(
n
)
,
σ
2
)
logp(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)=\sum^N_{n=1}\mathcal{N}(y^{(n)};\mathbf{w}^T\mathbf{x}^{(n)},\sigma^2)
logp(y∣X;w,σ)=n=1∑NN(y(n);wTx(n),σ2)
则MLE转化为
w
M
L
E
=
a
r
g
m
a
x
w
p
(
y
∣
X
;
w
,
σ
)
=
a
r
g
m
a
x
w
l
o
g
p
(
y
∣
X
;
w
,
σ
)
\begin{aligned} \mathbf{w}_{MLE}&=\underset{\mathbf{w}}{argmax}\ p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)\\ &= \underset{\mathbf{w}}{argmax}\ logp(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma) \end{aligned}
wMLE=wargmax p(y∣X;w,σ)=wargmax logp(y∣X;w,σ)
令
∂
l
o
g
p
(
y
∣
X
;
w
,
σ
)
∂
w
=
0
\frac{\partial log\ p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)}{\partial \mathbf{w}}=0
∂w∂log p(y∣X;w,σ)=0,计算得
w
^
M
L
E
=
(
X
X
T
)
−
1
X
y
\hat{\mathbf{w}}_{MLE}=(\mathbf{X}\mathbf{X}^T)^{-1}\mathbf{X}\mathbf{y}
w^MLE=(XXT)−1Xy
2.4 MAP | Maximum A Posterior Estimation
[Maximum A Posterior Estimation] Choose value that is most probable given observed data and prior belief
θ
^
M
A
P
=
a
r
g
m
a
x
θ
P
(
θ
∣
D
)
=
a
r
g
m
a
x
θ
P
(
D
∣
θ
)
P
(
θ
)
\begin{aligned} \hat{\theta}_{MAP} &= \underset{\theta}{argmax}\ P(\theta|\mathcal{D})\\ &= \underset{\theta}{argmax}\ P(\mathcal{D}|\theta)P(\theta) \end{aligned}
θ^MAP=θargmax P(θ∣D)=θargmax P(D∣θ)P(θ)
在MLE的假设基础上,进一步假设我们掌握了一些关于参数
w
\mathbf{w}
w的信息,即参数
w
\mathbf{w}
w先验分布为
p
(
w
;
v
)
p(\mathbf{w};v)
p(w;v),由贝叶斯公式,我们能得到
w
M
A
P
=
a
r
g
m
a
x
w
p
(
y
∣
X
;
w
,
σ
)
p
(
w
;
v
)
=
a
r
g
m
a
x
w
l
o
g
p
(
y
∣
X
;
w
,
σ
)
+
l
o
g
p
(
w
;
v
)
\begin{aligned} \mathbf{w}_{MAP}&=\underset{\mathbf{w}}{argmax}\ p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)p(\mathbf{w};v)\\ &= \underset{\mathbf{w}}{argmax}\ log\ p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)+log\ p(\mathbf{w};v) \end{aligned}
wMAP=wargmax p(y∣X;w,σ)p(w;v)=wargmax log p(y∣X;w,σ)+log p(w;v)
若我们假设这个先验分布为各向同性的高斯分布(
p
(
w
;
v
)
=
N
(
w
;
0
,
v
2
I
)
p(\mathbf{w};v)=\mathcal{N}(\mathbf{w};\mathbf{0},v^2I)
p(w;v)=N(w;0,v2I)),则
w
M
A
P
=
a
r
g
m
a
x
w
l
o
g
p
(
y
∣
X
;
w
,
σ
)
+
l
o
g
p
(
w
;
v
)
=
−
1
2
σ
2
∣
∣
y
−
X
T
w
∣
∣
2
−
1
2
v
2
w
T
w
\begin{aligned} \mathbf{w}_{MAP}&=\underset{\mathbf{w}}{argmax}\ log\ p(\mathbf{y}|\mathbf{X};\mathbf{w},\sigma)+log\ p(\mathbf{w};v)\\ &= -\frac{1}{2\sigma^2}||\mathbf{y}-\mathbf{X}^T\mathbf{w}||^2-\frac{1}{2v^2}\mathbf{w}^T\mathbf{w} \end{aligned}
wMAP=wargmax log p(y∣X;w,σ)+log p(w;v)=−2σ21∣∣y−XTw∣∣2−2v21wTw
- 我们看到MAP实际上等价于平方损失的结构风险最小化(正则化系数为 λ = σ 2 v 2 \lambda=\frac{\sigma^2}{v^2} λ=v2σ2)
- 当先验分布 p ( w ; v ) p(\mathbf{w};v) p(w;v)退化为均匀分布时(大白话就是你的先验信息获取了和没获取一样),此时MAP退化为MLE;
没整理完
* 整理自
- nndl
- cs290 notes1
- cmu 10-715 lecture1b