Intelligence Artificielle
L'essor du mélange d'experts pour des modèles de langage étendus efficaces

By
Ayush Mittal mital
Dans le monde du traitement du langage naturel (NLP), la recherche de modèles linguistiques plus grands et plus performants a été l’un des moteurs de nombreuses avancées récentes. Cependant, à mesure que la taille de ces modèles augmente, les exigences informatiques en matière de formation et d’inférence deviennent de plus en plus exigeantes, ce qui repousse les limites des ressources matérielles disponibles.
Découvrez le Mixture-of-Experts (MoE), une technique qui promet d'alléger cette charge de calcul tout en permettant l'entraînement de modèles de langage plus vastes et plus puissants. Nous aborderons ci-dessous le MoE, explorerons ses origines, son fonctionnement et ses applications dans les modèles de langage basés sur des transformateurs.
Les origines du mélange d’experts
Le concept de mélange d'experts (MoE) remonte au début des années 1990, lorsque les chercheurs ont exploré l'idée du calcul conditionnel, dans lequel des parties d'un réseau neuronal sont activées de manière sélective en fonction des données d'entrée. L’un des travaux pionniers dans ce domaine fut le «Mélange adaptatif d'experts locaux»article de Jacobs et al. en 1991, qui proposait un cadre d'apprentissage supervisé pour un ensemble de réseaux de neurones, chacun spécialisé dans une région différente de l'espace d'entrée.
L’idée centrale du MoE est de disposer de plusieurs réseaux « d’experts », chacun étant responsable du traitement d’un sous-ensemble des données d’entrée. Un mécanisme de contrôle, généralement un réseau neuronal lui-même, détermine quel(s) expert(s) doivent traiter une entrée donnée. Cette approche permet au modèle d'allouer ses ressources de calcul plus efficacement en activant uniquement les experts concernés pour chaque entrée, plutôt que d'utiliser toute la capacité du modèle pour chaque entrée.
Au fil des années, divers chercheurs ont exploré et étendu l'idée du calcul conditionnel, conduisant à des développements tels que les MoE hiérarchiques, les approximations de bas rang pour le calcul conditionnel et les techniques d'estimation des gradients via les neurones stochastiques et les fonctions d'activation à seuil strict.
Mélange d'experts en transformateurs
Alors que l'idée de MoE existe depuis des décennies, son application aux modèles de langage basés sur des transformateurs est relativement récente. Les transformateurs, qui sont devenus la norme de facto pour les modèles de langage de pointe, sont composés de plusieurs couches, chacune contenant un mécanisme d'auto-attention et un réseau neuronal à réaction directe (FFN).
L’innovation clé dans l’application du MoE aux transformateurs consiste à remplacer les couches denses de FFN par des couches de MoE clairsemées, chacune composée de plusieurs FFN experts et d’un mécanisme de déclenchement. Le mécanisme de contrôle détermine quel(s) expert(s) doivent traiter chaque jeton d'entrée, permettant au modèle d'activer sélectivement uniquement un sous-ensemble d'experts pour une séquence d'entrée donnée.
L’un des premiers travaux démontrant le potentiel du MoE dans les transformateurs était l’article « Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer » de Shazeer et al. en 2017. Ce travail a introduit le concept d'une couche MoE à faible contrôle, qui utilisait un mécanisme de contrôle qui ajoutait de la parcimonie et du bruit au processus de sélection des experts, garantissant que seul un sous-ensemble d'experts était activé pour chaque entrée.
Depuis lors, plusieurs autres travaux ont fait progresser l'application du MoE aux transformateurs, en relevant des défis tels que l'instabilité de la formation, l'équilibrage de charge et l'inférence efficace. Des exemples notables incluent le Transformateur de commutation (Fedus et al., 2021), ST-MoE (Zoph et al., 2022), et GLAM (Du et al., 2022).
Avantages du mélange d'experts pour les modèles linguistiques
Le principal avantage de l’utilisation de MoE dans les modèles de langage est la possibilité d’augmenter la taille du modèle tout en maintenant un coût de calcul relativement constant pendant l’inférence. En activant sélectivement uniquement un sous-ensemble d'experts pour chaque jeton d'entrée, les modèles MoE peuvent atteindre la puissance expressive de modèles denses beaucoup plus grands tout en nécessitant beaucoup moins de calculs.
Par exemple, considérons un modèle de langage avec une couche FFN dense de 7 milliards de paramètres. Si l’on remplace cette couche par une couche MoE composée de huit experts, chacun possédant 7 milliards de paramètres, le nombre total de paramètres passe à 56 milliards. Cependant, lors de l'inférence, si nous n'activons que deux experts par jeton, le coût de calcul est équivalent à un modèle dense de 14 milliards de paramètres, car il calcule deux multiplications matricielles de 7 milliards de paramètres.
Cette efficacité informatique lors de l'inférence est particulièrement précieuse dans les scénarios de déploiement où les ressources sont limitées, comme les appareils mobiles ou les environnements informatiques de pointe. De plus, la réduction des besoins informatiques pendant la formation peut conduire à des économies d’énergie substantielles et à une empreinte carbone plus faible, ce qui correspond à l’accent croissant mis sur les pratiques d’IA durables.
Défis et considérations
Même si les modèles MoE offrent des avantages incontestables, leur adoption et leur déploiement comportent également plusieurs défis et considérations :
- Instabilité de la formation: Les modèles MoE sont connus pour être plus sujets aux instabilités de formation que leurs homologues denses. Ce problème découle de la nature éparse et conditionnelle des activations expertes, ce qui peut entraîner des problèmes de propagation et de convergence des gradients. Des techniques telles que la perte z du routeur (Zoph et al., 2022) ont été proposées pour atténuer ces instabilités, mais des recherches supplémentaires sont encore nécessaires.
- Mise au point et surajustement: Les modèles MoE ont tendance à être surajustés plus facilement lors du réglage fin, en particulier lorsque la tâche en aval dispose d'un ensemble de données relativement petit. Ce comportement est attribué à la capacité accrue et à la rareté des modèles MoE, ce qui peut conduire à une surspécialisation des données de formation. Des stratégies minutieuses de régularisation et de réglage sont nécessaires pour atténuer ce problème.
- Mémoire requise: Bien que les modèles MoE puissent réduire les coûts de calcul lors de l'inférence, ils ont souvent des besoins en mémoire plus élevés que les modèles denses de taille similaire. En effet, tous les poids experts doivent être chargés en mémoire, même si seul un sous-ensemble est activé pour chaque entrée. Les contraintes de mémoire peuvent limiter l'évolutivité des modèles MoE sur les appareils aux ressources limitées.
- Load Balancing: Pour atteindre une efficacité de calcul optimale, il est crucial d'équilibrer la charge entre les experts, en veillant à ce qu'aucun expert ne soit surchargé tandis que d'autres restent sous-utilisés. Cet équilibrage de charge est généralement obtenu grâce à des pertes auxiliaires lors de la formation et à un réglage minutieux du facteur de capacité, qui détermine le nombre maximum de jetons pouvant être attribués à chaque expert.
- Frais généraux de communication: Dans les scénarios de formation et d'inférence distribués, les modèles MoE peuvent introduire une surcharge de communication supplémentaire en raison de la nécessité d'échanger des informations d'activation et de gradient entre experts résidant sur différents appareils ou accélérateurs. Des stratégies de communication efficaces et une conception de modèles tenant compte du matériel sont essentielles pour atténuer cette surcharge.
Malgré ces défis, les avantages potentiels des modèles MoE en permettant des modèles de langage plus grands et plus performants ont stimulé d'importants efforts de recherche pour résoudre et atténuer ces problèmes.
Exemple : Mixtral 8x7B et GLaM
Pour illustrer l'application pratique du MoE dans les modèles de langage, considérons deux exemples notables : Mixtral 8x7B et GLaM.
Mistral 8x7B est une variante MoE du Modèle de langage Mistral, développé par Anthropic. Il se compose de huit experts, chacun disposant de 7 milliards de paramètres, pour un total de 56 milliards de paramètres. Cependant, lors de l'inférence, seuls deux experts sont activés par jeton, réduisant ainsi le coût de calcul à celui d'un modèle dense de 14 milliards de paramètres.
Mixtral 8x7B a démontré des performances impressionnantes, surpassant le modèle Llama à 70 milliards de paramètres tout en offrant des temps d'inférence beaucoup plus rapides. Une version optimisée pour les instructions de Mixtral 8x7B, appelée Mixtral-8x7B-Instruct-v0.1, a également été publiée, améliorant encore ses capacités à suivre les instructions en langage naturel.
Un autre exemple notable est le GLaM (Google Language Model), un modèle MoE à grande échelle développé par Google. GLaM utilise une architecture de transformateur uniquement par décodeur et a été formé sur un énorme ensemble de données de 1.6 billion de jetons. Le modèle atteint des performances impressionnantes sur les évaluations en quelques coups et en un seul coup, correspondant à la qualité du GPT-3 tout en utilisant seulement un tiers de l'énergie nécessaire pour entraîner le GPT-3.
Le succès de GLaM s'explique par l'efficacité de son architecture MoE, qui a permis d'entraîner un modèle avec un grand nombre de paramètres tout en maintenant des exigences de calcul raisonnables. Ce modèle a également démontré le potentiel des modèles MoE à être plus économes en énergie et plus respectueux de l'environnement que leurs homologues denses.
L'architecture Grok-1
Grok-1 Il s'agit d'un modèle MoE basé sur un transformateur, doté d'une architecture unique conçue pour optimiser l'efficacité et les performances. Examinons les principales spécifications :
- Paramètres: Avec un nombre impressionnant de 314 milliards de paramètres, Grok-1 est le plus grand LLM ouvert à ce jour. Cependant, grâce à l’architecture MoE, seuls 25 % des pondérations (environ 86 milliards de paramètres) sont actifs à un moment donné, améliorant ainsi les capacités de traitement.
- Architecture: Grok-1 utilise une architecture Mixture-of-8-Experts, chaque jeton étant traité par deux experts lors de l'inférence.
- Couches: Le modèle se compose de 64 couches de transformateurs, chacune incorporant une attention multi-têtes et des blocs denses.
- tokenization: Grok-1 utilise un tokenizer SentencePièce avec une taille de vocabulaire de 131,072 XNUMX jetons.
- Intégrations et codage positionnel: Le modèle comporte des intégrations à 6,144 XNUMX dimensions et utilise des intégrations positionnelles rotatives, permettant une interprétation plus dynamique des données par rapport aux codages positionnels fixes traditionnels.
- Attention: Grok-1 utilise 48 têtes d'attention pour les requêtes et 8 têtes d'attention pour les clés et les valeurs, chacune d'une taille de 128.
- Longueur du contexte: Le modèle peut traiter des séquences d'une longueur maximale de 8,192 16 jetons, en utilisant la précision bfloatXNUMX pour un calcul efficace.
Détails des performances et de la mise en œuvre
Grok-1 a démontré des performances impressionnantes, surpassant LLaMa 2 70B et Mixtral 8x7B avec un score MMLU de 73 %, démontrant son efficacité et sa précision dans divers tests.
Il est toutefois important de noter que Grok-1 nécessite des ressources GPU importantes en raison de sa taille. L'implémentation actuelle de la version open source se concentre sur la validation de l'exactitude du modèle et utilise une implémentation inefficace de la couche MoE pour éviter le recours à des noyaux personnalisés.
Néanmoins, le modèle prend en charge le partitionnement d'activation et la quantification 8 bits, ce qui peut optimiser les performances et réduire les besoins en mémoire.
Dans un geste remarquable, xAI a publié Grok-1 sous la licence Apache 2.0, rendant ses poids et son architecture accessibles à la communauté mondiale pour utilisation et contributions.
La version open source comprend un exemple de référentiel de code JAX qui montre comment charger et exécuter le modèle Grok-1. Les utilisateurs peuvent télécharger les poids des points de contrôle à l'aide d'un client torrent ou directement via le HuggingFace Hub, facilitant ainsi l'accès à ce modèle révolutionnaire.
L'avenir du mélange d'experts dans les modèles linguistiques
À mesure que la demande de modèles linguistiques plus grands et plus performants continue de croître, l’adoption des techniques MoE devrait prendre de l’ampleur. Les efforts de recherche en cours se concentrent sur la résolution des défis restants, tels que l'amélioration de la stabilité de l'entraînement, l'atténuation du surapprentissage lors du réglage fin et l'optimisation des besoins en mémoire et en communication.
Une direction prometteuse est l’exploration des architectures hiérarchiques du MoE, dans lesquelles chaque expert lui-même est composé de plusieurs sous-experts. Cette approche pourrait potentiellement permettre une évolutivité et une efficacité de calcul encore plus grandes tout en conservant la puissance expressive des grands modèles.
De plus, le développement de systèmes matériels et logiciels optimisés pour les modèles MoE constitue un domaine de recherche actif. Des accélérateurs spécialisés et des cadres de formation distribués conçus pour gérer efficacement les modèles de calcul clairsemés et conditionnels des modèles MoE pourraient encore améliorer leurs performances et leur évolutivité.
En outre, l'intégration des techniques MoE avec d'autres avancées dans la modélisation du langage, telles que des mécanismes d'attention clairsemés, des stratégies de tokenisation efficaces et des représentations multimodales, pourrait conduire à des modèles de langage encore plus puissants et polyvalents, capables d'aborder un large éventail de tâches.
Conclusion
La technique du mélange d'experts est apparue comme un outil puissant dans la recherche de modèles linguistiques plus grands et plus performants. En activant sélectivement des experts en fonction des données d'entrée, les modèles MoE offrent une solution prometteuse aux défis informatiques associés à la mise à l'échelle des modèles denses. Bien qu'il reste encore des défis à surmonter, tels que l'instabilité de la formation, le surapprentissage et les besoins en mémoire, les avantages potentiels des modèles MoE en termes d'efficacité informatique, d'évolutivité et de durabilité environnementale en font un domaine passionnant de recherche et de développement.
Alors que le domaine du traitement du langage naturel continue de repousser les limites du possible, l’adoption des techniques MoE est susceptible de jouer un rôle crucial dans la création de la prochaine génération de modèles linguistiques. En combinant MoE avec d'autres avancées en matière d'architecture de modèles, de techniques de formation et d'optimisation matérielle, nous pouvons nous attendre à des modèles de langage encore plus puissants et polyvalents, capables de véritablement comprendre et communiquer avec les humains de manière naturelle et transparente.
J'ai passé les cinq dernières années à m'immerger dans le monde fascinant du Machine Learning et du Deep Learning. Ma passion et mon expertise m'ont amené à contribuer à plus de 50 projets de génie logiciel divers, avec un accent particulier sur l'IA/ML. Ma curiosité continue m'a également attiré vers le traitement automatique du langage naturel, un domaine que j'ai hâte d'explorer davantage.
Tu peux aimer
-
Se préparer à la publicité dans les grands modèles linguistiques
-
Les modèles linguistiques changent leurs réponses en fonction de votre façon de parler
-
Les modèles de langage personnalisés sont faciles à créer – et plus difficiles à détecter
-
L'avenir de la publicité après un coup d'État de l'IA
-
Comment faire fonctionner ChatGPT normalement
-
L'IA réagit différemment lorsqu'elle sait qu'elle est testée, selon une étude