QR分解求特徵值的方法很簡單,計算過程如下:
QR本身可以看作一個將矩陣A轉化爲上三角矩陣R的過程,通過householder,givens轉換等手段,構造一系列的變換矩陣T,將矩陣轉換爲上三角矩陣R,而變換矩陣的逆矩陣則構成了Q。一定條件下,經過n次迭代後,迭代矩陣An會神奇的收斂成一個上三角矩陣,其對角陣對應的元素就是An的特徵值,也是原始矩陣A的特徵值,是不是很神奇。那麼爲什麼會收斂成這樣呢?直覺上,這是一種冪法,經過不斷地迭代,使得特徵值保留下來,非特徵值部分要麼變大,要麼收斂爲0。事實上,這種求特徵值地方法確實屬於一種特殊地冪法。我們所知道地冪法和反冪法都是針對最大或者最小的特徵值來的,像QR這種一網打盡的方式,實在難以想象。爲什麼QR這種迭代方式會最終收斂到特徵值呢?我找了國內外不少網站,也沒有找到淺顯的解釋。這裏將這幾天找到的資料整理一下,按照自己的理解說一下。
這個問題看來是一個複雜的問題,所以這裏簡化了它的收斂證明過程。考慮一種比較特殊的矩陣QR分解形式
假定矩陣A滿足以下兩個條件
1.A是對稱正定矩陣,且特徵值各不相同,保證了QR分解的唯一性
2.A可以表示爲,且有,L爲下三角矩陣,L的對角線全部爲1,U爲上三角矩陣
另外,需要知道以下幾點性質
1.上三角矩陣乘以上三角矩陣仍然是上三角矩陣,對於下三角矩陣也是同理
2.上三角矩陣求逆,仍然是上三角矩陣,對於下三角矩陣也是同理
首先,求得的推導公式
假設我們的問題中收斂成立,最終可以得到,只要能證明這一點就行了,但是最關鍵的是想看到冪法是如何其作用的。
令
令,代入上式
其中,
由此可以得到,於是有
其中,分別爲正交矩陣和上三角矩陣,由QR分解的唯一性可以知道,,
再來看看
我們可以看到,QR迭代過程,可以看作消去Q矩陣的過程。像冪法一樣,QR也有平移的算法,以上介紹的是非平移的算法過程。由於A是對稱正定矩陣,最終分解得到了對角陣,而不是上三角矩陣。爲了儘量的描述簡單,加了不少苛刻的條件,下面將條件稍微放寬些,A只是正定,不再是對稱,其他條件保持不變,於是不再成立。
由於
由於,
令,毫無疑問,M,R和T都是上三角矩陣,且有,可以看到M的對角線元素收斂於特徵值。
上面就是QR收斂的證明過程,證明過程並不嚴密,且由於條件特殊,並不具備普遍性。確實如此,這個算法本身收斂性是有限制的,並非對所有矩陣都能滿足。要做到普遍適用,應該要用到移位的QR算法。
參考:
https://www.zhihu.com/question/54455860
https://people.kth.se/~eliasj/qrmethod.pdf
http://pi.math.cornell.edu/~web6140/TopTenAlgorithms/QRalgorithm.html