最小平方法與資料擬合

列文柏格-馬夸特法(Levenberg-Marquardt method)

/ LAY-ven-berg MAR-kwart /

列文柏格-馬夸特法是非線性最小平方的可靠預設——這個演算法安靜地驅動著大多數曲線擬合常式。它解的問題和高斯-牛頓相同,但多了一道安全閥。高斯-牛頓快但魯莽:當前猜測離答案很遠時,它線性化後的大步可能過衝而發散。純梯度下降則相反:總是安全地往下坡走,卻爬得痛苦地慢。列文柏格-馬夸特把兩者混合,時時刻刻倚靠當下合適的那一個。

機制上,高斯-牛頓每步解 (J^T J) delta = -J^T r。列文柏格-馬夸特改解「阻尼」系統 (J^T J + mu D) delta = -J^T r,其中 mu >= 0 是阻尼參數,D 是正的對角矩陣(常取 diag(J^T J))。mu 小時,J^T J 項主導,你得到快速的高斯-牛頓步;mu 大時,阻尼主導,你得到沿梯度下降方向的短而安全的步。演算法即時調整 mu:在一步減小了殘差後,它縮小 mu 以更大膽;在一步失敗後,它放大 mu 以更謹慎並重試。這恰是信賴域策略——mu 隱含地限制每步能游走多遠。

回報是穩健性:列文柏格-馬夸特能從比高斯-牛頓更差的起點收斂,同時在接近解時保持近乎二次的速度,這正是它成為科學參數估計、電腦視覺校準與小規模機器學習模型擬合主力的原因。誠實的注意事項承襲自非線性最小平方法:它找的是「局部」極小,未必是全域的,而且儘管有阻尼,糟糕的初始猜測或難以識別的模型仍可能擊敗它。它穩健,但非魔法。

當從遙遠的猜測去擬合數個高斯之和時,早期迭代的 mu 很大,所以列文柏格-馬夸特走的是謹慎的小下坡步,避開純高斯-牛頓會遭遇的狂野過衝。隨著擬合改善,mu 自動縮小,步伐變成快速的高斯-牛頓步,迅速吸附到局部極小。

阻尼在安全的梯度下降(mu 大)與快速的高斯-牛頓(mu 小)之間插值。

列文柏格-馬夸特穩健,但仍是局部的:它收斂到起點附近的極小,未必是全域最佳擬合。對多峰問題你仍需要好的初始猜測,或在其上加一層全域搜尋。

又稱
LMdamped Gauss-NewtonLMA列文柏格-馬夸特演算法阻尼高斯-牛頓法