赞
踩
最小二乘法是勒让德( A. M. Legendre)于1805年在其著作《计算慧星轨道的新方法》中提出的。其核心的思想就是说求解未知参数,使得理论值与观测值之差(误差,或者说残差)的平方和(一般叫做损失函数)达到最小:
其中
y
i
y_i
yi 就是我们的观测样本,
y
^
\hat y
y^ 就是我们的理论值(也叫你和函数),目标函数就是我们说的损失函数 E ,我们的目标就是得到使得 E 最小时候的参数取值。所谓最小二乘,其实也可以叫做最小平方和,其目的就是通过最小化误差的平方和,使得拟合对象无限接近目标对象。换句话说,最小二乘法可以用于对函数的拟合.
假定一个线性系统表示为:
A
x
=
b
Ax=b
Ax=b
其中A是一个mn的矩阵,b是一个m1的矩阵,且
m
>
n
m>n
m>n;同时,A是列满秩,即
r
a
n
k
(
A
)
=
n
rank(A)=n
rank(A)=n。系统通常是不一致的(没有解决方案),并且是一种通用方法寻找近似解的方法是选择结果最小的解残差r = Ax-b的平方范数:
问题(LS)是使整个空间的二次函数最小化的问题。的
二次目标函数为
A是一个列满秩,它遵循对于一切的x有
∇
2
f
(
x
)
=
2
A
T
A
>
0
\nabla ^2f(x)=2A^TA>0
∇2f(x)=2ATA>0,可以得出:
x
L
S
=
(
A
T
A
)
−
1
A
T
b
x_{LS}=(A^TA)^{-1}A^Tb
xLS=(ATA)−1ATb
x
L
S
x_{LS}
xLS被称为最小二乘解。
MATLAB中实现:使用“\”,即左除。
在几种情况下,最小二乘解不会产生对“真实”向量x的良好估计。 例如,当A不确定时,即方程组少于变量时,存在最小二乘问题的多个最优解,尚不清楚应该考虑哪个最优解。 在这些情况下,应将有关x的某种先验信息纳入优化模型。 一种方法是考虑一个惩罚问题,其中将正则化函数
R
(
.
)
R(.)
R(.)添加到目标函数。 正则化最小二乘(RLS)问题的形式为
正常数A是正则化参数。 随着A变大,正则化函数将获得更多权重。
在许多情况下,正则化被认为是二次的。 特别地,
R
(
x
)
=
∣
∣
D
x
∣
∣
2
R(x)= ||Dx||_2
R(x)=∣∣Dx∣∣2其中D为p*n阶给定矩阵。 二次正则函数旨在控制Dx的范数,其公式如下
其可以等效写为:
由于目标函数的Hessian是
∇
2
f
R
L
S
(
x
)
=
2
(
A
T
A
+
λ
D
T
D
)
>
=
0
\nabla ^2f_{RLS}(x)=2(A^TA+\lambda D^TD)>=0
∇2fRLS(x)=2(ATA+λDTD)>=0,任何固定点都是全局最小点。静止点是那些满足
∇
2
f
R
L
S
(
x
)
=
0
\nabla ^2f_{RLS}(x)=0
∇2fRLS(x)=0的点,即
因此,只要
(
A
T
A
+
λ
D
T
D
)
>
0
(A^TA+\lambda D^TD)>0
(ATA+λDTD)>0,那么RLS可以根据下式求解。
通常使用正则化的一种应用领域是降噪。假设
给出信号x e Rn的噪声测量:
b
=
x
+
w
b=x+w
b=x+w
x是未知信号,w是位置噪声向量,b是已知测量向量。去噪问题如下:给定b,找到一个“好的”估计值x,与近似方程
x
≈
b
x \approx b
x≈b相关的最小二乘问题是:
min
∣
∣
x
−
b
∣
∣
\min ||x-b||
min∣∣x−b∣∣
但是,此问题的最佳解决方案显然是x = b,这毫无意义。在这种情况下,即使相关矩阵(恒等矩阵)的列数是完整的,最小二乘解也无法提供足够的信息。 为了找到更相关的问题,我们将添加一个正则项。 为此,我们需要利用信号上的一些先验信息。 例如,我们可能事先知道信号在某种意义上是平滑的。 在这种情况下,添加二次惩罚是很自然的,这是向量连续分量之差的平方之和。 即正则化函数为
该二次函数也可以写成
R
(
x
)
=
∣
∣
L
x
∣
∣
2
R(x)=||Lx||^2
R(x)=∣∣Lx∣∣2,其中L为(n-1)*n阶矩阵:
所得的正则化最小二乘问题为(给定一个正则参数
λ
\lambda
λ),使
其最优解为:
备注:具体公式推导等可以参考Introduction to Nonlinear Optimization: Theory, Algorithms, and Applications with MATLAB
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。