矩阵乘法背后的逻辑是什么?

时间:2019-06-22 12:00:22

标签: python-3.x numpy matrix matrix-multiplication

我正尝试将这些一维矩阵(或矢量)彼此相乘,如下所示:

a = np.array([1,2,3]).reshape(1,3)

b = np.array([4,5,6]).reshape(1,3)

c = np.dot(a,b)

print(c)输出的Ab误差为“未对齐的形状(1,3)和(1,3)”,根据矩阵乘法定律是正确的。

但是当我做c = a*bprint(c)时,我得到了一个1 x 3的矩阵-array([[ 4, 10, 18]])

我的问题是1 X 3 * 1 X 3矩阵乘法如何产生1 X 3矩阵?第一矩阵的列应等于第二行。不是吗?

此外,如果你们中的任何一个能提供更多有关两个形状(i,j)的点积与乘积a*b有何不同的信息,那将是很棒的事情?

1 个答案:

答案 0 :(得分:1)

dot方法执行矩阵乘法,如您所愿。 *运算符采用两个相同维度的矩阵并将它们对应的元素相乘,从而得出相同维度的结果。