La rétropropagation du gradient (ou backpropagation) est l’algorithme fondamental qui permet à un grand modèle de langage (LLM) d’apprendre de ses erreurs. Son rôle est de calculer comment chaque paramètre du modèle (chaque poids, chaque biais) a contribué à l’erreur commise lors d’une prédiction, puis de déterminer dans quelle direction et de combien il faut modifier chaque paramètre pour réduire cette erreur.
Autrement dit : la backpropagation est le mécanisme qui attribue la responsabilité de l’erreur à chaque paramètre individuellement, aussi nombreux soient-ils (des milliards).
Le problème qu’elle résout
Un LLM contient des milliards de paramètres. Lorsqu’il produit une réponse incorrecte, il est impossible de savoir manuellement quel paramètre (ou quelle combinaison de paramètres) est responsable de l’erreur. La backpropagation résout ce problème grâce à la règle de dérivation en chaîne : elle propage l’erreur de la sortie du modèle vers l’entrée, couche par couche, en calculant pour chaque paramètre sa contribution marginale à l’erreur totale.
Comment elle fonctionne (en 3 étapes)
- Passe avant (forward pass)
Le modèle reçoit une entrée (un token, une phrase) et produit une prédiction. On compare cette prédiction à la réponse attendue : c’est l’erreur (ou loss). - Passe arrière (backward pass)
C’est la backpropagation proprement dite. L’erreur est propagée en sens inverse à travers le réseau :
- On calcule le gradient de l’erreur par rapport à la sortie de la dernière couche.
- On remonte couche par couche, en appliquant la règle de la chaîne pour obtenir le gradient de l’erreur par rapport à chaque paramètre.
Chaque paramètre reçoit ainsi une valeur de gradient qui indique comment l’erreur varierait si ce paramètre changeait légèrement.
- Mise à jour des paramètres
Un algorithme d’optimisation (comme la descente de gradient stochastique ou Adam) utilise ces gradients pour ajuster chaque paramètre dans la direction qui réduit l’erreur. C’est l’étape d’apprentissage à proprement parler.
Pourquoi c’est essentiel pour les LLM
- Efficacité : la backpropagation calcule tous les gradients en une seule passe arrière, ce qui est bien plus rapide que de tester chaque paramètre individuellement.
- Scalabilité : elle fonctionne pour des réseaux de plusieurs milliards de paramètres, ce qui est indispensable pour les LLM modernes.
- Apprentissage profond : elle permet d’entraîner des réseaux à plusieurs dizaines ou centaines de couches, en faisant circuler l’information de gradient sans la perdre.
- Précision : elle fournit une estimation exacte (au sens du calcul différentiel) de la contribution de chaque paramètre à l’erreur.
Différence avec l’inférence
Inférence (utilisation du modèle) : seule la passe avant est effectuée. Le modèle produit une réponse, sans calcul de gradient ni mise à jour.
Entraînement : la passe avant et la passe arrière (backpropagation) sont effectuées, suivies de la mise à jour des paramètres.
Limites et défis
Coût computationnel : la backpropagation nécessite de stocker les activations intermédiaires de toutes les couches, ce qui consomme beaucoup de mémoire (surtout pour les LLM).
Disparition ou explosion des gradients : dans les réseaux très profonds, les gradients peuvent devenir trop petits (disparition) ou trop grands (explosion), rendant l’apprentissage instable. Des techniques comme les connexions résiduelles ou la normalisation par lots atténuent ce problème.
Non-différentiabilité : certains composants (comme les opérations de tokenisation discrète) ne sont pas différentiables, ce qui complique la propagation directe du gradient.
Analogie
La backpropagation, c’est comme une chaîne de responsabilité dans une entreprise après qu’un produit défectueux a été livré au client. L’erreur (le défaut) est constatée à la sortie (le client se plaint). On remonte alors la chaîne de production : l’équipe d’assemblage, puis celle des composants, puis celle des matières premières. À chaque étape, on détermine quelle part de responsabilité revient à chaque ouvrier (chaque paramètre) dans le défaut final. Une fois les responsabilités établies, chaque ouvrier ajuste sa méthode de travail (mise à jour des paramètres) pour que le défaut ne se reproduise plus. Sans cette remontée d’information, personne ne saurait qui doit changer quoi.
À retenir
La backpropagation est le moteur de l’apprentissage des LLM. Elle répond à la question fondamentale : « Comment chaque paramètre a-t-il contribué à l’erreur ? ». En calculant les gradients de l’erreur par rapport à chaque paramètre, elle permet à l’algorithme d’optimisation de corriger le modèle de manière précise et efficace. C’est grâce à elle que les LLM peuvent apprendre à partir de milliards d’exemples et s’améliorer itérativement. Sans backpropagation, l’apprentissage profond tel que nous le connaissons n’existerait pas.