torch.topk#
- torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)#
返回给定
input
张量在给定维度上最大的k
个元素。如果未指定 `
dim
`,则选择 `input` 的最后一个维度。如果
largest
为False
,则返回最小的 k 个元素。返回一个包含 values 和 indices 的命名元组,其中 values 是 input 张量在给定维度 dim 的每行的最大的 k 个元素的值,indices 是这些元素在原始张量中的索引。
布尔选项
sorted
如果为True
,将确保返回的 k 个元素本身是有序的。注意
在使用 torch.topk 时,相等元素的索引不保证是稳定的,并且在不同的调用之间可能会有所不同。
- 参数
- 关键字参数
out (tuple, optional) – 可选的 (Tensor, LongTensor) 输出元组,用作输出缓冲区
示例
>>> x = torch.arange(1., 6.) >>> x tensor([ 1., 2., 3., 4., 5.]) >>> torch.topk(x, 3) torch.return_types.topk(values=tensor([5., 4., 3.]), indices=tensor([4, 3, 2]))