**:
最小二乘法的基本原理和多項式擬合
一 最小二乘法的基本原理
從整體上考慮近似函式同所給資料點(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的近似函式關係。i0
1234
56(℃)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
019.1
76.30
364.81
1457.330
125.0
77.80
625.00
1945.000
230.1
79.25
906.01
2385.425
336.0
80.80
1296.00
2908.800
440.0
82.35
1600.00
3294.000
545.1
83.90
2034.01
3783.890
650.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 例2 已知實驗資料如下表i0
1234
5678
1345678
910 10
5421
1234
試用最小二乘法求它的二次擬合多項式。
解 設擬合曲線方程為
列表如下i
0110111
101013
592781
154524
41664256
166435
225125625
105046
1362161296636
57149
3432401749
68264
5124096
1612879
3817296561
27243810
4100
1000
10000
40400 53
32381
3017
25317
1471025
得正規方程組
解得故擬合多項式為
*三 最小二乘擬合多項式的存在唯一性
定理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次多項式擬合,條件數都不太大,都可以得到滿意的結果。
變換後的條件數上限表如下:
擬合次數12
34 =1
<9.9
<50.3
<435
④在實際應用中還可以利用正交多項式求擬合多項式。一種方法是構造離散正交多項式;另一種方法是利用切比雪夫節點求出函式值後再使用正交多項式。這兩種方法都使正規方程組的係數矩陣為對角矩陣,從而避免了正規方程組的病態。我們只介紹第一種,見第三節。
例如 m=19,=328,h=1, =+ih,i=0,1,…,19,即節點 分布在[328,347],作二次多項式擬合時
① 直接用構造正規方程組係數矩陣,計算可得
嚴重病態,擬合結果完全不能用。
② 作平移變換
用構造正規方程組係數矩陣,計算可得
比降低了13個數量級,病態顯著改善,擬合效果較好。
③ 取壓縮因子
作壓縮變換
用構造正規方程組係數矩陣,計算可得
又比降低了3個數量級,是良態的方程組,擬合效果十分理想。
如有必要,在得到的擬合多項式中使用原來節點所對應的變數x,可寫為
仍為乙個關於x的n次多項式,正是我們要求的擬合多項式。
最小二乘法 多項式
多項式最小二乘法 基於一元二次方程進行推理 方程式是 f x ax 2 bx c 其中點 n x i,y i 表示多個點資訊,擬合乙個二次方程 其中原理為 i 1 n a x i 2 bx i c y i 2 min 對各個係數求導 i 1 n a x i 2 bx i c y i 2 min 對a...
最小二乘法擬合多項式
最小二乘法擬合多項式 求解 給定資料點 xi yi 用最小二乘法擬合資料的多項式,並求平方誤差。include include include include using namespace std const int maxn 1000 int n,m double b maxn xy doubl...
多項式曲線擬合最小二乘法
對給定的試驗資料點 xi,yi i 1,2,n 可以構造m次多項式 資料擬合的最簡單的做法就是使誤差p xi yi的平方和最小 當前任務就是求乙個p x 使得 從幾何意義上講就是尋求給與定點 xi,yi 距離的平方和最小的曲線y p x 函式p x 稱為擬合函式或者是最小二乘解,求擬合函式p x 的...