gpt4 book ai didi

python - numpy .dot 使用列表和数组,有什么区别

转载 作者:行者123 更新时间:2023-12-01 00:39:51 31 4
gpt4 key购买 nike

当两个相似矩阵1*2相乘时,如[1,2][3,5],使用numpy.dot,它给出了一个结果,而实际上它应该给出一个形状和尺寸错误,就像将两个相似的数组相乘一样。幕后发生了什么?

a=[1,2]
b=[6,3]
result=[np.dot(b, a)]
print(result)

O/P= 12

但是,

a=[[1,2]]
b=[[6,3]]
result=[np.dot(b, a)]
print(result)

错误:

O/P= ValueError: shapes (1,2) and (1,2) not aligned: 2 (dim 1) != 1 (dim 0)

最佳答案

根据文档here ,

  • 如果ab都是1-D数组,则它是向量的内积(没有复杂的共轭)。

  • 如果ab都是2-D数组,则为矩阵乘法,但使用matmula @ b 是首选。

情况 1:ab1-D 数组,因此结果为 1 *6+2*3=12

情况 2:ab2-D 数组,因此我们将进行矩阵乘积这两个。它会引发 ValueError,因为 a 的最后一个维度与 b 的倒数第二个维度的大小不同。

关于python - numpy .dot 使用列表和数组,有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57442616/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com