gpt4 book ai didi

Python:如何解释 np.argmax() 的结果?

转载 作者:太空宇宙 更新时间:2023-11-03 15:48:26 26 4
gpt4 key购买 nike

关于 np.argmax() 的文档说是

Returns the indices of the maximum values along an axis.

给出的例子很简单:

In[1]: a = np.arange(6).reshape(2,3)
In[2]: a
Out[2]: array([[0, 1, 2],
[3, 4, 5]])

In[3]: np.argmax(a)
Out[3]: 5

In[4]: np.argmax(a, axis=0)
Out[4]: array([1, 1, 1])

In[5]: np.argmax(a, axis=1)
Out[5]: array([2, 2])

除非是

 In[4]: np.argmax(a, axis=0)
Out[4]: array([1, 1, 1])

既然5对应a[1][2],为什么返回array([1, 1, 1])

此外,如果我分配

In[6]: b=np.array([[[2,3,4],[4,5,6]],[[3,7,1],[2,5,9]]])
In[7]: b
Out[7]: array([[[2, 3, 4],
[4, 5, 6]],
[[3, 7, 1],
[2, 5, 9]]])

然后求最大值,为什么这两个返回的值不同?

In[8]: b.max()
Out[8]: 9

In[9]: np.argmax(b)
Out[9]: 11

为什么 np.argmax() 返回整数 11,而该数字甚至没有出现在数组中?

最佳答案

函数np.argmax() 返回最大值的索引,而不是

在数组 a 的情况下,数组 a 中的每一行(您通过指定 axis=0 来询问每一行)都有其在索引 1 处最大值,即 345。三行是 [0, 3][1, 4][2, 5]。如果您询问 argmin(),它会返回 array([0, 0, 0])

9 的值是扁平数组 b 的索引 11 处的元素。

关于Python:如何解释 np.argmax() 的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48440514/

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