Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Modèles Génératifs Basés sur les Transformers | Fondements Théoriques
IA Générative

bookModèles Génératifs Basés sur les Transformers

Introduction aux Transformers et à l’Auto-Attention

Les transformers constituent une architecture fondamentale de l’IA moderne, en particulier dans le Traitement Automatique du Langage Naturel (TALN) et la modélisation générative. Présentés pour la première fois dans l’article « Attention is All You Need » (Vaswani et al., 2017), les transformers abandonnent la récurrence au profit d’un mécanisme appelé auto-attention, qui permet aux modèles de prendre en compte simultanément toutes les parties de la séquence d’entrée.

Mécanisme d’Auto-Attention

Le mécanisme d’auto-attention permet au modèle de pondérer l’importance des différents tokens d’une séquence les uns par rapport aux autres. Cela s’effectue à l’aide de trois matrices dérivées des embeddings d’entrée :

  • Query (Q) ;
  • Key (K) ;
  • Value (V).

La sortie de l’attention est calculée comme suit :

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Où :

  • QQ, KK et VV sont des matrices dérivées de l’entrée.
  • dkd_k est la dimension des vecteurs clés.
  • softmax\text{softmax} convertit les scores de similarité en probabilités.

Cela permet à chaque token de s’attarder sur tous les autres tokens et d’ajuster sa représentation en conséquence.

Vue d’ensemble de l’architecture Transformer

Le modèle transformeur se compose de couches d’encodeur et de décodeur empilées :

  • L’encodeur convertit l’entrée en une représentation latente contextualisée ;
  • Le décodeur génère des jetons de sortie en utilisant la sortie de l’encodeur et les jetons précédents.

Chaque couche comprend :

  • Attention multi-tête auto-référencée ;
  • Réseaux de neurones à propagation avant ;
  • Normalisation de couche ;
  • Connexions résiduelles.

Attention multi-tête auto-référencée

Au lieu de calculer une seule fonction d’attention, le transformeur utilise plusieurs têtes d’attention. Chaque tête apprend à se concentrer sur différentes parties de la séquence.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Où chaque tête est calculée comme suit :

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Où :

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V sont les matrices de projection pour les requêtes, clés et valeurs ;
  • W0W^0 projette les têtes concaténées vers la dimension d’origine.

Réseaux de neurones à propagation avant

Chaque bloc de transformeur inclut un réseau de neurones à propagation avant appliqué indépendamment à chaque position :

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Composé de deux couches linéaires séparées par une non-linéarité (par exemple, ReLU) ;
  • Applique la même transformation à toutes les positions.

Normalisation de couche

La normalisation de couche normalise l'entrée sur les caractéristiques (canaux) au lieu du lot. Elle stabilise l'entraînement et améliore la convergence :

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Où :

  • μ\mu est la moyenne des caractéristiques ;
  • σ\sigma est l'écart type ;
  • γ\gamma et β\beta sont des paramètres apprenables.

Connexions résiduelles

Les connexions résiduelles ajoutent l'entrée de chaque sous-couche à sa sortie :

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Facilite la propagation du gradient et permet l'entraînement de modèles plus profonds ;
  • Utilisé autour des couches d'auto-attention et de propagation avant.

Dans les modèles uniquement décodeurs (comme GPT), seul le décodeur est utilisé avec une auto-attention causale (masquée).

Transformateurs génératifs pré-entraînés (GPT)

Les modèles GPT sont des transformateurs à décodeur uniquement entraînés à prédire le prochain jeton de manière auto-régressive :

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Caractéristiques principales :

  • Entraînés sur des ensembles de données textuelles à grande échelle ;
  • Capables de générer un texte cohérent et diversifié ;
  • Largement utilisés dans des applications telles que les chatbots et la génération de code.

BERT et modélisation du langage masqué

BERT (Bidirectional Encoder Representations from Transformers) utilise uniquement l’encodeur. Il est entraîné avec la modélisation du langage masqué (MLM) :

  • Des jetons aléatoires sont remplacés par un [MASK] ;
  • Le modèle prédit le jeton original en se basant sur le contexte complet.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Cela rend BERT adapté à des tâches telles que la classification, les questions-réponses et la similarité sémantique.

Transformateurs et LLM

Les transformateurs constituent la base des grands modèles de langage (LLM) tels que GPT-3, GPT-4, PaLM, LLaMA et Claude.

Les LLM utilisent de grands ensembles de données et des centaines de milliards de paramètres, ce qui leur permet de :

  • Comprendre et générer le langage humain ;
  • Effectuer la traduction, la synthèse, les questions-réponses, le raisonnement ;
  • Alimenter les chatbots, les analyseurs de documents et les assistants de codage.

L’évolutivité des transformateurs et leur capacité à modéliser des dépendances à longue portée en font des modèles idéaux pour ces applications.

1. Quelle est l’innovation principale introduite par les transformers ?

2. Qu’est-ce qui distingue BERT de GPT ?

3. Pourquoi les transformers sont-ils idéaux pour les LLM ?

question mark

Quelle est l’innovation principale introduite par les transformers ?

Select the correct answer

question mark

Qu’est-ce qui distingue BERT de GPT ?

Select the correct answer

question mark

Pourquoi les transformers sont-ils idéaux pour les LLM ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 8

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain how self-attention works in more detail?

What is the difference between encoder and decoder in transformers?

How does multi-head attention improve model performance?

Awesome!

Completion rate improved to 4.76

bookModèles Génératifs Basés sur les Transformers

Glissez pour afficher le menu

Introduction aux Transformers et à l’Auto-Attention

Les transformers constituent une architecture fondamentale de l’IA moderne, en particulier dans le Traitement Automatique du Langage Naturel (TALN) et la modélisation générative. Présentés pour la première fois dans l’article « Attention is All You Need » (Vaswani et al., 2017), les transformers abandonnent la récurrence au profit d’un mécanisme appelé auto-attention, qui permet aux modèles de prendre en compte simultanément toutes les parties de la séquence d’entrée.

Mécanisme d’Auto-Attention

Le mécanisme d’auto-attention permet au modèle de pondérer l’importance des différents tokens d’une séquence les uns par rapport aux autres. Cela s’effectue à l’aide de trois matrices dérivées des embeddings d’entrée :

  • Query (Q) ;
  • Key (K) ;
  • Value (V).

La sortie de l’attention est calculée comme suit :

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Où :

  • QQ, KK et VV sont des matrices dérivées de l’entrée.
  • dkd_k est la dimension des vecteurs clés.
  • softmax\text{softmax} convertit les scores de similarité en probabilités.

Cela permet à chaque token de s’attarder sur tous les autres tokens et d’ajuster sa représentation en conséquence.

Vue d’ensemble de l’architecture Transformer

Le modèle transformeur se compose de couches d’encodeur et de décodeur empilées :

  • L’encodeur convertit l’entrée en une représentation latente contextualisée ;
  • Le décodeur génère des jetons de sortie en utilisant la sortie de l’encodeur et les jetons précédents.

Chaque couche comprend :

  • Attention multi-tête auto-référencée ;
  • Réseaux de neurones à propagation avant ;
  • Normalisation de couche ;
  • Connexions résiduelles.

Attention multi-tête auto-référencée

Au lieu de calculer une seule fonction d’attention, le transformeur utilise plusieurs têtes d’attention. Chaque tête apprend à se concentrer sur différentes parties de la séquence.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Où chaque tête est calculée comme suit :

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Où :

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V sont les matrices de projection pour les requêtes, clés et valeurs ;
  • W0W^0 projette les têtes concaténées vers la dimension d’origine.

Réseaux de neurones à propagation avant

Chaque bloc de transformeur inclut un réseau de neurones à propagation avant appliqué indépendamment à chaque position :

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Composé de deux couches linéaires séparées par une non-linéarité (par exemple, ReLU) ;
  • Applique la même transformation à toutes les positions.

Normalisation de couche

La normalisation de couche normalise l'entrée sur les caractéristiques (canaux) au lieu du lot. Elle stabilise l'entraînement et améliore la convergence :

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Où :

  • μ\mu est la moyenne des caractéristiques ;
  • σ\sigma est l'écart type ;
  • γ\gamma et β\beta sont des paramètres apprenables.

Connexions résiduelles

Les connexions résiduelles ajoutent l'entrée de chaque sous-couche à sa sortie :

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Facilite la propagation du gradient et permet l'entraînement de modèles plus profonds ;
  • Utilisé autour des couches d'auto-attention et de propagation avant.

Dans les modèles uniquement décodeurs (comme GPT), seul le décodeur est utilisé avec une auto-attention causale (masquée).

Transformateurs génératifs pré-entraînés (GPT)

Les modèles GPT sont des transformateurs à décodeur uniquement entraînés à prédire le prochain jeton de manière auto-régressive :

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Caractéristiques principales :

  • Entraînés sur des ensembles de données textuelles à grande échelle ;
  • Capables de générer un texte cohérent et diversifié ;
  • Largement utilisés dans des applications telles que les chatbots et la génération de code.

BERT et modélisation du langage masqué

BERT (Bidirectional Encoder Representations from Transformers) utilise uniquement l’encodeur. Il est entraîné avec la modélisation du langage masqué (MLM) :

  • Des jetons aléatoires sont remplacés par un [MASK] ;
  • Le modèle prédit le jeton original en se basant sur le contexte complet.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Cela rend BERT adapté à des tâches telles que la classification, les questions-réponses et la similarité sémantique.

Transformateurs et LLM

Les transformateurs constituent la base des grands modèles de langage (LLM) tels que GPT-3, GPT-4, PaLM, LLaMA et Claude.

Les LLM utilisent de grands ensembles de données et des centaines de milliards de paramètres, ce qui leur permet de :

  • Comprendre et générer le langage humain ;
  • Effectuer la traduction, la synthèse, les questions-réponses, le raisonnement ;
  • Alimenter les chatbots, les analyseurs de documents et les assistants de codage.

L’évolutivité des transformateurs et leur capacité à modéliser des dépendances à longue portée en font des modèles idéaux pour ces applications.

1. Quelle est l’innovation principale introduite par les transformers ?

2. Qu’est-ce qui distingue BERT de GPT ?

3. Pourquoi les transformers sont-ils idéaux pour les LLM ?

question mark

Quelle est l’innovation principale introduite par les transformers ?

Select the correct answer

question mark

Qu’est-ce qui distingue BERT de GPT ?

Select the correct answer

question mark

Pourquoi les transformers sont-ils idéaux pour les LLM ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 8
some-alt