Numpy 中的矩阵向量乘法

结论:

元素乘法:np.multiply(a,b)
矩阵乘法:np.dot(a,b) 或 np.matmul(a,b) 或 a.dot(b)
唯独注意:*,在 np.array 中重载为元素乘法,在 np.matrix 中重载为矩阵乘法!

对于 np.array 对象

>>> a
array([[1, 2],
       [3, 4]])
  1. array中对应元素乘法。用 a*b 或 np.multiply(a,b) ,
    >>> a*a
    array([[ 1,  4],
           [ 9, 16]])
    
    >>> np.multiply(a,a)
    array([[ 1,  4],
           [ 9, 16]])
    
  2. array中矩阵乘法(内积相乘) 。用 np.dot(a,b) 或 np.matmul(a,b) 或 a.dot(b)或者a@b。
    >>> np.dot(a,a)
    array([[ 7, 10],
           [15, 22]])
    
    >>> np.matmul(a,a)
    array([[ 7, 10],
           [15, 22]])
    
    >>> a.dot(a)
    array([[ 7, 10],
           [15, 22]])
    

     

对于 np.matrix 对象

>>> A
matrix([[1, 2],
        [3, 4]])
  1. 矩阵中元素乘法用 np.multiply(a,b)
    >>> np.multiply(A,A)
    matrix([[ 1,  4],
            [ 9, 16]])
    
  2. 矩阵中矩阵乘法 (内积相乘)用 a*b 或 np.dot(a,b) 或 np.matmul(a,b) 或 a.dot(b)或者a@b。
    >>> A*A
    matrix([[ 7, 10],
            [15, 22]])
    >>> np.dot(A,A)
    matrix([[ 7, 10],
            [15, 22]])
    >>> np.matmul(A,A)
    matrix([[ 7, 10],
            [15, 22]])
    >>> A.dot(A)
    matrix([[ 7, 10],
            [15, 22]])
    

     

你可能感兴趣的:(python,numpy,矩阵向量乘法)