Softshrink

class paddle.nn. Softshrink ( threshold=0.5, name=None ) [source]

Softshrink Activation

\[\begin{split}Softshrink(x)= \left\{ \begin{array}{rcl} x - threshold,& & \text{if } x > threshold \\ x + threshold,& & \text{if } x < -threshold \\ 0,& & \text{otherwise} \end{array} \right.\end{split}\]
Parameters
  • threshold (float, optional) – The value of threshold(must be no less than zero) for softplus. Default is 0.5

  • name (str, optional) – Name for the operation (optional, default is None). For more information, please refer to Name.

Shape:
  • input: Tensor with any shape.

  • output: Tensor with the same shape as input.

Examples

>>> import paddle

>>> x = paddle.to_tensor([-0.9, -0.2, 0.1, 0.8])
>>> m = paddle.nn.Softshrink()
>>> out = m(x)
>>> print(out)
Tensor(shape=[4], dtype=float32, place=Place(cpu), stop_gradient=True,
[-0.39999998,  0.        ,  0.        ,  0.30000001])
forward ( x )

forward

Defines the computation performed at every call. Should be overridden by all subclasses.

Parameters
  • *inputs (tuple) – unpacked tuple arguments

  • **kwargs (dict) – unpacked dict arguments

extra_repr ( )

extra_repr

Extra representation of this layer, you can have custom implementation of your own layer.