mindspore.ops.Select

查看源文件
class mindspore.ops.Select[源代码]

根据条件判断Tensor中的元素的值,决定输出中的相应元素是从 x (如果元素值为True)还是从 y (如果元素值为False)中选择。

该算法可以被定义为:

outi={xi,if condiyi,otherwise
输入:
  • cond (Tensor[bool]) - 条件Tensor,决定选择哪一个元素,shape是 (x1,x2,...,xN,...,xR)

  • x (Tensor) - 第一个被选择的Tensor,shape是 (x1,x2,...,xN,...,xR)

  • y (Tensor) - 第二个被选择的Tensor,shape是 (x1,x2,...,xN,...,xR)

输出:

Tensor,具有与输入 cond 相同的shape。

异常:
  • TypeError - 如果 x 或者 y 不是Tensor。

  • ValueError - 如果三个输入的shape不一致。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> from mindspore import Tensor, ops
>>> # Both inputs are Tensor
>>> select = ops.Select()
>>> cond = Tensor([True, False])
>>> x = Tensor([2,3], mindspore.float32)
>>> y = Tensor([1,2], mindspore.float32)
>>> output = select(cond, x, y)
>>> print(output)
[2. 2.]