Descendre la pente
La descente de gradient répète un seul mouvement : avancer contre le gradient, wk+1=wk−η∇f(wk). Le nombre η>0 est le pas, souvent appelé taux d'apprentissage. Un petit η est sûr mais lent. Un grand η dépasse le fond de la vallée et les itérés peuvent s'éloigner à chaque fois.
f(w)=21aw2 ⇒ wk+1=(1−ηa)wk,∣1−ηa∣<1⟺0<η<a2(1) Sur la cuvette la plus simple, la mise à jour multiplie w par 1−ηa à chaque fois ; les itérés tendent vers zéro exactement quand ∣1−ηa∣<1, c'est-à-dire η<2/a. Le choix η=1/a atteint le minimum en un pas, et tout η entre 1/a et 2/a converge encore mais change de signe en chemin. Au-delà de 2/a le facteur dépasse un en valeur absolue et les itérés explosent.
Trois pas sur f = 3x²Ici
f′(x)=6x, donc
a=6. Partons de
x0=4 avec
η=0.1 : le facteur vaut
1−0.6=0.4, d'où
x1=1.6,
x2=0.64,
x3=0.256. La limite de stabilité est
2/6=0.333. Avec
η=0.5 le facteur vaut
1−3=−2 : les itérés valent
4,−4,8,… et doublent de taille à chaque pas.
En plusieurs variables la courbure change selon la direction. La plus grande valeur propre L de la hessienne limite le pas utilisable (η<2/L) et la plus petite μ fixe la lenteur avec laquelle on traverse la direction la plus plate. Leur rapport κ=L/μ est le conditionnement. Avec le meilleur pas fixe η=2/(L+μ) l'erreur est multipliée par environ (κ−1)/(κ+1) à chaque pas ; un grand κ donne donc un facteur proche de un et un lent zigzag dans une longue vallée étroite. Pour la matrice de covariance de douze grandes actions américaines depuis 2010, κ vaut environ 33 : le facteur est 0.941 et réduire l'erreur 100 fois demande environ 76 pas.
η∗=L+μ2,∥wk−w∗∥ ≲ (κ+1κ−1)k∥w0−w∗∥,κ=μL(2) - Pas sûr : η<2/L, où L est la plus grande valeur propre de la hessienne ; sinon les itérés divergent.
- Vitesse : fixée par le conditionnement κ=L/μ ; plus il est grand, plus la descente est lente.
- Arrêt : arrêter quand ∥∇f∥ passe sous une tolérance, avec un plafond d'itérations.
Mettez les variables à l'échelleUn grand conditionnement vient souvent de variables d'échelles très différentes, par exemple un poids entre 0 et 1 à côté d'une volatilité en points de base. Remettre chaque variable à une taille voisine réduit κ et peut transformer des milliers d'itérations en quelques dizaines. Le préconditionnement est la forme générale de la même idée. Lab : ce qui est noté
- Le premier pas15 pts
- Le deuxième pas10 pts
- Le plus grand pas stable15 pts
- Un pas trop grand15 pts
- Un conditionnement15 pts
- Le meilleur facteur de contraction15 pts
- Pourquoi le mauvais conditionnement est lent15 pts