mindspore.ops.sgn

mindspore.ops.sgn(input)[源代码]

mindspore.ops.sign() 在复数上的扩展。 对于实数输入,此方法与 mindspore.ops.sign() 一致。 对于复数输入,此方法按照如下公式计算。

\[\begin{split}\text{out}_{i} = \begin{cases} 0 & |\text{input}_i| == 0 \\ \frac{{\text{input}_i}}{|{\text{input}_i}|} & \text{otherwise} \end{cases}\end{split}\]
参数:
  • input (Tensor) - 输入Tensor。

返回:

Tensor, input 的sgn计算结果。

异常:
  • TypeError - 如果 input 不是Tensor。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore as ms
>>> import mindspore.ops as ops
>>> input = ms.Tensor([[3 + 4j, 7 - 24j, 0, 6 + 8j, 8], [15 + 20j, 7 - 24j, 0, 3 + 4j, 20]], dtype=ms.complex64)
>>> output = ops.sgn(input)
>>> print(output)
[[0.6 +0.8j  0.28-0.96j 0.  +0.j   0.6 +0.8j  1.  +0.j  ]
 [0.6 +0.8j  0.28-0.96j 0.  +0.j   0.6 +0.8j  1.  +0.j  ]]