問題タブ [linear-algebra]

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.

0 投票する
5 に答える
11339 参照

python - 配列除算 - MATLAB から Python への変換

他の誰かが書いた、MATLAB の次のコード行があります。

それを Python に翻訳する必要があります。a、b、および c はすべて配列です。コードをテストするために現在使用しているディメンションは次のとおりです。

a: 18x1、
b: 25x18、

これにより、寸法が 1x25 の c が得られます。

配列は正方形ではありませんが、そうであればコードが失敗することは望ましくありません。この行が(数学的に)何をしているのか、そしてPythonでそれを行う方法を誰かが正確に説明できますか? (つまり、Python に存在する場合、MATLAB の組み込み関数 mrdivide と同等ですか?)

0 投票する
4 に答える
6535 参照

python - MATLAB の mrdivide 関数: 何をしているのですか? また、Python でそれを行うにはどうすればよいですか?

次の MATLAB コード行があります。

私はこれらの入力を使用しています:

これが結果です (1x25 行列):

MATLAB は何をしているのですか? この動作を Python で再現しようとしていmrdivideますが、MATLAB のドキュメントは役に立ちませんでした。5 はどこから来て、残りの値はなぜ 0 なのですか?

他の入力でこれを試してみたところ、同様の結果が得られました。通常は、最初の要素が異なり、行列の残りがゼロで埋められています。Python で を使用するlinalg.lstsq(b.T,a.T)と、返される最初の行列のすべての値 (つまり、特異な行列ではない) は 0.2 です。私はすでにPythonで正しい除算を試みましたが、間違った次元で何かが完全に外れています。

最小二乗近似とは何かを理解しています。何mrdivideが行われているかを知る必要があるだけです。

関連している:

0 投票する
3 に答える
11846 参照

math - 非対角要素に制約がある擬似乱数正定行列を生成する方法は?

重複の可能性:
非対角要素に制約がある疑似乱数正定行列を生成する方法は?

ユーザーは、var/covar 行列内の変数のすべてのペア間の相関に、一意で重要な上限/下限を課したいと考えています。

例: 変数との間の相関である0.9 > |rho(x_i,x_j)| > 0.6、すべての変数が を持つ分散行列が必要です。rho(x_i,x_j)x_ix_j

ありがとう。

0 投票する
9 に答える
7091 参照

algorithm - 線形代数はアルゴリズムでどのように使用されますか?

私の仲間の何人かは、アルゴリズムを研究するときに「線形代数」が非常に重要であると述べています。私はさまざまなアルゴリズムを研究し、いくつかの線形代数のコースを受講しましたが、接続がわかりません。では、線形代数はアルゴリズムでどのように使用されますか?

たとえば、グラフの接続マトリックスを使用すると、どのような興味深いことができますか?

0 投票する
1 に答える
839 参照

java - SVG 線形グラデーション スケールと変換に関する質問

次の放射状グラデーションがあります。

このグラデーションのサイズを 90% 縮小し、この新しいスケール (x 位置は 402.2、y 位置は 545.1 など) に基づいて適切に変換したいと思います。

明らかに、cx、cy、fx、fy、および r を .1 倍すると、そこに到達することができます。しかし、どのようにプログラムでgradientTransformを作り直して残りの道を得るのですか?

0 投票する
6 に答える
19691 参照

c++ - y=Axに対するBoostの線形代数解

ブーストには1つありますか?ここで、A、y、xはそれぞれ行列(スパースで非常に大きくなる可能性があります)とベクトルです。yまたはxのいずれかが不明である可能性があります。

ここでは見つからないようです: http ://www.boost.org/doc/libs/1_39_0/libs/numeric/ublas/doc/index.htm

0 投票する
3 に答える
4625 参照

c++ - Boostの数値バインディングライブラリを使用してC++コードをコンパイルし、Ax=b線形システムを解きます

単純な線形システムを解くために、BoostUBlasの数値ライブラリバインディングを使用しています。

次のコマンドでコンパイルしてみました。

しかし、次のエラーで失敗します。

コードでの私のアプローチの何が問題になっていますか?

0 投票する
6 に答える
10344 参照

c++ - Ax=b 線形代数システムの C++ メモリ効率の高いソリューション

Boost UBlas の Numeric Library Bindings を使用して、単純な線形システムを解決しています。以下は、比較的小さい 'm' の行列 A(mxm) の処理に限定されていることを除いて、正常に機能します。

実際には、次元 m= 10^6 (最大 10^7) のはるかに大きな行列があります。
メモリを効率的に使用する Ax=b を解決するための既存の C++ アプローチはありますか。