mindspore.mint.nn.Softshrink
- class mindspore.mint.nn.Softshrink(lambd=0.5)
逐元素计算Soft Shrink激活函数。公式定义如下:
\[\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}\]SoftShrink激活函数图:
- 参数:
lambd (number,可选) - Soft Shrink公式定义的阈值 \(\lambda\) ,必须不小于零。默认值:
0.5
。
- 输入:
input (Tensor) - Soft Shrink的输入。支持数据类型:
Ascend:float16、float32、bfloat16。
- 输出:
Tensor,shape和数据类型与输入相同。
- 异常:
TypeError - lambd 不是float、int或bool。
TypeError - input 不是Tensor。
TypeError - input 的dtype不是float16、float32或bfloat16。
- 支持平台:
Ascend
样例:
>>> import mindspore >>> from mindspore import Tensor, mint >>> import numpy as np >>> input = Tensor(np.array([[ 0.5297, 0.7871, 1.1754], [ 0.7836, 0.6218, -1.1542]]), mindspore.float16) >>> softshrink = nn.SoftShrink() >>> output = softshrink(input) >>> print(output) [[ 0.02979 0.287 0.676 ] [ 0.2837 0.1216 -0.6543 ]]