Python矩阵向量运算的向量化

3

我有一个形状为(2,2,N)的矩阵A和一个形状为(2,N)的矩阵V。

我想要向量化以下内容:

F = np.zeros(N)
for k in xrange(N):
    F[k] = np.dot( A[:,:,k], V[:,k] ).sum()

有没有办法使用tensordot或其他numpy函数来完成此操作,而不需要显式循环?
1个回答

2

使用np.einsum -

F = np.einsum('ijk,jk->k',A,V)

我们可以通过将 optimize 标志设置为 True(请查看文档)来进一步优化它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接