Rétropropagation
La Rétropropagation (Backpropagation) est le moteur mathématique de tout le Deep Learning moderne. C’est l’algorithme qui permet à un réseau de neurones de modifier ses millions (ou milliards) de paramètres pour réduire ses erreurs. Sans lui, l’apprentissage profond n’existerait pas.
L’Idée Fondamentale
Quand un réseau de neurones fait une erreur, la rétropropagation répond à la question : “De combien chaque paramètre a-t-il contribué à cette erreur, et dans quelle direction doit-il changer ?”
Le Processus Complet
graph LR
subgraph Forward["Passe Avant"]
I[Entrée<br/>Image] --> H1[Couche 1]
H1 --> H2[Couche 2]
H2 --> H3[Couche N]
H3 --> O[Sortie<br/>Prédiction]
end
subgraph Loss["Calcul d'Erreur"]
O --> L[Fonction de Perte<br/>Écart avec réalité]
end
subgraph Backward["Passe Arrière"]
L --> G3[Gradient N]
G3 --> G2[Gradient 2]
G2 --> G1[Gradient 1]
end
subgraph Update["Mise à Jour"]
G1 --> W1[Ajuster Poids 1]
G2 --> W2[Ajuster Poids 2]
G3 --> W3[Ajuster Poids N]
end
style Forward fill:#667eea20,stroke:#667eea
style Backward fill:#f59e0b20,stroke:#f59e0b
Les 4 Phases
-
Forward Pass (Passe Avant)
- Les données traversent le réseau couche par couche
- Chaque neurone applique ses poids et sa fonction d’activation
- On obtient une prédiction finale
-
Calcul de la Perte (Loss)
- On compare la prédiction avec la vraie réponse
- Une fonction de perte quantifie l’erreur (ex: MSE, Cross-Entropy)
- Plus la perte est haute, plus on s’est trompé
-
Backward Pass (Rétropropagation)
- On calcule le gradient de la perte par rapport à chaque poids
- On remonte de la sortie vers l’entrée (d’où “rétro”)
- La règle de la chaîne (Chain Rule) propage les gradients
-
Mise à Jour des Poids
- Chaque poids est ajusté dans la direction qui réduit l’erreur
- L’amplitude dépend du learning rate (taux d’apprentissage)
- On répète sur des milliers d’exemples
La Règle de la Chaîne
Le coeur de la rétropropagation est la règle de la chaîne du calcul différentiel :
∂L/∂w = ∂L/∂y × ∂y/∂wEn français :
- L = perte (loss)
- w = un poids
- y = sortie d’un neurone
Pour savoir comment le poids w affecte la perte L, on multiplie :
- Comment la sortie y affecte la perte
- Comment le poids w affecte la sortie y
Cette règle s’applique récursivement à travers toutes les couches.
| Terme | Signification |
|---|---|
| Gradient | Direction de la plus forte pente |
| Learning Rate | Taille du pas d’ajustement |
| Epoch | Un passage sur toutes les données |
Au-delà du Gradient Simple
La rétropropagation calcule les gradients, mais des optimiseurs décident comment les utiliser :
| Optimiseur | Principe |
|---|---|
| SGD | Gradient simple avec momentum |
| Adam | Adapte le learning rate par paramètre |
| AdamW | Adam avec weight decay (le standard actuel) |
| Lion | Nouveau, plus efficace sur les LLM |
Histoire
La rétropropagation a une histoire mouvementée :
| Année | Événement |
|---|---|
| 1960s | Premières formulations théoriques |
| 1974 | Paul Werbos dans sa thèse (ignorée) |
| 1986 | Geoffrey Hinton, Rumelhart et Williams publient le papier fondateur |
| 2006 | Hinton relance le Deep Learning |
| 2012 | AlexNet prouve l’efficacité à grande échelle |
| Aujourd’hui | Utilisé dans tous les réseaux de neurones |
Problèmes et Solutions
Le Problème du Gradient Évanescent
Dans les réseaux très profonds, les gradients peuvent devenir si petits en remontant qu’ils “disparaissent”. Les premières couches n’apprennent plus.
Solutions :
- ReLU au lieu de Sigmoid (gradients plus stables)
- Batch Normalization (normalise les activations)
- Connexions Résiduelles (ResNet : skip connections)
Le Problème du Gradient Explosif
L’inverse : les gradients deviennent énormes et déstabilisent l’entraînement.
Solutions :
- Gradient Clipping (couper les gradients trop grands)
- Initialisation soignée (Xavier, He)
Pourquoi c’est Fondamental
Sans rétropropagation, il n’y aurait pas :
- De réseaux de neurones profonds
- De reconnaissance d’images
- De traduction automatique
- De LLM (GPT, Claude, Gemini)
- D’IA générative
C’est littéralement l’algorithme qui fait “apprendre” les machines.
À retenir
- La rétropropagation est l’algorithme qui permet aux réseaux de neurones d’apprendre.
- Elle propage l’erreur de la sortie vers l’entrée via la règle de la chaîne.
- Les poids sont ajustés pour réduire progressivement l’erreur.
- Popularisée par Geoffrey Hinton en 1986, elle reste incontournable.
- Des optimiseurs comme AdamW améliorent l’utilisation des gradients.
Notions liées
- Deep Learning - Le domaine qui repose sur la rétropropagation
- Geoffrey Hinton - Le pionnier qui l’a popularisée
- Réseaux de Neurones - Les architectures qui l’utilisent
- Poids et Paramètres - Ce qui est ajusté
- Fonction de Perte - Ce qui est minimisé