mindspore.ops.ArgMaxWithValue
- class mindspore.ops.ArgMaxWithValue(axis=0, keep_dims=False)[source]
Calculates the maximum value along with the given axis for the input tensor, and returns the maximum values and indices.
Note
In auto_parallel and semi_auto_parallel mode, the first output index can not be used.
Warning
If there are multiple maximum values, the index of the first maximum value is used.
The value range of “axis” is [-dims, dims - 1]. “dims” is the dimension length of “x”.
Also see
mindspore.ops.max()
.- Parameters
- Inputs:
x (Tensor) - The input tensor, can be any dimension. Set the shape of input tensor as \((x_1, x_2, ..., x_N)\).
- Outputs:
tuple (Tensor), tuple of 2 tensors, containing the corresponding index and the maximum value of the input tensor.
index (Tensor) - The index for the maximum value of the input tensor, with dtype int32. If keep_dims is
True
, the shape of output tensors is \((x_1, x_2, ..., x_{axis-1}, 1, x_{axis+1}, ..., x_N)\). Otherwise, the shape is \((x_1, x_2, ..., x_{axis-1}, x_{axis+1}, ..., x_N)\) .values (Tensor) - The maximum value of input tensor, with the same shape as index, and same dtype as x.
- Raises
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import mindspore >>> import numpy as np >>> from mindspore import Tensor, ops >>> input_x = Tensor(np.array([0.0, 0.4, 0.6, 0.7, 0.1]), mindspore.float32) >>> index, output = ops.ArgMaxWithValue()(input_x) >>> print(index, output) 3 0.7 >>> index, output = ops.ArgMaxWithValue(keep_dims=True)(input_x) >>> print(index, output) [3] [0.7]