多項式擬合缺點 多項式擬合

2021-10-16 14:59:53 字數 3624 閱讀 3938

在網上看別人的心得

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

從整體上考慮近似函式同所給資料點(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)。函式稱為擬合 函式或最小二乘解,求擬合函式的方法稱為曲線擬合的最小二乘法。

在曲線擬合中,函式類可有不同的選取方法.

6—1二 多項式擬合

假設給定資料點(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的近似函式關係。

i19.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,擬合函式為

列表如下

i19.1

76.30

364.81

1457.330

25.0

77.80

625.00

1945.000

30.1

79.25

906.01

2385.425

36.0

80.80

1296.00

2908.800

40.0

82.35

1600.00

3294.000

45.1

83.90

2034.01

3783.890

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試用最小二乘法求它的二次擬合多項式。

解設擬合曲線方程為

列表如下

i得正規方程組

解得故擬合多項式為

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

定理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<9.9

<50.3

<435

④在實際應用中還可以利用正交多項式求擬合多項式。一種方法是構造離散正交多項式;另一種方法是利用切比雪夫節點求出函式值後再使用正交多項式。這兩種方法都使正規方程 組的係數矩陣為對角矩陣,從而避免了正規方程組的病態。我們只介紹第一種,見第三節。

例如 m=19,=328,h=1, =+ih,i=0,1,…,19,即節點 分布在[328,347],作二次多項式擬合時

① 直接用構造正規方程組係數矩陣,計算可得

嚴重病態,擬合結果完全不能用。

② 作平移變換

用構造正規方程組係數矩陣,計算可得

比降低了13個數量級,病態顯著改善,擬合效果較好。

③ 取壓縮因子

作壓縮變換

用構造正規方程組係數矩陣,計算可得

又比降低了3個數量級,是良態的方程組,擬合效果十分理想。

如有必要,在得到的擬合多項式中使用原來節點所對應的變數x,可寫為

仍為乙個關於x的n次多項式,正是我們要求的擬合多項式。

多項式擬合

class1.cs 擬合類 using system using system.collections.generic using system.text namespace 最小二乘法擬合多項式 guass i,j sumarr arrx,i,arry,1,length return comput...

多項式擬合

多項式擬合 多項式的一般形式 y p x n p x p x p x p 多項式擬合的目的是為了找到一組p0 pn,使得擬合方程盡可能的與實際樣本資料相符合。假設擬合得到的多項式如下 f x p x n p x p x p x p 則擬合函式與真實結果的差方如下 loss y 1 f x 1 2 y...

MATLAB多項式及多項式擬合

多項式均表示為陣列形式,陣列元素為多項式降冪係數 1.polyval函式 求多項式在某一點或某幾個點的值.p 1,1,1 x 2 x 1 x 1,0,1 y polyval p,x 另外求函式在某一點或某幾個點的值可以用函式feval.x 1,0,1 y feval x exp x x 注意用的乘法...