SlideShare a Scribd company logo
3
Most read
Backpropagation<br />From Wikipedia, the free encyclopedia<br />Jump to: navigation, search<br />This article is about the computer algorithm. For the biological process, see Neural backpropagation.<br />Backpropagation, or propagation of error, is a common method of teaching artificial neural networks how to perform a given task. It was first described by Arthur E. Bryson and Yu-Chi Ho in 1969,[1][2] but it wasn't until 1986, through the work of David E. Rumelhart, Geoffrey E. Hinton and Ronald J. Williams, that it gained recognition, and it led to a “renaissance” in the field of artificial neural network research.<br />It is a supervised learning method, and is an implementation of the Delta rule. It requires a teacher that knows, or can calculate, the desired output for any given input. It is most useful for feed-forward networks (networks that have no feedback, or simply, that have no connections that loop). The term is an abbreviation for \"
backwards propagation of errors\"
. Backpropagation requires that the activation function used by the artificial neurons (or \"
nodes\"
) is differentiable.<br />Contents[hide]1 Summary2 Algorithm3 Multithreaded Backpropagation4 Limitations5 References6 External links<br />[edit] Summary<br />Summary of the backpropagation technique:<br />Present a training sample to the neural network.<br />Compare the network's output to the desired output from that sample. Calculate the error in each output neuron.<br />For each neuron, calculate what the output should have been, and a scaling factor, how much lower or higher the output must be adjusted to match the desired output. This is the local error.<br />Adjust the weights of each neuron to lower the local error.<br />Assign \"
blame\"
 for the local error to neurons at the previous level, giving greater responsibility to neurons connected by stronger weights.<br />Repeat from step 3 on the neurons at the previous level, using each one's \"
blame\"
 as its error.<br />[edit] Algorithm<br />Actual algorithm for a 3-layer network (only one hidden layer):<br />  Initialize the weights in the network (often randomly)<br />  Do<br />         For each example e in the training set<br />              O = neural-net-output(network, e) ; forward pass<br />              T = teacher output for e<br />              Calculate error (T - O) at the output units<br />              Compute delta_wh for all weights from hidden layer to output layer ; backward pass<br />              Compute delta_wi for all weights from input layer to hidden layer ; backward pass continued<br />              Update the weights in the network<br />  Until all examples classified correctly or stopping criterion satisfied<br />  Return the network<br />As the algorithm's name implies, the errors (and therefore the learning) propagate backwards from the output nodes to the inner nodes. So technically speaking, backpropagation is used to calculate the gradient of the error of the network with respect to the network's modifiable weights. This gradient is almost always then used in a simple stochastic gradient descent algorithm to find weights that minimize the error. Often the term \"
backpropagation\"
 is used in a more general sense, to refer to the entire procedure encompassing both the calculation of the gradient and its use in stochastic gradient descent. Backpropagation usually allows quick convergence on satisfactory local minima for error in the kind of networks to which it is suited.<br />Backpropagation networks are necessarily multilayer perceptrons (usually with one input, one hidden, and one output layer). In order for the hidden layer to serve any useful function, multilayer networks must have non-linear activation functions for the multiple layers: a multilayer network using only linear activation functions is equivalent to some single layer, linear network. Non-linear activation functions that are commonly used include the logistic function, the softmax function, and the gaussian function.<br />The backpropagation algorithm for calculating a gradient has been rediscovered a number of times, and is a special case of a more general technique called automatic differentiation in the reverse accumulation mode.<br />It is also closely related to the Gauss–Newton algorithm, and is also part of continuing research in neural backpropagation.<br />[edit] Multithreaded Backpropagation<br />Backpropagation is an iterative process that can often take a great deal of time to complete. When multicore computers are used multithreaded techniques can greatly decrease the amount of time that backpropagation takes to converge. If batching is being used, it is relatively simple to adapt the backpropagation algorithm to operate in a multithreaded manor.<br />The training data is broken up into equally large batches for each of the threads. Each thread executes the forward and backward passes. The weight and threshold deltas are summed for each of the threads. At the end of each iteration all threads must pause briefly for the weight and threshold deltas to be summed and applied to the neural network. This process continues for each iteration. This multithreaded approach to backpropagation is used by the Encog Neural Network Framework. [3]<br />[edit] Limitations<br />The convergence obtained from backpropagation learning is very slow.<br />The convergence in backpropagation learning is not guaranteed.<br />The result may generally converge to any local minimum on the error surface, since stochastic gradient descent exists on a non-linear surface.<br />The backpropagation learning is associated with the problem of scaling.<br />
Backpropagation
Backpropagation

More Related Content

PPT
2.5 backpropagation
PPT
Classification using back propagation algorithm
PPT
backpropagation in neural networks
PPT
nural network ER. Abhishek k. upadhyay
PPTX
Back propagation method
PDF
The Back Propagation Learning Algorithm
PDF
Multi Layer Perceptron & Back Propagation
PPTX
2.5 backpropagation
Classification using back propagation algorithm
backpropagation in neural networks
nural network ER. Abhishek k. upadhyay
Back propagation method
The Back Propagation Learning Algorithm
Multi Layer Perceptron & Back Propagation

What's hot (20)

PPT
Back propagation
PDF
Classification by back propagation, multi layered feed forward neural network...
PPTX
04 Multi-layer Feedforward Networks
PPT
Principles of soft computing-Associative memory networks
PPTX
Back propagation network
PDF
On Implementation of Neuron Network(Back-propagation)
PDF
Classification By Back Propagation
PPTX
The Art Of Backpropagation
PPTX
Neural net and back propagation
PDF
15 Machine Learning Multilayer Perceptron
PPTX
Artificial neural network
PPTX
Feedforward neural network
PPTX
PPT
Adaline madaline
PDF
soft computing
PPT
MPerceptron
PPT
Mitchell's Face Recognition
PPT
lecture07.ppt
PPT
Multi-Layer Perceptrons
PPT
Perceptron
Back propagation
Classification by back propagation, multi layered feed forward neural network...
04 Multi-layer Feedforward Networks
Principles of soft computing-Associative memory networks
Back propagation network
On Implementation of Neuron Network(Back-propagation)
Classification By Back Propagation
The Art Of Backpropagation
Neural net and back propagation
15 Machine Learning Multilayer Perceptron
Artificial neural network
Feedforward neural network
Adaline madaline
soft computing
MPerceptron
Mitchell's Face Recognition
lecture07.ppt
Multi-Layer Perceptrons
Perceptron
Ad

Viewers also liked (20)

PPTX
Neural network & its applications
PDF
Artificial Neural Networks Lect5: Multi-Layer Perceptron & Backpropagation
PPTX
Hopfield Networks
PPTX
HOPFIELD NETWORK
PPTX
neural network
DOCX
Hand Written Character Recognition Using Neural Networks
PDF
The Back Propagation Learning Algorithm
PDF
Artificial Neural Networks
PDF
MTech - AI_NeuralNetworks_Assignment
PDF
PDF
DOC
Neural network
PPTX
Paper Reading : Learning to compose neural networks for question answering
PDF
NLP_Project_Paper_up276_vec241
PDF
Basic Electrical Engineering
PPTX
Neural network for machine learning
PPTX
Filtering an image is to apply a convolution
PDF
RAIN WATER HARVESTING
PDF
Digital image processing - Image Enhancement (MATERIAL)
Neural network & its applications
Artificial Neural Networks Lect5: Multi-Layer Perceptron & Backpropagation
Hopfield Networks
HOPFIELD NETWORK
neural network
Hand Written Character Recognition Using Neural Networks
The Back Propagation Learning Algorithm
Artificial Neural Networks
MTech - AI_NeuralNetworks_Assignment
Neural network
Paper Reading : Learning to compose neural networks for question answering
NLP_Project_Paper_up276_vec241
Basic Electrical Engineering
Neural network for machine learning
Filtering an image is to apply a convolution
RAIN WATER HARVESTING
Digital image processing - Image Enhancement (MATERIAL)
Ad

Similar to Backpropagation (20)

PPT
Back_propagation_algorithm.Back_propagation_algorithm.Back_propagation_algorithm
PPTX
Terminology Machine Learning
PPTX
Unit ii supervised ii
PPT
Artificial neural network
PPTX
Backpropagation.pptx
PPTX
Introduction Of Artificial neural network
PDF
N ns 1
PPTX
ML Module 3 Non Linear Learning.pptx
PPT
this is a Ai topic neural network ML_Lecture_4.ppt
PDF
20120140503023
PDF
Web spam classification using supervised artificial neural network algorithms
PDF
Deep learning unit 3 artificial neural network
PPTX
Classification_by_back_&propagation.pptx
PDF
Web Spam Classification Using Supervised Artificial Neural Network Algorithms
PDF
Web Spam Classification Using Supervised Artificial Neural Network Algorithms
PPTX
CST413 KTU S7 CSE Machine Learning Neural Networks and Support Vector Machine...
PDF
PDF
Artificial Neural networks
PPT
SET-02_SOCS_ESE-DEC23__B.Tech%20(CSE-H+NH)-AIML_5_CSAI300
PPT
Intro to Deep learning - Autoencoders
Back_propagation_algorithm.Back_propagation_algorithm.Back_propagation_algorithm
Terminology Machine Learning
Unit ii supervised ii
Artificial neural network
Backpropagation.pptx
Introduction Of Artificial neural network
N ns 1
ML Module 3 Non Linear Learning.pptx
this is a Ai topic neural network ML_Lecture_4.ppt
20120140503023
Web spam classification using supervised artificial neural network algorithms
Deep learning unit 3 artificial neural network
Classification_by_back_&propagation.pptx
Web Spam Classification Using Supervised Artificial Neural Network Algorithms
Web Spam Classification Using Supervised Artificial Neural Network Algorithms
CST413 KTU S7 CSE Machine Learning Neural Networks and Support Vector Machine...
Artificial Neural networks
SET-02_SOCS_ESE-DEC23__B.Tech%20(CSE-H+NH)-AIML_5_CSAI300
Intro to Deep learning - Autoencoders

Backpropagation

  • 1. Backpropagation<br />From Wikipedia, the free encyclopedia<br />Jump to: navigation, search<br />This article is about the computer algorithm. For the biological process, see Neural backpropagation.<br />Backpropagation, or propagation of error, is a common method of teaching artificial neural networks how to perform a given task. It was first described by Arthur E. Bryson and Yu-Chi Ho in 1969,[1][2] but it wasn't until 1986, through the work of David E. Rumelhart, Geoffrey E. Hinton and Ronald J. Williams, that it gained recognition, and it led to a “renaissance” in the field of artificial neural network research.<br />It is a supervised learning method, and is an implementation of the Delta rule. It requires a teacher that knows, or can calculate, the desired output for any given input. It is most useful for feed-forward networks (networks that have no feedback, or simply, that have no connections that loop). The term is an abbreviation for \" backwards propagation of errors\" . Backpropagation requires that the activation function used by the artificial neurons (or \" nodes\" ) is differentiable.<br />Contents[hide]1 Summary2 Algorithm3 Multithreaded Backpropagation4 Limitations5 References6 External links<br />[edit] Summary<br />Summary of the backpropagation technique:<br />Present a training sample to the neural network.<br />Compare the network's output to the desired output from that sample. Calculate the error in each output neuron.<br />For each neuron, calculate what the output should have been, and a scaling factor, how much lower or higher the output must be adjusted to match the desired output. This is the local error.<br />Adjust the weights of each neuron to lower the local error.<br />Assign \" blame\" for the local error to neurons at the previous level, giving greater responsibility to neurons connected by stronger weights.<br />Repeat from step 3 on the neurons at the previous level, using each one's \" blame\" as its error.<br />[edit] Algorithm<br />Actual algorithm for a 3-layer network (only one hidden layer):<br /> Initialize the weights in the network (often randomly)<br /> Do<br /> For each example e in the training set<br /> O = neural-net-output(network, e) ; forward pass<br /> T = teacher output for e<br /> Calculate error (T - O) at the output units<br /> Compute delta_wh for all weights from hidden layer to output layer ; backward pass<br /> Compute delta_wi for all weights from input layer to hidden layer ; backward pass continued<br /> Update the weights in the network<br /> Until all examples classified correctly or stopping criterion satisfied<br /> Return the network<br />As the algorithm's name implies, the errors (and therefore the learning) propagate backwards from the output nodes to the inner nodes. So technically speaking, backpropagation is used to calculate the gradient of the error of the network with respect to the network's modifiable weights. This gradient is almost always then used in a simple stochastic gradient descent algorithm to find weights that minimize the error. Often the term \" backpropagation\" is used in a more general sense, to refer to the entire procedure encompassing both the calculation of the gradient and its use in stochastic gradient descent. Backpropagation usually allows quick convergence on satisfactory local minima for error in the kind of networks to which it is suited.<br />Backpropagation networks are necessarily multilayer perceptrons (usually with one input, one hidden, and one output layer). In order for the hidden layer to serve any useful function, multilayer networks must have non-linear activation functions for the multiple layers: a multilayer network using only linear activation functions is equivalent to some single layer, linear network. Non-linear activation functions that are commonly used include the logistic function, the softmax function, and the gaussian function.<br />The backpropagation algorithm for calculating a gradient has been rediscovered a number of times, and is a special case of a more general technique called automatic differentiation in the reverse accumulation mode.<br />It is also closely related to the Gauss–Newton algorithm, and is also part of continuing research in neural backpropagation.<br />[edit] Multithreaded Backpropagation<br />Backpropagation is an iterative process that can often take a great deal of time to complete. When multicore computers are used multithreaded techniques can greatly decrease the amount of time that backpropagation takes to converge. If batching is being used, it is relatively simple to adapt the backpropagation algorithm to operate in a multithreaded manor.<br />The training data is broken up into equally large batches for each of the threads. Each thread executes the forward and backward passes. The weight and threshold deltas are summed for each of the threads. At the end of each iteration all threads must pause briefly for the weight and threshold deltas to be summed and applied to the neural network. This process continues for each iteration. This multithreaded approach to backpropagation is used by the Encog Neural Network Framework. [3]<br />[edit] Limitations<br />The convergence obtained from backpropagation learning is very slow.<br />The convergence in backpropagation learning is not guaranteed.<br />The result may generally converge to any local minimum on the error surface, since stochastic gradient descent exists on a non-linear surface.<br />The backpropagation learning is associated with the problem of scaling.<br />