La standardisation des entrées
Pourquoi remettre les entrées à la même échelle accélère l'entraînement.
La page 4 a montré que la vitesse est gouvernée par le conditionnement. Sur quoi porte cette courbure ? Prouvons-le sur la régression linéaire, où tout est calculable.
Hypothèses
Modèle linéaire, perte quadratique :
Point de départ
Étapes
Une première dérivation donne le gradient. Dimensions : .
dérivation d'une forme quadratique
Une seconde dérivation donne la hessienne. Dimensions : .
dérivation du gradient, qui est affine en thêta
Résultat
Interprétation
La courbure du problème d'optimisation est la matrice des moments d'ordre deux des données. Elle ne dépend pas de : le problème est exactement quadratique, et tout le raisonnement de la page 4 s'y applique sans réserve. Si les variables ont des échelles très différentes, cette matrice est mal conditionnée, et l'optimisation l'est aussi. Centrer et réduire chaque variable ramène la diagonale à des uns, ce qui n'annule pas le conditionnement, puisque les corrélations restent, mais en supprime la part due aux unités.
Ce que ce résultat ne dit pas
Pour le réseau, la hessienne n'est pas cette matrice et dépend de . Ce résultat est prouvé pour le modèle linéaire seulement. Pour le réseau, nous mesurons.
python cours/lecon3/experiences2.py E7
Pixels dont l'ecart-type est nul sur tout le jeu : 67 sur 784 (jamais allumes).
jeu moyenne ecart-type min max
brut [0,1] 0.1307 0.3081 0.00 1.00
standardise 0.0000 0.9563 -1.27 244.95
Valeurs propres de la covariance (5000 exemples, 717 pixels vivants) :
jeu lambda max lambda min > 0 rapport
brut 5.1954 3.01e-08 1.73e+08
standardise 40.6922 6.70e-04 6.08e+04
Vitesse d'apprentissage, meme eta, meme graine, 300 mises a jour :
jeu perte apres 100 apres 300 precision test
brut [0,1] 0.5451 0.3696 0.8944
standardise 0.3452 0.2916 0.9163Lecture
67 pixels sur 784 ne s'allument jamais : ce sont des bords. On ne peut pas les diviser par leur écart-type, qui est nul ; on les laisse tels quels.
Le conditionnement passe de à : une amélioration d'un facteur 2845.
La vitesse suit : à 100 mises à jour, contre . La version standardisée atteint en 100 pas ce que la version brute n'a pas atteint en 300 ().