Part of a series on |

Machine learning and data mining |
---|

In the context of artificial neural networks, the **rectifier** or **ReLU (Rectified Linear Unit) activation function**^{[1]}^{[2]} is an activation function defined as the positive part of its argument:

where *x* is the input to a neuron. This is also known as a ramp function and is analogous to half-wave rectification in electrical engineering.

This activation function started showing up in the context of visual feature extraction in hierarchical neural networks starting in the late 1960s.^{[3]}^{[4]} It was later argued that it has strong biological motivations and mathematical justifications.^{[5]}^{[6]} In 2011 it was found to enable better training of deeper networks,^{[7]} compared to the widely used activation functions prior to 2011, e.g., the logistic sigmoid (which is inspired by probability theory; see logistic regression) and its more practical^{[8]} counterpart, the hyperbolic tangent. The rectifier is, as of 2017^{[update]}, the most popular activation function for deep neural networks.^{[9]}

Rectified linear units find applications in computer vision^{[7]} and speech recognition^{[10]}^{[11]} using deep neural nets and computational neuroscience.^{[12]}^{[13]}^{[14]}

- Sparse activation: For example, in a randomly initialized network, only about 50% of hidden units are activated (have a non-zero output).
- Better gradient propagation: Fewer vanishing gradient problems compared to sigmoidal activation functions that saturate in both directions.
^{[7]} - Efficient computation: Only comparison, addition and multiplication.
- Scale-invariant: .

Rectifying activation functions were used to separate specific excitation and unspecific inhibition in the neural abstraction pyramid, which was trained in a supervised way to learn several computer vision tasks.^{[15]} In 2011,^{[7]} the use of the rectifier as a non-linearity has been shown to enable training deep supervised neural networks without requiring unsupervised pre-training. Rectified linear units, compared to sigmoid function or similar activation functions, allow faster and effective training of deep neural architectures on large and complex datasets.

- Non-differentiable at zero; however, it is differentiable anywhere else, and the value of the derivative at zero can be arbitrarily chosen to be 0 or 1.
- Not zero-centered.
- Unbounded.
- Dying ReLU problem: ReLU (Rectified Linear Unit) neurons can sometimes be pushed into states in which they become inactive for essentially all inputs. In this state, no gradients flow backward through the neuron, and so the neuron becomes stuck in a perpetually inactive state and "dies". This is a form of the vanishing gradient problem. In some cases, large numbers of neurons in a network can become stuck in dead states, effectively decreasing the model capacity. This problem typically arises when the learning rate is set too high. It may be mitigated by using leaky ReLUs instead, which assign a small positive slope for
*x*< 0; however, the performance is reduced.

Leaky ReLUs allow a small, positive gradient when the unit is not active.^{[11]}

Parametric ReLUs (PReLUs) take this idea further by making the coefficient of leakage into a parameter that is learned along with the other neural-network parameters.^{[16]}

Note that for *a* ≤ 1, this is equivalent to

and thus has a relation to "maxout" networks.^{[16]}

GELU is a smooth approximation to the rectifier. It has a non-monotonic “bump” when *x* < 0, and it serves as the default activation for models such as BERT.^{[17]}

,

where Φ(*x*) is the cumulative distribution function of the standard normal distribution.

This activation function is illustrated in the figure at the start of this article.

Main article: swish function |

The SiLU (Sigmoid Linear Unit) or swish function^{[18]} is another smooth approximation first coined in the GELU paper. ^{[17]}

where is the sigmoid function.

A smooth approximation to the rectifier is the analytic function

which is called the *softplus*^{[19]}^{[7]} or *SmoothReLU* function.^{[20]} For large negative it is roughly so just above 0, while for large positive it is roughly so just above .

A sharpness parameter may be included:

The derivative of softplus is the logistic function. Starting from the parametric version,

The logistic sigmoid function is a smooth approximation of the derivative of the rectifier, the Heaviside step function.

The multivariable generalization of single-variable softplus is the LogSumExp with the first argument set to zero:

The LogSumExp function is

and its gradient is the softmax; the softmax with the first argument set to zero is the multivariable generalization of the logistic function. Both LogSumExp and softmax are used in machine learning.

Exponential linear units try to make the mean activations closer to zero, which speeds up learning. It has been shown that ELUs can obtain higher classification accuracy than ReLUs.^{[21]}

where is a hyper-parameter to be tuned, and is a constraint.

The ELU can be viewed as a smoothed version of a shifted ReLU (SReLU), which has the form given the same interpretation of .

The mish function could also be used as a smooth approximation of the rectifier.^{[18]} It is defined as

where is the hyperbolic tangent and is the softplus function.

Mish is non-monotonic and self-gated.^{[22]} It was inspired by Swish, itself a variant of ReLU.^{[22]}