問題タブ [numpy-ufunc]

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 投票する
2 に答える
269 参照

python - numpy で 3D 配列の操作をブロードキャストする時間のスケーリング

2 つの 3D 配列で ">" の単純な操作をブロードキャストしようとしています。1 つは次元 (m, 1, n) を持ち、もう 1 つは (1, m, n) です。3 番目の次元 (n) の値を変更すると、計算速度が n に比例することを単純に期待できます。

ただし、これを明示的に測定しようとすると、n を 1 から 2 に増やすと計算時間が約 10 倍増加し、その後スケーリングは線形になります。

n=1 から n=2 にすると、計算時間が大幅に増加するのはなぜですか? numpy でのメモリ管理のアーティファクトであると想定していますが、詳細を探しています。

コードは、結果のプロットと共に以下に添付されています。

操作をブロードキャストする時間のプロット

ここに画像の説明を入力

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

python - Numpyのufunc対基本的な算術演算子

要素ごとの配列操作を実行するために Universal Function(ufunc) が使用されていることがわかります。

このコードは に似ていarr + arr2ます。その場合、なぜ ufunc を使用する必要があるのでしょうか。