ToolNavs Outils IA à découvrir
Proposer Connexion
Retour à Encyclopédie de l’IA
Qu'est-ce que le Mixture of Experts (MoE) ? Beaucoup de paramètres au total, une petite partie calculée à la fois

Qu'est-ce que le Mixture of Experts (MoE) ? Beaucoup de paramètres au total, une petite partie calculée à la fois

Encyclopédie de l’IA • Admin • • 18 vues

Le Mixture of Experts (MoE) est une structure de modèle qui remplace le réseau feedforward par plusieurs sous-réseaux experts, un routeur attribuant le calcul par jeton. L'essentiel n'est pas le nombre d'experts, mais l'activation parcimonieuse : chaque jeton ne traverse que quelques experts, les autres restant inactifs à cette étape. Le nombre total de paramètres peut donc être très grand, tandis que le coût de calcul par étape d'inférence ne se compte que sur la partie activée. Comprendre cette phrase, c'est comprendre tous les arbitrages du MoE.

Le routeur est le composant le plus petit et pourtant le plus important du MoE. C'est un petit réseau apprenable qui lit la représentation de chaque jeton, note tous les experts et ne conserve que les k meilleurs. Les experts sélectionnés traitent chacun le jeton, et leurs sorties sont combinées selon les poids du routeur. Les couches d'attention, les plongements et le routeur lui-même sont partagés par tous les jetons ; seules les couches feedforward des experts sont parcimonieuses. Certaines conceptions ajoutent un expert partagé que chaque jeton traverse, pour traiter les motifs communs et soulager les experts routés.

Modèles denses et MoE : séparer les deux factures

Un modèle dense exécute tous les paramètres pour chaque jeton généré, de sorte que doubler les paramètres double à peu près le calcul et la mémoire. Le MoE sépare les deux : les paramètres totaux décident du nombre de poids à loger en mémoire, les paramètres activés décident de la vitesse de chaque étape. Sur la même carte, un modèle MoE peut souvent contenir bien plus de paramètres totaux, mais il ne fonctionne pas comme un petit modèle dense, car tous les poids doivent rester en mémoire, et charger et changer d'experts coûte aussi. Ne regarder que les paramètres totaux induit en erreur, et ne regarder que les paramètres activés aussi ; les deux chiffres doivent être lus ensemble.

Trois idées reçues courantes doivent être séparées. Premièrement, les experts ne sont pas des services divisés par discipline. Le routage apprend une division du travail sur des motifs statistiques ; personne ne colle à un expert une étiquette « expert maths » ou « expert code », et imposer un expert par sujet n'est pas fiable. Deuxièmement, plus d'experts n'ajoute pas automatiquement des capacités. Si le routeur envoie la plupart des jetons vers quelques experts, les experts inactifs sont de la mémoire gaspillée, c'est pourquoi l'entraînement prévient cet effondrement par des contraintes d'équilibrage de charge. Troisièmement, le MoE n'économise pas automatiquement de l'argent. Il économise le calcul par jeton, en échange d'une mémoire plus grande, d'un déploiement plus complexe et d'un entraînement plus difficile à déboguer ; le service d'inférence doit aussi payer la parallélisation des experts et la communication.

Le MoE convient aux scénarios où le besoin de capacité totale est grand, le budget de latence par étape serré, et où l'on peut assumer une grande mémoire et un déploiement distribué, comme l'inférence en ligne à grande échelle. Faire tourner un MoE sur un appareil personnel commence par la facture mémoire : le volume total des poids décide s'il tient, la quantité activée décide de la vitesse, et les deux conditions sont requises. À l'inverse, quand l'échelle des paramètres est modeste et le déploiement simple, un modèle dense est souvent plus simple, avec des outils de débogage et de quantification plus matures. Choisissez une architecture d'abord selon les contraintes, puis selon les chiffres de paramètres.

Outils Recommandés

Plus