ncdl.nn.RReLU

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

Applies the randomized leaky rectified liner unit function, element-wise, as described in the paper:

Empirical Evaluation of Rectified Activations in Convolutional Network.

The function is defined as:

\[\begin{split}\text{RReLU}(x) = \begin{cases} x & \text{if } x \geq 0 \\ ax & \text{ otherwise } \end{cases}\end{split}\]

where \(a\) is randomly sampled from uniform distribution \(\mathcal{U}(\text{lower}, \text{upper})\).

Parameters:
  • lower – lower bound of the uniform distribution. Default: \(\frac{1}{8}\)

  • upper – upper bound of the uniform distribution. Default: \(\frac{1}{3}\)

  • inplace – can optionally do the operation in-place. Default: False

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

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

scripts/activation_images/RReLU.png

Examples:

>>> m = nn.RReLU(0.1, 0.3)
>>> input = torch.randn(2)
>>> output = m(input)
__init__(lower: float = 0.125, upper: float = 0.3333333333333333, inplace: bool = False)

Methods

__init__([lower, upper, inplace])

extra_repr()

forward(input)

Attributes

lower

upper

inplace