Cet article clarifie la normalisation des groupes de manière fondamentale. J’ai composé cet article en tenant compte de ce que m’ont apporté Fast.ai et deeplearning.ai. Je commencerai par expliquer pourquoi nous en avons besoin, comment cela fonctionne, puis comment l’intégrer dans des systèmes préparés à l’avance, par exemple, le VGG.

Pour quelle raison utilisons-nous la normalisation de groupe ?

Nous normalisons la couche d’information en modifiant et en échelonnant les textes législatifs. Par exemple, lorsque nous avons des surlignages de 0 à 1 et certains de 1 à 1000, nous devons les normaliser pour accélérer l’apprentissage. Dans le cas où la couche d’information en profite, pourquoi ne pas faire quelque chose de très similaire pour les qualités des couches cachées, qui changent constamment, et obtenir une amélioration multiple ou plus importante de la vitesse de préparation.

La standardisation des groupes diminue la somme de ce que les estimations des unités cachées se déplacent (mouvement de covariance). Pour clarifier le mouvement de covariance, que diriez-vous d’un système approfondi sur la reconnaissance des félins ? Nous formons nos informations sur des photos de félins sombres. Dans cette optique, si nous essayons actuellement d’appliquer ce système aux informations concernant les félins hués, cela va de soi ; nous n’allons pas progresser de manière admirable. Le jeu de préparation et le jeu de prévision sont les images des deux félins, mais elles varient un peu. En fin de compte, si un calcul a adapté une certaine cartographie de X à Y, et au cas où la circulation de X changerait, nous devrons peut-être à ce moment-là recycler le calcul d’apprentissage en essayant d’ajuster la diffusion de X au transport de Y. ( Deeplearning.ai : Pour quelle raison Bunch Norm fonctionne-t-il ? (C2W3L06))

De plus, la standardisation des agrégats permet à chaque couche d’un système d’apprendre sans l’intervention de personne d’autre un peu plus librement des différentes couches.

Nous pouvons utiliser des taux d’apprentissage plus élevés puisque la standardisation des clusters garantit qu’il n’y a pas d’actionnement qui soit vraiment élevé ou vraiment bas. De plus, grâce à cela, les choses qui n’ont pas encore eu l’occasion de se préparer, commenceront à se préparer.

Il réduit le surarmement, compte tenu du fait qu’il a un léger effet de régularisation. Comme le décrochage, il ajoute un peu de clameur aux initiations de chaque couche enveloppée. De cette façon, si par hasard nous utilisons la normalisation des agrégats, nous utiliserons moins d’abandons, ce qui est une bonne chose car nous ne perdrons pas beaucoup de données. Quoi qu’il en soit, nous ne devrions pas dépendre uniquement de la normalisation des groupes pour la régularisation ; nous devrions mieux l’utiliser en même temps que l’abandon.

Comment fonctionne la normalisation de groupe ?

Pour augmenter la stabilité d’un réseau neuronal, la normalisation par lot normalise la sortie d’une couche d’activation précédente en soustrayant la moyenne du lot et en la divisant par l’écart-type du lot.

Quoi qu’il en soit, après que ce déplacement/dimensionnement de la promulgation ait cédé sous l’effet de certains paramètres arbitrairement instaurés, les charges de la couche suivante ne sont plus jamais idéales. Le SGD ( Stochastic angle drop ) fixe cette standardisation si c’est un chemin pour limiter le travail de malheur.

Par conséquent, la normalisation par lots ajoute deux paramètres entraînables à chaque couche, de sorte que la sortie normalisée est multipliée par un paramètre “d’écart type” (gamma) et ajoute un paramètre “moyen” (bêta). En fin de compte, la normalisation par lots permet à SGD d’effectuer la dénormalisation en changeant uniquement ces deux charges pour chaque initiation, plutôt que de perdre la force du système en changeant chacune des charges.

Normalisation de groupe et systèmes préparés comme le VGG :

Le VGG n’a pas de couche de normalisation des groupes car la normalisation des groupes n’existait pas avant le VGG. Au cas où nous l’entraînerions avec lui dès le début, le poids préparé à l’avance bénéficiera de la standardisation des actions. Donc, l’inclusion d’une couche standard de groupe améliore vraiment ImageNet, ce qui est cool. Vous pouvez l’ajouter à des couches épaisses, et en plus à des couches convolutionnelles.

Si nous intégrons une norme de groupe dans un système préparé à l’avance, cela modifiera les charges préparées à l’avance, car la moyenne et l’écart seront soustraits de l’écart-type pour les couches du dispositif et nous n’avons pas besoin que cela se produise, étant donné que nous avons besoin que ces charges préparées à l’avance restent équivalentes. Dans cette optique, nous devons intégrer une couche standard de groupe et donner un sens au gamma et au bêta afin de fixer la variation des rendements.

Pour tout condenser, on peut considérer que la normalisation par lots consiste à effectuer un prétraitement à chaque couche du système.