python – numpy矩阵乘法简化 – 它可能吗?

有没有办法简化

 a=np.dot(a,b)

就像你写a = a b作为a = b的方式一样? (a,b都是np.array)

最佳答案 在Python3.5中,您可以使用
@ operator进行矩阵乘法,例如:

import numpy as np

a = np.random.randn(4, 10)
b = np.random.randn(10, 5)

c = a @ b

这相当于调用c = np.matmul(a,b).原位矩阵乘法(@ =)尚不支持(在大多数情况下无论如何都没有意义,因为输出通常与第一个输入具有不同的维度).

另请注意,当一个或多个输入数组具有> 2维时,np.matmul(和@)的行为将与np.dot不同(参见here).

点赞