問題タブ [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.
machine-learning - svdを使用してアイテムに基づいてアイテムを推奨する方法
SVD
に基づいてアイテムを推奨するモデルをトレーニングしましたuserId
。ただし、アイテムリストではなくアイテムリストに基づいてアイテムを推奨する方法はありますuserId
か?
たとえば、アイテムのリストが与えられると[1,2,3,4,5]
、SVD
モデルは最も類似したアイテムを検索します[9,10]
。私の解決策は、入力から各アイテムに類似したアイテムを見つけ、[9,10]
出力として共通のアイテムを取得することです。
あれは、
- アイテム1に類似するアイテム
[9,10,12]
は - 項目2に類似する項目は
[9,10,13]
です。
そのため、一般的な項目はですが[9,10]
、それを行うためのより良い方法があるかどうかはわかりません。
analysis - 潜在意味解析(LSA)単一値分解(SVD)の理解
LSI(機械工学のバックグラウンド)についての私の控えめな理解を通して私と一緒に耐えてください:
LSIでSVDを実行すると、次の3つの行列ができます。
U、S、およびVの転置。
Uは単語とトピックを比較し、Sは各機能の強さの一種の尺度です。Vtはトピックとドキュメントを比較します。
SVDの前の元のマトリックスを返します。あまり(なし)詳細な代数を実行しないと、次のようになります。
用語ごとのマトリックスを返します。これは、用語間の比較を提供します。つまり、ある用語が他の用語とどの程度関連しているか、コンポーネントではなく単語を比較する種類のDSM(設計構造マトリックス)です。私は完全に間違っている可能性がありますが、サンプルデータセットで試してみたところ、結果は理にかなっているようでした。しかし、それはバイアスかもしれません(私はそれを機能させたかったので、私が望むものを見ました)。ドキュメントが保護されているため、結果を投稿できません。
私の質問は、これは意味がありますか?論理的に?数学的に?
時間/応答をありがとう。
svd - svd を使用した平面フィッティングの残差
特異値分解を使用して、一連の点 (X、Y、Z 座標) に最適な平面を当てはめています。だから私は使う
ここで、ポイントの残差が必要です。平面方程式を計算して残差を取得できることは知っていますが、u、s、v 行列から残差を取得する直接的な方法があるかどうかを尋ねたかったのですか?
r - R で SVD の列名を取得する
data というデータフレームで R で SVD を実行しています
を使用して結果をプロットします
プロットでは、列番号がデータフレームの列番号に対応していないことがわかりました(SVDで使用する列のサブセットに関係なく、最初の列は常に最高の分散を示します)。
私の質問は、プロットで列名 (または「実際の」インデックス) を取得するにはどうすればよいですか?
python - Pythonを使用して12 x 12マトリックスでnumpy.linalg.svdを使用する
12*12 マトリックスで SVD を実行したいと考えています。正常にnumpy.linalg.svd
動作します。しかし、 u*s*v を実行して 12*12 行列 A を取り戻そうとすると、取り戻せません。
これらは私が使用したポイントです:
何か提案してください...
c# - 特異値分解 - ソーシャル ネットワーク分析
隣接行列で表されるノードの非常に大きなネットワークがあります。ネットワーク内のノードの数を減らして、より重要なノードを含めたいと考えています。SVD がこれを達成するのに役立つことを認識しており、ILNumerics ライブラリを使用して隣接行列で svd() メソッドを実行しました。
ネットワークの次元を削減するのに出力がどのように役立つかを誰かが簡単に説明してくれませんか? SVD プロセスでは、対角線上に ~2 から多くの 0 の範囲の値が降順で、同じサイズの行列が残ります。重要でないと見なされるどのディメンションを削除する必要があるかを知るにはどうすればよいですか?
私はこのプロセスを全体的に間違っている可能性が高いので、どんな助けも大歓迎です! オンラインの説明の多くは、すぐに非常に混乱します。
python - numpy svd から残差を取得する方法
numpy svd を使用してポイントのセットをフィッティングし、フィッティング関数の係数を持っています。アルゴリズムを理解しているので、途中でポイントの残差が計算され、それらを回復したいのですが、これを行う方法がわかりません。これらを取得する方法についてのガイダンスは大歓迎です。
matlab - 二次回帰で特異値分解(svd)を使用する
かなり大きなデータセットで2次回帰を行うために、svd(特異値分解)を使用して次の方程式を解きます。B(nx1)= A(nx3)* X(3x1)matlabを使用することを考えています。それ、何かヒントはありますか?目標は行列Xを計算することです
eigen - 固有値を使用したヌル空間の計算は間違っていますか?
Eigen ライブラリ ( http://eigen.tuxfamily.org ) を使用して、SVD 関数を使用して Null Space 計算を実行しています。出力をmatlabの「Null」関数と比較したところ、異なる結果が得られました。デバッガーでそれをステップ実行し、Eigen によって作成された V マトリックスと matlab からの V マトリックスを見ると、奇妙な違いがあります。
V 行列の左特異ベクトル (下の例では左 3 列) はほぼ同じですが、符号が入れ替わっています。右特異ベクトル (ヌル空間、下の右 3 列) はまったく似ていません。
何が原因でしょうか?SVD 関数の使い方が間違っていますか? 以下のコードと結果の例。
コードは次のとおりです。「入力」は通常の C++ 配列です。
結果の例を次に示します。
A(入力) =
V(マトラブ) =
V(固有値) =
ご協力いただきありがとうございます!
opencv - SVD を介してエッセンシャル マトリックスから翻訳を抽出する正しい方法
私は自分のカメラを調整し、固有パラメータ (K) を見つけました。また、ファンダメンタル マトリックス (F) を計算しました。
今 E= K_T* F * K 。ここまでは順調ですね。
ここで、Essential Matrix(E) を SVD に渡し、分解値 (U、W、V) を使用して回転と平行移動を抽出します。
** 質問) この時点で、2 つの方法が提案されており、どちらが本当に正しい答えを出すのか、特に翻訳に関して混乱しています。
最初の方法では、ここにリンクの説明を入力します。著者は、R、T を次のように計算することを提案しています。
しかし、2 番目の方法 [ http://isit.u-clermont1.fr/~ab/Classes/DIKU-3DCV2/Handouts/Lecture16.pdf]では、著者は、以下に示すように +U 、 -U である T の別の式を提供しています。
openCv ライブラリを使用して C# .Net でこれを実装しています。どの変換式が正しいものか知っている人はいますか?