曲线拟合的最小二乘法
本文参考书为马东升著《数值计算方法》
最小二乘法
与插值法的区别:只需“逼近” f ( x ) f(x) f(x) ,而不用满足插值原则(即经过插值节点)
最小二乘原理
设 y = f ( x ) y=f(x) y=f(x) 在区间 [ a , b ] [\ a\ ,b\ ] [ a ,b ] 上有定义,求 φ ( x ) \varphi(x) φ(x) ,使得 φ ( x i ) \varphi(x_i) φ(xi) 与 f ( x i ) f(x_i) f(xi) 的误差或者距离最小
-
1-范数意义下的误差
R 1 = ∑ i = 1 n ∣ φ ( x i ) − y i ∣ R_1=\sum\limits_{i=1}^n|\varphi(x_i)-y_i| R1=i=1∑n∣φ(xi)−yi∣
-
∞ \infty ∞-范数意义下的误差
R ∞ = max 1 ≤ i ≤ n ∣ φ ( x i ) − y i ∣ R_{\infty}=\max\limits_{1\le i\le n}|\varphi(x_i)-y_i| R∞=1≤i≤nmax∣φ(xi)−yi∣
-
2-范数意义下的误差(均方误差)
R 2 2 = ∑ i = 1 n ( φ ( x i ) − y i ) 2 R_2^2=\sum\limits_{i=1}^n(\varphi(x_i)-y_i)^2 R22=i=1∑n(φ(xi)−yi)2
按均方误差达到极小构造拟合曲线的方法称为最小二乘法
-
正则方程组
系数矩阵为对称矩阵的方程组,称为正则方程组或法方程组
直线拟合
设已知数据点 ( x i , y i ) (x_i,y_i) (xi,yi) 分布大致为直线,构造拟合直线 y = a + b x y=a+bx y=a+bx ,则需使残差平方和
∑ i = 1 m [ y i − ( a + b x i ) ] 2 \sum\limits_{i=1}^m[\ y_i-(a+bx_i)]^2 i=1∑m[ yi−(a+bxi)]2
为最小计算时正则方程组为
( ∑ i = 1 m 1 ∑ i = 1 m x i ∑ i = 1 m x i ∑ i = 1 m x i 2 ) ( a b ) = ( ∑ i = 1 m y i ∑ i = 1 m x i y i ) \begin{pmatrix}{\sum\limits_{i=1}^m1}&{\sum\limits_{i=1}^mx_i}\\ {\sum\limits_{i=1}^mx_i}&{\sum\limits_{i=1}^mx_i^2}\end{pmatrix}\begin{pmatrix}a\\b\end{pmatrix}=\begin{pmatrix}{\sum\limits_{i=1}^my_i}\\{\sum\limits_{i=1}^mx_iy_i}\end{pmatrix} ⎝⎜⎛i=1∑m1i=1∑mxii=1∑mxii=1∑mxi2⎠⎟⎞(ab)=⎝⎜⎛i=1∑myii=1∑mxiyi⎠⎟⎞
如果有权值 ω i \omega_i ωi ,则在每一项乘以 ω i \omega_i ωi 即可,如下
( ∑ i = 1 m ω i ∑ i = 1 m ω i x i ∑ i = 1 m ω i x i ∑ i = 1 m ω i x i 2 ) ( a b ) = ( ∑ i = 1 m ω i y i