最小二乘法LS (Least Square)

已知未知系数的方程$ f(x)=p(x)^{T}*\alpha $,以及一系列数据点$(x_{i},y_{i})$,其中$p(x)$是基函数,$\alpha$是系数向量,求解该方程的系数向量,使得损失函数$J=\sum_{i=0}^{n} (f(x_{i})-y_{i})^2$值最小。联立所有方程,一般是一个超定方程组(等式个数大于未知数),一般可以表示为$Ax=b$形式,这里的$x$是指待求系数。
以方程$f(x)=a+bx+cx^{2}$为例,可以表示成如下形式:

$$ \begin{bmatrix} 1 & x_{1} & x_{1}^{2}\\ 1 & x_{2} & x_{2}^{2}\\ ... & ... & ...\\ 1 & x_{n} & x_{n}^{2} \end{bmatrix} * \begin{bmatrix} a\\ b\\ c \end{bmatrix} = \begin{bmatrix} y_{1}\\ y_{2}\\ ...\\ y_{n} \end{bmatrix} $$

  • 求解上述问题,可以有两种思路,一种是从投影的角度,另一种是对损失函数求偏导数令其等于0。结果都是$x=(A^{T}A)^{-1}A^{T}b$,用法线方程法公式计算有个前提就是式中有个逆矩阵,必须保证可逆,否则得用别的方法求解。
  • 上述方法解出来的解误差分布不一定理想,可以通过计算$Cond(A^TA)$条件数判断方程是否是病态的,必要时可以考虑QR分解等解法。
  • 如果方程自变量个数不止一个,或者方程形式较复杂,一般都是通过化简和变量组合向上面的线性形式凑齐然后求解。
  • 至于为什么损失函数是平方和,需要从概率论角度解释,大概意思是残差满足正态分布的最大似然估计就是最小二乘形式。

移动最小二乘法MLS (Moving Least Square)

MLS的拟合方程$f(x)=p(x)^{T}*\alpha(x)$中$p(x)$是奇函数列向量,$\alpha(x)$不再是常数,而是基于$x$的函数。
另外MLS引入了紧支概念:就是某点处的函数值只受附近点的影响,即每个数据点只对自己影响区域内的拟合结果有影响,由此引入权函数$w(x)$,此时损失函数为$J=\sum_{i=0}^{n} w(x-x_i)(f(x_{i})-y_{i})^2=\sum_{i=0}^{n} w(x-x_i)(p(x)^{T}*\alpha(x)-y_{i})^2$。
对损失函数求偏导等于0可得$\alpha$:

$$ \begin{align} & \frac{\partial J}{\partial \alpha(x)} = A(x)\alpha(x)-B(x)y = 0 \\ & \alpha(x) = A^{-1}(x)B(x)B(x)y \\ & A(x) = \sum_{i=1}^{n}w(x-x_i)p(x_i)p^T(x_i) \\ & B(x) = [w(x-x_1)p(x_1),w(x-x_2)p(x_2),...,w(x-x_n)p(x_n)] \end{align} $$

  • 权函数$w(x-x_i)$应该是非负的,并伴随着$||x-x_i||_2$增大而减小。
  • 实际应用过程中,取不同基函数可以获得不同的拟合精度,取不同的权函数可以获得不同的平滑度。

参考

https://zhuanlan.zhihu.com/p/38128785
https://blog.csdn.net/qq_38977019/article/details/105075096
https://www.zhihu.com/question/37031188/answer/2041682439
https://wenku.baidu.com/link?url=w6cM-cFlyQ_ty3eJXPokbAPaDoiXvDKrPLGJ4Nr5wgf7WCOFBh6r0P6faBPHZeXVK9K5EuPhA9PEDMzBotPGm4DWIGgT-WUQd8oEgJeE-03
https://zhuanlan.zhihu.com/p/353282073
https://www.doc88.com/p-8778611828185.html
https://ww2.mathworks.cn/help/matlab/ref/lsqr.html

最后修改:2021 年 10 月 14 日 07 : 37 PM