我使用eigs來計算大(數以萬計)的稀疏平方矩陣的特徵向量。 我想要的是最小的一組特徵向量。 但是爲什麼eigs('lm')比eigs('sm')快得多
eigs(A, 10, 'sm') % Note: A is the matrix
運行非常緩慢。
但是,使用eigs(A,10,'lm')給了我相對更快的答案。 正如我試過的,用eigs(A,10,'lm')中的A_width替換10,使其包含所有的特徵向量,並不能解決這個問題,因爲這使得它與使用'sm' 。因此,我想知道爲什麼計算最小的向量(使用'sm')比計算最大的向量要慢得多?
順便說一句,如果你對如何使用'sm'和'lm'一樣快使用eigs,請告訴我。
感謝您的回覆wakjah。我會嘗試有時閱讀你的鏈接信息。 – 2013-03-27 07:25:59
'lm'的計算次數比'sm'少得多。我想只有這樣才能知道爲什麼要學習eigs中使用的算法,它可以在wakjah提供的'here'鏈接中找到。 – 2013-03-29 02:04:58
'eigs'是爲稀疏矩陣設計的,對它進行非稀疏輸入分析就沒有用。 – rubenvb 2013-11-21 09:03:15