Leçon
La théorie — La descente de gradient et le taux d'apprentissage
La descente de gradient tient en une ligne répétée : placez-vous en un point, mesurez la pente, puis descendez proportionnellement à celle-ci. x ← x − η f′(x). La taille du pas η ne fait pas partie du problème. La courbe de perte est donnée et le gradient se calcule. Vous ne choisissez qu'un seul nombre : η. Sur une fonction quadratique de courbure a, l'arithmétique se résout exactement. C'est pourquoi cette page en utilise une : toute affirmation ultérieure concernant les taux d'apprentissage porte en réalité sur 1 − ηa.
Ce que signifie chaque symbole
η- le taux d'apprentissage, la seule chose que vous choisissez
a- la courbure de la perte, dictée par le problème
- Suppose
- Une seule variable, un pas fixe et un gradient parfaitement connu. L'entraînement réel fait voler ces trois hypothèses en éclats simultanément : des millions de paramètres, un pas planifié et un gradient estimé sur un mini-lot. La seule chose qui survit intacte est la limite à 2/a. Elle provient de la courbure dans une unique direction, et une surface de perte réelle en possède une par vecteur propre.
Problème entièrement résolu
-
Votre taux d'apprentissage de 0,4 fonctionne. Trouvez la courbure exacte à laquelle il cesse de fonctionner, et décrivez à quoi ressemble l'échec de part et d'autre de ce point. Démarrez avec l'outil à η = 0,4, a = 1, x₀ = 8. La ligne Multiplicateur de pas indique 0,6000 et le chemin descend tranquillement le long d'une paroi.
Ouvrez ce problème dans l'outil
-
Sur cette page, chaque question se résume à |r| < 1, où r = 1 − aη. Le taux est fixé à 0,4 et vous pouvez modifier la courbure. Écrivez donc la condition en fonction de a plutôt que de η.
-
|1 − 0,4a| < 1 se déploie en −1 < 1 − 0,4a < 1, puis en 0 < 0,4a < 2, d'où a < 5. Le taux survit à toute courbure inférieure à 5, mais à aucune au-delà. C'est l'habituel η < 2/a lu dans l'autre sens, sous la forme a < 2/η. L'inégalité reste la même, et cette seconde disposition est celle qui répond à la question.
-
Réglez a = 5 exactement et lisez le tableau. r = −1,0000, et Position après 20 pas affiche 8,000, le nombre de départ. La fraction de la perte initiale est de 1,000. C'est la frontière elle-même : chaque pas atterrit aussi loin du minimum que le précédent, sur le versant opposé. Le chemin rebondit donc entre 8 et −8 tant que vous le laissez tourner.
-
Passez maintenant à a = 5,1. r = −1,0400, et après vingt pas, x vaut 17,529 au lieu de 8. C'est une vraie divergence, et il est utile de voir à quel point elle paraît bénigne : vingt pas ont à peu près doublé la distance. Une exécution située juste de ce côté de la frontière peut passer pour simplement bruitée pendant un long moment, avant que les nombres ne deviennent manifestement absurdes.
-
Dans l'autre sens, a = 4,9 converge toujours. r = −0,9600, |r| est inférieur à 1, et le tableau indique Dépasse et converge. Toutefois, Pas pour |x| sous 10⁻⁶ affiche désormais 390, contre 32 à a = 4. Être presque stable ne sert quasiment à rien.
Réponse
a = 5, ce qui correspond à 2/η. En deçà, le taux converge. À cette valeur précise, la perte ne change jamais. Au-delà, la perte croît sans limite. L'approche est la phase coûteuse. Près de la frontière, |r| vaut 1 − a·g (en notant g l'écart 2/a − η). On a donc log|r| ≈ −a·g et le nombre de pas correspond grosso modo à log(|x₀|/tolérance) divisé par a·g. Ce nombre évolue comme l'inverse de la distance à la limite : divisez l'écart par deux et vous doublez le travail. À a = 5 en partant de x₀ = 8, des écarts de 0,05, 0,025 et 0,0125 nécessitent 56, 120 et 247 pas. En multipliant chaque décompte par son propre écart, on obtient 2,8, 3,0 et 3,1, se rapprochant de log(8 × 10⁶)/5 = 3,18. Voilà pourquoi un taux d'apprentissage optimisé ne se situe jamais à la limite de la stabilité. La dernière infime portion sûre avant la frontière est aussi l'une des zones les plus lentes de tout l'axe, tandis que le taux le plus rapide de tous se trouve au milieu, à 1/a.
-
Parcours
Ajustement d'une droite aux données
Références (3)
- Where the method comes from. Two pages, and the idea is already complete: follow the gradient downhill in steps. A.-L. Cauchy, “Méthode générale pour la résolution des systèmes d’équations simultanées.” Comptes Rendus de l’Académie des Sciences 25, 536–538, 1847.
- The tool's central claim, in the form it takes for a real network: with a as the largest eigenvalue of the Hessian, the fastest single learning rate is 1/a and anything past 2/a diverges. This is the source for insight block 3. Y. LeCun, L. Bottou, G. B. Orr and K.-R. Müller, “Efficient BackProp.” In Neural Networks: Tricks of the Trade, Lecture Notes in Computer Science, 9–50. Springer, 1998.
- The convergence analysis behind the step count: why the work needed grows with the ratio of the largest curvature to the smallest, which is the condition number named in insight block 3. S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge University Press, 2004.