iwiwi 備忘録

学んだことを殴り書きます。自分向けのメモです。

numpy の行列乗算:matmul, dot, @

stackoverflow.com

dot と matmul

2 次元では完全に同一。3 次元以上では異なる挙動をする。

  • dot は a の最後の軸と b の最後から 2 番目の軸を掛け合わせる
  • matmul は行列の配列だとみなして行列積を計算する

@ 演算子

Python 3.5 以降では @ 演算子や @= 演算子が存在する。これは __matmul__ を呼ぶが、numpy では matmul に相当するっぽい。