torch.topk(input, k, dim=None, largest=True, sorted=True, out=None) -> (Tensor, LongTensor)
沿給定dim維度返回輸入張量input中 k 個最大值。
如果不指定dim,則默認爲input的最後一維。
如果爲largest爲 False ,則返回最小的 k 個值。
返回一個元組 (values,indices),其中indices是原始輸入張量input中測元素下標。
如果設定布爾值sorted 爲_True_,將會確保返回的 k 個值被排序。
參數:
input (Tensor) – 輸入張量
k (int) – “top-k”中的k
dim (int, optional) – 排序的維
largest (bool, optional) – 布爾值,控制返回最大或最小值
sorted (bool, optional) – 布爾值,控制返回值是否排序
out (tuple, optional) – 可選輸出張量 (Tensor, LongTensor) output buffers
>>> x = torch.arange(1, 6)
>>> x
1
2
3
4
5
[torch.FloatTensor of size 5]
>>> torch.topk(x, 3)
(
5
4
3
[torch.FloatTensor of size 3]
,
4
3
2
[torch.LongTensor of size 3]
)
>>> torch.topk(x, 3, 0, largest=False)
(
1
2
3
[torch.FloatTensor of size 3]
,
0
1
2
[torch.LongTensor of size 3]
)
```