問題タブ [svd]
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.
svd - 潜在的なセマンティックインデックス
LSIでのSVD実装後に生成された行列の乗算を実行する方法を見つけようとしています。私の研究にはこれが必要です。ドキュメントクラスタリングを実行したい。
python - numpyまたはmatlabのフルランクの非正方行列から可逆正方行列を取得する
フルランクのNxM
行列があると仮定します。ここで、 。列を(次元で)で表すと、行列は次のように記述できます。A
M>N
C_i
Nx1
元の行列の最初の線形独立列を取得して、行列式がゼロ以外の可逆行列であるA
新しいNxN
行列を作成するにはどうすればよいですか。B
{i1, i2, ..., iN}
matlabまたはpythonnumpyでインデックスを見つけるにはどうすればよいですか?これは、特異値分解を使用して実行できますか?コードスニペットは大歓迎です。
編集:これをより具体的にするために、次のPythonコードを検討してください
N
したがって、行列Mが与えられると、線形独立な列ベクトルのセットのインデックスを見つける必要があります。
svd - 画像内の同様のブロックを見つけるために SVD はどのように機能しますか?
画像のどの部分が複製されているかを調べるコードを書いているので、画像内の同様のブロックを見つける必要があります。SVD (特異値分解) を使用して、どのブロックが一致するかを見つける必要があります。画像にSVDを適用して同様のブロックを見つける方法を知っていますか?
私を助けてください 。ありがとう
matlab - MATLAB の行列指数の形式 W * diag(S) * W' の行列の固有分解
W
は縦長で細い実数値行列で、対角または対角上diag(S)
で構成される対角行列です。一重引用符が転置を表す場所の固有分解が必要です。主な問題は、それがかなり大きいことです。は対称で、ランク不足であり、 (から)の最大ランクを実際に知っているので、これを効率的に行うことができるはずです。これにアプローチする方法はありますか?+1
-1
A = W * diag(S) * W'
A
A
A
W
A
私の最終的な目標は、 MATLAB を使用せずに の行列指数を計算することですexpm
。これは、大きな行列ではかなり遅く、ランク不足を利用しません。A = U * diag(Z) * U'
が固有分解の場合、 exp(A) = U * diag(exp(Z)) * U'
.
簡単なアルゴリズムを持つことが期待できるU
ような直交を見つけている間、ここで線形代数の助けが必要です。W * diag(S) * W' = U' * diag(Z) * U'
matrix - OpenCV SVD マトリックス形式
現在、{(1,3), (2,2), (3,4)} などの 2D デカルト座標のセットを持っています。これは 2D 配列に入れられます。SVD を適切に実行するには、次のようにマトリックスをまとめます。座標は列または行を形成します。
また
オンラインで見つけたSVDの例と比較して、少し試行錯誤を行ってきました。結果の行列は通常、値の一部がシャッフルされて否定されているようです。
ここに示すように、MxN であるマトリックス E があるかどうかをさらに明確にするためにhttp://upload.wikimedia.org/wikipedia/commons/b/bb/Matrix.svg
行列を 2D 配列として定義するには、Array[M][N] または Array[N][M] になります。
行列演算は可換ではないため、これは実際に重要であると思いますか? 誰でも実際にこれを確認できますか?
opencv - Cimg (またはおそらく openCV または固有ライブラリ) を使用して SVD を計算する方法は?
Cimg を使用して 3 次元配列の SVD を計算する方法について、簡単なガイドを教えてください。さらなるプロセスを高速化するために配列を小さく圧縮するために、配列の分解を取得したいだけです。どこにどのような値を入力すればよいですか?また、出力を取得するにはどうすればよいですか? 私は周りを検索しましたが、それがどのように機能するのかまだ理解できません。SVDがどのように機能するかを完全には理解していません..マトリックスを解凍するために使用できることだけを知っています。
同時に、OpenCV と Eigen ライブラリでも作業ができることがわかりました。もっと簡単な場合は、その手順を教えてください..
(SVDの代わりに私にとってはPCAがあり、そのソース/ライブラリを見つけましたが、使用方法もわかりません..)
ありがとう!
r - Rの疎行列のSVD
私はMatrix
R にスパースを持っていますが、これは明らかに大きすぎて実行できませんas.matrix()
(ただし、超巨大ではありません)。問題のas.matrix()
呼び出しはsvd()
関数内にあるため、密行列への最初の変換を必要としない SVD の別の実装を誰かが知っているかどうか疑問に思っています。
linear-algebra - LAPACK SVD (特異値分解)
LAPACKを使用してSVDを計算する例を知っていますか?
math - 上三角行列の特異値分解 (SVD) の計算方法
BLASまたはLAPACKを使用してSVDを計算するアルゴリズムを知っていますか?
対称行列 A があるとします。
A から上三角行列 G を取得した後:
- A の SVD を計算するにはどうすればよいですか? ただし、G の値を使用しますか?
- マトリックス A のすべてをパスする必要がありますか、それとも G (中央のマトリックス) をパスするのに十分ですか?
実際には、G 行列を処理した後に取得しますが、その対称として、G のみを持つ (つまり、A の上三角行列のみを持つ) 対称 A の SVD を計算するにはどうすればよいですか?
recommendation-engine - Movielens/Netflix タイプのデータセットで SVD を使用するための基本的な擬似コード
私は、評価予測のために MovieLens/Netflix タイプのデータ セットを使用して SVD の使用を開始する方法を正確に理解するのに苦労しています。Python/Java の単純なサンプル、または関連するプロセスの基本的な擬似コードをいただければ幸いです。全体的な概念を要約した論文や投稿が多数ありますが、提案されたライブラリをいくつか使用しても、実装を開始する方法がわかりません。
私の知る限り、初期データセットを次のように変換する必要があります。
初期データセット:
次のようにピボットする必要があります。
この時点で、利用可能なライブラリによって提供されるように、このマトリックスを SVD アルゴリズムに挿入し、(何らかの方法で) 結果を抽出するだけでよいのでしょうか?
私が読んだいくつかの情報:
http://www.netflixprize.com/community/viewtopic.php?id=1043
http://sifter.org/~simon/journal/20061211.html
http://www.slideshare.net/NYCPredictiveAnalytics/building-a -recommendation-engine-an-example-of-a-product-recommendation-engine
http://www.slideshare.net/bmabey/svd-and-the-netflix-dataset-presentation
.. および他の多くの論文
一部のライブラリ:
LingPipe(java)
Jama(java)
Pyrsvd(python)
特に基本的なデータセットについては、どんなヒントでも大歓迎です。どうもありがとう、オリ