【问题标题】:Is numpy matrix multiplication same as Linear Algebra matrix multiplication?numpy 矩阵乘法是否与线性代数矩阵乘法相同?
【发布时间】:2020-11-05 08:58:09
【问题描述】:

众所周知,在线性代数中,向量乘以矩阵或两个矩阵相乘是强制性的,一个矩阵或向量的行数必须等于其他向量或矩阵的列数。

当我在numpy python 中工作时,它给了我不同的结果。

这是我的代码,它可以工作。

np.array([1,2]) * np.array([[1],[2],[3]])

numpy 向量到矩阵之间有什么区别吗 matplication vs 线性代数向量到矩阵乘法。

【问题讨论】:

  • * 是逐元素乘法。在这种情况下,您隐式使用 numpy 的 broadcasting。线性代数的矩阵乘法将是a @ ba.dot(b)

标签: python numpy matrix-multiplication


【解决方案1】:

使用 numpy np.dot(a,b)

使用下面的代码,你会得到你想要的错误。

np.dot(np.array([1,2]) ,  np.array([[1],[2],[3]]))

因为*,+,-,/ 在数组上按元素工作。

如果 a 或 b 是 0-D(标量),则相当于乘以和 最好使用 numpy.multiply(a, b) 或 a * b。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-18
    • 1970-01-01
    相关资源
    最近更新 更多