mindspore.ops.SeLU

class mindspore.ops.SeLU[源代码]

激活函数SeLU(Scaled exponential Linear Unit)。

该激活函数定义为:

\[E_{i} = scale * \begin{cases} x_{i}, &\text{if } x_{i} \geq 0; \cr \text{alpha} * (\exp(x_i) - 1), &\text{otherwise.} \end{cases}\]

其中, \(alpha\)\(scale\) 是预定义的常量( \(alpha=1.67326324\)\(scale=1.05070098\) )。

更多详细信息,请参见 Self-Normalizing Neural Networks

输入:
  • input_x (Tensor) - 任意维度的Tensor,数据类型为int8、int32、float16、float32、float64(仅CPU、GPU)。

输出:

Tensor,数据类型和shape与 input_x 的相同。

异常:
  • TypeError - input_x 的数据类型不是int8、int32、float16、float32、float64。

支持平台:

Ascend GPU CPU

样例:

>>> from mindspore.ops.operations.nn_ops import SeLU
>>> input_x = Tensor(np.array([[-1.0, 4.0, -8.0], [2.0, -5.0, 9.0]]), mindspore.float32)
>>> selu = SeLU()
>>> output = selu(input_x)
>>> print(output)
[[-1.1113307 4.202804 -1.7575096]
[ 2.101402 -1.7462534 9.456309 ]]