最小二乘、加权最小二乘(WLS)、迭代加权最小二乘(迭代重加全最小二乘)(IRLS)
- 最小二乘:
最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。
X
=
[
x
11
x
12
.
.
.
x
21
x
22
.
.
.
x
31
x
32
.
.
.
.
.
.
.
.
.
x
m
n
]
X=\begin{bmatrix} x_{11} & x_{12} & ... \\ x_{21} & x_{22} & ... \\ x_{31} & x_{32} & ... \\ ... & ... & x_{mn} \end{bmatrix}
X=⎣⎢⎢⎡x11x21x31...x12x22x32............xmn⎦⎥⎥⎤
Y
=
[
y
1
.
.
.
y
m
]
Y=\begin{bmatrix} y_{1}\\ ...\\ y_{m} \end{bmatrix}
Y=⎣⎡y1...ym⎦⎤
θ
=
[
θ
1
.
.
.
θ
n
]
\mathbf{\theta}=\begin{bmatrix} \theta_{1}\\ ...\\ \theta_{n} \end{bmatrix}
θ=⎣⎡θ1...θn⎦⎤
X
X
X中每一列为特征,每一行代表一个样本;
Y
Y
Y为标签;
θ
\theta
θ是参数
有优化问题:
f
(
θ
)
=
1
2
∣
∣
X
θ
−
Y
∣
∣
2
f(\theta)=\frac{1}{2}\left | \left | X\theta-Y \right | \right |^{2}
f(θ)=21∣∣Xθ−Y∣∣2
f
(
θ
)
=
1
2
(
θ
T
X
T
X
θ
−
θ
T
X
T
Y
−
Y
T
X
θ
+
Y
T
Y
)
f(\mathbf{\theta})=\frac{1}{2}(\mathbf{\theta}^{T}X^{T}X\mathbf{\theta}-\mathbf{\theta}^{T}X^{T}Y-Y^{T}X\mathbf{\theta}+Y^{T}Y)
f(θ)=21(θTXTXθ−θTXTY−YTXθ+YTY)
对函数
f
(
θ
)
f(\theta)
f(θ)关于参数
θ
\mathbf{\theta}
θ求偏导:
∂
f
(
θ
)
)
∂
θ
=
X
T
X
θ
−
X
T
Y
=
0
\frac{\partial f(\mathbf{\theta}))}{\partial \mathbf{\theta}}=X^{T}X\mathbf{\theta}-X^{T}Y=0
∂θ∂f(θ))=XTXθ−XTY=0
θ
=
(
X
T
X
)
−
1
X
T
Y
\mathbf{\theta}=(X^{T}X)^{-1}X^{T}Y
θ=(XTX)−1XTY
得到
θ
\mathbf{\theta}
θ的解析解。
- 加权最小二乘(WLS):
加权最小二乘是在普通最小二乘的基础上对每个样本引入权重,调整不同样本误差对损失函数的贡献率。
加权最小二乘法是对原模型进行加权,使之成为一个新的不存在异方差性的模型,然后采用普通最小二乘法估计其参数的一种数学优化技术。
异方差性是相对于同方差而言的。所谓同方差,是为了保证回归参数估计量具有良好的统计性质,经典线性回归模型的一个重要假定:总体回归函数中的随机误差项满足同方差性,即它们都有相同的方差。
X
X
X、
Y
Y
Y、
θ
\theta
θ定义如上,引入对角矩阵
W
W
W
W
=
[
w
11
.
.
.
0
0
0
w
22
.
.
.
0
.
.
.
.
.
.
.
.
.
.
.
.
0
0
.
.
.
w
m
m
]
W=\begin{bmatrix} w_{11} & ... &0 & 0\\ 0 & w_{22} &... &0 \\ ...& ... & ... &... \\ 0& 0& ... & w_{mm} \end{bmatrix}
W=⎣⎢⎢⎡w110...0...w22...00.........00...wmm⎦⎥⎥⎤
损失函数变为:
f
(
θ
)
=
1
2
∥
W
(
X
θ
−
Y
)
∥
2
f(\mathbf{\theta})=\frac{1}{2}\left \| W(X\mathbf{\theta}-Y) \right \|^{2}
f(θ)=21∥W(Xθ−Y)∥2
f
(
θ
)
=
1
2
(
W
θ
T
X
T
A
θ
−
W
θ
T
A
T
Y
−
W
Y
T
A
θ
+
W
Y
T
Y
)
f(\mathbf{\theta})=\frac{1}{2}(W\mathbf{\theta}^{T}X^{T}A\mathbf{\theta}-W\mathbf{\theta}^{T}A^{T}Y-WY^{T}A\mathbf{\theta}+WY^{T}Y)
f(θ)=21(WθTXTAθ−WθTATY−WYTAθ+WYTY)
对函数
f
(
θ
)
f(\theta)
f(θ)关于参数
θ
\mathbf{\theta}
θ求偏导:
∂
f
(
θ
)
∂
θ
=
−
X
T
W
T
W
Y
+
X
T
W
T
W
X
θ
=
0
\frac{\partial f(\mathbf{\theta})}{\partial \mathbf{\theta}}=-X^{T}W^{T}WY+X^{T}W^{T}WX\mathbf{\theta}=0
∂θ∂f(θ)=−XTWTWY+XTWTWXθ=0
θ
=
(
X
T
W
T
W
X
)
−
1
X
T
W
T
W
Y
\ \mathbf{\theta}=(X^{T}W^{T}WX)^{-1}X^{T}W^{T}WY
θ=(XTWTWX)−1XTWTWY
- 迭代重加权最小二乘(IRLS):
迭代重加权最小二乘(IRLS)与迭代加权最小二乘(IWLS)虽然名字不一样,但是内容确实一样,IRLS与IWLS指的都是同一种算法,(我在网上查了很多博客,发现许多人喜欢把IRLS叫做迭代加权最小二乘)
IRLS用来求解p范数的问题,将p范数问题转化为2范数求解。
目标函数:
f
(
θ
)
=
∥
A
X
−
Y
∥
p
p
f(\mathbf{\theta})=\left \| AX-Y \right \|_{p}^{p}
f(θ)=∥AX−Y∥pp,这里的
∥
A
X
−
Y
∥
p
\left \| AX-Y \right \|_{p}
∥AX−Y∥p是一个
p
p
p范数。计算方式如:
∥
X
∥
p
=
x
1
p
+
x
2
p
+
.
.
.
+
x
m
p
p
\left \| X \right \|_{p}=\sqrt[p]{x_{1}^{p}+x_{2}^{p}+...+x_{m}^{p}}
∥X∥p=px1p+x2p+...+xmp。
所以
f
(
θ
)
=
a
r
g
min
θ
∑
i
=
1
m
(
x
i
θ
−
y
i
)
p
f(\mathbf{\theta})=\underset{\mathbf{\theta}}{arg\min}\sum_{i=1}^{m}(x_{i}\mathbf{\theta}-y_{i})^{p}
f(θ)=θargmin∑i=1m(xiθ−yi)p
f
(
θ
)
=
a
r
g
min
θ
∑
i
=
1
m
(
x
i
θ
−
y
i
)
p
−
2
(
x
i
θ
−
y
i
)
2
f(\mathbf{\theta})=\underset{\mathbf{\theta}}{arg\min}\sum_{i=1}^{m}(x_{i}\mathbf{\theta}-y_{i})^{p-2}(x_{i}\mathbf{\theta}-y_{i})^{2}
f(θ)=θargmini=1∑m(xiθ−yi)p−2(xiθ−yi)2
f
(
θ
)
=
a
r
g
min
θ
∑
i
=
1
m
w
i
2
(
x
i
θ
−
y
i
)
2
f(\mathbf{\theta})=\underset{\mathbf{\theta}}{arg\min}\sum_{i=1}^{m}w_{i}^{2}(x_{i}\mathbf{\theta}-y_{i})^{2}
f(θ)=θargmini=1∑mwi2(xiθ−yi)2
所以:
w
i
2
=
∣
x
i
θ
−
y
i
∣
p
−
2
w_{i}^{2}=|x_{i}\mathbf{\theta}-y_{i}|^{p-2}
wi2=∣xiθ−yi∣p−2
w
i
=
∣
x
i
θ
−
y
i
∣
p
−
2
2
w_{i}=|x_{i}\mathbf{\theta}-y_{i}|^{\frac{p-2}{2}}
wi=∣xiθ−yi∣2p−2
写成矩阵形式就是:
f
(
θ
)
=
1
2
∣
∣
W
(
X
θ
−
Y
)
∣
∣
2
=
1
2
W
2
∥
X
θ
−
Y
∥
2
f(\mathbf{\theta})=\frac{1}{2}||W(X\mathbf{\theta}-Y)||^{2}=\frac{1}{2}W^{2}\left \| X\mathbf{\theta}-Y \right \|^{2}
f(θ)=21∣∣W(Xθ−Y)∣∣2=21W2∥Xθ−Y∥2
θ
n
e
w
=
(
X
T
W
n
e
w
T
W
n
e
w
X
)
−
1
X
T
W
n
e
w
T
W
n
e
w
Y
\mathbf{\theta}_{new}=(X^{T}W^{T}_{new}W_{new}X)^{-1}X^{T}W^{T}_{new}W_{new}Y
θnew=(XTWnewTWnewX)−1XTWnewTWnewY
W
n
e
w
=
∣
X
θ
o
l
d
−
Y
∣
p
−
2
2
W_{new}=|X\mathbf{\theta}_{old}-Y|^{\frac{p-2}{2}}
Wnew=∣Xθold−Y∣2p−2
IRLS参考文献:Burrus C S. Iterative re-weighted least squares[J]. Comm.pure Appl.math, 2009, 44(6):1-9.