為什麼需要lanczos演算法?

時間 2021-12-22 00:11:19

1樓:乙隻渴望學習的豬

高讚的回答是有問題的。

高讚認為這兩者的區別在於是否讓所有向量正交。

其實這兩種演算法都可以讓所有向量正交,之所以只讓第i-2,i-1這兩個向量的正交,是因為當i增加時,因為數值上抵消現象,正交性會逐漸缺失,所以才用i-2與i-1確保至少相鄰的正交性是不錯的(Modified GS),如果正交性喪失得過多,還需要重啟krylov空間。施密特正交化的方法也可以只讓相鄰向量正交。

不過lanczos演算法的優勢確實是在對稱稀疏矩陣中能夠保持不填入的特性,其實就是arnoldi過程,只是矩陣是對稱的。

lanczos演算法的實質是在krylov子空間中尋找乙個矩陣,乙個什麼樣的矩陣呢?乙個與原矩陣最接近的矩陣,這個矩陣的是乙個三對角矩陣,用這個矩陣的特徵值去近似原矩陣的特徵值。

QR演算法用的施密特正交是直接解法,是需要求解所有的特徵值,不可能說做到第k維就不正交下去了,而lanczos演算法是迭代演算法,是優化演算法,我可以在k維krylov子空間中找,也可以在k+1維中找,兩者本質完全不一樣。

lanczos演算法也可以求解矩陣所有的特徵值,不過那樣迭代次數會比較高。如圖是lanczos演算法的特徵值收斂情況,可以看到最大和最小特徵值是收斂得比較快的。(紅色的為真實特徵值)

這種演算法非常厲害,與冪法相比收斂速度會快很多很多。

這個過程的推導原理簡單幾句話還講不清楚...後面有緣再來補充吧。

研究量子演算法需要什麼數學基礎?

張戎 看過一點點量子計算的書籍,發現需要看懂不是特別難,需要數學分析和高等代數的基礎知識,其中高等代數更多一些。然後需要的就是找一本合適的書籍看下去了。推薦資料 Quantum Computing From Linear Algebra to Physical Realizations 幾天沒見發現...

DH演算法為什麼屬於非對稱加密演算法?

雲子可信 DH 演算法其實也叫作Diffie Hellman金鑰交換協議,是乙個不安全的秘鑰共享網路協議,無法避免中間人攻擊。假設Ali和Bob需要互相通訊並共享秘鑰 Ali先給Bob乙個明文共享引數 此資訊可以被任何人識別 Ali自己生成乙個隨機數 Ali的私鑰 並不將 告訴包括Bob在內的任何人...

做演算法需要哪些數學知識?

摸魚 簡單的演算法對於數學的要求並不是很高,演算法看重的是邏輯思維,解決問題的方式有很多種,就看你能否找到簡單高效的方法,當然這需要大量的練習,熟能生巧這個道理大家誰都懂對吧。如果要往特定的演算法方向走的話,一些數學的知識肯定是不可或缺的。總的來說 數理統計 線性代數 運籌學 最優化.這些還是掌握吧...