特徵值問題與奇異值分解

瑞利商疊代

/ RAY-lee /

反冪法在移位 sigma 非常接近目標特徵值時效果最好。但若你只有一個粗略的猜測呢?這裡有個優雅的想法:別把移位固定——每一步都用你目前最好的特徵值估計來更新它。隨著特徵向量的估計變得更銳利,你的移位就更靠近真正的特徵值,使下一步反冪法更快,進而讓估計更銳利。這個回饋迴路就是瑞利商疊代(Rayleigh quotient iteration),它收斂得快得驚人。

機制上:給定一個單位向量 v,瑞利商 r(v) = v^T A v / (v^T v) 是與 v 相關的特徵值的最佳單一數字估計(對稱矩陣下,當 v 為特徵向量時它恰為特徵值,且它最小化 ||A v - r v||)。演算法重複:計算 sigma = v^T A v;解 (A - sigma I) w = v;令 v = w / ||w||。因為移位逼近特徵值的速度,與向量逼近特徵向量的速度同步,誤差相乘複合。對稱矩陣下收斂是「三次」(cubic)的:每步正確位數大致「三倍」增長。從 1 位到 3 位到 9 位到 27 位——少數幾次疊代就達到機器精度。

三次收斂很戲劇化,但有誠實的告誡。每一步都得解一個新的線性系統(移位變了,所以無法重複使用同一次 LU 分解),使每步比固定移位的反冪法更昂貴。而且因為移位會跳動,這方法只是「局部收斂」:從不佳的起始向量出發,它可能收斂到你不想要的特徵對,或四處遊走。實務上 RQI 用作快速收尾——先用 QR 演算法或幾步冪法進入鄰域,再切換到 RQI,兩三次疊代就把一個特徵對磨到滿精度。

對列為 (2, 1) 與 (1, 2) 的 A,從 v = (1, 0) 開始。sigma = v^T A v = 2。解 (A - 2I) w = v,其中 A - 2I 的列為 (0,1),(1,0):w = (0, 1) -> v = (0, 1)。此處因對稱性新的 sigma 又是 2;改用略為傾斜的起點如 (1, 0.1),則兩三步內收斂到 (0.707, 0.707) 與 sigma = 3 達滿精度——位數每步三倍增長。

每步用瑞利商更新移位,對稱矩陣下可得三次收斂。

三次收斂適用於對稱(厄米)矩陣;對一般非對稱矩陣,RQI 是二次收斂,仍然很快。代價是每步要重新分解,且收斂只是局部的——可能落到非預期的特徵對,所以它是收尾打磨工具,不是全域搜尋。

又称
RQI瑞利商迭代