np.dot和np.matmul的区别与联系

1.二者都是矩阵乘法。
2.np.matmul中禁止矩阵与标量的乘法。
3.在矢量乘矢量的內积运算中,np.matmul与np.dot没有区别。
4.np.matmul中,多维的矩阵,将前n-2维视为后2维的元素后,进行乘法运算。

>>>import numpy as np
>>>a=np.array([1,2,3])
>>> b=np.array([1,0,1])
>>> b
array([1, 0, 1])
>>> np.dot(a,b)  
4
>>> np.matmul(a,b)
4
>>> np.dot(a,2)  #dot可以进行标量之间的乘法
array([2, 4, 6])
>>> np.matmul(a,2)  #matmul不能进行标量之间的乘法
Traceback (most recent call last):
  File "", line 1, in 
ValueError: Scalar operands are not allowed, use '*' instead

 

你可能感兴趣的:(机器学习,python)