mindspore.ops.aminmax

mindspore.ops.aminmax(input, *, axis=0, keepdims=False)[源代码]

返回输入Tensor在指定轴上的最小值和最大值。

参数:
  • input (Tensor) - 输入Tensor,可以是任意维度。设输入Tensor的shape为 \((x_1, x_2, ..., x_N)\)

关键字参数:
  • axis (int,可选) - 要进行规约计算的维度。 axis 必须在[-rank, rank)范围内,其中 “rank” 是 input 的维度。如果 axis 是None,则计算整个输入Tensor的最大值和最小值。默认值: 0

  • keepdims (bool,可选) - 是否保留维度。如果为 True ,则输出shape与输入shape一致,否则移除规约计算的维度 axis 。默认值: False

返回:

tuple (Tensor),包含输入Tensor在指定轴上的最小值和最大值。

  • keepdimsTrue ,输出shape为: \((x_1, x_2, ..., x_{axis-1}, 1, x_{axis+1}, ..., x_N)\)

  • keepdimsFalse ,输出shape为: \((x_1, x_2, ..., x_{axis-1}, x_{axis+1}, ..., x_N)\)

异常:
  • TypeError - keepdims 不是bool类型。

  • TypeError - axis 不是int类型也不是None。

  • ValueError - axis 不在[-rank, rank)范围内。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> x = Tensor(np.array([0.0, 0.4, 0.6, 0.7, 0.1]), mindspore.float32)
>>> output0, output1 = ops.aminmax(x)
>>> print(output0, output1)
0.0 0.7
>>> output2, output3 = ops.aminmax(x, axis=-1, keepdims=True)
>>> print(output2, output3)
[0.] [0.7]
>>> x = Tensor(np.array([[0.0, 0.4, 0.6, 0.7, 0.1], [0.78, 0.97, 0.5, 0.82, 0.99]]), mindspore.float32)
>>> output4, output5 = ops.aminmax(x, axis=None, keepdims=True)
>>> print(output4, output5)
[[0.]] [[0.99]]