![]() | ||
In the context of artificial neural networks, the rectifier is an activation function defined as
Contents
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 was first introduced to a dynamical network by Hahnloser et al. in a 2000 paper in Nature with strong biological motivations and mathematical justifications. It has been used in convolutional networks more effectively than the widely used logistic sigmoid (which is inspired by probability theory; see logistic regression) and its more practical counterpart, the hyperbolic tangent. The rectifier is, as of 2015, the most popular activation function for deep neural networks.
A unit employing the rectifier is also called a rectified linear unit (ReLU).
A smooth approximation to the rectifier is the analytic function
which is called the softplus function. The derivative of softplus is
Rectified linear units find applications in computer vision and speech recognition using deep neural nets.
Noisy ReLUs
Rectified linear units can be extended to include Gaussian noise, making them noisy ReLUs, giving
Noisy ReLUs have been used with some success in restricted Boltzmann machines for computer vision tasks.
Leaky ReLUs
Leaky ReLUs allow a small, non-zero gradient when the unit is not active.
Parametric ReLUs take this idea further by making the coefficient of leakage into a parameter that is learned along with the other neural network parameters.
Note that for
and thus has a relation to "maxout" networks.
ELUs
Exponential linear units try to make the mean activations closer to zero which speeds up learning. It has been shown that ELUs obtain higher classification accuracy than ReLUs.
Advantages
For the first time in 2011, 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 for faster and effective training of deep neural architectures on large and complex datasets.