Explication de la normalisation des lots – Vers la science des données
une. Pourquoi normaliser par rapport à un mini-batch?
Idéalement, la normalisation devrait concerner l’ensemble des données d’entraînement, car cela garantit qu’il n’y aura aucun changement dans la distribution des entrées entre les différents lots. Cependant, étant donné que tout ensemble de données ne faisant pas partie du lot en cours est hors de la portée de la rétropropagation, la descente du gradient stochastique ne fonctionnerait pas, car les statistiques utilisées dans la normalisation proviennent de l’extérieur de la portée.
Par conséquent, la normalisation est effectuée par rapport à un mini-lot pour garantir que la rétropropagation standard peut être effectuée. La seule implication est que chaque lot doit être quelque peu représentatif des distributions de l’ensemble de formation, ce qui est une hypothèse sûre si la taille de votre lot n’est pas trop petite.
b. Phase de test
Pendant l’entraînement, la moyenne et l’écart-type sont calculés à l’aide d’échantillons dans le mini-lot. Cependant, lors des tests, il n’est pas logique de calculer de nouvelles valeurs. Par conséquent, la normalisation par lots utilise une moyenne et une variance de fonctionnement calculées pendant l’entraînement. Il est nécessaire d’introduire un nouveau paramètre, une dynamique ou une décroissance.
running_mean = momentum * running_mean + (1-momentum) * new_mean
running_var = momentum* running_var + (1-momentum) * new_var
L’élan est l’importance accordée au dernier mini-lot vu, aussi appelé «décalage». Si la quantité de mouvement est définie sur 0, la moyenne courante et la variance proviennent du dernier mini-lot vu. Cependant, cela peut être biaisé et non souhaitable pour les tests. À l’inverse, si l’élan est défini sur 1, il utilise la moyenne et la variance cumulées du premier mini-lot. Essentiellement, l’élan contrôle la contribution de chaque nouveau mini-lot aux moyennes courantes.
Idéalement, la quantité de mouvement devrait être proche de 1 (> 0,9) pour garantir un apprentissage lent de la moyenne et de la variance de fonctionnement de sorte que le bruit dans un mini-lot soit ignoré.