numpy.einsumはそこそこ速い
np.einsum
は配列の次元が大きくなるとnp.dotとかnp.tensordotよりかなり遅くなるような気がしていた。
しかし、公式ドキュメントによるとoptimize
フラグをgreedyかoptimalにすればかなり速くなるようだ。
実際に以下のnotebookで試すと、optimizeをつけるだけでかなり速くなる(使用メモリが増えているので計算途中の配列を保存している?)。
np.einsum
は配列の次元が大きくなるとnp.dotとかnp.tensordotよりかなり遅くなるような気がしていた。
しかし、公式ドキュメントによるとoptimize
フラグをgreedyかoptimalにすればかなり速くなるようだ。
実際に以下のnotebookで試すと、optimizeをつけるだけでかなり速くなる(使用メモリが増えているので計算途中の配列を保存している?)。