逆行列を計算する必要があり、solve
関数を使用しています。小さなマトリックスでsolve
はうまく機能しますが、大きなマトリックスでは非常に遅くなる傾向があります。より高速な結果を得ることができる他の機能または機能の組み合わせ(SVD、QR、LU、またはその他の分解機能を使用)があるかどうか疑問に思いました。
2
詳細情報を提供できますか?おおよその寸法は?マトリックスには特別な構造(対称性、スパース性など)がありますか?「遅い」の量的な定義は何ですか?そして「速い」?
—
枢機
おおよその寸法は2000x2000のようなものです。マトリックスには特別な構造はありません。まあ、
—
-jitendra
solve
方法は間違いなく私の仕事をしますが、私はアルゴリズムをより速くしたいです。そのため、このような大きなサイズの行列の逆行列を計算するためのより効率的な(時間コンテキストでの)関数があるのではないかと思っています。
ヘルプページの他の提案を試しました
—
枢機
solve
か?もちろん、特別な構造がなければ、一般的なマトリックス反転の理論的な複雑さの限界から逃れることはできません。
@Cardinalトリックは、実際のアプリケーションについてさらに詳しく調べることです。ご存知のように、多くの場合、マトリックスの反転は不要です(そして時間がかかり、エラーが発生しやすい)。
—
whuber
@whuber:これは非常に良い点です。私は時々これらの質問に少し直接アプローチしていると思います。
—
枢機