Imaginez une recette de cuisine où chaque ingrédient arrive dans une unité différente — grammes, litres, pincées : impossible de doser correctement. La normalisation fait exactement l'inverse en apprentissage profond : elle remet les valeurs qui circulent dans un réseau de neurones à une échelle commune, pour que l'entraînement soit stable, rapide et reproductible.
Le principe central
À l'intérieur d'un réseau, les activations (les sorties intermédiaires des couches) peuvent prendre des amplitudes très variables. Quand leur distribution change sans cesse pendant l'entraînement, les couches suivantes doivent constamment se réadapter — un phénomène qui ralentit la convergence.
La normalisation recentre ces valeurs autour de zéro et les ramène à une variance unitaire. Pour un vecteur d'activations $x$ :
$$\hat{x}_i = \frac{x_i - \mu}{\sqrt{\sigma^2 + \epsilon}}$$
où $\mu$ est la moyenne, $\sigma^2$ la variance, et $\epsilon$ un petit terme évitant la division par zéro. On applique ensuite deux paramètres apprenables, gamma ($\gamma$) et bêta ($\beta$), pour que le réseau garde la liberté de restaurer l'échelle utile : $y_i = \gamma \hat{x}_i + \beta$.
Les grandes variantes
| Méthode | Normalise sur | Usage typique |
|---|---|---|
| Batch Norm | le lot d'exemples | vision, CNN |
| Layer Norm | les features d'un exemple | Transformers, NLP |
| Group Norm | groupes de canaux | petits lots, segmentation |
Pourquoi c'est devenu incontournable
La normalisation autorise des taux d'apprentissage plus élevés, réduit la sensibilité à l'initialisation et joue un rôle régularisant léger. La Layer Normalization est notamment au cœur de chaque bloc des Transformers, l'architecture des grands modèles de langage actuels.
Normaliser, c'est donner au réseau un terrain de jeu nivelé : moins de turbulences, plus de vitesse vers la solution.