多维3维阵列乘以2维阵列
问题描述
我有两个矩阵,m0.shape = [10, 3, 3]
和m1.shape = [10, 3]
。我想要做的是使用循环这样做:
m0 = np.zeros((10, 3, 3))
m1 = np.zeros((10, 3))
a = np.zeros((10, 3))
for i in range(10):
a += m1 @ m0[i]
问题是:我可以通过使用内置Numy操作以某种方式达到相同的结果吗?
解决方案
我认为您有两个选择:
import numpy as np
np.sum(m1 @ m0, axis=0)
或使用numpy.einsum
np.einsum('ij,kjl->il', m1, m0)
相关文章