大きなスパース行列(数十万行)のスペクトル(すべての固有値)を計算したい。これはきつい。
近似値に落ち着きます。これを行う近似方法はありますか?
この質問に対する一般的な回答を希望する一方で、次の特定の場合の回答にも満足します。私の行列は、大きなグラフの正規化ラプラシアンです。固有値は0から2の間であり、それらの多くは1前後にクラスター化されます。
大きなスパース行列(数十万行)のスペクトル(すべての固有値)を計算したい。これはきつい。
近似値に落ち着きます。これを行う近似方法はありますか?
この質問に対する一般的な回答を希望する一方で、次の特定の場合の回答にも満足します。私の行列は、大きなグラフの正規化ラプラシアンです。固有値は0から2の間であり、それらの多くは1前後にクラスター化されます。
回答:
グラフが無向の場合(私が疑うように)、行列は対称であり、Lanczosアルゴリズム(安定性のために必要に応じて選択的な再直交化を使用)よりも良いことはできません。完全なスペクトルは100,000個の数字で構成されているため、主にスペクトル密度に関心があると思います。
おおよそのスペクトル密度を取得するには、次元100程度の主要なクリロフ部分空間のスペクトルを取得し、その離散密度を平滑化バージョンに置き換えます。
主要なKrylovスペクトルは、十分に分離された固有値(これらが存在する場合)をほぼ解決し、非分離スペクトルの最後の固有値に近似し、その間の分布分布が真のスペクトルの分布関数に似た分布でややランダムになります。次元が大きくなると、正確な算術でそれに収束します。(演算子が無限次元の場合、これは依然として当てはまり、連続スペクトル上の真のスペクトル密度関数の積分を取得します。)
アーノルド・ノイマイアーの答えは、リン・リン、ユーセフ・サード、チャオ・ヤンによる論文「大規模行列のスペクトル密度の近似」のセクション3.2でさらに詳しく説明されています。
他のいくつかの方法についても説明しますが、本稿の最後の数値分析では、ランチョス法がこれらの代替方法よりも優れていることを示しています。
固有値ではなく、何らかの意味でスペクトルについて何かを伝える関数について考えることに問題がなければ、ライス大学のマーク・エンブリーの作品をチェックしてみてください。
スペクトルを特徴付けるさらに別の方法があります。
固有値問題所与(実対称と仮定Aを、塗抹スペクトル密度推定するレッツ試み、後者はおそらく必要ではないと固有値を分離) S (ω )= Σは k個のπ - 1つの σを 、例えば打撃後http://dx.doi.org/10.1016/0377-0427(96)00018-0を文献検索で、我々は、公正なことを知っていますトレースのモンテカルロ推定量は S(ω)=σ
Sanjiv Kumar、Mehryar Mohri、Ameet Talwalkarによる論文「サンプリングに基づく近似スペクトル分解について」(ICML 2009.)を参照してください。マトリックスの列のサンプリングを使用します。
マトリックスは対称であるため、次のことを行う必要があります。
Aをn * n行列とします。n * n行列の固有値の計算を、k * k行列の固有値の計算に減らしたい場合。最初にkの値を選択します。500 * 500行列の固有値を簡単に計算できるため、k = 500を選択したとします。次に、行列Aのk列をランダムに選択します。これらの列と対応する行のみを保持する行列Bを構築します。
k =インデックスxのランダムセットの場合、B = A(x、x)
Bはak * k行列になりました。Bの固有値を計算し、(n / k)で乗算します。これで、Aのn個の固有値のようにほぼ分布するk個の値が得られます。nではなくk個の値のみが得られることに注意してください。
ゲルシュゴリンの円定理境界を使用すると、いつでも固有値を近似できます。
非対角項が小さい場合、対角自体がスペクトルの適切な近似になります。そうでなければ、固有空間の近似(他の方法による)になった場合、このシステムで対角要素を表現することができます。これにより、より小さな非対角項を持つ行列が得られ、新しい対角線はスペクトルのより良い近似になります。