# Forward pass vs backward pass vs backpropagation

As mentioned in the question, i have some issues understanding what are the differences between those terms.

From what i have understood:

1) Forward pass: compute the output of the network given the input data

2) Backward pass: compute the output error with respect to the expected output and then go backward into the network and update the weights using gradient descent ecc...

What is backpropagation then? Is it the combination of the previous 2 steps? Or is it che particular method we use to compute dE/dw? (chain rule ecc...)

In a narrow sense backpropagation only refers to the calculation of the gradients. So it does, for example, not include the update of any weights. But usually it is used refering to the whole backward pass.

Also see Wikipedia.

• Exactly, the weights (from the mathematical point of view) are actually updated using gradient descent, which needs dE/dw, which is calculated with backpropagation, right? – Mattia Surricchio Jan 13 at 16:19
• Yes. Moreover, you could say backpropagation refers primarily to feedforward networks while, for example, RNNs use backpropagation through time. – Sammy Jan 13 at 16:27

In brief, backpropagation references the idea of using the difference between prediction and actual values to fit the hyperparameters of the method used. But, for applying it, previous forward proagation is always required. So, we could say that backpropagation method applies forward and backward passes, sequentially and repeteadly.

Your machine learning model starts with random hyperparameter values and makes a prediction with them (forward propagation). Then it compares with real values while adjusting those random initial values (backpropagation), trying to minimize the error (depending of your objective function and optimization method applied). And then, it starts over again, until you reach the stopping criteria.

You may find a better explanation in this question.

Furthermore, you will find more topic explanation here.

• So backward pass and backpropagation are the same thing? I saw many books/articles on medium that used these two terms, sometimes referring only to the backward part, sometimes referring to the whole process of forward + backward – Mattia Surricchio Jan 13 at 16:18
• As I said, you can't go back without going straight first. But sounds good for me the concept of using forward/backward pass for specifying JUST the step of going forward or backward while backpropagation includes both. However, this is a lenguage matter. Under my point of view, going backward always include going forward first, so, it's a concept elided. – Dave Jan 13 at 16:23