NumPy - numpy.matmul() 函数

  • 简述

    numpy.matmul()函数返回两个数组的矩阵乘积。虽然它返回二维数组的正常乘积,但如果任一参数的维度 > 2,则将其视为位于最后两个索引中的矩阵堆栈,并相应地进行广播。
    另一方面,如果任一参数是一维数组,则通过将 1 附加到其维数来将其提升为矩阵,该维数在乘法后被删除。
  • 例子

    
    # For 2-D array, it is matrix multiplication 
    import numpy.matlib 
    import numpy as np 
    a = [[1,0],[0,1]] 
    b = [[4,1],[2,2]] 
    print np.matmul(a,b)
    
    它将产生以下输出 -
    
    [[4  1] 
     [2  2]] 
    
  • 例子

    
    # 2-D mixed with 1-D 
    import numpy.matlib 
    import numpy as np 
    a = [[1,0],[0,1]] 
    b = [1,2] 
    print np.matmul(a,b) 
    print np.matmul(b,a)
    
    它将产生以下输出 -
    
    [1  2] 
    [1  2] 
    
  • 例子

    
    # one array having dimensions > 2 
    import numpy.matlib 
    import numpy as np 
    a = np.arange(8).reshape(2,2,2) 
    b = np.arange(4).reshape(2,2) 
    print np.matmul(a,b)
    
    它将产生以下输出 -
    
    [[[2   3] 
       [6   11]] 
      [[10  19] 
       [14  27]]]