Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Numpy 理解一维向量上的np.matmul_Numpy_Matrix_Multidimensional Array_Matrix Multiplication_Numpy Ndarray - Fatal编程技术网

Numpy 理解一维向量上的np.matmul

Numpy 理解一维向量上的np.matmul,numpy,matrix,multidimensional-array,matrix-multiplication,numpy-ndarray,Numpy,Matrix,Multidimensional Array,Matrix Multiplication,Numpy Ndarray,np.matmul(a,b)给出60作为结果 numpy如何将(3,)和(3,)维度相乘,并返回点积而不是外积(3*3)或抛出错误“维度不匹配”?这直接来自以下文档: 如果第一个参数是1-D,则通过 将1前置到其尺寸。矩阵乘法后 预加的1被移除 如果第二个参数是1-D,则通过 将1附加到其尺寸标注。矩阵乘法后 附加的1被删除 因此,在矩阵乘法期间,输入a和b的形状分别被转换为(1,3)和(3,1) 根据矩阵乘法的规则,我们知道: 1 x 3  3 x 1    |    |     -

np.matmul(a,b)给出60作为结果


numpy如何将(3,)和(3,)维度相乘,并返回点积而不是外积(3*3)或抛出错误“维度不匹配”?

这直接来自以下文档:

  • 如果第一个参数是1-D,则通过 将1前置到其尺寸。矩阵乘法后 预加的1被移除
  • 如果第二个参数是1-D,则通过 将1附加到其尺寸标注。矩阵乘法后 附加的1被删除

因此,在矩阵乘法期间,输入
a
b
的形状分别被转换为
(1,3)
(3,1)

根据矩阵乘法的规则,我们知道:

1 x 3
  <代码>3 x 1
   |    |
    --------   ===>   结束了


因此,我们得到的结果是一个标量。

查看文档。对于1d数组,其行为类似于点,并返回内部的“点”积。这是一个特例。
a = [1, 2, 3]
b = [10, 10, 10]