推导线性回归
线性回归问题就是利用一个线性的方程对已有的数据点进行拟合,目的是当拟合成功后,给你一个新的数据可以利用该线性方程得到较为准确的预测;
假设,我们现在又数据集 X = { x 1 , x 2 , . . . . . . , x m } X=\{x^{1}, x^{2},......,x^{m}\} X={x1,x2,......,xm},且其中的每一个数据 x i = ( x 1 i , x 2 i , . . . . . . x n i ) x^{i}=(x^{i}_1,x^{i}_2,......x^{i}_n) xi=(x1i,x2i,......xni)是 n n n维向量(即包含了 n n n个特征,比如身高、体重、视力等)。对应的标签 Y = { y 1 , y 2 , . . . . . . y m } Y=\{y^1,y^2,......y^m\} Y={y1,y2,......ym}。
现在,我们有一个线性方程
h
θ
(
x
i
)
=
θ
0
+
θ
1
x
1
i
+
θ
2
x
2
i
+
.
.
.
.
.
.
+
θ
n
x
n
i
=
Θ
T
x
i
^
(1)
h_{\theta}(x^i)=\theta_0+\theta_1 x^i_1 + \theta_2 x^i_2+......+\theta_n x^i_n=\Theta^T \hat{x^i}\tag{1}
hθ(xi)=θ0+θ1x1i+θ2x2i+......+θnxni=ΘTxi^(1)
其中
x
i
^
:
=
(
1
,
x
1
i
,
x
2
i
,
.
.
.
.
.
.
x
n
i
)
\hat{x^i}:=(1,x^{i}_1,x^{i}_2,......x^{i}_n)
xi^:=(1,x1i,x2i,......xni),在后面我们直接用
x
i
x^i
xi表示;
假如每次输入一个 x i x^i xi都能得到一个与 y i y^i yi非常接近的值,则此线性方程是拟合成功的。
极大似然估计(MLE)
我们假设预测值与准确值之间有误差
ε
\varepsilon
ε
y
i
=
h
θ
(
x
i
)
+
ε
i
(2)
y^i=h_{\theta}(x^i)+\varepsilon^i\tag{2}
yi=hθ(xi)+εi(2)
且,改误差服从高斯分布
ε
∼
N
(
0
,
σ
2
)
(3)
\varepsilon\sim N(0,\sigma^2)\tag{3}
ε∼N(0,σ2)(3)
那么就有
p
(
ε
i
)
=
1
2
π
σ
⋅
exp
(
−
(
ε
i
)
2
2
σ
2
)
(4)
p(\varepsilon^i)=\frac{1}{\sqrt{2\pi}\sigma}\cdot\exp(-\frac{(\varepsilon^i)^2}{2\sigma^2})\tag{4}
p(εi)=2πσ1⋅exp(−2σ2(εi)2)(4)
则似然函数为
L
(
θ
∣
x
)
=
∏
i
=
1
m
p
(
ε
i
)
=
∏
i
=
1
m
p
(
y
i
∣
x
i
;
θ
)
=
∏
i
=
1
m
1
2
π
σ
⋅
exp
(
−
(
y
i
−
Θ
T
x
i
)
2
2
σ
2
)
(5)
L(\theta|x)=\prod_{i=1}^{m}p(\varepsilon^i)=\prod_{i=1}^{m}p(y^i|x^i;\theta)=\prod_{i=1}^{m} \frac{1}{\sqrt{2\pi}\sigma}\cdot\exp(-\frac{(y^i-\Theta^T x^i)^2}{2\sigma^2})\tag{5}
L(θ∣x)=i=1∏mp(εi)=i=1∏mp(yi∣xi;θ)=i=1∏m2πσ1⋅exp(−2σ2(yi−ΘTxi)2)(5)
对数化
l
(
θ
)
=
log
L
(
θ
∣
x
)
=
∑
i
=
1
m
log
p
(
ε
i
)
=
∑
i
=
1
m
log
(
1
2
π
σ
⋅
exp
(
−
(
y
i
−
Θ
T
x
i
)
2
2
σ
2
)
)
=
m
log
1
2
π
σ
−
1
2
σ
2
∑
i
=
1
m
(
y
i
−
Θ
T
x
i
)
2
(6)
l(\theta) = \log L(\theta|x) = \sum_{i=1}^{m}\log p(\varepsilon^i) = \sum_{i=1}^m\log(\frac{1}{\sqrt{2\pi}\sigma}\cdot\exp(-\frac{(y^i-\Theta^T x^i)^2}{2\sigma^2}))\\ =m\log\frac{1}{\sqrt{2\pi}\sigma}-\frac{1}{2\sigma^2}\sum_{i=1}^m(y^i-\Theta^T x^i)^2\tag{6}
l(θ)=logL(θ∣x)=i=1∑mlogp(εi)=i=1∑mlog(2πσ1⋅exp(−2σ2(yi−ΘTxi)2))=mlog2πσ1−2σ21i=1∑m(yi−ΘTxi)2(6)
由极大似然估计可知,极大化
l
(
θ
)
l(\theta)
l(θ)就是极小化
1
2
∑
i
=
1
m
(
y
i
−
Θ
T
x
i
)
2
\frac{1}{2}\sum_{i=1}^m(y^i-\Theta^T x^i)^2
21∑i=1m(yi−ΘTxi)2
OLS(最小二乘法)
min θ J ( θ ) = 1 2 ∑ i = 1 m ( y i − h θ ( x i ) ) 2 \min_{\theta}J(\theta) = \frac{1}{2}\sum_{i=1}^m(y^i-h_{\theta}(x^i))^2 θminJ(θ)=21i=1∑m(yi−hθ(xi))2
求解
- 直接解析法
对下式求导并令其为0
J
(
θ
)
=
1
2
∑
i
=
1
m
(
y
i
−
h
θ
(
x
i
)
)
2
=
1
2
(
Y
−
X
Θ
)
T
(
Y
−
X
Θ
)
J(\theta) = \frac{1}{2}\sum_{i=1}^m(y^i-h_{\theta}(x^i))^2 = \frac{1}{2}(Y-X\Theta)^T(Y-X\Theta)
J(θ)=21i=1∑m(yi−hθ(xi))2=21(Y−XΘ)T(Y−XΘ)
▽ θ J ( θ ) = ▽ θ 1 2 ( ( Y T − Θ T X T ) ( Y − X Θ ) ) = ▽ θ 1 2 ( Y T Y − Y T X Θ − Θ T X T Y + Θ T X T X Θ ) = 1 2 ( − X T Y − X T Y + 2 X T X Θ ) = X T X Θ − X T Y \triangledown_{\theta}J(\theta) = \triangledown_{\theta}\frac{1}{2}((Y^T-\Theta^TX^T)(Y-X\Theta))\\ =\triangledown_{\theta}\frac{1}{2}(Y^TY-Y^TX\Theta-\Theta^TX^TY + \Theta^TX^TX\Theta)\\ =\frac{1}{2}(-X^TY-X^TY+2X^TX\Theta)\\ =X^TX\Theta-X^TY ▽θJ(θ)=▽θ21((YT−ΘTXT)(Y−XΘ))=▽θ21(YTY−YTXΘ−ΘTXTY+ΘTXTXΘ)=21(−XTY−XTY+2XTXΘ)=XTXΘ−XTY
最后求得
Θ
=
(
X
T
X
)
−
1
X
T
Y
\Theta = (X^TX)^{-1}X^TY
Θ=(XTX)−1XTY