当矩阵是numpy.ndarray时,A*B表示哈达玛积(对应位置相乘);
当矩阵是numpy.matrix时,A*B表示矩阵相乘。
np.dot() 和 np.inner() 之间的区别:
两个函数对于一维数组来说,效果是相同的,可计算向量内积;
对于多维数组,比如二维,np.dot() 结果为矩阵相乘,a.dot(b) 和 np.dot(a,b) 值相等;
而inner运算为:
c的第一行与d的第一行,1*5+2*6=17 得到第一个值;
c的第一行与d的第二行,1*7+2*8=23 得到第二个值;
c的第二行与d的第一行,3*5+4*6=39 得到第三个值;
c的第二行与d的第二行,3*7+4*8=53 得到第四个值。
数据是三维时,可验证上述想法
np.multiply() 结果为对应位置相乘,即哈达玛积
np.cross() 结果为向量叉积(外积)