過定方程組(overdetermined system)
假設你量測一條彈簧在數個砝碼下的伸長量,並相信兩者呈直線關係:伸長 = a + b*重量。兩筆乾淨的量測就能精確定出 a 與 b 這兩個未知數。但你取了十筆量測,每筆都帶一點雜訊,沒有任何一條直線能同時通過這十個點。如今你有十條方程式,卻只有兩個未知數——要求比可調的旋鈕還多。這就是過定方程組:在線性系統 A x = b 中,矩陣 A 的列數(方程式數)多於行數(未知數)。
把它寫成 A x = b,其中 A 是 m×n 且 m > n。每一列是一條方程式;每一行對應向量 x 中的一個未知數。由於列多於行,右端 b 幾乎絕不落在 A x 所能產生的向量集合(A 的行空間/column space)之中,因此通常沒有精確解——方程組不相容。從幾何上看,A 的各行至多張出 m 維空間中的一個 n 維切片,而一般的 b 會戳出這個切片之外。我們不再要求 A x = b 精確成立,而是退而求其次,讓 A x 盡量接近 b,這正好引出最小平方問題。
過定方程組在資料擬合、校準與統計中是常態:你幾乎總有比模型參數更多的資料點,正因為多餘的資料能讓雜訊互相平均掉。互補的情形 m < n(欠定方程組,未知數多於方程式)有無窮多個精確解,需要另一種想法——挑選範數最小的那一個。別把「沒有精確解」誤認為「沒有答案」:過定方程組有一個非常合理的最佳擬合答案,只是它不是精確解而已。
用直線 y = a + b x 去擬合三個點 (1, 2)、(2, 2)、(3, 4)。把三條方程式堆疊起來得到 A,其各列為 (1, 1)、(1, 2)、(1, 3),且 b = (2, 2, 4)^T,其中 x = (a, b)^T。沒有任何 (a, b) 能同時打中三個點(它們不共線),所以這個 3×2 系統是過定且不相容的——我們改為最小化 ||A x - b||_2。
三條方程式、兩個未知數:約束多於自由度,所以我們退而求其次,求最佳擬合。
過定方程組通常不相容,但並非總是如此——若 b 恰好精確落在行空間中(無雜訊、完美擬合的資料),則存在精確解,最小平方法會回傳它且殘差為零。