Imaginez un étudiant qui révise : au début, chaque heure de travail améliore ses notes. Puis vient un moment où, à force de réviser par cœur le même livre, il mémorise les détails inutiles et oublie de comprendre. L'arrêt précoce (early stopping) consiste à dire à un modèle de machine learning : « arrête-toi pile au bon moment, avant de commencer à apprendre du bruit ».
Le mécanisme
Pendant l'entraînement, on suit deux courbes d'erreur : celle sur les données d'entraînement et celle sur un jeu de validation mis de côté. L'erreur d'entraînement baisse presque toujours. Mais l'erreur de validation, elle, finit par remonter : c'est le signe du surapprentissage (overfitting).
L'arrêt précoce surveille cette erreur de validation et interrompt l'entraînement lorsqu'elle ne s'améliore plus pendant un certain nombre d'époques — un délai appelé patience.
Quand arrêter ?
| Phase | Erreur entraînement | Erreur validation | Décision |
|---|---|---|---|
| Sous-apprentissage | élevée | élevée | continuer |
| Optimal | basse | minimale | arrêter ici |
| Surapprentissage | très basse | remonte | trop tard |
Formellement, on garde les poids $\theta^*$ correspondant au minimum de l'erreur de validation :
$$\theta^* = \arg\min_{t} \; E_{\text{val}}(\theta_t)$$
En pratique
- Patience : nombre d'époques tolérées sans amélioration avant l'arrêt.
- Restauration : on recharge les meilleurs poids, pas les derniers.
- C'est une forme de régularisation quasi gratuite et très répandue.
Mieux vaut un modèle qui s'arrête à temps qu'un modèle qui apprend ses erreurs par cœur.