numpy中矩阵相关乘法总结
一、numpy中向量和矩阵的概念
向量:1维
矩阵:至少是 2 维
一、矩阵相乘有3种可能想要的到的结果:
1,对位乘积:两个矩阵shape相同,各元素对应相乘,结果还是矩阵(相同shape)
2,矩阵乘法:数学上的矩阵乘法
3,向量内积:对应元素相乘,再相加,得到一个数值
二、numpy中可用的乘法运算操作
1、a * b
2、numpy.dot(a,b)
3、numpy.multiply(a,b)
4、numpy.matmul(a,b)
5. a @ b
三、5种操作如何跟矩阵乘法的3种可能结果对应呢?
1、dot(a,b)函数
(1)当a,b都是一维数组(矩阵)时,结果为向量内积。
(2)当a,b是矩阵时(不都是一维),需要符合数学中关于矩阵的约束,矩阵乘法
2、multiply(a,b)函数
a,b必须有相同的shape,对位乘积
3、*
a,b必须有相同的shape,对位乘积
4、matmul(a,b)函数:
数学上的矩阵乘法
5、a @ b
数学上的矩阵乘法
四、 3种结果 如何与 5中运算对应呢?
对位乘积: a * b 、 multiply(a,b)
向量内积: dot(a,b) 当a,b均为一维向量
矩阵乘积: dot(a,b), matmul(a,b) , a @ b