← PyTorch learning path
PyTorch · Module 5 of 10

The training loop

Write the classic PyTorch training loop.

📖 Key ideas

  1. For each batch: forward → loss → zero_grad → backward → step.
  2. Loss functions: nn.CrossEntropyLoss, nn.MSELoss.
  3. Optimisers: torch.optim.SGD, Adam, AdamW.
  4. Track loss and accuracy per epoch.
  5. Validate after each epoch with no_grad.
💡 Real-life example: The training loop is a practice routine: try, check mistakes, adjust, repeat.
OptimizerUpdates weights from gradients
optimizer.step()Applies the update
CrossEntropyLossLoss for classification
Validation loopEvaluate without training