Maison >Périphériques technologiques >IA >Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

王林
王林avant
2023-04-11 17:19:061519parcourir

L'optimiseur est un algorithme d'optimisation et joue un rôle clé dans la formation des réseaux neuronaux. Ces dernières années, les chercheurs ont introduit un grand nombre d’optimiseurs manuels, dont la plupart sont des optimiseurs adaptatifs. Les optimiseurs Adam et Adafactor occupent toujours la majorité des réseaux de neurones de formation, notamment dans les domaines du langage, de la vision et de la multimodalité.

En plus d'introduire manuellement les optimiseurs, une autre direction consiste pour le programme à découvrir automatiquement les algorithmes d'optimisation. Quelqu'un a déjà proposé L2O (apprendre à optimiser), qui découvre les optimiseurs en entraînant les réseaux de neurones. Cependant, ces optimiseurs boîte noire sont généralement formés sur un nombre limité de petites tâches et ont du mal à se généraliser aux grands modèles.

D'autres ont essayé d'autres approches, appliquant l'apprentissage par renforcement ou l'échantillonnage de Monte Carlo pour découvrir de nouveaux optimiseurs. Cependant, afin de simplifier la recherche, ces méthodes restreignent généralement l'espace de recherche et limitent ainsi la possibilité de découvrir d'autres optimiseurs. Les méthodes actuelles n’ont donc pas encore atteint le niveau SOTA.

Ces dernières années, il convient de mentionner AutoML-Zero, qui tente de rechercher chaque composant du pipeline d'apprentissage automatique lors de l'évaluation des tâches, ce qui est très utile pour la découverte des optimiseurs. ​

Dans cet article, Des chercheurs de Google et de l'UCLA ont proposé une méthode pour découvrir des algorithmes d'optimisation pour l'entraînement profond des réseaux neuronaux via la recherche de programmes, puis ont découvert Lion (EvoL ved S ign Momentum) optimiseur. Atteindre cet objectif se heurte à deux défis : premièrement, trouver des algorithmes de haute qualité dans un espace de programme infiniment clairsemé, et deuxièmement, sélectionner des algorithmes capables de généraliser des petites tâches à des tâches SOTA plus grandes. Pour relever ces défis, la recherche utilise une gamme de techniques, notamment la recherche évolutive avec démarrages et redémarrages à chaud, l'exécution abstraite, la sélection d'entonnoir et la simplification du programme.

  • Adresse papier : https://arxiv.org/pdf/2302.06675.pdf
  • Adresse du projet : https://github.com/google/automl/tree/master/lion

Par rapport à AdamW et à divers optimiseurs adaptatifs (qui doivent enregistrer à la fois le premier et le deuxième instant), Lion n'a besoin que d'un élan et utilise des opérations symboliques pour calculer les mises à jour, et en plus l'utilisation de la mémoire est réduite de moitié. Ceci est utile lors de la formation de grands modèles ou de gros lots. Par exemple, AdamW nécessite au moins 16 TPU V4 pour entraîner ViT-B/16 avec une taille d'image de 224 et une taille de lot de 4 096, tandis que Lion n'en nécessite que 8. Un autre avantage pratique est qu'en raison de sa simplicité, Lion a des durées d'exécution plus rapides (pas/s) dans les expériences, généralement 2 à 15 % plus rapides qu'AdamW et Adafactor, en fonction de la tâche, de la base de code et du matériel.

Xiangning Chen, le premier auteur de l'article, a déclaré : Notre recherche de programme symbolique a trouvé un optimiseur efficace qui ne suit que l'élan - Lion. Par rapport à Adam, il a atteint une précision ImageNet de 88,3 % avec un échantillon nul et une précision de 91,1 %, ainsi qu'une efficacité de formation jusqu'à 5x (par rapport à ViT), 2,3x (par rapport au modèle de diffusion) et 2x (par rapport à LM).

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Lion a démontré des performances exceptionnelles dans une gamme de modèles (Transformer, MLP, ResNet, U-Net et Hybrid) et de tâches (classification d'images, apprentissage contrastif visuo-linguistique, diffusion, modélisation et réglage du langage ) performance. Il convient de noter qu'en remplaçant Adafactor par Lion dans BASIC, cette étude a atteint une précision de tir nul de 88,3 % et de réglage fin de 91,1 % sur ImageNet (Pham et al., 2021), dépassant les résultats SOTA précédents de 2 % et 0,1 respectivement. .

De plus, Lion réduit le calcul de pré-entraînement sur JFT jusqu'à 5 fois, améliore l'efficacité de la formation des modèles de diffusion de 2,3 fois, obtient de meilleurs scores FID et apporte des améliorations dans la modélisation du langage Des performances similaires ou meilleures, des économies jusqu'à 2 fois l'effort de calcul.

L'utilisateur de Twitter crumb a déclaré : Il a utilisé l'optimiseur Lion de Google pour entraîner un modèle GPT2 de 124 millions de paramètres et a constaté que le nombre d'étapes nécessaires pour obtenir la même perte qu'Adam était réduit de 37,5 %.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Source de l'image : https://twitter.com/aicrumb/status/1626053855329898496

Découverte de symboles d'algorithmes

Cet article utilise des symboles sous forme de programmes Indique les avantages suivants : (1) Cela est cohérent avec le fait que les algorithmes doivent être exécutés comme des programmes (2) Par rapport aux modèles paramétriques tels que les réseaux de neurones, les représentations symboliques telles que les programmes sont plus faciles à analyser, à comprendre et à transférer vers de nouvelles tâches ; (3) La longueur du programme peut être utilisée. L'estimation de la complexité des différents programmes facilite le choix de programmes plus simples, souvent plus polyvalents. Ce travail se concentre sur les optimiseurs pour la formation approfondie des réseaux neuronaux, mais l'approche est généralement applicable à d'autres tâches .

Dans la figure ci-dessous, l'extrait de code simplifié du programme 2 utilise la même signature qu'AdamW pour garantir que l'algorithme découvert a une empreinte mémoire plus petite ou égale. Un exemple de représentation d'AdamW est donné dans le programme 3.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Cette recherche adopte les techniques suivantes pour résoudre les défis posés par les espaces de recherche infinis et clairsemés. La première consiste à appliquer la régularisation car elle est simple, évolutive et efficace dans de nombreuses tâches de recherche AutoML ; la seconde consiste à simplifier la redondance dans l'espace du programme et enfin, pour réduire le coût de recherche, cette étude réduit la taille du modèle et la taille du modèle ; nombre d'exemples de formation et d'étapes par rapport à la tâche cible pour réduire les coûts.

À gauche : les moyennes et les erreurs types de cinq expériences de recherche évolutive sont affichées. À droite : le pourcentage d’instructions redondantes et le taux de réussite du cache augmentent à mesure que la recherche progresse.

Dérivation et analyse de Lion

Les chercheurs ont déclaré que l'optimiseur Lion était simple, efficace en mémoire et performant en matière de recherche et de méta-validation.

Dérivation

Le processus de recherche et de sélection de l'entonnoir a abouti au programme 4, qui a été obtenu en supprimant automatiquement les déclarations redondantes du programme 8 d'origine (annexe). Le chercheur a encore simplifié et obtenu l’algorithme final (Lion) dans le programme 1. Plusieurs éléments inutiles ont été supprimés du programme 4 au cours du processus de simplification. où la fonction cosh est supprimée puisque m sera réaffecté dans la prochaine itération (ligne 3). Les déclarations utilisant arcsin et clip ont également été supprimées car les chercheurs n'ont observé aucune perte de qualité sans elles. Les trois déclarations rouges sont converties en fonction symbolique.

Bien que m et v soient utilisés ensemble dans le programme 4, v modifie uniquement la façon dont l'élan est mis à jour (deux fonctions d'interpolation avec des constantes ∼0,9 et ∼1,1 sont équivalentes à une fonction avec ∼0,99) et n'a pas besoin d'être utilisée suivre séparément. Notez que la correction du biais n’est plus nécessaire car elle ne change pas de direction.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

L'algorithme 2 ci-dessous montre le pseudo-code.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Analyse

Mise à jour et régularisation des symboles. L'algorithme Lion produit des mises à jour d'ampleur uniforme dans toutes les dimensions grâce à des opérations symboliques, ce qui est en principe différent des divers optimiseurs adaptatifs. Intuitivement, les opérations symboliques ajoutent du bruit aux mises à jour, agissant comme une forme de régularisation et facilitant la généralisation. La figure 11 ci-dessous (à droite) montre un élément de preuve.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Suivi de l'élan. Le facteur EMA par défaut pour suivre l'élan dans Lion est de 0,99 (β_2) par rapport au 0,9 couramment utilisé dans AdamW et momentum SGD. Ce choix de facteurs EMA et d'interpolation permet à Lion de trouver un équilibre entre se souvenir de 10 fois l'historique du gradient de dynamique et accorder plus de poids au gradient actuel dans les mises à jour.

Sélection des hyperparamètres et de la taille du lot. Comparé à AdamW et Adafactor, Lion est plus simple et possède moins d'hyperparamètres car il ne nécessite pas de paramètres liés à la factorisation. Lion nécessite un taux d'apprentissage plus faible, et donc une perte de poids découplée plus importante, pour obtenir une force de perte de poids efficace similaire (lr * λ).

Avantages en matière de mémoire et d'exécution. Lion ne fait qu'économiser de l'élan et a une empreinte mémoire plus petite que les optimiseurs adaptatifs populaires comme AdamW, ce qui est utile lors de la formation de grands modèles et/ou du travail avec des lots de grande taille. Par exemple, AdamW nécessite au moins 16 puces TPU V4 pour entraîner ViT-B/16 avec une résolution d'image de 224 et une taille de lot de 4 096, tandis que Lion n'en nécessite que 8 (toutes deux avec un élan bfloat16).

Résultats de l'évaluation de Lion

Dans la partie expérimentale, les chercheurs ont évalué Lion sur divers critères, en le comparant principalement au populaire AdamW (ou Adafactor lorsque la mémoire devient le goulot d'étranglement).

Classification d'images

Les chercheurs effectuent des expériences couvrant divers ensembles de données et architectures sur des tâches de classification d'images. En plus de la formation à partir de zéro sur ImageNet, ils ont également effectué une pré-formation sur deux ensembles de données matures plus importants, ImageNet-21K et JFT. La taille de l'image est par défaut de 224. ​

Premier entraînement à partir de zéro sur ImageNet. Les chercheurs ont formé ResNet-50 pendant 90 époques avec une taille de lot de 1 024, et les autres modèles pendant 300 époques avec une taille de lot de 4 096. Comme le montre le tableau 2 ci-dessous, Lion surpasse considérablement AdamW sur diverses architectures.

Deuxièmement, pré-entraînez-vous sur ImageNet-21K. Les chercheurs ont pré-entraîné ViT-B/16 et ViT-L/16 sur ImageNet-21K pendant 90 époques avec une taille de lot de 4 096. Le tableau 2 ci-dessous montre que Lion surpasse toujours AdamW même lorsque l'ensemble d'entraînement est agrandi 10 fois.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Enfin une pré-formation sur JFT. Afin de repousser les limites, les chercheurs mènent de nombreuses expérimentations sur JFT. La figure 4 ci-dessous montre la précision de trois modèles ViT (ViT-B/16, ViT-L/16 et ViT-H/14) avec différents budgets de pré-formation sur JFT-300M. Lion permet au ViT-L/16 d'égaler les performances du ViT-H/14 d'AdamW formé sur ImageNet et ImageNet V2, mais à un coût de pré-formation 3 fois inférieur.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Le tableau 3 ci-dessous montre les résultats de réglage fin avec une résolution plus élevée et une moyenne Polyak. Le ViT-L/16 utilisé par les chercheurs correspond aux résultats du ViT-H/14 précédemment formé par AdamW, tout en ayant 2 fois moins de paramètres. Après avoir étendu l'ensemble de données de pré-entraînement à JFT-3B, le ViT-g/14 formé par Lion surpasse les résultats ViT-G/14 précédents avec 1,8 fois moins de paramètres.

Apprentissage contrastif du langage visuel

Cette section se concentre sur la formation contrastive du langage visuel de style CLIP. Plutôt que d’apprendre tous les paramètres à partir de zéro, les chercheurs ont initialisé l’encodeur d’image à l’aide d’un puissant modèle pré-entraîné.

Pour Locked Image Text Tuning (LiT), les chercheurs ont comparé Lion et AdamW sur LiT en entraînant l'encodeur de texte de manière comparative en utilisant le même ViT pré-entraîné gelé. Le tableau 4 ci-dessous montre les résultats de la classification des images sans prise de vue à 3 échelles de modèle, Lion démontrant une amélioration continue par rapport à AdamW.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

La figure 5 ci-dessous (à gauche) montre un exemple de courbe d'apprentissage sans tir pour LiT-B/16-B, avec des résultats similaires sur les deux autres ensembles de données.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Modèle de diffusion

Récemment, les modèles de diffusion ont obtenu un grand succès dans la génération d'images. Compte tenu de son énorme potentiel, nous avons testé Lion sur la synthèse d'images inconditionnelles et la génération multimodale de texte en image.

Pour la synthèse d'images sur ImageNet, les chercheurs ont utilisé l'architecture U-Net améliorée introduite dans l'article de 2021 « Les modèles de diffusion battent les gans sur la synthèse d'images » pour effectuer 64 × 64, 128 × 128 et 256 × 256 sur la génération d'images ImageNet. . Comme le montre la figure 5 ci-dessus (au milieu et à droite), Lion peut obtenir une meilleure qualité et une convergence plus rapide sur les scores FID.

Pour la génération de texte en image, la figure 6 ci-dessous montre la courbe d'apprentissage. Bien qu'il n'y ait pas d'amélioration significative par rapport au modèle de base 64 × 64, Lion surpasse AdamW sur le modèle de super-résolution conditionnelle au texte. Lion obtient des scores CLIP plus élevés et a des métriques FID bruyantes plus petites par rapport à AdamW.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Modélisation et réglage fin du langage

Cette section se concentre sur la modélisation et le réglage précis du langage. Sur les tâches de langage pur, les chercheurs ont découvert que l'ajustement de β_1 et β_2 peut améliorer la qualité d'AdamW et de Lion.

Pour la modélisation autorégressive du langage, la figure 7 ci-dessous montre la perplexité au niveau des jetons du Wiki-40B et la perplexité au niveau des mots du PG-19. Lion atteint systématiquement une perplexité de vérification inférieure à celle d'AdamW. Il atteint des accélérations de 1,6x et 1,5x lors de la formation de modèles de taille moyenne sur Wiki-40B et PG-19, respectivement. Le PG-19 atteint en outre une accélération de 2x lorsque le modèle atteint une grande taille.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Pour la modélisation du langage masqué, les chercheurs ont également effectué une formation BERT sur l'ensemble de données C4, où Lion a obtenu des résultats légèrement meilleurs qu'AdamW en termes de perplexité de vérification. La courbe d'apprentissage pertinente est illustrée dans la figure 11 ci-dessous (à gauche).

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Pour le réglage fin, les chercheurs ont affiné Base (220M), Large (770M) et le plus grand modèle 11B T5 sur le benchmark GLUE. Le tableau 6 ci-dessous montre les résultats sur l'ensemble de développement GLUE, où en moyenne Lion bat AdamW dans les 3 tailles de modèle.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Comparaison avec d'autres optimiseurs populaires

L'étude utilise également quatre optimiseurs populaires RAdam, NAdam, AdaBelief et AMSGrad pour former ViT-S/16 sur ImageNet et ViT-B/ 16 (en utilisant RandAug et Mixup). Comme le montre le tableau 7 ci-dessous, Lion reste le plus performant.

Écrasez complètement AdamW ! Le nouvel optimiseur de Google a une petite mémoire et une grande efficacité. Internautes : la formation GPT 2 est vraiment rapide.

Veuillez vous référer au document original pour plus de détails techniques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer