TopK

功能

沿输入Tensor的指定轴获取前K个最大或最小的元素。

输入

X:输入Tensor,数据类型支持float16、float。

K:输入一维Tensor,用于指定需要获取的前K个元素,数据类型支持int64。

属性

axis:int,指定排序的轴。

largest:int,指定返回前K个最大值或最小值。若为1,则返回前K个最大值;若为0,则返回前K个最小值。

sorted:int,指定是否对输出结果进行排序。若为1,则按升序排序;若为0,则不排序。

输出

Values:输出Tensor,在给定轴上的前K个最大元素,数据类型与X保持一致,shape为[a_0, a_1, …, a_axis-1, K, a_axis+1, …].

Indices:输出Tensor,前K个最大元素对应的索引,数据类型为int64,shape与Value保持一致。

限制与约束

无。

支持的ONNX版本

Opset v8/v9/v10/v11/v12/v13/v14/v15/v16/v17/v18