Estimer le gradient avec quelques échantillons
La plupart des problèmes d'ajustement minimisent une moyenne sur des données, f(w)=n1∑i=1nℓi(w), par exemple des erreurs quadratiques sur n observations. Le gradient exact demande les n termes à chaque pas, ce qui est trop lent quand n vaut des millions de ticks. La descente de gradient stochastique tire un mini-lot aléatoire B de b observations et utilise à la place leur gradient moyen gB. Cette estimation est sans biais : en moyenne elle égale le vrai gradient.
gB=b1i∈B∑∇ℓi(w),w←w−ηgB,E[gB]=∇f,Var(gB)=bσ2(1) Le prix du raccourci est le bruit. La variance du gradient du lot décroît comme 1/b : diviser son écart type par deux demande un lot quatre fois plus grand, un rendement fortement décroissant. Une époque est un passage complet sur les données et contient n/b mises à jour. Avec un pas constant les itérés ne se fixent jamais : ils continuent de trembler dans une petite boule autour du minimum, car même au minimum le gradient du lot n'est pas nul. Le remède est un pas qui diminue. Les conditions classiques de Robbins-Monro demandent ∑tηt=∞, pour pouvoir aller aussi loin que nécessaire, et ∑tηt2<∞, pour que le bruit s'éteigne. Le calendrier ηt=η0/t vérifie les deux.
Quatre points de donnéesAjustons un niveau
w aux données
x=2,4,6,12 avec la perte
ℓi=21(w−xi)2, de gradient
w−xi. En
w=0 les quatre gradients unitaires valent
−2,−4,−6,−12 et leur moyenne, le gradient complet, vaut
−6. Les gradients unitaires ont autour de cette moyenne une variance de
416+4+0+36=14. Un lot de
b=7 tiré avec remise a donc une variance de gradient de
14/7=2.
- Sans biais : le gradient d'un lot aléatoire égale en moyenne le gradient complet.
- Bruité : variance σ2/b ; un lot quatre fois plus grand divise l'écart type par deux.
- Pas décroissants : ∑ηt=∞ et ∑ηt2<∞, par exemple ηt=η0/t, assurent la convergence.
Des données ordonnées dans le temps ne sont pas un échantillon aléatoireL'absence de biais ci-dessus suppose un tirage aléatoire du lot. Un lot de jours consécutifs vient d'un seul régime de marché ; son gradient est biaisé vers ce régime, et un entraînement dans l'ordre du temps peut dériver avec le régime. Mélangez les indices des échantillons au début de chaque époque. Quand l'ordre compte, comme dans un modèle de séries temporelles, gardez la séquence à l'intérieur de chaque exemple et mélangez les exemples.
Lab : ce qui est noté
- Le gradient complet15 pts
- Le bruit d'un échantillon15 pts
- Le bruit d'un lot15 pts
- Mises à jour par époque15 pts
- Un calendrier de pas qui converge15 pts
- La boucle de mini-lots10 pts
- Pourquoi un pas constant ne se fixe pas15 pts