次のように、2 つの 3 次元行列があるとします (この matlab の例http://www.mathworks.com/help/matlab/ref/dot.htmlから取得):
A = cat(3,[1 1;1 1],[2 3;4 5],[6 7;8 9])
B = cat(3,[2 2;2 2],[10 11;12 13],[14 15; 16 17])
3 番目の次元に沿ってペアワイズ ドット積を取りたい場合は、matlab で次のようにすることができます。
C = dot(A,B,3)
結果は次のようになります。
C =
106 140
178 220
numpy での同等の操作、できればベクトル化されたオプションは、配列全体に double for ループを記述する必要がないようにするためのものです。np.tensordot私は何をすべきか、何をすべきかを理解できないようですnp.innerが、それらはオプションかもしれません。