Modèles et plateformes d’IA
GLM-130B : Un Modèle Pré-entraîné Bilingue Ouvert

Le cadre GLM-130B est un modèle de langage bilingue pré-entraîné de grande échelle avec plus de 130 milliards de paramètres capable de générer des sorties de texte en anglais et en chinois. Le cadre GLM-130B est une tentative d’ouvrir le code source d’un modèle de langage à une échelle de plus de 100 milliards de paramètres et de discuter de la façon dont les cadres d’une telle grande échelle peuvent être pré-entraînés, car actuellement, l’entraînement d’un modèle d’une telle grande échelle est souvent accompagné de problèmes tels que la divergence et les pics de perte.
Dans cet article, nous allons parler du cadre GLM-130B, qui tente de concevoir une méthode pour pré-entraîner efficacement les grands modèles de langage avec des centaines de milliards de paramètres. Nous allons nous plonger dans le fonctionnement et l’architecture du cadre GLM-130B, ainsi que dans le processus d’entraînement et les choix de conception qui non seulement améliorent l’efficacité, mais également la stabilité. Les expériences initiales menées pour tester le fonctionnement du cadre GLM-130B sur une large gamme de benchmarks anglais ont abouti à ce que le modèle GLM-130B surpasse le cadre GPT-3 actuel par une marge considérable. Alors, commençons et explorons comment le cadre GLM-130B offre des résultats constants, précis et stables.
Introduction au Cadre GLM-130B
Les grands modèles de langage capables de fonctionner dans des environnements à quelques exemples et sans exemples, en particulier ceux avec plus de 100 milliards de paramètres, présentent des lois de mise à l’échelle attractives, dont le cadre GPT-3 est l’un des meilleurs. Cependant, malgré la popularité du cadre GPT-3 et ses applications largement répandues, le processus d’entraînement et, dans une certaine mesure, le cadre GPT-3 lui-même ont été non transparents pour le public. De plus, énumérer empiriquement toutes les conceptions possibles pour l’entraînement de LLM de plus de 100 milliards de paramètres est computationnellement inviable, ce qui rend encore plus critique la nécessité de concevoir une méthode de pré-entraînement pour les cadres LLM de grande échelle.
Le point ci-dessus rend essentiel le partage du fonctionnement et du processus d’entraînement de cadres LLM de grande échelle de haute qualité comme GPT-3, et avec les préoccupations éthiques en tête, le cadre GLM-130B est une tentative de pré-entraîner un LLM précis et ouvert avec plus de 100 milliards de paramètres. Au cours de leur tentative, l’équipe de développement du GLM-130B a observé que le pré-entraînement d’un cadre LLM de grande échelle est souvent accompagné d’un large éventail de défis techniques et d’ingénierie en termes de stabilité de pré-entraînement, d’efficacité et de convergence.
Plus précisément, le GLM-130B est un cadre dense bidirectionnel et bilingue composé de plus de 130 milliards de paramètres, pré-entraîné 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 GPT classique, le cadre GLM-130B utilise l’algorithme de modèle de langage général (GLM) pour tenter de tirer parti de ses objectifs d’insertion de blancs autoregressifs et de l’avantage de l’attention bidirectionnelle. Le tableau suivant compare le cadre GLM-130B avec d’autres modèles avec plus de 100 milliards de paramètres, y compris 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 de grande échelle, y compris GPT-3 et PaLM 540B avec plus de 500 milliards de paramètres, dans de nombreux cas et sur une large gamme de benchmarks. Le graphique suivant compare les performances du cadre GLM-130B avec des modèles avec plus de 100 milliards de paramètres, et comme on peut le voir, le cadre GLM-130B a nettement moins de toxicité et de biais de génération que ses homologues.

Enfin, le GLM-130B a été conçu pour permettre à autant de développeurs que possible de mener des études sur les cadres avec plus de 100 milliards de paramètres, et il existe deux façons dont le cadre GLM-130B atteint cet objectif. Premièrement, au lieu d’utiliser plus de 175 milliards de paramètres comme BLOOM et OPT, le cadre GLM-130B utilise 130 milliards de paramètres, car la taille du modèle prend en charge l’interférence même sur un seul serveur A100. Deuxièmement, les exigences de GPU pour exécuter le cadre GLM-130B sont inférieures à celles des autres cadres LLM, et le cadre GLM-130B atteint cet objectif en quantifiant le cadre d’origine en précision INT4. La quantification INT4 utilisée par le cadre GLM-130B améliore les performances tout en conservant une dégradation des performances négligeable.
GLM-130B : Architecture
La biais inductif d’un modèle d’apprentissage automatique est décrit par son architecture, et il ne vient pas comme une surprise lorsque les développeurs ne peuvent pas explorer diverses conceptions architecturales pour les grands modèles de langage, étant donné la faisabilité et la viabilité computationnelles. Avec cela dit, regardons l’architecture du GLM-130B.
Les grands cadres LLM comme PaLM, GPT et plus ont plus de 100 milliards de paramètres et sont construits sur l’architecture classique GPT à décrypteur unique pour la modélisation de langage autoregressive. D’un autre côté, le cadre 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 le transformateur qui vise à tirer parti de l’insertion de blancs autoregressifs comme objectif d’entraînement, comme base. En bref, pour une séquence de texte donnée, le cadre GLM échantillonne les plages 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 des contextes non corrompus ou non masqués est ce qui sépare le cadre GLM-130B de l’approche 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 combine deux stratégies de corruption, chacune indiquée par un jeton de masque spécial et unique.
- [MASK] : [MASK] est une stratégie de corruption qui utilise des blancs courts dans les phrases, dont les longueurs s’ajoutent à un certain pourcentage de l’entrée.
- [gMASK] : [gMASK] est une stratégie de corruption qui utilise des blancs aléatoires à la fin de la phrase avec les contextes de préfixe.
L’approche suivie par le cadre GLM est ce qui permet au cadre de réaliser un score de précision de plus de 80 % sur la modélisation de langage LAMBADA à zéro tir, et surpasse à la fois les cadres PaLM 540B et GPT-3.

Normalisation de couche
L’un des principaux défis auxquels sont confrontés les développeurs lors de l’entraînement d’un cadre LLM est l’instabilité d’entraînement, et l’utilisation d’une normalisation de couche (LN) appropriée peut aider à l’entraînement des LLM. Le cadre 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 (FFN) et le codage positionnel sont deux approches adoptées par le cadre GLM-130B pour introduire des performances en aval de haute qualité et une stabilité d’entraînement.
Configuration de pré-entraînement
Les objectifs de pré-entraînement du cadre GLM-130B comprennent non seulement l’apprentissage multi-tâches pour un petit nombre de jetons, mais également le GLM autonome pour le remplissage autoregressif des blancs, avec l’attente que cette approche aidera le cadre GLM-130B dans les tâches en aval. Avec cela dit, la configuration de pré-entraînement du cadre GLM-130B ressemble à ce qui suit.
Remplissage de blanc autonome
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 de manière indépendante à chaque séquence d’entraînement, une à la fois. Pour remplir les blancs, la stratégie [MASK] masque des plages consécutives dans 30 % de la séquence d’entraînement, dont les longueurs des plages s’ajoutent à 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 alors échantillonnée à l’aide de la distribution uniforme.
Pré-entraînement d’instructions multi-tâches
Il a été indiqué que suivre une approche d’apprentissage multi-tâches pour le pré-entraînement des modèles peut donner de meilleurs résultats que la fine-tuning, pour améliorer les transferts de tâches dans un environnement à zéro tir. Par la suite, le cadre GLM-130B propose d’utiliser un ensemble de jeux de données d’instructions avec des tâches de génération de langage, de compréhension et d’extraction d’informations pendant le pré-entraînement.
Par rapport à d’autres approches pour le transfert de tâches à zéro tir qui utilisent la fine-tuning multi-tâches, l’approche de pré-entraînement d’instructions multi-tâches suivie par le cadre GLM-130B ne compte que pour 5 % du total des jetons, et elle est définie pendant la phase de pré-entraînement dans une tentative pour éviter de gâter les autres capacités du cadre LLM ou, en d’autres termes, la génération inconditionnelle libre.
Stratégie de parallélisme 3D
Il existe deux pratiques de facto pour l’entraînement de grands modèles avec des milliards de paramètres, le parallélisme de modèle de tenseur et le parallélisme de données. Dans une tentative pour minimiser l’utilisation du GPU et pour gérer les exigences de GPU immenses, le cadre GLM-130B met en œuvre une stratégie de parallélisme 3D qui combine la stratégie de parallélisme de pipeline de modèle avec les stratégies de parallélisme de modèle de tenseur et de parallélisme de données.
GLM-130B : Stabilité d’entraînement
La stabilité d’entraînement est un facteur important lors de la détermination de la qualité d’un LLM, et la stabilité d’entraînement est influencée fortement en fonction du nombre de jetons qu’il passe. De plus, il est essentiel d’établir un compromis entre la stabilité et l’efficacité en termes de formats de point flottant étant donné les contraintes de calcul. Par exemple, les formats de point flottant de faible précision améliorent l’efficacité de calcul, mais ils entraînent souvent des effondrements d’entraînement étant donné qu’ils sont sujets aux erreurs de débordement et de sous-débordement.
Précision mixte
Dans une tentative pour améliorer la précision d’entraînement et 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 les phases avant et arrière, et FP32 pour les poids maîtres et les états de l’optimiseur. Comme d’autres cadres LLM populaires, y compris BLOOM-176B et OPT-175B, la phase d’entraînement du cadre GLM-130B en utilisant la stratégie de précision mixte est confrontée à des pics de perte fréquents, et la fréquence de ces pics de perte tend à augmenter à mesure que le modèle continue à s’entraîner. De plus, il existe de graves problèmes auxquels sont confrontés les développeurs lorsqu’ils mettent à l’échelle 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 de Pre-LN, et dans le cadre GLM-130B, cela est abordé en utilisant une pré-LN basée sur DeepNorm, qui garantit que l’échelle de valeur reste bornée à tout moment. Deuxièmement, à mesure que le modèle augmente, les scores d’attention augmentent à un point où ils dépassent la plage de FP16.
Réduction du gradient de la couche d’incrustation ou EGS
Les développeurs travaillant sur le cadre GLM-130B ont constaté que la norme du gradient peut agir comme un indicateur informatif pour les effondrements d’entraînement, et un effondrement d’entraînement suit généralement un pic de la norme du gradient. La cause de ces pics est due aux gradients anormaux de la couche d’incrustation, et les développeurs ont observé que, par rapport à la norme du gradient des autres couches, la norme du gradient des couches d’incrustation est plus grande de plusieurs ordres de grandeur, et elle fluctue également de manière spectaculaire au cours de l’entraînement précoce du cadre. Les modèles de vision font face au même problème, et il est résolu en gelant la couche de projection de patch. Cependant, la même approche ne peut pas être appliquée aux LLM, car 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 anglaises, il met en œuvre les mêmes paramètres que les cadres LLM courants, y compris PaLM et GPT-3, et comme le GLM-130B est un cadre bilingue, il est également évalué sur plusieurs benchmarks chinois. Les performances du cadre GLM-130B seront mesurées sur plusieurs benchmarks, y compris la modélisation de langage, la compréhension massive multi-tâches du langage (MMLU), le benchmark Beyond the Imitation Game (BIG-Bench) et l’évaluation de la compréhension du langage chinois (CLUE). Alors, commençons.
Modélisation de langage
Le test de modélisation de langage sur le cadre GLM-130B est effectué sur deux jeux de données : LAMBADA et Pile.
Le jeu de données LAMBADA est utilisé pour tester les capacités de modélisation du dernier mot des LLM, et le cadre GLM-130B réalise un score de précision à zéro tir de 80,2 dans un environnement bilingue, et établit ainsi un nouveau record de benchmark sur le jeu de données LAMBADA.
D’un autre côté, Pile est un jeu de test qui comprend une série de benchmarks pour les modèles de langage. En moyenne, par rapport à GPT-3 et Jurassic-1, le cadre GLM-130B offre ses meilleures performances sur 18 jeux de test partagés en termes de BPBs pondérés. Les résultats démontrent les fortes capacités de langage du cadre GLM-130B, et les résultats sont inclus dans le tableau ci-dessous.

MMLU ou Compréhension massive multi-tâches du langage
MMLU ou Compréhension massive multi-tâches du langage est un benchmark diversifié qui comprend plus de 50 tâches de questions à choix multiple concernant l’intelligence et les connaissances humaines, allant du niveau du lycée au niveau expert, et il est publié après le crawl du jeu de test Pile, et il sert donc de test idéal pour évaluer les capacités d’apprentissage à quelques exemples du LLM.

Comme on peut le voir, dans un environnement à quelques exemples (5 exemples), les performances du cadre GLM-130B approchent celles du modèle GPT-3 après avoir vu environ 300 milliards de jetons. Les performances continuent à augmenter à mesure que l’entraînement se poursuit, et lorsque l’entraînement se termine, le cadre réalise un score de précision de 44,8 après avoir vu un total de 400 milliards de jetons.
BIG-Bench ou Beyond the Imitation Game Benchmark
BIG-Bench ou Beyond the Imitation Game Benchmarks des tâches difficiles teste la capacité d’un modèle sur les connaissances, le raisonnement et le sens commun. Comme le montrent les figures suivantes, dans un environnement à zéro tir, le cadre GLM-130B surpasse à la fois les cadres PaLM 540B et GPT-3 175B, ce qui pourrait être dû à la MIP et à l’attention bidirectionnelle pour améliorer les performances du GLM-130B dans les tâches non vues dans un environnement à zéro tir. De plus, à mesure que le nombre d’exemples augmente, les performances du cadre GLM-130B s’améliorent également, surperformant constamment le cadre GPT-3.

CLUE ou Évaluation de la compréhension du langage chinois
Les performances à zéro tir du GLM-130B en chinois sont évaluées sur des tâches de benchmark NLP établies, y compris CLUE et FewCLUE, et sont comparées à celles du modèle de langage chinois le plus important existant, 260B ERNIE Titan 3.0. Comme on peut le voir, le cadre GLM-130B surpasse constamment le cadre 260B ERNIE Titan 3.0 sur 12 tâches différentes, et réalise des performances près de 260 % meilleures que le cadre ERNIE sur deux jeux de données MRC abstraits.

Conclusion
Dans cet article, nous avons parlé du GLM-130B, un modèle de langage bilingue pré-entraîné qui vise à promouvoir la recherche LLM inclusive. L’architecture, l’ingénierie et les réalisations techniques visent à fournir à la communauté de l’IA une meilleure compréhension de l’architecture des cadres LLM, de l’efficacité et de la stabilité d’entraînement, des objectifs de pré-entraînement et de l’interférence abordable.












