Backpropagation: Difference between revisions
Line 15: | Line 15: | ||
==A different neural network graph== | ==A different neural network graph== | ||
Naively, we might try to piece together the information in the previous sections as follows: | |||
# The usual neural network graph looks like a computational graph. | |||
# We know computational graphs are good at representing the process of computing the gradient. | |||
# In order to do gradient descent, we want the gradient of the cost function. | |||
# Therefore, by (1)-(3), we can use the neural network graph to represent the process of the computing gradient. | |||
==See also== | ==See also== |
Revision as of 01:16, 24 March 2018
Backpropagation has several related meanings when talking about neural networks. Here we mean the process of finding the gradient of a cost function.
Terminology confusion
- Some people use "backpropagation" to mean the process of finding the gradient of a cost function. This leads people to say things like "backpropagation is just the multivariable chain rule".
- Some people use "backpropagation" or maybe "backpropagation algorithm" to mean the entire gradient descent algorithm, where the gradient is computed using the multivariable chain rule.
The usual neural network graph
Neural networks are usually illustrated where each node is the activation of neuron in layer . Then the weights are labeled along the edges.
Computational graphs
The multivariable chain rule can be represented as a computational graph where the nodes are variables that store values from intermediate computations. Each node can use values given to by edges going into it, and sends its output to nodes going out.
A different neural network graph
Naively, we might try to piece together the information in the previous sections as follows:
- The usual neural network graph looks like a computational graph.
- We know computational graphs are good at representing the process of computing the gradient.
- In order to do gradient descent, we want the gradient of the cost function.
- Therefore, by (1)-(3), we can use the neural network graph to represent the process of the computing gradient.