// CLUBIC — INTELLIGENZA ARTIFICIALE
Qu'est-ce qu'un modèle d’IA MoE, et pourquoi n'utilise-t-il qu'une partie de ses paramètres ?
Certains modèles d'intelligence artificielle comptent des centaines de milliards de paramètres, mais n'en mobilisent qu'une fraction pour traiter chaque token. Une particularité des architectures MoE, qui permet d'augmenter leur capacité sans multiplier les calculs dans les mêmes proportions.
Quand on tombe sur un modèle d'IA annonçant mille milliards de paramètres (impressionnant !), puis qu'on apprend qu'il n'en mobilise en réalité que cinquante milliards par token (bonjour la déception), on aurait quand même toutes les bonnes raisons du monde de se demander si on ne nous prendrait pas pour des dindons, par hasard. Et les 950 milliards restants, ils servent à faire joli ? Pas du tout. Ils sont bien là, mais le modèle n'a pas besoin de tous les solliciter pour traiter chaque token. C'est le principe des architectures Mixture of Experts (MoE), littéralement « mélange d'experts », qui répartissent le travail entre différents groupes de paramètres selon les informations à traiter.
Quand on soumet une requête à un modèle de langage, il commence par découper le texte en tokens, de petites unités pouvant correspondre à des mots, des morceaux de mots ou des caractères. Il convertit ensuite chaque token en une représentation numérique, que les calculs successifs du modèle font évoluer à l'aide de ses paramètres, qui s'apparentent à des coefficients ajustés pendant l'entraînement pour donner plus ou moins de poids aux informations traitées.
Ces opérations permettent de tenir compte du contexte de la requête et, à terme, de déterminer les probabilités des tokens susceptibles de venir ensuite. Le modèle finit par en sélectionner un, puis procède de la même façon pour les suivants.
Pour effectuer ce travail, le modèle peut soit s'appuyer sur le même ensemble de paramètres d'un token à l'autre, quel que soit le texte traité, soit sélectionner, pour chaque token, quelques groupes ciblés de paramètres appelés « experts ». Dans le premier cas, on parle d'architecture dense ; dans le second, d’architecture MoE.
Avec un nom pareil, on aurait tôt fait d’imaginer une IA composée de plusieurs petits modèles, chacun excellent dans un domaine bien précis : les maths pour l'un, la traduction pour l'autre, la programmation pour un troisième, etc.
Sauf que les experts d'un MoE ne sont pas des mini-modèles autonomes, mais des sous-réseaux de neurones dotés de leurs propres paramètres. Leurs éventuelles spécialisations dépendent de ce qu'ils apprennent pendant l'entraînement, et non d'une discipline qu'on leur aurait attribuée à l'avance.
Ces sous-réseaux prennent place dans certaines couches du modèle, c'est-à-dire dans les étapes successives au fil desquelles évolue la représentation numérique des tokens. Là où une architecture dense ferait intervenir un seul sous-réseau de ce type, un MoE peut en réunir plusieurs dans une même couche, sans qu'ils soient tous sollicités pour chaque token.
Ce choix revient à un routeur. À partir de la représentation du token, qui tient déjà compte de son contexte, ce système d'aiguillage propre à chaque couche MoE attribue un score aux experts disponibles et retient les mieux notés pour la traiter. La sélection peut ainsi changer d'un token à l'autre, mais aussi d'une couche à la suivante. Lorsque plusieurs experts interviennent, le modèle combine leurs contributions avant de poursuivre ses calculs.
Les experts ne prennent cependant pas tous les calculs en charge. Dans les architectures MoE courantes, les opérations qui analysent les relations entre les tokens, par exemple, utilisent les mêmes paramètres, quels que soient les experts sélectionnés. Les 50 milliards de paramètres actifs évoqués au départ comprennent donc à la fois ceux des experts retenus et ceux utilisés pour ces opérations communes.