My IBM Se connecter S’abonner

Qu’est-ce que le mélange d’experts ?

5 avril 2024

Auteurs

Dave Bergmann

Senior Writer, AI Models

IBM

Qu’est-ce que le mélange d’experts ?

Le mélange d’experts (MoE) est une approche du machine learning qui consiste à diviser un modèle d’intelligence artificielle (IA) en sous-réseaux distincts (ou « experts »), chacun spécialisé dans un sous-ensemble de données d’entrée, afin d’effectuer conjointement une tâche.

L’architecture MoE favorise l’utilisation de modèles à grande échelle, y compris ceux contenant plusieurs milliards de paramètres, afin de réduire considérablement les coûts de calcul pendant la phase de pré-entraînement et d’accélérer la performance pendant le temps d'inférence. D’une manière générale, cette efficacité est atteinte en activant uniquement les experts nécessaires pour accomplir une tâche donnée, sans avoir à activer l’ensemble du réseau neuronal pour chaque tâche.

Bien que les configurations MoE modernes aient été développées en grande partie au cours de la dernière décennie, le principe fondamental des modèles MoE a été avancé dans l’article « Adaptive Mixture of Local Experts » publié en 1991. L’article proposait d’entraîner un système d’IA composé de réseaux distincts, chacun spécialisé dans un sous-ensemble différent de cas d’entraînement. Cela impliquait d’entraîner les « réseaux experts », ainsi qu’un réseau de contrôle chargé de déterminer l’expert à utiliser pour chaque sous-tâche. Les auteurs avaient constaté que leur modèle expérimental était nettement plus rapide à entraîner qu’un modèle conventionnel analogue, atteignant le seuil de précision cible en deux fois moins d’époques d’entraînement.1

Au cours de ces dernières années, alors que les principaux modèles d’apprentissage profond utilisés pour l’IA générative sont devenus de plus en plus volumineux et exigeants en termes de calcul, le mélange d’experts offre un compromis entre la capacité supérieure des grands modèles et l’efficacité accrue des modèles plus petits. Cela a notamment été exploré dans le domaine du traitement automatique du langage naturel (TAL) : certains grands modèles de langage (LLM) de premier plan, comme le Mixtral 8x7B de Mistral et (selon certains rapports) le GPT-4,2 d’OpenAI, s’appuient sur une architecture MoE.

Mélanges d’experts en apprentissage profond

Les modèles modernes d’apprentissage profond sont créés à partir de réseaux neuronaux artificiels, comprenant plusieurs couches de nœuds interconnectés (ou « neurones »). Chaque neurone possède une fonction d’activation : une opération mathématique effectuée sur les données reçues de la couche précédente, dont la sortie informe l’entrée de la couche suivante. Les réseaux neuronaux à action directe (FFN) classiques traitent les informations en transmettant progressivement les données d’entrée des neurones d’une couche aux neurones de la couche suivante, jusqu’à ce qu’elles atteignent une couche externe qui produit les prédictions. Certaines architectures de réseau neuronal intègrent des éléments supplémentaires, comme les mécanismes d'auto-attention des modèles de type transformateur, qui capturent des modèles et dépendances supplémentaires dans les données d’entrée. 

Les connexions entre couches et neurones sont gérées par des paramètres de modèle pouvant être appris : des poids variables (et des biais) qui amplifient ou diminuent l’influence d’une partie donnée de la sortie du réseau sur d’autres parties du réseau. Les modèles d’apprentissage profond « apprennent » en ajustant ces paramètres, à l’aide d’algorithmes d’optimisation comme la descente de gradient, de manière à augmenter la précision de leurs prédictions.

Si un plus grand nombre de paramètres augmente la capacité du modèle, c’est-à-dire sa capacité à absorber des informations et des schémas, il augmente également la quantité de ressources de calcul nécessaires pour entraîner et exploiter le modèle. Dans un modèle d’apprentissage profond classique (ce que l’on appelle dans ce contexte un modèle dense), l’ensemble du réseau est exécuté pour traiter chaque entrée. Cela crée un compromis entre la capacité du modèle et sa praticité. 

Contrairement aux modèles denses conventionnels, le mélange d’experts s’appuie sur le calcul conditionnel pour favoriser la parcimonie : au lieu d’utiliser l’ensemble du réseau pour chaque entrée, les modèles MoE apprennent une fonction de cartographie peu gourmande en calcul pour déterminer les parties du réseau, à savoir les experts les plus efficaces pour traiter une entrée donnée, comme un jeton individuel utilisé pour représenter un mot ou un fragment de mot dans les tâches TAL.

Cela permet d’augmenter la capacité du modèle (en augmentant le nombre total de paramètres) sans augmenter la charge de calcul nécessaire pour l’entraîner et l’exécuter (car tous ces paramètres ne seront pas nécessairement utilisés à un moment donné).

Design 3D de balles roulant sur une piste

Les dernières actualités et informations en matière d’IA 


La newsletter hebdomadaire Think vous apporte toute l’actualité sur l’IA, le cloud et bien d’autres sujets.

Le mélange d’experts : comment ça marche ?

Les modèles MoE traitent les données en désignant un certain nombre d’« experts », chacun ayant son propre sous-réseau au sein d’un réseau neuronal plus grand, et en entraînant un réseau de contrôle (ou routeur) pour activer uniquement le ou les experts les mieux adaptés à une entrée donnée.

Le principal avantage de l’approche MoE est celui de favoriser la parcimonie au lieu d’activer l’ensemble du réseau neuronal pour chaque jeton d’entrée. Cela permet d’augmenter la capacité du modèle tout en maintenant les coûts de calcul constants.

Sur le plan architectural, cela consiste à remplacer les couches du réseau à action rapide (FFN) traditionnel et dense par des couches MoE clairsemées (ou blocs). Dans le jargon des réseaux neuronaux, le terme « bloc » désigne un élément structurel récurrent qui remplit une fonction spécifique. Dans un modèle MoE clairsemé (SMoE), ces blocs experts peuvent être des couches simples, des FFN autonomes ou même des MoE imbriqués.

Par exemple, dans le modèle de langage Mixtral 8x7B de Mistral, chaque couche est composée de 8 blocs à action directe, ou experts, dont chacun comporte 7 milliards de paramètres. Pour chaque jeton, à chaque couche, un réseau de routeurs sélectionne deux de ces huit experts pour traiter les données. Les sorties de ces deux experts sont ensuite combinées, et le résultat est transmis à la couche suivante. Les experts sélectionnés par le routeur sur une couche donnée peuvent être différents de ceux sélectionnés au niveau de la couche précédente ou suivante.3

Nombre de paramètres MoE

Si un SMoE peut être entièrement composé de couches MoE clairsemées, bon nombre d’architectures MoE associent blocs clairsemés et blocs denses. Cela est également vrai pour Mixtral, dont les blocs responsables du mécanisme d’auto-attention du modèle sont partagés entre les 8 experts. En pratique, les désignations telles que « 8x7B » peuvent prêter à confusion : étant donné que les paramètres du modèle sont partagés en grande partie par chaque sous-réseau d’experts de 7 milliards de paramètres, Mixtral comporte au total environ 47 milliards de paramètres, et non 56 milliards comme on pourrait le croire en effectuant une simple multiplication.

Communément appelé nombre de paramètres épars, ce nombre global de paramètres permet de mesurer la capacité du modèle. Le nombre de paramètres réellement utilisés pour traiter chaque jeton (lorsqu’il transite par certains blocs experts et en contourne d’autres) est appelé nombre de paramètres actifs et permet de mesurer les coûts de calcul associés au modèle. Bien que chaque entrée de jeton dans Mixtral ait accès à 46,7 milliards de paramètres, seuls 12,9 milliards de paramètres actifs sont utilisés pour traiter un exemple donné.

Comprendre cette utilisation optimale du nombre de paramètres est essentiel pour comprendre les avantages des modèles MoE. Par exemple, Mixtral surpasse la variante à 70 milliards de paramètres de Llama 2 de Meta sur la plupart des indices de référence, avec une vitesse nettement supérieure, bien qu’il comporte un tiers de paramètres en moins et qu’il utilise moins de 20 % de paramètres actifs au moment de l’inférence.3

Il convient toutefois de noter que le nombre global de paramètres d’un MoE clairsemé n’est pas totalement sans rapport avec les exigences de calcul. Bien que l’on n’utilise qu’un sous-ensemble de paramètres lors de l’inférence, l’ensemble des paramètres du modèle doit être chargé en mémoire, ce qui signifie que l’efficacité de calcul dont bénéficient les SMoE à bien des égards ne s’applique pas à leurs besoins en RAM/VRAM.

Parcimonie

Le concept (tout comme l’efficacité) des MoE repose sur le fait que seuls certains experts (et donc certains paramètres) d’une couche éparse seront activés à un moment donné, ce qui réduit les besoins en calcul actif.

Si le calcul conditionnel est proposé depuis longtemps comme un moyen théorique de découpler demandes de calcul et augmentation de la capacité du modèle, les défis algorithmiques et de performance n’ont été relevés qu’en 2017, grâce à l’article de Shazeer et al’ « Outrageously Large Neural Networks : The Sparsely-Gated Mixture-of-Experts Layer  »4.

Les avantages des couches éparses par rapport aux couches denses sont encore plus évidents dans le cas des données de grande dimension, dont les modèles et les dépendances sont souvent complexes et non linéaires. Par exemple, dans les tâches NLP qui nécessitent le traitement d’une longue séquence de texte, chaque mot n’est généralement lié qu’à un petit sous-ensemble d’autres mots dans cette séquence. Les SMoE présentent donc un immense potentiel dans le domaine des LLM, où les modèles MoE bien calibrés peuvent profiter des avantages de la parcimonie sans compromettre la performance. Les modèles MoE à portes clairsemées se sont également avérés efficaces pour assurer les tâches de vision par ordinateur 5 6, et demeurent un domaine d’étude actif en ce sens. 

Cette parcimonie est rendue possible par le calcul conditionnel : l’activation dynamique de certains paramètres en réponse à des entrées données. La conception efficace du réseau de contrôle (ou « routeur »), qui applique ce calcul conditionnel, est donc essentielle à la réussite des modèles MoE.

Routage

Plusieurs mécanismes de contrôle peuvent être utilisés pour sélectionner les experts à utiliser dans une situation donnée. Une fonction de contrôle efficace est indispensable pour garantir la performance du modèle. En effet, en présence d’une mauvaise stratégie de routage, certains experts sont susceptibles d’être trop ou pas assez entraînés, ce qui affecterait l’efficacité globale du réseau.

Dans une configuration MoE traditionnelle, un mécanisme de contrôle typique, introduit par l’article avant-gardiste de Shazeer, utilise la fonction softmax : pour chacun des experts, pour chaque exemple, le routeur prédit les probabilités (basées sur le poids des connexions de cet expert selon le paramètre actuel) que cet expert produise la meilleure sortie pour une entrée donnée. Au lieu de calculer les sorties de chaque expert, le routeur calcule uniquement la sortie des k meilleurs experts pour cet exemple, selon ses prédictions. Comme indiqué précédemment, Mixtral utilise cette stratégie de routage classique des « k meilleurs ». Plus précisément, il utilise le routage top-2 , c’est-à-dire k=2, en sélectionnant les 2 meilleurs experts (sur un total de 8).

Dans leur article influent de 2021, « Switch Transformers : Scaling to Trillion Parameter Models with Simple and Efficiency Sparsity », Fedus et al. ont poussé le routage « top-k » à son extrême : en s’appuyant sur le T5 LLM de Google, ils ont remplacé les couches FFN du modèle par 128 experts et ont mis en œuvre le k=1, également appelé « routage dur ». Même en mettant à l’échelle le modèle jusqu’à un billion de paramètres, ils ont pu, grâce à cette configuration, améliorer la vitesse de pré-entraînement de 400 %.6

Equilibrage de charge

Malgré leurs nombreux avantages, les MoE compliquent considérablement le processus d’entraînement. Un inconvénient important de la stratégie de routage top-k « vanilla » est le risque que le réseau de contrôle converge pour n’activer que quelques experts. Il s’agit d’un problème qui s’auto-alimente : si plusieurs experts sont sélectionnés de manière disproportionnée dès le début, ils seront entraînés plus rapidement, puis continueront à être sélectionnés davantage car ils produisent des prédictions désormais plus fiables que les autres experts moins entraînés. En raison de cette charge déséquilibrée, les autres experts finissent par devenir, au sens figuré comme au sens propre, des poids morts.

Pour remédier à cela, Shazeer et al. ont introduit un système de contrôle top-k bruyant : un bruit gaussien est ajouté aux valeurs de probabilité prédites pour chaque expert, afin d’apporter un caractère aléatoire qui favorise une activation plus uniforme des experts. Ils ont également ajouté à la sélection des experts deux termes de régularisation pouvant être entraînés : minimiser les pertes d’équilibrage de charge pour éviter une dépendance excessive à l’égard d’un seul expert, et minimiser la perte de diversité des experts pour favoriser une utilisation égale de tous les experts.

L’article publié par Google en 2020, « GShard : Scaling Giant Models with Conditional Computation and Automatic Sharding », proposait deux méthodes supplémentaires d'équilibrage de charge :

  • Routage aléatoire : alors que le « premier » expert de leur configuration top 2 est sélectionné à l’aide de la fonction softmax standard, le deuxième est choisi de manière semi-aléatoire (avec la probabilité que tout expert soit choisi proportionnellement au poids de sa connexion). Le deuxième expert le mieux classé est donc le plus susceptible d’être sélectionné, mais sa sélection n’est toutefois plus garantie.

  • Capacité des experts : les auteurs fixent un seuil qui définit le nombre maximal de jetons pouvant être traités par un seul expert. Si l’un des deux meilleurs experts choisis a atteint sa capacité maximale, le jeton est considéré comme « débordé » et ignoré pour passer à la couche suivante du réseau.7

AI Academy

Pourquoi les modèles de fondation constituent-ils un changement de paradigme pour l’IA ?

Découvrez une nouvelle catégorie de modèles IA flexibles et réutilisables, capables de générer de nouveaux revenus, de réduire les coûts et d’augmenter la productivité. Utilisez ensuite notre guide pour obtenir plus d’informations.

Réglage fin des modèles MoE

Comme mentionné précédemment, les avantages des modèles clairsemés sont parfois contrebalancés par leur complexité accrue. Les défis liés à la mise en œuvre des MoE sont particulièrement évidents au cours du processus de réglage fin. Les modèles clairsemés sont davantage sujets au sur-apprentissage que les modèles denses traditionnels. La présence de couches de MoE clairsemés et de couches FFN denses complique l’adoption d’une approche universelle.

Plusieurs observations et approches ont été avancées pour réduire l’instabilité lors du réglage fin des MoE. Les auteurs de l’article « Switch Transformers » avaient constaté que les variantes comportant moins d’experts bénéficiaient d’un réglage fin plus efficace, ce qui indique qu’utiliser un plus grand nombre d’experts lors du pré-entraînement est susceptible d’entraver la spécialisation sur les tâches en aval.

Dans un article publié en 2022, « ST-MoE : Designing Stable and Transferable Sparse Expert Models », Zoph et al ont comparé les résultats de 5 approches différentes : procéder au réglage fin de tous les paramètres (« Tous »), uniquement des paramètres non MoE (« Non MoE ») ), uniquement des paramètres MoE (« MoE »), uniquement des paramètres d’auto-attention et d’attention encodeur-décodeur (« Attention ») et uniquement des paramètres FFN non-MoE (« FFN »).

  • La différence constatée entre « Tous » et « Non MoE » était infime.

  • Le réglage fin des seuls paramètres Attention a entraîné une légère perte de performance.

  • La mise à jour des seuls paramètres MoE a considérablement diminué la performance du modèle, malgré le fait qu’environ 80 % de ses paramètres se trouvaient dans les couches MoE clairsemées.

  • L'approche FFN était la seule à améliorer la performance par rapport à la ligne de base « Tous ». 

Étant donné que les couches d’experts ne représentaient qu’un quart du nombre total de couches de leur modèle, et qu’un jeton ne permet d’identifier que deux experts par couche maximum, les auteurs ont émis l’hypothèse que l’isolement des paramètres MoE entraînerait des mises à jour du poids moins complètes (et donc un sur-ajustement et une perte d’entraînement).8

Réglage des instructions pour mélanges d’expert

Un article publié en juillet  2023, « Mixture-of-Experts Meets Instruction Tuning », explorait l’impact du réglage d’instructions sur les modèles MoE en utilisant comme base de référence des équivalents des LLM T5 et Flan-T5 de Google : une version du T5 réglée selon le protocole Flan de Google ; des LLM comme base de référence. L’expérience consistait à comparer quatre configurations : procéder au réglage fin d’un modèle T5 dense, d’un modèle Flan-T5 dense, d’un modèle MoE et d’un modèle Flan-MoE réglé par instructions.

Comme prévu, l’équivalent T5 dense a surpassé le MoE après ce réglage fin. En revanche, une fois affiné, le modèle Flan-MoE s’est avéré nettement plus performant que le modèle Flan-T5. De plus, l’amélioration enregistrée par le Flan-MoE par rapport au MoE était encore plus importante que celle du Flan-T5 par rapport au T5 d’origine9.

Il est encourageant de constater que, malgré les difficultés rencontrées en cas de réglage fin standard, le réglage par instructions profite aux modèles MoE plus qu’à leurs homologues denses. Ce constat s’est concrétisé avec la publication acclamée de Mixtral 8x7B Instruct, une variante de Mixtral réglée par instructions qui est proposée comme modèle de fondation dans IBM watsonx.ai.

Solutions connexes

Solutions connexes

Modèles de fondation

Explorez la bibliothèque de modèles de fondation d’IBM dans le portefeuille watsonx pour déployer l’IA générative dans votre entreprise en toute confiance.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Explorez la bibliothèque de modèles de fondation d’IBM dans le portefeuille IBM watsonx pour déployer l’IA générative dans votre entreprise en toute confiance.

Découvrir watsonx.ai Découvrir les solutions d’IA