mindspore.nn.SiLU

class mindspore.nn.SiLU[源代码]

SiLU激活函数。

逐元素计算SiLU激活函数。

SiLU函数定义为:

\[\text{SiLU}(x) = x * \sigma(x),\]

其中 \(x_i\) 是输入的元素, \(\sigma(x)\) 是Sigmoid函数。

\[\text{sigmoid}(x_i) = \frac{1}{1 + \exp(-x_i)},\]

关于SiLU的图例见 SiLU

输入:

  • x (Tensor) - 数据类型为float16或float32的输入。任意维度的Tensor。

输出:

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

异常:

  • TypeError - x 的数据类型既不是float16也不是float32。

支持平台:

Ascend GPU CPU

样例:

>>> x = Tensor(np.array([-1, 2, -3, 2, -1]), mindspore.float16)
>>> silu = nn.SiLU()
>>> output = silu(x)
>>> print(output)
[-0.269  1.762  -0.1423  1.762  -0.269]