11/22/2006

10.4 最小平方解法

當一個系統之聯立方程式個數大於未知數之數目時,會形成過度確定性系統(overdetermined system)。此時,反矩陣法已無法應用,只能用左除法求解。但這種解如同多數解的過程一樣,必須尋最小平方的技巧,使解能夠以最接近所有點為準,成為一般所謂之回歸公式。茲以下面例子做介紹:

設有一方程式的關係式為y= a x1+b x2+c x3想適配下列資料:


y x1 x2 x3
3 2 3 1
6 3 -2 4
-5 -5 3 6
4 2 7 3
2 4 8 -7

依問題之需要,可利用rank指令執行如下:

A=[2 3 1; 3 -2 4; -5 3 6; 2 7 3; 4 8 -7];
C=[3;6;-5;4;2];
R1=rank(A), R2=rank([A C])

由階數R1及R2觀之,兩者不相同,故無法以正常方式得解。然而利用左除法B=A\C仍可以得到相關係數,因此得到此函數為:

B=A\C
R1 = 3
R2 = 4
B =
1.442
-0.067601
0.4352

y= 1.442 x1 -0.067601x2+0.4352 x3

然而,此結果並非其真實解,而是利用最小平方法求得。若以此解作驗證,即y=A*B,其結果為:

A*B
ans =
3.1163
6.2018
-4.8014
3.7163
2.1806

顯然與原值[ 3 6 -5 4 2]仍有誤差。只是因採用最小平方的關係,可以求得最接近之數。最小平方的取法是將各數項之平方值之和以fmins求得最小值。即:


J=Σi=15[ax1i+bx2i+cx3i-y]2


最小平方之應用將在第十一章統計與迴歸部份進一步說明。