zoukankan      html  css  js  c++  java
  • 多项式拟合

    在网上看别人的心得

    一 最小二乘法的基本原理

    从整体上考虑近似函数 同所给数据点 (i=0,1,…,m)误差 (i=0,1,…,m)的大小,常用的方法有以下三种:一是误差 (i=0,1,…,m)绝对值的最大值 ,即误差 向量 的∞范数;二是误差绝对值的和 ,即误差向量r的1范数;三是误差平方和 的算术平方根,即误差向量r的2范数;前两种方法简单、自然,但不便于微分运算 ,后一种方法相当于考虑 2范数的平方,因此在曲线拟合中常采用误差平方和 来 度量误差 (i=0,1,…,m)的整体大小。

    数据拟合的具体作法是:对给定数据  (i=0,1,…,m),在取定的函数类 中,求 ,使误差 (i=0,1,…,m)的平方和最小,即

        =

    从几何意义上讲,就是寻求与给定点 (i=0,1,…,m)的距离平方和为最小的曲线 (图6-1)。函数 称为拟合 函数或最小二乘解,求拟合函数 的方法称为曲线拟合的最小二乘法。

    在曲线拟合中,函数类 可有不同的选取方法.

    61

    二 多项式拟合

    假设给定数据点 (i=0,1,…,m), 为所有次数不超过 的多项式构成的函数类,现求一 ,使得

          (1)

    当拟合函数为多项式时,称为多项式拟合,满足式(1)的 称为最小二乘拟合多项式。特别地,当n=1时,称为线性拟合或直线拟合。

    显然

    的多元函数,因此上述问题即为求 的极值 问题。由多元函数求极值的必要条件,得

          (2)

             (3)

    (3)是关于 的线性方程组,用矩阵表示为

          (4)

    式(3)或式(4)称为正规方程组或法方程组。

    可以证明,方程组(4)的系数矩阵是一个对称正定矩阵,故存在唯一解。从式(4)中解出 (k=0,1,…,n),从而可得多项式

            (5)

    可以证明,式(5)中的 满足式(1),即 为所求的拟合多项式。我们把 称为最小二乘拟合多项式 的平方误差,记作

    由式(2)可得

             (6)

    多项式拟合的一般方法可归纳为以下几步:

     (1) 由已知数据画出函数粗略的图形——散点图,确定拟合多项式的次数n;

    (2) 列表计算 ;

    (3) 写出正规方程组,求出 ;

    (4) 写出拟合多项式 。

    在实际应用中, ;当 时所得的拟合多项式就是拉格朗日或牛顿插值多项式。 

    例1 测得铜导线在温度 (℃)时的电阻 如表6-1,求电阻R与温度 T的近似函数关系。

    i

    0

    1

    2

    3

    4

    5

    6

    (℃)

    19.1

    25.0

    30.1

    36.0

    40.0

    45.1

    50.0

    76.30

    77.80

    79.25

    80.80

    82.35

    83.90

    85.10

      画出散点图(图6-2),可见测得的数据接近一条直线,故取n=1,拟合函数为

    列表如下

    i

    0

    19.1

    76.30

    364.81

    1457.330

    1

    25.0

    77.80

    625.00

    1945.000

    2

    30.1

    79.25

    906.01

    2385.425

    3

    36.0

    80.80

    1296.00

    2908.800

    4

    40.0

    82.35

    1600.00

    3294.000

    5

    45.1

    83.90

    2034.01

    3783.890

    6

    50.0

    85.10

    2500.00

    4255.000

    245.3

    565.5

    9325.83

    20029.445

    正规方程组为

    解方程组得

    故得R与T的拟合直线为

    利用上述关系式,可以预测不同温度时铜导线的电阻值。例如,由R=0得T=-242.5,即预测温度T=-242.5℃时,铜导线无电阻。

    6-2

    例2     已知实验数据如下表

     

     

    i

    0

    1

    2

    3

    4

    5

    6

    7

    8

    1

    3

    4

    5

    6

    7

    8

    9

    10

    10

    5

    4

    2

    1

    1

    2

    3

    4

    试用最小二乘法求它的二次拟合多项式。

       设拟合曲线方程为

    列表如下

    I

    0

    1

    10

    1

    1

    1

    10

    10

    1

    3

    5

    9

    27

    81

    15

    45

    2

    4

    4

    16

    64

    256

    16

    64

    3

    5

    2

    25

    125

    625

    10

    50

    4

    6

    1

    36

    216

    1296

    6

    36

    5

    7

    1

    49

    343

    2401

    7

    49

    6

    8

    2

    64

    512

    4096

    16

    128

    7

    9

    3

    81

    729

    6561

    27

    243

    8

    10

    4

    100

    1000

    10000

    40

    400

    53

    32

    381

    3017

    25317

    147

    1025

    得正规方程组

    解得

    故拟合多项式为

    *三 最小二乘拟合多项式的存在唯一性

    定理1   设节点 互异,则法方程组(4)的解存在唯一。

      由克莱姆法则,只需证明方程组(4)的系数矩阵非奇异即可。

    用反证法,设方程组(4)的系数矩阵奇异,则其所对应的齐次方程组

         (7)

    有非零解。式(7)可写为

           (8)

    将式(8)中第j个方程乘以 (j=0,1,…,n),然后将新得到的n+1个方程左右两端分别 相加,得

    因为

    其中

    所以

       (i=0,1,…,m)

    是次数不超过n的多项式,它有m+1>n个相异零点,由代数基本定理,必须有 ,与齐次方程组有非零解的假设矛盾。因此正规方程组(4)必有唯一解 。定理2  是正规方程组(4)的解,则 是满足式(1)的最小二乘拟合多项式。

       只需证明,对任意一组数 组成的多项式 ,恒有

    即可。

    因为 (k=0,1,…,n)是正规方程组(4)的解,所以满足式(2),因此有

    为最小二乘拟合多项式。

    *四  多项式拟合中克服正规方程组的病态

    在多项式拟合中,当拟合多项式的次数较高时,其正规方程组往往是病态的。而且

    ①正规方程组系数矩阵的阶数越高,病态越严重;

    ②拟合节点分布的区间 偏离原点越远,病态越严重;

    (i=0,1,…,m)的数量级相差越大,病态越严重。

    为了克服以上缺点,一般采用以下措施:

    ①尽量少作高次拟合多项式,而作不同的分段低次拟合;

    ②不使用原始节点作拟合,将节点分布区间作平移,使新的节点 关于原 点对称,可大大降低正规方程组的条件数,从而减低病态程度。

    平移公式为:

          (9)

    ③对平移后的节点 (i=0,1,…,m),再作压缩或扩张处理:

          (10)

    其中 ,(r是拟合次数)       (11)

    经过这样调整可以使 的数量级不太大也不太小,特别对于等距节点 ,作式(10)和式(11)两项变换后,其正规方程组的系数矩阵设 为A,则对1~4次多项式拟合,条件数都不太大,都可以得到满意的结果。

    变换后的条件数上限表如下:

    拟合次数

    1

    2

    3

    4

    =1

    <9.9

    <50.3

    <435

     

    ④在实际应用中还可以利用正交多项式求拟合多项式。一种方法是构造离散正交多项式;另一种方法是利用切比雪夫节点求出函数值后再使用正交多项式。这两种方法都使正规方程 组的系数矩阵为对角矩阵,从而避免了正规方程组的病态。我们只介绍第一种,见第三节。

    例如 m=19, =328,h=1, = +ih,i=0,1,…,19,即节点 分布在[328,347],作二次多项式拟合时

    ① 直接用 构造正规方程组系数矩阵 ,计算可得

    严重病态,拟合结果完全不能用。

    ② 作平移变换

    用 构造正规方程组系数矩阵 ,计算可得

    降低了13个数量级,病态显著改善,拟合效果较好。

    ③ 取压缩因子

    作压缩变换

    构造正规方程组系数矩阵 ,计算可得

    又比 降低了3个数量级,是良态的方程组,拟合效果十分理想。

    如有必要,在得到的拟合多项式 中使用原来节点所对应的变量x,可写为 

    仍为一个关于x的n次多项式,正是我们要求的拟合多项式。

  • 相关阅读:
    R 包安装问题
    特征值分解与奇异值分解
    向量内积&外积
    hdu_3449(有依赖背包)
    Gene co-expression analysis for functional classification and gene–disease predictions
    MCMC & 贝叶斯
    继承(来自视频)
    面向对象 创建对象
    mongodb笔记(三)
    mongodb笔记(二)
  • 原文地址:https://www.cnblogs.com/wenrenhua08/p/3993624.html
Copyright © 2011-2022 走看看