mindspore.Tensor.soft_shrink

mindspore.Tensor.soft_shrink(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}\]
参数:
  • lambd (float) - \(\lambda\) 应大于等于0。默认值:0.5。

返回:

Tensor,shape和数据类型与输入相同。

异常:
  • TypeError - lambd 不是float。

  • TypeError - x 不是Tensor。

  • TypeError - 原始Tensor的dtype既不是float16也不是float32。

  • ValueError - lambd 小于0。

支持平台:

Ascend GPU CPU

样例:

>>> from mindspore import Tensor
>>> a = Tensor([[ 0.5297,  0.7871,  1.1754], [ 0.7836,  0.6218, -1.1542]]).astype("float32")
>>> output = a.soft_shrink()
>>> print(output)
[[ 0.02979  0.287    0.676  ]
 [ 0.2837   0.1216  -0.6543 ]]