問題タブ [eigenvector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
graphics - ポイントのセットが与えられた場合、その形状の長軸をどのように近似しますか?
ユーザーが描いた「形状」が与えられた場合、それを「正規化」して、すべてのサイズと向きが同じになるようにしたいと思います。私たちが持っているのは一連のポイントです。バウンディング ボックスまたは円を使用してサイズを概算できますが、方向はもう少し注意が必要です。
それを行う正しい方法は、その境界楕円の長軸を計算することだと思います。そのためには、共分散行列の固有ベクトルを計算する必要があります。十分な見積もりを探しているので、そうするのは私のニーズには複雑すぎるでしょう。最小、最大、および 20 のランダム ポイントを選択することは、いくつかのスターターになる可能性があります。これを近似する簡単な方法はありますか?
編集:固有ベクトルを反復的に近似するPower メソッドを見つけました。ウィキペディアの記事。これまでのところ、私はDavid's answerが気に入っています。
java - Jama の固有値分解関数の問題
を使用しているときに、間違った固有ベクトルを取得しています (確実に複数回実行して確認することもできます) matrix.eig()
。マトリックスは次のとおりです。
この関数は固有ベクトルを返します。
Matlab は、同じ入力に対して次の固有ベクトルを提供します。
matlab と jama の固有値は一致していますが、固有ベクトルの最初の 5 列の符号が反転しており、最後の列のみが正確です。
受け入れる入力の種類に問題はありますJama.Matrix.EigenvalueDecomposition.eig()
か、それとも他の問題はありますか? エラーを修正する方法を教えてください。前もって感謝します。
c - OpenCV を使用した固有ベクトル計算
画像のピクセル強度の類似性を表すこの行列 A があります。例:10 x 10
画像を考えてみましょう。この場合の行列 A は次元100 x 100
であり、要素 A(i,j) は 0 から 1 の範囲の値を持ち、強度に関してピクセル i と j の類似性を表します。
画像処理にはOpenCVを使用しており、開発環境はLinux上のCです。
目的は、行列 A の固有ベクトルを計算することであり、次のアプローチを使用しました。
問題:実行後、すべての固有ベクトルのほぼすべてのコンポーネントがゼロになります。さまざまな画像を試し、A に 0 から 1 の間のランダムな値を設定しようとしましたが、結果は同じでした。
返される上位の固有値のいくつかは、次のようになります。
私は現在、実浮動小数点行列の特異値分解を実行し、固有ベクトルを生成する可能性のあるcvSVD()の使用について考えています。でもその前にここで聞いてみようと思いました。私の現在のアプローチにばかげたことはありますか?正しい入力行列 (行列 A は浮動小数点行列) に対して正しい API、つまりcvEigenVV()を使用していますか?
乾杯
eigenvector - IntelMathKernelでの固有値と固有ベクトルの計算
インテルマス・カーネル・ライブラリーの固有値と固有ベクトルの計算に使用されるアルゴリズムを知っている人はいますか?リンクからわかるのは、QRアルゴリズムを使用するpdsyevアルゴリズムを使用しているようで、大きな行列に直面すると劣化するということです。
これが当てはまる場合、mklは大規模な固有値問題を計算するための適切なライブラリではありません。
どう思いますか?それとも、上記のテキストを誤解しているのでしょうか。
c++ - 固有値による固有ベクトルの並べ替え(関連する並べ替え)
ソートされていない固有値のベクトルと関連する固有ベクトルの行列があります。ソートされた固有値のセットに関して、行列の列をソートしたいと思います。(たとえば、eigenvalue[3]がeigenvalue[2]に移動する場合、固有ベクトル行列の列3を列2に移動する必要があります。)
O(N log N)
を介して固有値を並べ替えることができることはわかっていstd::sort
ます。独自の並べ替えアルゴリズムを使用せずに、行列の列(関連する固有ベクトル)が固有値に沿って並べ替えられるようにするにはどうすればよいですか?
c - 固有ベクトルの中心性
私はプログラミングが初めてで、ソーシャルネットワークへの有向グラフマッピングの固有ベクトルの中心性を計算しようとしています。これらは大きな行列です。グラフに関連付けられた固有ベクトルと隣接行列を計算する方法を知っています。これらの 2 つの部分を組み合わせて固有ベクトルの中心性を計算する方法がわかりません。前もって感謝します。
-スペンサー
java - 固有ベクトル/固有値計算用の Java パッケージ?
固有ベクトル/固有値の計算に推奨する Java パッケージはどれですか? JMathToolsとJAMAについては知っています。これらのパッケージの長所/短所はありますか? 他の提案?
c - 固有ベクトル (スペクトル) 分解
正方行列の固有値 (スペクトル) 分解を計算できるプログラムを C コードで見つけようとしています。私は特に、最高の固有値(したがって、それに関連する固有値)が最初の列にあるコードを見つけようとしています。
出力をこの順序にする必要があるのは、固有ベクトルの中心性を計算しようとしているからです。そのため、実際には最大の固有値に関連付けられた固有ベクトルを計算するだけで済みます。前もって感謝します!
matlab - MATLABの固有値
MATLABで[V,D] = eig(a)
、対称行列に対してコマンドを実行すると、最大の固有値(およびそれに関連するベクトル)が最後の列に配置されます。ただし、非対称行列で実行すると、最大の固有値が最初の列にあります。
最大の固有値に関連付けられた固有ベクトルを計算する必要がある固有ベクトルの中心性を計算しようとしています。したがって、最大の固有値が2つの別々の場所に現れるという事実は、私が解決策を見つけるのを難しくします。