-
np.argmax()
解釋:接收兩個(gè)參數(shù)鲸伴,第一個(gè)為np數(shù)組,第二個(gè)為axis灾票,在數(shù)組的第axis軸上求最大值峡谊,返回?cái)?shù)組中最大值的索引值,當(dāng)一組中同時(shí)出現(xiàn)幾個(gè)最大值時(shí)刊苍,返回第一個(gè)最大值的索引值靖苇。看例子:
import numpy as np
a = np.array([
[
[1, 5, 5, 2],
[9, -6, 2, 8],
[-3, 7, -9, 1]
],
[
[-1, 7, -5, 2],
[9, 6, 2, 8],
[3, 7, 9, 1]
],
[
[21, 6, -5, 2],
[9, 36, 2, 8],
[3, 7, 79, 1]
]
])
b = np.argmax(a, axis = 0)
c = np.argmax(a, axis = 1)
d = np.argmax(a, axis = 2)
print(b)
print(c)
print(d)
輸出為:
>>b
[[2 1 0 0]
[0 2 0 0]
[1 0 2 0]]
>>c
[[1 2 0 1]
[1 0 2 1]
[0 1 2 1]]
>>d
[[1 0 1]
[1 0 2]
[0 1 2]]
分析:對(duì)于一個(gè)3*3*4的矩陣班缰,當(dāng)axis = 0
時(shí)贤壁,在第一個(gè)維度上作比較,即三個(gè)矩陣作比較埠忘,返回的是一個(gè)3*4的矩陣脾拆,同理,axis = 1
時(shí)在第二個(gè)維度上作比較莹妒,返回的是一個(gè)3*4的矩陣名船,axis = 2
時(shí)在第三個(gè)維度上作比較,返回的是一個(gè)3*3的矩陣旨怠∏眨可以發(fā)現(xiàn),輸出相較于輸入總會(huì)減少一維鉴腻,具體減少哪一維由axis決定迷扇,可以用這個(gè)來(lái)驗(yàn)證百揭。
-
torch.max()
解釋:傳入兩個(gè)參數(shù),一個(gè)torch.tensor蜓席,一個(gè)dim器一,用法與np.max相似,不過(guò)這個(gè)返回兩個(gè)tensor厨内,第一個(gè)是沿著dim維的最大值祈秕,另一個(gè)是對(duì)應(yīng)的索引。同時(shí)出現(xiàn)幾個(gè)最大值時(shí)雏胃,返回最后一個(gè)最大值的索引值请毛。