Remarque: tout au long de cette réponse, je fais référence à la minimisation de la perte d'entraînement et je ne discute pas des critères d'arrêt tels que la perte de validation. Le choix des critères d'arrêt n'affecte pas le processus / les concepts décrits ci-dessous.
Le processus d'apprentissage d'un réseau neuronal consiste à trouver la valeur minimale d'une fonction de perte , où représente une matrice (ou plusieurs matrices) de poids entre les neurones et représente l'ensemble de données d'apprentissage. J'utilise un indice pour pour indiquer que notre minimisation de se produit uniquement sur les poids (c'est-à-dire que nous recherchons tel que soit minimisé) tandis que est fixe.LX( W)WXXLWWLX
Maintenant, si nous supposons que nous avons éléments dans (c'est-à-dire qu'il y a poids dans le réseau), est une surface dans un espace dimensionnel . Pour donner un analogue visuel, imaginez que nous n'avons que deux poids de neurones ( ). Alors a une interprétation géométrique facile: c'est une surface dans un espace tridimensionnel. Cela vient du fait que pour toute matrice de poids donnée , la fonction de perte peut être évaluée sur et cette valeur devient l'élévation de la surface.PWPLP+1P=2LWX
Mais il y a le problème de la non-convexité; la surface que j'ai décrite aura de nombreux minima locaux, et donc les algorithmes de descente de gradient sont susceptibles de se "coincer" dans ces minima tandis qu'une solution plus profonde / inférieure / meilleure peut se trouver à proximité. Cela peut se produire si est inchangé sur toutes les itérations d'apprentissage, car la surface est fixe pour un donné ; toutes ses fonctionnalités sont statiques, y compris ses différents minima.XX
Une solution à cela est une formation en mini-lot combinée à un mélange. En mélangeant les lignes et en ne les entraînant que sur un sous-ensemble d'entre elles au cours d'une itération donnée, change à chaque itération, et il est en fait tout à fait possible qu'aucune deux itérations sur la séquence entière d'itérations et d'époques de formation ne soient effectuées sur le même . L'effet est que le solveur peut facilement "rebondir" sur un minimum local. Imaginez que le solveur soit bloqué dans un minimum local à l'itération avec la formation du mini-lot . Ce minimum local correspond à évalué à une valeur particulière de poids; nous l'appelleronsX i X i ℒ ℒ X i ( W i ) X i + 1 ℒ X i + 1 ( W i ) ℒ X i ( W i ) ℒ X i + 1 ℒ X i ℒ X W WXXiXiLLXi(Wi). À l'itération suivante, la forme de notre surface de perte change en fait parce que nous utilisons , c'est-à-dire que peut prendre une valeur très différente de et il est fort possible que cela ne corresponde pas à un minimum local! Nous pouvons maintenant calculer une mise à jour de gradient et continuer la formation. Pour être clair: la forme de sera - en général - différente de celle de . Notez que je me réfère ici à la fonction de perte évaluée sur un ensemble d'apprentissage ; c'est une surface complète définie sur toutes les valeurs possibles deXi+1LXi+1(Wi)LXi(Wi)LXi+1LXiLXWPlutôt que l'évaluation de cette perte (qui est juste un scalaire) pour une valeur spécifique de . Notez également que si des mini-lots sont utilisés sans mélange, il existe toujours un certain degré de "diversification" des surfaces de perte, mais il y aura un nombre fini (et relativement petit) de surfaces d'erreur uniques vues par le solveur (en particulier, il verra le même ensemble exact de mini-lots - et donc de surfaces de perte - à chaque époque).W
Une chose que j'ai délibérément évitée a été une discussion sur les tailles des mini-lots, car il y a un million d'avis à ce sujet et cela a des implications pratiques importantes (une plus grande parallélisation peut être obtenue avec des lots plus importants). Cependant, je pense que ce qui suit mérite d'être mentionné. Étant donné que est évalué en calculant une valeur pour chaque ligne de (et en additionnant ou en prenant la moyenne, c'est-à-dire un opérateur commutatif) pour un ensemble donné de matrices de poids , la disposition des lignes de n'a aucun effet lors de l'utilisation de descente de gradient de lot (c'est-à-dire lorsque chaque lot est le complet et que les itérations et les époques sont la même chose). X W X XLXWX X