mindspore.nn.SoftShrink
- class mindspore.nn.SoftShrink(lambd=0.5)[源代码]
SoftShrink激活函数。
\[\begin{split}\text{SoftShrink}(x) = \begin{cases} x - \lambda, & \text{ if } x > \lambda \\ x + \lambda, & \text{ if } x < -\lambda \\ 0, & \text{ otherwise } \end{cases}\end{split}\]- 参数:
lambd - Softshrink公式中的 \(\lambda\) ,必须不小于零。默认值:0.5。
- 输入:
input_x (Tensor) - SoftShrink的输入,任意维度的Tensor,数据类型为float16或float32。
- 输出:
Tensor,shape和数据类型与 input_x 相同。
- 异常:
TypeError - lambd 不是float。
TypeError - input_x 不是tensor。
TypeError - input_x 的数据类型既不是float16也不是float32。
ValueError - lambd 小于0。
- 支持平台:
Ascend
CPU
GPU
样例:
>>> input_x = Tensor(np.array([[ 0.5297, 0.7871, 1.1754], [ 0.7836, 0.6218, -1.1542]]), mstype.float16) >>> softshrink = nn.SoftShrink() >>> output = softshrink(input_x) >>> print(output) [[ 0.02979 0.287 0.676 ] [ 0.2837 0.1216 -0.6543 ]]