zoukankan      html  css  js  c++  java
  • np.dot()、np.multiply()、np.matmul()方法以及*和@运算符的用法总结

    转载自:https://blog.csdn.net/FrankieHello/article/details/103510118

    一:基本概念

    (一)点积(dot product)

    又称为数量积、标量积(scalar product)或者内积(inner product)

    它是指实数域中的两个向量运算得到一个实数值标量的二元运算。

    举例:

    (二)矩阵乘法 

    两个运算的矩阵需要满足矩阵乘法的规则,即需要前一个矩阵的列与后一个矩阵的行相匹配。

    总之:上面的两个概念都是针对向量或者矩阵的运算,需要和标量的计算区分开来。

    二:dot运算

    如果参与运算的两个一维数组,那么得到的结果是两个数组的内积(inner product);

    可以看着没有进行转置的矩阵乘法。 

    注意:两个向量必须同维度

    如果参与运算的是两个二维数组,那么得到的结果是矩阵乘积(matrix multiplication),两个参与运算的矩阵需要满足矩阵乘法的规则,但是官方更推荐使用np.matmul()和@用于矩阵乘法。

    三:np.multiply()*

    星号和np.multiply()方法是针对的是标量的运算,当参与运算的是两个数组时,得到的结果是两个数组进行对应位置的乘积(element-wise product),输出的结果与参与运算的数组或者矩阵的大小一致。

    四:np.matmul()@

    matmul是matrix multiply的缩写,所以即是专门用于矩阵乘法的函数。另外,@运算方法和matmul()则是一样的作用,相当于简便写法。 

    五:总结

    当进行向量的内积运算时,可以通过np.dot()
    当进行矩阵的乘法运算时,可以通过np.matmul()或者@
    当进行标量的乘法运算时,可以通过np.multiply()或者* 

  • 相关阅读:
    python多线程多进程
    python单元测试unittest
    python学习笔记(一):python简介和入门
    今天的收获!!!
    Python django
    React router
    30分钟掌握ES6/ES2015核心内容
    webpack+React.js
    我喜欢的两个js类实现方式 现在再加上一个 极简主义法
    js实现的笛卡尔乘积-商品发布
  • 原文地址:https://www.cnblogs.com/ssyfj/p/12913015.html
Copyright © 2011-2022 走看看