Python多维数组矩阵

Yihan Ma

我有两个3维NumPy数组(10,360,90)。我想在两个数组之间进行矩阵乘法。

我想知道如何将最后两个维度(360、90)作为单个元素进行矩阵乘法。也就是说,如图所示,在(360,90)数组之间进行np.maltiply运算,并生成最终矩阵为(10,10,360,90)。

两个3维数组

罗伯特·戴维斯

可以使用numpy.einsum解决此问题,如下所示:

import numpy as np

a = np.random.rand(10,360,90) # first array you want to multiply
b = np.random.rand(10,360,90) # second array you want to multiply

c = np.einsum('ikl, jkl-> ijkl', a, b) # output array

c 将是您定义的形状为(10,10,360,90)的最终矩阵。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章