This article needs additional citations for verification .(September 2011) |
Part of a series on |
Machine learning and data mining |
---|
Feedforward refers to recognition-inference architecture of neural networks. Artificial neural network architectures are based on inputs multiplied by weights to obtain outputs (inputs-to-output): feedforward. [2] Recurrent neural networks, or neural networks with loops allow information from later processing stages to feed back to earlier stages for sequence processing. [3] However, at every stage of inference a feedforward multiplication remains the core, essential for backpropagation [4] [5] [6] [7] [8] or backpropagation through time. Thus neural networks cannot contain feedback like negative feedback or positive feedback where the outputs feed back to the very same inputs and modify them, because this forms an infinite loop which is not possible to rewind in time to generate an error signal through backpropagation. This issue and nomenclature appear to be a point of confusion between some computer scientists and scientists in other fields studying brain networks. [9]
The two historically common activation functions are both sigmoids, and are described by
The first is a hyperbolic tangent that ranges from -1 to 1, while the other is the logistic function, which is similar in shape but ranges from 0 to 1. Here is the output of the -th node (neuron) and is the weighted sum of the input connections. Alternative activation functions have been proposed, including the rectifier and softplus functions. More specialized activation functions include radial basis functions (used in radial basis networks, another class of supervised neural network models).
In recent developments of deep learning the rectified linear unit (ReLU) is more frequently used as one of the possible ways to overcome the numerical problems related to the sigmoids.
Learning occurs by changing connection weights after each piece of data is processed, based on the amount of error in the output compared to the expected result. This is an example of supervised learning, and is carried out through backpropagation.
We can represent the degree of error in an output node in the -th data point (training example) by , where is the desired target value for -th data point at node , and is the value produced at node when the -th data point is given as an input.
The node weights can then be adjusted based on corrections that minimize the error in the entire output for the -th data point, given by
Using gradient descent, the change in each weight is
where is the output of the previous neuron , and is the learning rate , which is selected to ensure that the weights quickly converge to a response, without oscillations. In the previous expression, denotes the partial derivative of the error according to the weighted sum of the input connections of neuron .
The derivative to be calculated depends on the induced local field , which itself varies. It is easy to prove that for an output node this derivative can be simplified to
where is the derivative of the activation function described above, which itself does not vary. The analysis is more difficult for the change in weights to a hidden node, but it can be shown that the relevant derivative is
This depends on the change in weights of the th nodes, which represent the output layer. So to change the hidden layer weights, the output layer weights change according to the derivative of the activation function, and so this algorithm represents a backpropagation of the activation function. [10]
If using a threshold, i.e. a linear activation function, the resulting linear threshold unit is called a perceptron . (Often the term is used to denote just one of these units.) Multiple parallel non-linear units are able to approximate any continuous function from a compact interval of the real numbers into the interval [−1,1] despite the limited computational power of single unit with a linear threshold function. [31]
Perceptrons can be trained by a simple learning algorithm that is usually called the delta rule . It calculates the errors between calculated output and sample output data, and uses this to create an adjustment to the weights, thus implementing a form of gradient descent.
A multilayer perceptron (MLP) is a misnomer for a modern feedforward artificial neural network, consisting of fully connected neurons (hence the synonym sometimes used of fully connected network (FCN)), often with a nonlinear kind of activation function, organized in at least three layers, notable for being able to distinguish data that is not linearly separable. [32]
Examples of other feedforward networks include convolutional neural networks and radial basis function networks, which use a different activation function.
{{cite book}}
: CS1 maint: multiple names: authors list (link)