Definition
In model training, an epoch is one complete pass of the entire training dataset through the learning algorithm. During a single epoch, the model sees every example in the dataset once and adjusts its parameters accordingly. Training almost always involves many epochs, because a single pass is rarely enough for a model to learn the patterns in the data.
Epochs, batches, and iterations
An epoch is usually broken into smaller chunks called batches. The model processes one batch at a time, updating its weights after each, and a full sweep through all the batches makes up one epoch. So if a dataset of 10,000 examples is split into batches of 100, one epoch consists of 100 iterations. The number of epochs is itself a hyperparameter, set before training begins.
Choosing how many
The number of epochs is a balancing act. Too few and the model underfits, never fully learning the data; too many and it begins to overfit, memorizing noise instead of generalizing. A common discipline is to watch validation performance after each epoch and stop once it stops improving, a technique called early stopping. Saving a model checkpoint at the end of promising epochs lets you recover the best version even if later training degrades it.
For related concepts, see our entries on hyperparameter, overfitting, and the model checkpoint.
In Simple Terms
In model training, an epoch is one complete pass of the entire training dataset through the learning algorithm. During a single epoch, the model sees…
