首页 文章

numpy dot如何与广播一起使用

提问于
浏览
0

我有两个numpy数组 . 当我使用numpy dot函数时,我得到了不同的结果 . 我无法理解点功能如何与广播一起产生这些输出 . 有人可以解释我这两者之间的区别 .

A = np.array([[2,4,6]])
Y  = np.array([[1,0,1]])


np.dot(A,Y.T) = array([8])
np.dot (Y.T, A) = array([[2, 4, 6],
                        [0, 0, 0],
                        [2, 4, 6]])

1 回答

  • 1

    dot 函数是矩阵乘法,不涉及广播 . 使用 np.dot(A,Y.T) 与python 3.5中的 A@Y.T 相同 .

    矩阵乘法不是可交换的(参数的顺序很重要) . 在第一种用法中,A是行向量,Y.T是列向量 . 这导致单个值 .

    在第二个例子中,Y.T是列向量,而A是行向量 . 这导致矩阵 .

相关问题