À propos de cette expérience
Entraîner un réseau de neurones revient à descendre une surface de perte. La descente de gradient effectue un pas dans la direction opposée au gradient, dont l’amplitude est modulée par le taux d’apprentissage. Cette règle simple cache de nombreux comportements : un pas trop petit fait avancer au ralenti ; un pas trop grand provoque des oscillations ou une divergence. Les vallées étroites entraînent un parcours en zigzag, et l’algorithme peut rester bloqué dans un minimum local. Choisissez une surface, cliquez sur un point de départ et comparez la descente de gradient classique avec le momentum et Adam, étape par étape, sur la carte et sur la courbe de perte.
Objectifs pédagogiques
- Écrivez la mise à jour de la descente de gradient et expliquez le rôle du taux d’apprentissage
- Démontrez la limite de stabilité η < 2/λ_max pour une fonction de perte quadratique et vérifiez-la
- Expliquez pourquoi les vallées mal conditionnées font zigzaguer la descente de gradient et comment le momentum aide
- Décrivez comment Adam redimensionne chaque coordonnée à l’aide des moyennes glissantes du gradient
- Reconnaissez une convergence vers un minimum local plutôt que global
Comment l’utiliser
- 1Choisissez « Bol rond » avec la descente de gradient. Essayez les taux d’apprentissage 0,1, 1 et 2,1. Décrivez les trois trajectoires.
- 2Choisissez « Vallée étroite ». Trouvez le taux d’apprentissage le plus élevé pour lequel l’algorithme converge encore, puis comparez-le à la limite de stabilité indiquée sous le curseur.
- 3Dans la vallée étroite, réglez η sur 0,05. Comptez le nombre d’étapes nécessaires à la descente de gradient pour atteindre une perte de 1e-6, puis passez à Momentum avec β = 0,9 et comptez à nouveau.
- 4Choisissez « Vallée en banane » (la fonction de Rosenbrock). Comparez la descente de gradient, Momentum et Adam après 300 étapes.
- 5Choisissez « Deux minima ». Depuis le point de départ par défaut, la descente de gradient s’arrête dans le bassin peu profond à droite. Cliquez sur des points de départ de part et d’autre de la crête : lesquels atteignent le bassin le plus profond ?
- 6Revenez au point de départ par défaut et passez à Momentum avec β = 0,9 et η = 0,1. Pourquoi la trajectoire franchit-elle maintenant la crête ?
Le modèle
Hypothèses
- Les gradients sont exacts. En entraînement réel, ils sont estimés à partir de mini-lots, ce qui ajoute du bruit (descente de gradient stochastique).
- Les surfaces de perte sont des fonctions fixes à deux variables : un bol arrondi ½(x² + y²), une vallée étroite ½(0.5x² + 5y²), la fonction de Rosenbrock (1 − x)² + 10(y − x²)² et un double puits incliné.
- Chaque exécution s’arrête après 300 étapes avec un taux d’apprentissage fixe. Il n’y a pas de calendrier de taux d’apprentissage.
- Les exécutions sont déterministes : le même point de départ et les mêmes paramètres donnent toujours le même parcours.
À essayer en classe
- Q1Dans la vallée étroite, la limite de stabilité est déterminée par la direction la plus raide, mais le progrès est limité par la direction la moins raide. Expliquez-le à l’aide des facteurs 1 − ηλ.
- Q2Pourquoi le momentum peut-il converger plus vite alors que chaque étape utilise le même gradient ?
- Q3Adam effectue des pas d’une taille approximative η, quelle que soit la raideur de la surface. Dans quels cas est-ce un avantage, et dans quels cas un problème ?
- Q4Les fonctions de perte des réseaux neuronaux ont des millions de dimensions. Selon vous, les minima locaux ou les points selles constituent-ils le principal obstacle ? Pourquoi ?
- Q5Proposez un programme de taux d’apprentissage qui combine des progrès rapides au début et une convergence précise.
Foire aux questions
Pourquoi un taux d’apprentissage trop élevé fait-il augmenter la perte ?
À chaque étape, on dépasse le fond de la vallée et on atterrit plus haut sur la paroi opposée. Pour une fonction quadratique, ce dépassement multiplie la distance par |1 − ηλ| à chaque étape, un facteur supérieur à un lorsque η est supérieur à 2/λ.
Quel est l’effet du momentum dans une vallée étroite ?
Les gradients en zigzag qui traversent la vallée pointent dans des directions opposées et s’annulent dans la vitesse cumulée, tandis que les petits gradients le long de la vallée pointent tous dans la même direction et s’additionnent. La trajectoire se redresse et s’accélère le long du fond de la vallée.
Adam est-il toujours meilleur que la descente de gradient ?
Non. Adam est robuste et nécessite peu de réglages, ce qui explique sa popularité pour l’entraînement des réseaux. Cependant, sur des problèmes simples et bien conditionnés, la descente de gradient simple ou le momentum peuvent converger plus rapidement ou aboutir à de meilleures solutions.
