标签: python numpy linear-algebra numeric
在python中(最好是在numpy数组框架下),一次使用多个张量的产品的最佳方法是什么,而不是使用numpy.tensordot逐个进行?我们假设我们需要做这个总结:
sum over (i,j,k) of : A[i,j] * B[j,k,l] * C[k,i]
其中总和超过i,j,k和l有意不加总 - 因此我们期望最终得到一维向量。
答案 0 :(得分:4)
结帐einsum。 我认为np.einsum('ij,jkl,ki', A, B, C)会完全符合您的要求。
einsum
np.einsum('ij,jkl,ki', A, B, C)