当前位置:   article > 正文

数值计算方法 Chapter3. 曲线拟合的最小二乘法_二次项拟合公式a ,b,c

二次项拟合公式a ,b,c

1. 线性拟合和二次拟合函数

最小二乘法本质上就是求一个事先定义一个函数,然后使用已知的采样点结果拟合函数的参数,使得所有采样点的均方误差最小。

即:

φ ( x ) = a r g m i n   ∑ i ∣ φ ( x i ) − y i ∣ 2 \varphi(x) = argmin\ \sum_{i}|\varphi(x_i) - y_i|^2 φ(x)=argmin iφ(xi)yi2

1. 线性拟合

我们假定拟合曲线为:

φ ( x ) = a x + b \varphi(x) = ax + b φ(x)=ax+b

则有拟合误差为:

Q = ∑ i ( a x i + b − y i ) 2 Q = \sum_{i}(ax_i+b-y_i)^2 Q=i(axi+byi)2

要使得拟合误差 Q Q Q最小,则我们有 Q Q Q对于参数 a , b a,b a,b的偏导均为0,因此,我们即有:

{ ∂ Q ∂ a = ∑ i 2 x i ( a x i + b − y i ) = 0 ∂ Q ∂ b = ∑ i 2 ( a x i + b − y i ) = 0 \left\{

Qa=i2xi(axi+byi)=0Qb=i2(axi+byi)=0
\right. aQbQ=i2xi(axi+byi)=0=i2(axi+byi)=0

可以解得:

{ a = n ⋅ ∑ i x i y i − ( ∑ i x i ) ( ∑ i y i ) n ⋅ ∑ i x i 2 − ( ∑ i x i ) 2 b = 1 n ∑ i y i − 1 n ( ∑ i x i ) ⋅ a \left\{

a=nixiyi(ixi)(iyi)nixi2(ixi)2b=1niyi1n(ixi)a
\right. ab=nixi2(ixi)2nixiyi(ixi)(iyi)=n1iyin1(ixi)a

2. 二次拟合函数

类似的,我们可以得到二次拟合函数的最小二乘法的结果。

定义拟合函数为:

φ ( x ) = a x 2 + b x + c \varphi(x) = ax^2 + bx + c φ(x)=ax2+bx+c

则有拟合误差:

Q = ∑ i ( a x i 2 + b x i + c ) 2 Q = \sum_i(ax_i^2 + bx_i + c)^2 Q=i(axi2+bxi+c)2

同样,我们可以解得,在极值条件下,有:

{ ∂ Q ∂ a = ∑ i 2 x i 2 ( a x i 2 + b x i + c − y i ) = 0 ∂ Q ∂ b = ∑ i 2 x i ( a x i 2 + b x i + c − y i ) = 0 ∂ Q ∂ c = ∑ i 2 ( a x i 2 + b x i + c − y i ) = 0 \left\{

Qa=i2xi2(axi2+bxi+cyi)=0Qb=i2xi(axi2+bxi+cyi)=0Qc=i2(axi2+bxi+cyi)=0
\right. aQbQcQ=i2xi2(axi2+bxi+cyi)=0=i2xi(axi2+bxi+cyi)=0=i2(axi2+bxi+cyi)=0

亦即:

( ∑ i x i 4 ∑ i x i 3 ∑ i x i 2 ∑ i x i 3 ∑ i x i 2 ∑ i x i ∑ i x i 2 ∑ i x i n ) ( a b c ) = ( ∑ i x i 2 y i ∑ i x i y i ∑ i y i )

(ixi4ixi3ixi2ixi3ixi2ixiixi2ixin)
(abc)
=
(ixi2yiixiyiiyi)
ixi4ixi3ixi2ixi3ixi2ixiixi2ixinabc=ixi2yiixiyiiyi

可解得:

( a b c ) = ( ∑ i x i 4 ∑ i x i 3 ∑ i x i 2 ∑ i x i 3 ∑ i x i 2 ∑ i x i ∑ i x i 2 ∑ i x i n ) − 1 ⋅ ( ∑ i x i 2 y i ∑ i x i y i ∑ i y i )

(abc)
=
(ixi4ixi3ixi2ixi3ixi2ixiixi2ixin)
^{-1} \cdot
(ixi2yiixiyiiyi)
abc=ixi4ixi3ixi2ixi3ixi2ixiixi2ixin1ixi2yiixiyiiyi

类似的也可以推至n阶的情况,这里就不一一展开了。

3. a ⋅ e b x a\cdot e^{bx} aebx型函数

形如 a ⋅ e b x a\cdot e^{bx} aebx的函数直接用最小二乘法倒是没法直接求解,不过可以通过一定的函数变换转换成 n n n阶函数形式,然后我们就可以仿照上述方式进行求解了。

比如这里的 a ⋅ e b x a\cdot e^{bx} aebx类型的函数,我们做函数变换,令 z = l n ( y ) z= ln(y) z=ln(y),则有:

z = b x + l n ( a ) z = bx + ln(a) z=bx+ln(a)

即可使用最小二乘法进行求解。

类似的,还可以有函数 y = 1 a x + b y = \frac{1}{ax+b} y=ax+b1,我们令 z = 1 y z = \frac{1}{y} z=y1,即可有:

z = a x + b z = ax + b z=ax+b

2. 解矛盾方程组

书中这一小节事实上就是给前面最小二乘法的内容提供一些理论上的支持,没有啥更多的内容,因此,我们仅在这里摘录书中的定理如下:

定理3.1
(1) A A A m m m n n n列的矩阵, b b b为列向量, A T A X = A T b A^TAX = A^Tb ATAX=ATb称为矛盾方程组 A X = b AX = b AX=b的法方程,法方程恒有解。
(2) X X X m i n ∣ ∣ A X − b ∣ ∣ 2 2 min||AX-b||_2^2 minAXb22的解,当且仅当 X X X满足 A T A X = A T b A^TAX = A^Tb ATAX=ATb,即 X X X是法方程的解。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/503465
推荐阅读
相关标签
  

闽ICP备14008679号