Supposons que nous ayons 8 fourgons et que nous dirigions une entreprise de déménagement. L'entreprise a une fameuse réglementation : chaque fois que nous recevons une commande, nous devons affecter 2 camionnettes pour livrer les affaires des clients.[1] Idéalement, nous devrions attribuer les camionnettes en fonction de la taille de la commande. Par exemple, nous pouvons attribuer 1 camionnette aux petites commandes et plusieurs camionnettes aux grosses commandes. Cependant, en raison de la réglementation, nous devons attribuer 2 camionnettes à chaque commande, même si la commande est petite ou grande.
Dans le premier cas (à gauche) de la figure ci-dessus, c'est un gaspillage d'argent d'utiliser 2 camionnettes pour une valise et un ours en peluche. Dans le dernier cas (à droite), la livraison de la commande peut prendre plus de temps car les camionnettes devront peut-être faire plus de voyages pour livrer toutes les affaires.[2]
Normalement, les clients souhaitent que leurs affaires soient livrées rapidement et à moindre coût. Voici donc les questions :
Ce sont exactement les problèmes que le routage dynamique vise à résoudre dans les modèles Mixture-of-Experts (MoE). Pour chaque jeton, un routeur conventionnel sélectionne les k meilleurs experts pour le calcul, où kkk est un nombre fixe. Disons qu'il y a un total d'experts NeN_eNe, le routeur sélectionne toujours les meilleurs experts pour le calcul. La représentation originale du jeton est notée x∈Rd\mathbf{x} \in \mathbb{R}^dx∈Rd. Ensuite, la représentation du jeton après la couche MoE est calculée comme suit :
y=∑i=1kGi(x)⋅Ei(x), y = \sum_{i=1}^{k} G_i(\mathbf{x}) \cdot E_i(\mathbf{x}), y=i=1∑kGi(x)⋅Ei(x),
G(x)=Top-k(softmax(xWg)), G(\mathbf{x}) = \text{Top-}k(\text{softmax}(\mathbf{x} \mathbf{W}_g)), G(x)=Top-k(softmax(xWg)),
où Gi(x)G_i(\mathbf{x})Gi(x) est la probabilité de routage du iii-ème expert sélectionné, Ei(x)E_i(\mathbf{x})Ei(x) est le iii-ème réseau expert sélectionné, et Wg∈Rd×Ne\mathbf{W}_g \in \mathbb{R}^{d \times N_e}Wg∈Rd×Ne est la matrice de poids du routeur.
En bref, le réseau de routeurs calcule les probabilités de routage pour tous les experts, puis la représentation du jeton est calculée comme la somme pondérée des experts sélectionnés :
Cependant, différents jetons peuvent avoir des préférences de sélection d'experts différentes. Par exemple, pour des tâches de raisonnement complexes, un jeton peut être transmis à davantage d'experts pour de meilleures performances. Lors de tâches simples, un jeton peut être transmis à moins d'experts pour une meilleure efficacité.
Ici, transformons les problèmes des entreprises de déménagement ci-dessus dans le contexte du MoE :
Dans cet article, nous fournirons une brève introduction aux techniques de routage dynamique du MoE et à le...
[Courte citation de 8% de l'article original]