Тёмный

Qu'est-ce que le Mixture of Experts (MoE) ? 

Alexandre TL
Подписаться 4,9 тыс.
Просмотров 2,3 тыс.
50% 1

Опубликовано:

 

7 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 21   
@atha5469
@atha5469 4 месяца назад
Stylé, continue
@mohammedbelhadj-hm8qn
@mohammedbelhadj-hm8qn 4 месяца назад
Très bien expliqué. Merci
@dokisho3054
@dokisho3054 4 месяца назад
Je viens de découvrir votre chaîne et bien que je trouve le sujet de la vidéo assez profond et que je ne sois pas quelqu'un qui s'y connaisse en LLM ou en apprentissage profond, j'arrive à comprendre la plupart des points que vous soulevez. Je ne manquerai pas de dévorer la chaîne. Merci de partager vos connaissances.
@alexandretl
@alexandretl 4 месяца назад
Merci beaucoup pour ce commentaire! Bon visionnage, et n'hésitez pas à commenter si vous avez des questions
@JetyWorld
@JetyWorld 4 месяца назад
👍
@bosanova1643
@bosanova1643 4 месяца назад
Vraiment extrêmement bien expliqué, merci beaucoup
@alexandretl
@alexandretl 4 месяца назад
Merci pour le retour!
@Hickssama
@Hickssama 4 месяца назад
Toujours incroyable tes vidéos, merci !! Cool d’ailleurs de t’être détaché du format iPad (même si je pense que le format iPad est très bien adapté pour d’autres vidéos) 😁
@alexandretl
@alexandretl 4 месяца назад
Ouais certaines vidéos d'y prêtent bien d'autres non. Merci pour le retour!
@josephtilly258
@josephtilly258 4 месяца назад
Est-ce que les agents IA serait comparable aux à une sorte d’MoE ? Utilisant plusieurs spécialistes pour faire accomplir une tâche précise
@alexandretl
@alexandretl 4 месяца назад
Oui on peut dire ça 👍il y a des petites différences (pour les agents, on prend la sortie d'un seul des agents, et chaque agent est clairement spécialisé dans un domaine) mais dans le principe c'est ça (dans le machine learning cette technique qui consiste à utiliser plusieurs modèles s'appelle l'ensemble learning)
@Redro_
@Redro_ 4 месяца назад
Merci !
@redone7696
@redone7696 3 месяца назад
Bonjour, j’aurais une petite question. Je suis en train d’entraîner un transformeur qui génère du texte. Le transformeur prend en entrée une séquence de tokens et prédit le prochain token. Exemple : Entrée : [bon, jour, les] Cible : [jour, les, amis] Dans tous les cours que j’ai vus, la cible est décalée d’un token vers la droite, elle n’a pas le premier token. Mais dans le cas où il y a des tokens de fin de séquence ou de rembourrage, j’ai l’impression que ça ne sert à rien. Par exemple : Entrée : [bon, jour, les, amis] Sortie : [jour, les, amis, EOS] Dans cet exemple ou un exemple de rembourrage, j’ai l’impression que le modèle ne prédit pas vraiment un mot. Peut-être que je me trompe, je suis débutant.
@alexandretl
@alexandretl 3 месяца назад
oui alors déjà le token n'est pas du rembourrage (ou padding) c'est un token qui annonce la fin d'une séquence (End Of Sequence). donc c'est utile d'apprendre au Transformer à prédire ce token, puisque ça fait aussi parti du problème (en fait on lui donne l'information que la séquence doit s'arrêter avec le EOS). donc la prédiction amis->EOS est bien utile ! pour ce qui est du rembourrage ou padding, là en effet tu auras qqchose du genre : [bon, jour, les, amis, EOS, pad, pad, pad, pad] [jour, les, amis, EOS, pad, pad, pad, pas, pad] donc là en effet les prédictions EOS->pad et pad->pad sont complètement inutiles (et donc c'est des calculs gâchés mais on peut pas faire ça). Pour ne pas prendre en compte ces prédictions inutiles, en fait dans le calcul du loss tu peux passer un ignore_index qui va dire à la fonction qui calcule le loss de ne pas prendre en compte dans le loss toutes les prédictions XX->pad. (en pytorch notamment avec torch.nn.functional.cross_entropy) j'espère que c'est clair! et aussi, on peut aussi rajouter un token pour Start Of Sequence, pour signaler le début d'une séquence. parce qu'au moment de générer des phrases (à l'inférence) il faut bien partir d'un token de départ que tu donnes au Transformer, donc si tu ne veux pas avoir à lui donner un token spécial (comme "bon") tu peux lui donner le token générique (à condition évidemment d'avoir ajouter un sur tes séquences pendant l'entraînement!)
@redone7696
@redone7696 3 месяца назад
@@alexandretl Salut, alors déjà merci beaucoup pour ta réponse très claire et concise. J’ai pas mal avancé depuis ces derniers temps. J’ai utilisé une méthode un peu différente de celle que tu as énoncée, je ne sais pas si c’est la meilleure. En gros, j’ai fait le décalage puis j’ai mis le padding. Donc ça me donnerait quelque chose comme : Input = [mon, chien] Target = [chien, rouge] Puis j’ai juste rajouté le pad de ces deux vecteurs. Je ne sais pas si c’est une bonne solution. Par contre, j’ai un autre problème, et malheureusement je n’arrive pas à trouver de vraies réponses ou des pistes de recherche. J’ai suivi le tutoriel TensorFlow de génération de texte avec un RNN (le dataset Shakespeare). J’ai alors décidé de remplacer le RNN par un transformeur décodeur (un peu comme GPT). Seulement, quand je compare l’accuracy des deux modèles RNN vs transformeur décodeur, il y a une très grosse différence : 0,55 vs 0,78. Je ne comprends pas pourquoi le RNN a un meilleur score à ce point-là. Note : Pour les paramètres du RNN, c’est les mêmes que celui du tuto original. Pour le transformeur décodeur : Num heads = 8 Num layer = 6 Dff = 1024 D_model = 256 Epoch = 20 (pour les 2)
@alexandretl
@alexandretl 3 месяца назад
@@redone7696 Pour ta question sur le padding ça revient au même de faire d'abord le décalage puis le padding ou d'abord mettre le padding puis faire le décalage. Quand tu parle de 0,55 et 0,78 tu dis que c'est une accuracy mais accuracy de quoi ? et au niveau du cout/loss, quelle différence entre RNN et Transformer ? tu peux aussi regarder l'évolution du cout en fonction du temps pour le Transformer et regarder si ça descend bien, s'il faut encore l'entraîner etc et aussi pour l'optimiseur avec le Transformer n'oublie pas d'utiliser AdamW.
@redone7696
@redone7696 3 месяца назад
@@alexandretl effectivement avec adamW il y il y a une amélioration !! , j’utilise Sparse Categorical Crossentropy Et par contre j’utilise learning rate sheduler avec la formule du papier original je sais pas si c’est la meilleure option.
@redone7696
@redone7696 3 месяца назад
@@alexandretl En fait, même pour la loss, le Transformer descend assez vite, mais à partir de loss = 1,4, ça devient hyper difficile de baisser plus. Alors que le RNN, il descend tranquillement à chaque epoch. À 20 epochs, il est à 0,7.
@michaelbaudin
@michaelbaudin 2 месяца назад
Pourquoi ne pas traduire par "mélange d'experts" au lieu d'"'ensemble d'experts" ? Après tout, c'est bien un mélange des prédictions de chaque expert qui est réalisée lorsqu'on utilise une combinaison linéaire, et non pas une agrégation. L'expression "agréger A et B" signifie qu'on crée le mot (A, B) : ce n'est pas ce qui est fait ici.
@alexandretl
@alexandretl 2 месяца назад
En fait il y a une raison précise à cela, c'est le concept d'ensemble learning en ML. Cette technique du MoE est un exemple de cette méthode d'ensemble, c'est pour cela que j'ai fait ce choix.
Далее
2 expériences (a priori) contradictoires sur les LLMs
12:45
Why Does Diffusion Work Better than Auto-Regression?
20:18
Linkin Park: FROM ZERO (Livestream)
1:03:46
Просмотров 6 млн
Первый день школы Катя vs Макс
19:37
Modus males sekolah
00:14
Просмотров 10 млн
Understanding Mixture of Experts
28:01
Просмотров 9 тыс.
Ces IA qui s'entraînent dans leur imagination
13:08
Просмотров 4,4 тыс.
Has Generative AI Already Peaked? - Computerphile
12:48
Les champions du monde de drones battus par une IA
9:52
Vous devriez changer de navigateur internet
14:22
Просмотров 230 тыс.
How AI 'Understands' Images (CLIP) - Computerphile
18:05
Linkin Park: FROM ZERO (Livestream)
1:03:46
Просмотров 6 млн