Laboratoire interactif

Descente de gradient

Choisissez une fonction, un point de départ et un taux d’apprentissage, puis regardez le point descendre la pente : convergence, oscillations, divergence, minimums locaux.

Niveau
Débutant
Notions
Optimisation · Learning rate · Dérivée
−3 −2 −1 0 1 2 3 0 2 4 6 8 −η·f′(x) x₀
Figure 1 — Le point suit la pente vers le bas. Tangente en orange, prochain déplacement −η·f′(x) en bleu. Itération 0. Glissez le point de départ sur la courbe, ou utilisez le curseur x₀.
0 2 4 6 0 5 10 15 20 25 30 35 40 itération k
Figure 2 — Perte f(xₖ) à chaque itération.
Scénarios
Paramètres
2,5
0,1
40
8

Diagnostic

Convergence stable. La pente passe sous 10⁻³ à l’itération 39.

Calcul de l’itération k = 0

x0 = 2,5   f(x0) = 6,25   f′(x0) = 5
x1 = x0 − η·f′(x0) = 2,5 − 0,1 × (5) = 2
f(x)=x2f′(x)=2xf(x) = x^2 \qquad f'(x) = 2x
Toutes les itérations
Valeurs calculées à chaque itération
kxkf(xk)f′(xk)
02,56,255
1244
21,62,563,2
31,281,63842,56
41,0241,0485762,048
50,81920,6710891,6384
60,655360,4294971,31072
70,5242880,2748781,048576
80,419430,1759220,838861
90,3355440,112590,671089
100,2684350,0720580,536871
110,2147480,0461170,429497
120,1717990,0295150,343597
130,1374390,0188890,274878
140,1099510,0120890,219902
150,0879610,0077370,175922
160,0703690,0049520,140737
170,0562950,0031690,11259
180,0450360,0020280,090072
190,0360290,0012980,072058
200,0288230,0008310,057646
210,0230580,0005320,046117
220,0184470,000340,036893
230,0147570,0002180,029515
240,0118060,0001390,023612
250,0094458,92·10^−50,018889
260,0075565,71·10^−50,015112
270,0060453,65·10^−50,012089
280,0048362,34·10^−50,009671
290,0038691,5·10^−50,007737
300,0030959,58·10^−60,00619
310,0024766,13·10^−60,004952
320,0019813,92·10^−60,003961
330,0015852,51·10^−60,003169
340,0012681,61·10^−60,002535
350,0010141,03·10^−60,002028
360,0008116,58·10^−70,001623
370,0006494,21·10^−70,001298
380,0005192,7·10^−70,001038
390,0004151,73·10^−70,000831
400,0003321,1·10^−70,000665

Comprendre la descente de gradient

La descente de gradient cherche un minimum d'une fonction ff en répétant un geste très simple : mesurer la pente, puis faire un pas dans la direction qui descend.

xk+1=xk−η f′(xk)x_{k+1} = x_k - \eta \, f'(x_k)
  • f′(xk)f'(x_k) est la dérivée au point courant : son signe indique de quel côté la fonction monte, sa valeur absolue la raideur de la pente ;
  • η\eta (eta) est le taux d'apprentissage : il règle la longueur du pas ;
  • le signe moins fait avancer à l'opposé de la pente, donc vers le bas.

Dans un réseau de neurones, xx devient le vecteur de tous les poids et ff la fonction de perte, mais la règle reste la même, appliquée à chaque coordonnée.

Pourquoi le taux d'apprentissage décide de tout

Prenons f(x)=x2f(x) = x^2, dont la dérivée vaut 2x2x. La mise à jour devient :

xk+1=xk−η⋅2xk=(1−2η) xkx_{k+1} = x_k - \eta \cdot 2x_k = (1 - 2\eta)\,x_k

À chaque itération, xx est multiplié par le même facteur r=1−2ηr = 1 - 2\eta. Tout le comportement se lit dans ce facteur :

Taux η\eta Facteur rr Comportement
0<η<0,50 < \eta < 0{,}5 0<r<10 < r < 1 convergence régulière, du même côté
η=0,5\eta = 0{,}5 r=0r = 0 minimum atteint en un seul pas
0,5<η<10{,}5 < \eta < 1 −1<r<0-1 < r < 0 oscillations amorties autour du minimum
η=1\eta = 1 r=−1r = -1 oscillation perpétuelle, sans progrès
η>1\eta > 1 r<−1r < -1 divergence : chaque pas éloigne du minimum

Plus généralement, pour une fonction de courbure LL (ici L=2L = 2), la descente est stable tant que η<2/L\eta < 2/L. C'est pourquoi un même taux peut convenir à une fonction et faire diverger une autre.

Ce que la démonstration permet d'observer

  1. Convergence stable : un taux modéré rapproche le point du minimum à chaque pas.
  2. Convergence lente : un taux trop petit avance par pas minuscules ; le nombre d'itérations ne suffit pas.
  3. Oscillations : le point saute d'un côté à l'autre du minimum, en se rapprochant.
  4. Divergence : au-delà du seuil de stabilité, la perte augmente à chaque itération.
  5. Influence du point de départ : sur une fonction non convexe (double puits), deux départs différents mènent à deux minimums différents. La descente de gradient ne trouve qu'un minimum local.
  6. Plateau : là où la pente est presque nulle, les pas le sont aussi, quel que soit η\eta.

Limites et prolongements

La descente « pure » est sensible à la courbure : dans une vallée étroite, elle zigzague. Les variantes avec moment et Adam corrigent ce défaut en gardant la mémoire des pentes passées ; elles sont comparées dans la démonstration des optimiseurs.

Autres démonstrations

  • Optimiseurs : gradient, moment, Adam

    Intelligence artificielle, Intermédiaire

    Trois optimiseurs partent du même point sur une surface à deux variables. Comparez leurs trajectoires sur les lignes de niveau : zigzag, élan, pas adaptatif.

  • K-Means pas à pas

    Intelligence artificielle, Débutant

    Affectation, mise à jour, affectation… Suivez les centres jusqu’à la convergence, et découvrez les cas où K-Means se trompe : mauvais départ, groupes étirés, anneaux.

  • Régression linéaire

    Intelligence artificielle, Débutant

    Déplacez les points et regardez la droite des moindres carrés suivre. Puis apprenez la même droite par descente de gradient et comparez.