數值計算方法的“穩定性”是指在計算過程中舍入誤差是可以控制的。
對於有些矩陣,矩陣中某個元素的一個很小的變動,會引起最後計算結果誤差很大,這種矩陣稱爲“病態矩陣”。有些時候不正確的計算方法也會使一個正常的矩陣在運算中表現出病態。對於高斯消去法來說,如果主元(即對角線上的元素)上的元素很小,在計算時就會表現出病態的特徵。
迴歸分析中常用的最小二乘法是一種無偏估計。
當X列滿秩時,有
X+表示X的廣義逆(或叫僞逆)。
當X不是列滿秩,或者某些列之間的線性相關性比較大時,XTX的行列式接近於0,即XTX接近於奇異,計算(XTX)-1時誤差會很大。此時傳統的最小二乘法缺乏穩定性與可靠性。
嶺迴歸是對最小二乘迴歸的一種補充,它損失了無偏性,來換取高的數值穩定性,從而得到較高的計算精度。
當XTX的行列式接近於0時,我們將其主對角元素都加上一個數k,可以使矩陣爲奇異的風險大降低。於是:
(I是單位矩陣)
隨着k的增大,B(k)中各元素bi(k)的絕對值均趨於不斷變小,它們相對於正確值bi的偏差也越來越大。k趨於無窮大時,B(k)趨於0。b(k)隨k的改變而變化的軌跡,就稱爲嶺跡。實際計算中可選非常多的k值,做出一個嶺跡圖,看看這個圖在取哪個值的時候變穩定了,那就確定k值了。
X不滿足列滿秩,換句話就是說樣本向量之間具有高度的相關性(如果每一列是一個向量的話)。遇到列向量相關的情形,嶺迴歸是一種處理方法,也可以用主成分分析PCA來進行降維。