ncdl.nn.Hardshrink

class ncdl.nn.Hardshrink(*args: Any, **kwargs: Any)

Applies the Hard Shrinkage (Hardshrink) function element-wise.

Hardshrink is defined as:

\[\begin{split}\text{HardShrink}(x) = \begin{cases} x, & \text{ if } x > \lambda \\ x, & \text{ if } x < -\lambda \\ 0, & \text{ otherwise } \end{cases}\end{split}\]
Parameters:

lambd – the \(\lambda\) value for the Hardshrink formulation. Default: 0.5

Shape:
  • Input: \((*)\), where \(*\) means any number of dimensions.

  • Output: \((*)\), same shape as the input.

scripts/activation_images/Hardshrink.png

Examples:

>>> m = nn.Hardshrink()
>>> input = torch.randn(2)
>>> output = m(input)
__init__(lambd: float = 0.5) None

Methods

__init__([lambd])

extra_repr()

forward(input)

Attributes

lambd