Intelligence Artificielle
GLM-130B : un modèle pré-entraîné bilingue ouvert

Le framework GLM-130B est un grand modèle linguistique bilingue pré-entraîné avec plus de 130 milliards de paramètres capables de générer des sorties de texte en anglais et en chinois. Le framework GLM-130B est une tentative d'ouvrir un modèle de langage à une échelle de plus de 100 milliards de paramètres et d'expliquer comment des frameworks d'une si grande échelle peuvent être pré-entraînés, car actuellement, la formation d'un modèle d'une si grande échelle est souvent ébranlée. avec des problèmes tels que les pics de divergence et de perte.
Dans cet article, nous parlerons du framework GLM-130B, qui tente de concevoir une méthode permettant de pré-entraîner efficacement de grands modèles de langage avec des centaines de milliards de paramètres. Nous approfondirons le fonctionnement et l'architecture du cadre GLM-130B ainsi que le processus de formation et les choix de conception qui contribuent non seulement à augmenter l'efficacité, mais également la stabilité. Les premières expériences menées pour tester le fonctionnement du framework GLM-130B sur un large éventail de tests anglais ont permis au modèle GLM-130B de surpasser l'état actuel de la technique. Cadre GPT-3 par une marge considérable. Commençons donc et explorons comment le framework GLM-130B fournit des résultats aussi cohérents, précis et stables.
Une introduction au cadre GLM-130B
Les grands modèles de langage capables de fonctionner dans des paramètres de faible ou de zéro, en particulier ceux comportant plus de 100 milliards de paramètres, présentent des lois de mise à l'échelle attrayantes, parmi lesquelles le framework GPT-3 est l'un des frameworks les plus performants qui offre des améliorations de performances considérables par rapport à son prédécesseur, le framework BERT. Cependant, malgré la popularité du cadre GPT-3 et ses applications généralisées, le processus de formation et, à certains égards, le cadre GPT-3 en lui-même n'a pas été transparent pour le public. De plus, l'énumération empirique de toutes les conceptions possibles pour la formation de LLM sur 100 B de paramètres est inabordable en termes de calcul, ce qui rend encore plus critique la mise au point d'une méthode de pré-formation pour les cadres LLM à grande échelle.
Le point ci-dessus fait que le partage du processus de travail et de formation des cadres LLM à grande échelle de haute qualité comme GPT-3 est d'une valeur cruciale, et compte tenu des préoccupations éthiques gardées à l'esprit, le Le framework GLM-130B est une tentative de pré-formation d'un LLM précis et open source avec plus de 100 B de paramètres. Au cours de leur tentative, l'équipe de développement du GLM-130B a observé que la pré-formation d'un cadre LLM à grande échelle s'accompagne souvent d'un large éventail de défis d'ingénierie et techniques en termes de stabilité, d'efficacité et de convergence avant la formation.
Pour être plus précis, le GLM-130B est un framework dense bidirectionnel et bilingue composé de plus de 130 milliards de paramètres, pré-entraînés sur 400 milliards de jetons sur un cluster de 96 nœuds GPU NVIDIA DGX-A100 sur une période de près de deux mois. De plus, au lieu d'opter pour l'architecture de style GPT, le framework GLM-130B utilise l'algorithme GLM ou General Language Model pour tenter de tirer parti de ses objectifs de remplissage de blancs autorégressifs et de l'avantage de l'attention bidirectionnelle. Le tableau suivant compare le cadre GLM-130B avec d'autres modèles avec plus de 100B de paramètres, notamment GPT, BLOOM-176B et OPT-175B.
Les concepts d'ingénierie et de développement impliqués dans le cadre GLM-130B surpassent presque tous les cadres LLM à grande échelle, y compris GPT-3 et PaLM 540B, avec plus de 500 B de paramètres dans de nombreux cas et sur un large éventail de références. La figure suivante compare les performances du cadre GLM-130B avec des modèles comportant plus de 100 B+ de paramètres, et comme on peut le voir, le cadre GLM-130B a beaucoup moins de toxicité de génération et de biais que ses homologues.
Enfin, le GLM-130B a été conçu de manière à permettre au plus grand nombre de développeurs de mener des études sur des frameworks avec plus de 100B de paramètres, et le framework GLM-130B y parvient de deux manières. Premièrement, au lieu d'utiliser plus de 175 B de paramètres comme BLOOM et OPT, le framework GLM-130B utilise 130 B de paramètres, car la taille du modèle prend en charge les interférences même sur un seul serveur A100. Deuxièmement, les exigences GPU pour exécuter le framework GLM-130B sont moindres par rapport aux autres frameworks LLM, et le framework GLM-130B y parvient en quantifiant le framework d'origine en précision INT4. La quantification INT4 utilisée par le cadre GLM-130B améliore les performances tout en maintenant une dégradation négligeable des performances.
GLM-130B : Architecture
Le biais inductif d'un modèle d'apprentissage automatique est décrit par son architecture, et il n'est pas surprenant que les développeurs ne puissent pas explorer diverses conceptions architecturales pour grands modèles de langage compte tenu de l’accessibilité informatique et de la viabilité. Cela étant dit, jetons un coup d'œil à l'architecture du GLM-130B.
Les frameworks LLM à grande échelle tels que PaLM, GPT et bien d'autres comportent plus de 100 milliards de paramètres et sont construits sur l'architecture conventionnelle de style GPT réservée aux décodeurs pour la modélisation de langage autorégressive. D'autre part, le framework GLM-130B explore la possibilité d'utiliser un Modèle de langage général bidirectionnel ou GLM, un modèle de langage basé sur un transformateur qui vise à tirer parti du remplissage autorégressif comme objectif de formation, comme fondement. En bref, pour une séquence de texte donnée, le framework GLM échantillonne les étendues de texte qui sont ensuite remplacées par un seul jeton de masque.
L'attention bidirectionnelle du modèle de langage général sur les contextes non corrompus ou non masqués est ce qui sépare le cadre GLM-130B de l'approche de style GPT qui utilise une approche unidirectionnelle. De plus, pour prendre en charge à la fois la génération et la compréhension des données, le cadre GLM fusionne deux stratégies de corruption, chacune étant indiquée par un jeton de masque spécial et unique.
- [MASQUER] : [MASK] est une stratégie de corruption qui utilise de courts espaces dans les phrases, dont la longueur totalise un certain pourcentage de l'entrée.
- [gMASQUE] : [gMASK] est une stratégie de corruption qui utilise des espaces de longueur aléatoire vers la fin de la phrase avec les contextes de préfixe.
L'approche suivie par le framework GLM est ce qui permet au framework d'enregistrer un score de précision de plus de 80 % sur la modélisation du langage LAMBADA sans tir, et surpasse à la fois le PaLM 540B et le framework GPT-3.
Normalisation des calques
L'un des principaux défis rencontrés par les développeurs lors de la formation d'un cadre LLM est l'instabilité de la formation, et l'utilisation d'un LN (Layer Normalization) approprié pourrait aider à la formation des LLM. Le framework GLM-130B utilise une approche Post-LN grâce à ses performances sur les tâches en aval.
FFN et codage positionnel
Les réseaux de neurones feedforward ou FFN et le codage positionnel sont deux approches adoptées par le cadre GLM-130B pour introduire des performances en aval haut de gamme et une stabilité de formation.
Configuration préalable à la formation
Les objectifs de pré-formation du cadre GLM-130B incluent non seulement l'apprentissage multitâche pour un petit nombre de jetons, mais incluent également le GLM auto-supervisé pour le remplissage autorégressif des blancs, dans l'espoir que cette approche aidera le GLM -130B framework dans les tâches en aval. Cela étant dit, la configuration de pré-formation du framework GLM-130B ressemble à ce qui suit.
Remplissage de blancs auto-supervisé
Comme déjà mentionné, le cadre GLM-130B utilise deux stratégies de corruption, à savoir [MASK] et [gMASK], et l'une de ces stratégies est appliquée indépendamment à chaque séquence de formation individuelle, une à la fois. Pour remplir les blancs, la stratégie [MASK] masque les étendues consécutives dans 30 % de la séquence d'entraînement, où les longueurs des étendues totalisent jusqu'à 15 % de l'entrée, et suit une distribution de Poisson. Pour les 70 % restants de la séquence, le préfixe de chaque séquence est conservé comme contexte, et la stratégie [gMASK] aide à masquer le reste, et la longueur masquée est ensuite échantillonnée à l'aide de la distribution uniforme.
Instructions multitâches
Il a été indiqué qu'en suivant une approche d'apprentissage multi-tâches pour la pré-formation, les modèles peuvent donner de meilleurs résultats qu'un réglage fin, afin d'améliorer les transferts de tâches dans un contexte de zéro tir. Par la suite, le cadre GLM-130B propose d'utiliser un ensemble d'ensembles de données guidés par des instructions, notamment la génération, la compréhension et l'extraction d'informations du langage pendant la pré-formation.
Par rapport à d'autres approches de transfert de tâches sans tir qui utilisent un réglage fin multi-tâches, l'approche de pré-formation aux instructions multi-tâches suivie par le cadre GLM-130B ne représente que 5 % du total des jetons, et il est défini pendant la phase de pré-formation pour tenter d'éviter de gâcher d'autres capacités du cadre LLM ou en d'autres termes, génération libre inconditionnelle.
Stratégie parallèle 3D
Il existe de facto deux pratiques pour entraîner des modèles à grande échelle avec des milliards de paramètres, le parallélisme du modèle tensoriel et le parallélisme des données. Dans le but de minimiser l'utilisation du GPU et de répondre aux immenses besoins du GPU, le framework GLM-130B implémente une stratégie parallèle 3D qui combine la stratégie de parallélisme du modèle de pipeline avec le parallélisme du modèle tenseur et les stratégies de parallélisme des données.
GLM-130B : Stabilité d'entraînement
La stabilité de la formation est un facteur important pour déterminer la qualité d'un LLM, et la stabilité de la formation est fortement influencée en fonction du nombre de jetons traversés. De plus, il est essentiel d'établir un compromis entre stabilité et efficacité en ce qui concerne les formats à virgule flottante compte tenu des contraintes informatiques. Par exemple, les formats à virgule flottante de faible précision améliorent l'efficacité du calcul, mais ils entraînent souvent des échecs de formation car ils sont sujets à des erreurs de dépassement et de dépassement de capacité.
Précision mixte
Dans le but d'améliorer la précision de l'entraînement et de réduire l'utilisation de la mémoire, le cadre GLM-130B suit la pratique courante consistant à utiliser des précisions mixtes, c'est-à -dire FP16 pour l'avant et l'arrière, et FP32 pour les poids principaux et les états d'optimisation. Tout comme d'autres frameworks LLM populaires, notamment BLOOM-176B et OPT-175B, la phase de formation du framework GLM-130B utilisant la stratégie de précision mixte est confrontée à de fréquents pics de pertes, et la fréquence de ces pertes de pics a tendance à augmenter à mesure que le modèle continue de s'entraîner. . En outre, les développeurs sont confrontés à des problèmes majeurs lorsqu’ils développent les transformateurs.
Premièrement, l'échelle de valeur de la branche principale du transformateur peut être vaste dans les couches plus profondes lors de l'utilisation du Pre-LN, et dans le cadre GLM-130B, elle est abordée en utilisant un Pre-LN basé sur DeepNorm, qui garantit que la valeur l’échelle reste limitée à tout moment. Deuxièmement, à mesure que le modèle évolue, les scores d'attention augmentent jusqu'à dépasser la fourchette du FP16.
Rétrécissement dégradé de couche d'intégration ou EGS
Les développeurs travaillant sur le cadre GLM-130B ont identifié que la norme de gradient peut servir d'indicateur informatif pour les effondrements d'entraînement, et qu'un effondrement d'entraînement est généralement en retard par rapport à un pic de la norme de gradient. La cause de ces pics est les gradients anormaux de la couche d'intégration, et les développeurs ont observé que, comparée à la norme de gradient des autres couches, la norme de gradient des couches d'intégration est plus grande de plusieurs amplitudes, et elle a également tendance à fluctuer considérablement au cours de la période. formation précoce du framework. Modèles de vision sont également confrontés à ce problème, et il est résolu en gelant la couche de projection du patch. Cependant, la même approche ne peut pas être appliquée aux LLM comme dans les modèles de langage, vous ne pouvez pas geler les couches de projection.
GLM-130B : Résultats et performances
Pour évaluer les performances du GLM-130B pour les tâches en anglais, il implémente les mêmes paramètres suivis par les frameworks LLM courants, notamment PaLM et GPT-3, et comme le GLM-130B est un framework bilingue, il est également évalué selon plusieurs benchmarks chinois. Les performances du cadre GLM-130B seront mesurées à travers plusieurs critères de référence, notamment Modélisation du langage, MMLU ou Massive Multitask Language Understanding, BIG-Bench ou Beyond the Imitation Game Benchmark, et CLUE ou évaluation de la compréhension de la langue chinoise. Alors, commençons.
Modélisation du langage
Le test de référence de modélisation du langage sur le framework GLM-130B est effectué sur deux ensembles de données : LAMBADA et Pile.
L'ensemble de données LAMBADA est utilisé pour tester les capacités de modélisation ultime des LLM, et le cadre GLM-130B atteint un score de précision zéro de 80.2 dans un environnement bilingue et, en cours de route, établit un nouveau record de référence sur l'ensemble de données LAMBADA.
D'autre part, Pile est un ensemble de tests qui comprend une série de tests de référence pour les modèles de langage. En moyenne, par rapport au GPT-3 et au Jurassic-1, le framework GLM-130B offre ses meilleures performances sur 18 ensembles de tests partagés en termes de BPB pondérés. Les résultats démontrent les fortes capacités linguistiques du framework GLM-130B et sont inclus dans le tableau ci-dessous.
MMLU ou compréhension du langage multitâche massif
MMLU ou compréhension du langage multitâche massif est un benchmark diversifié qui comprend plus de 50 tâches de réponses à des questions à choix multiples concernant l'intelligence et les connaissances humaines, allant du niveau secondaire au niveau expert, et il est publié après l'exploration de l'ensemble de tests Pile et constitue donc un outil idéal. test-best pour évaluer les capacités d'apprentissage en quelques étapes d'un LLM.
Comme on peut le voir, dans quelques réglages de prise de vue (5 prises de vue), les performances du framework GLM-130B se rapprochent des performances du modèle GPT-3 après avoir visualisé près de 300B de jetons. Les performances continuent de s'améliorer à mesure que la formation avance, et lorsque la formation se termine, le framework atteint un score de précision de 44.8 après avoir visualisé un total de 400 milliards de jetons.
BIG-Bench ou au-delĂ du benchmark des jeux d'imitation
BIG-Banc ou Au-delà des tests de référence du jeu d'imitation, des tâches difficiles testent la capacité d'un modèle en termes de connaissances, de raisonnement et de bon sens. Comme le démontrent les figures suivantes, en configuration zéro tir, le framework GLM-130B surpasse à la fois les frameworks PaLM 540B et GPT-3 175B, ce qui pourrait être dû au MIP et à l'attention bidirectionnelle accordée au contexte pour améliorer les performances du GLM-130B dans les tâches invisibles dans réglage zéro tir. De plus, à mesure que le nombre de prises de vue augmente, les performances du framework GLM-130B s'améliorent également, surpassant systématiquement le framework GPT-3.
CLUE ou évaluation de la compréhension de la langue chinoise
Les performances de tir zéro chinois du GLM-130B sont évaluées sur des tâches de référence NLP établies, notamment CLUE et FewCLUE, et sont comparées au 260B ERNIE Titan 3.0, le plus grand modèle en langue chinoise existant. Comme on peut l'observer, le framework GLM-130B surpasse constamment le framework 260B ERNIE Titan 3.0 dans 12 tâches différentes et fonctionne près de 260 % ​​mieux que le framework ERNIE sur deux ensembles de données MRC abstraits.
Conclusion
Dans cet article, nous avons parlé de GLM-130B, un grand modèle linguistique bilingue pré-entraîné qui vise à promouvoir une recherche LLM inclusive. Les projets d'architecture, d'ingénierie et techniques visent à fournir à la communauté de l'IA un meilleur aperçu de l'architecture des cadres LLM, de l'efficacité et de la stabilité de la formation, des objectifs de pré-formation et des interférences abordables.