Comprendre les Transformers en 10 minutes

  Рет қаралды 8,472

Alexandre TL

Alexandre TL

Күн бұрын

Dans cette vidéo, on voit en dessin comment fonctionne le Transformer, une architecture de réseaux de neurones très puissante et qui est en ce moment très en vogue (merci #chatgpt). On étudie notamment le principe d'attention, l'une des deux puissances des Transformers.
La vidéo sur les RNNs, utile pour comprendre cette vidéo : • Les réseaux de neurone...
Rejoindre la communauté Machine Learning FR : / discord
Me suivre :
Github : github.com/Pro...
Twitter : / alexandretl2

Пікірлер: 27
@tetuaoro
@tetuaoro 8 ай бұрын
Wow les dessins sont beaux ! Merci pour cette superbe vidéo.
@alexandretl
@alexandretl 8 ай бұрын
Merci!
@redone7696
@redone7696 Жыл бұрын
T’es le meilleur youtubeur en IA de toute la France.
@alexandretl
@alexandretl Жыл бұрын
Merci beaucoup, cela fait très plaisir, surtout venant de toi ça fait pas mal de temps que tu me suis!
@redone7696
@redone7696 Жыл бұрын
@@alexandretl oui , j’ai commencé au moment où j’étais en train d’apprendre l’apprentissage par renforcement. J’étais un peu perdu, et puis je suis tombé sur ta chaîne qui m’a sauvé 😂. Merci
@ghizleneouafi
@ghizleneouafi 4 ай бұрын
Merci c'est très bien expliqué
@labyrinthus304
@labyrinthus304 7 ай бұрын
C'est bien beau tout ça, mais quel est le rapport avec Optimus Prime?
@SaveCount-bh8tp
@SaveCount-bh8tp 4 ай бұрын
Tes vidéos sont très utiles merci beaucoup n'oublie pas de m'écrire
@diabolo19x
@diabolo19x Жыл бұрын
Super video, il y a par contre un abus de langage sur le masque. Il n'est utilisé que dans la version predictive des trasnformers (decoder) voir le papier attention is all you need. Super job sinon
@alexandretl
@alexandretl Жыл бұрын
Yes merci! En fait c'est normal puisque tu n'as pas vu la 3e vidéo qui n'est pas encore sortie, mais dans celle ci je dit que le transformer qu'on a vu jusqu'a présent, c'est un décodeur avec une attention causale ;) donc tout va bien
@lest7522
@lest7522 5 ай бұрын
Bien vu
@animewatcher-bk9ur
@animewatcher-bk9ur 3 ай бұрын
Bonjour, je comprends l'idée générale de l'attention mais j'ai du mal à saisir intuitivement comment le produit q(i)*k(j) nous indique à quel point le modèle doit prêter attention au token j. D'après ce que j'ai compris, les queries et les keys proviennent d'un entrainement, mais je ne comprends pas comment ce produit fournit une mesure de la pertinence/attention du token j. Je sais que la notion de produit scalaire nous donne une information sur la "similarité" entre deux vecteurs. Mais du coup, pourquoi ne pas comparer les clés entre eux ? Pourquoi utiliser une query ? Comment peut-on être certain que le produit q(i)*k(j) donne une information pertinente pour l'attention à accorder au token considéré ? Est-ce que pendant l'entrainement, le modèle comprend que le produit q * k signifie "score d'attention" ? Ou alors on voit empiriquement que c'est mieux d'utiliser deux vecteurs q et k différents ? Désolé si les questions sont mal formulées, je ne vois pas encore très clair étant nouveau dans le NLP. En tout cas, merci beaucoup pour vos vidéos !!
@alexandretl
@alexandretl 3 ай бұрын
Oui vos questions sont pertinentes ! Pour répondre à "pourquoi pas utiliser juste des keys", je dirais qu'il y a deux réponses : - la première, qui est la réponse la plus "simple" c'est que ça nous fait utiliser plus de paramètres, donc le modèle est plus expressif / puissant - la seconde réponse, elle s'appuie sur la comparaison de ce système d'attention avec des systèmes de recherche traditionnels. Par exemple quand tu lances un recherche sur KZbin, on va comparer ta demande (query) avec des clés (keys) qui peuvent être des titres de vidéos, des tags, des descriptions etc.. Finalement c'est un peu ce que fait l'attention. Et donc ce qu'il faut voir par là c'est que la demande n'est pas de même nature que les clés, d'où l'idée d'utiliser une key et une query pour l'attention. la première réponse est certaine, la seconde c'est plus de la spéculation sur comment marche le transformer Après biensûr, ça doit sûrement marcher avec seulement des keys, mais moins bien puisque ce n'est pas ce qui est fait en pratique (empiriquement). Et pour finir, oui, le modèle """"apprend"""" à utiliser q * k comme score d'attention pendant l'entraînement (il fait en sorte que q(i)*k(j) donne une information pertinente). J'ai mis des gros guillemets à apprendre puisque ça résulte surtout d'une optimisation mathématique et donc oui il y a un certain apprentissage mais voilà c'est à prendre avec des pincettes J'espère que ça a pu t'éclairer !
@animewatcher-bk9ur
@animewatcher-bk9ur 3 ай бұрын
@@alexandretl Merci beaucoup !!
@shindero
@shindero 3 ай бұрын
Optimum pride
@nathank.2746
@nathank.2746 Жыл бұрын
Super explication ! A quoi correspondent les attentions heads dans les modèles transformers ?
@alexandretl
@alexandretl Жыл бұрын
Merci ! Justement on en parle dans la prochaine vidéo qui arrive dans quelques jours, en gros c'est le même mécanisme décrit, mais juste qu'il y en a plusieurs en parallèle
@redone7696
@redone7696 Жыл бұрын
@@alexandretl Ah oui j’ai hâte j’ai jamais réussi à bien comprendre ce mécanisme de Multi head .
@redia-uz4yv
@redia-uz4yv Жыл бұрын
Salut, il a une une chose qui me perturbe. Dans la vidéo tu as parlé du look ahead Mask . Mais pour le padding Mask j’ai remarqué que l’on appliquer le Padding que sur les colonnes.
@redia-uz4yv
@redia-uz4yv Жыл бұрын
Donc si par exemple j’ai la phrase: [ je, suis, étudiant, ] La matrice de score + le padding madk : Je Suis Étudiant Pad Je 0 Suis. 0 Étudiant 0 Pad. 0
@redia-uz4yv
@redia-uz4yv Жыл бұрын
Mais je ne comprends pas, pourquoi est-ce que l’on applique pas le mask sur la ligne Pad . Normalement, la dernière ligne devrai comporter que des zéros aussi ?!
@alexandretl
@alexandretl Жыл бұрын
​@@redia-uz4yv en fait tout ce qui se situe sur la ligne pad n'est pas utile puisque ce sont des calculs qui vont être ignorés (puisqu'ils correspondent aux calculs du pas de temps avec un padding). c'est du calcul gaché on peut dire. donc au final je pense qu'il ne faut pas se préoccuper de ce qu'il s'y passe, on laisse ce qu'il y a dedans
@prfontaine5387
@prfontaine5387 5 ай бұрын
Incompréhensible pour un néophyte, trop de prérequis nécessaires, je passe
@alexandretl
@alexandretl 5 ай бұрын
Comprendre le Transformer sans savoir ce qu'est un RNN, oui, c'est impossible ou difficile. Comprendre un RNN sans savoir ce qu'est un réseau de neurones, oui c'est impossible. Mais tu le verras si tu continues d'apprendre le ML : tout se mérite. N'espère pas comprendre les dernières avancées, les derniers modèles, sans avoir les bases.
@prfontaine5387
@prfontaine5387 5 ай бұрын
@@alexandretl je ne vous donne pas tort mais mon intuition est qu'il existe un discours plus abstrait qui serait plus clair. Si j'ai bien compris un réseau de neurones est en fait juste une fonction, un réseau récurrent une fonction qui est appliquée plusieurs fois et qui à chaque application prend en entrée le résultat (partiel) de ses sorties précédentes, etc... A partir de là, sans entrer dans des détails techniques, il doit y avoir moyen d'expliquer de façon intuitive, pour un néophyte, ce qu'on entend par "attention". Cela dit je vais tenter de consacrer du temps à comprendre les techniques et maths sous-jacentes.
@alexandretl
@alexandretl 5 ай бұрын
@@prfontaine5387 la vidéo se veut technique et requiert une certaine connaissance et prise de recul sur les bases de l'apprentissage par supervision (ce qui est en partie proposé sur la chaîne).
@maximeD34
@maximeD34 4 ай бұрын
​​@@prfontaine5387oui en effet c'est clairement incompréhensible si on débute mais il y a tellement de contenu introductif en ligne que ce genre de vidéo est beaucoup plus utile pour la communauté en proposant un contenu plus avancé. Ceci dit si vous aimez les maths, la vidéo de 3B1B sur les transformers introduit le concept plus visuellement et StatQuest propose toute une série de vidéos sur les modèles Seq2Seq. Mais les deux repartent à 0 ce qui est très pénible (d'où l'intérêt de cette vidéo !) Pour plus de compréhension, la NLP (natural language processing) Specialization de Coursera créé par Stanford est très utile mais est longue à faire et très exhaustives sur les bases. Et il est important d'avoir déjà des connaissances de ML... Les transformers sont le state of the art du NLP qui est déjà une spécialisation du ML. Ça se mérite mais quand on veut essayer de comprendre les dernières avancées faut comprendre les bases !
Comprendre les Transformers et les mécanismes d'attention
44:21
Thibault Neveu
Рет қаралды 35 М.
Angry Sigma Dog 🤣🤣 Aayush #momson #memes #funny #comedy
00:16
ASquare Crew
Рет қаралды 50 МЛН
The CUTEST flower girl on YouTube (2019-2024)
00:10
Hungry FAM
Рет қаралды 52 МЛН
Players vs Corner Flags 🤯
00:28
LE FOOT EN VIDÉO
Рет қаралды 40 МЛН
Transformers : têtes d'attention et couches
9:27
Alexandre TL
Рет қаралды 1,5 М.
Attention Is All You Need
27:07
Yannic Kilcher
Рет қаралды 638 М.
Comment les I.A. font-elles pour comprendre notre langue ?
26:16
ScienceEtonnante
Рет қаралды 567 М.
Transformer Neural Networks Derived from Scratch
18:08
Algorithmic Simplicity
Рет қаралды 140 М.
MAMBA from Scratch: Neural Nets Better and Faster than Transformers
31:51
Algorithmic Simplicity
Рет қаралды 184 М.
Comprendre les réseaux de neurones récurrents (RNN)
22:42
Thibault Neveu
Рет қаралды 47 М.
Transformers for beginners | What are they and how do they work
19:59
Comment interpréter ce qui se passe dans un réseau de neurones ?
34:25
Angry Sigma Dog 🤣🤣 Aayush #momson #memes #funny #comedy
00:16
ASquare Crew
Рет қаралды 50 МЛН