Zubnet AILearnWiki › Backpropagation
Fundamentals

Backpropagation

Backprop, Backward Pass
The algorithm that computes how much each parameter in a neural network contributed to the error, enabling gradient descent to update parameters efficiently. Backpropagation applies the chain rule of calculus in reverse through the network: starting from the loss at the output, it propagates gradients backward through each layer to determine each weight's share of the blame.

Why it matters

Backpropagation is the algorithm that makes neural network training possible. Without an efficient way to compute gradients for billions of parameters, gradient descent would be computationally infeasible. Every model you use — from a small classifier to a 400B LLM — was trained using backpropagation. It's the single most important algorithm in deep learning.

Deep Dive

The forward pass: input flows through the network, each layer applies its transformation, and the final layer produces a prediction. The loss function computes how wrong the prediction is. The backward pass: starting from the loss, backpropagation computes ∂loss/∂weight for every weight in the network using the chain rule: ∂loss/∂w = ∂loss/∂output · ∂output/∂hidden · ∂hidden/∂w. Each layer receives the gradient from the layer above and passes its own gradient to the layer below.

Computational Efficiency

Naively computing the gradient for each weight independently would require a separate forward pass per weight — impossibly expensive for billions of parameters. Backpropagation reuses intermediate results: the gradient at each layer is computed once and shared with all weights in that layer. The backward pass costs roughly 2x the forward pass in compute, meaning the total cost of one training step (forward + backward + update) is about 3x a single forward pass.

Automatic Differentiation

Modern deep learning frameworks (PyTorch, JAX) implement backpropagation through automatic differentiation (autograd). You define the forward computation, and the framework automatically constructs the backward computation graph and computes gradients. This means you never manually derive gradients — you define the model architecture and loss, call loss.backward(), and the framework handles the rest. This automation is what makes rapid architecture experimentation practical.

Related Concepts

← All Terms
← Autoregressive Batch Size & Epoch →