Chapitre 2

Le mécanisme central des Transformers

Comprendre en profondeur le mécanisme d’Attention, l’architecture encodeur-décodeur, les réseaux de neurones feed-forward et les connexions résiduelles, et maîtriser le fonctionnement des Transformers.

Mécanisme d’attention : l’âme des Transformers

Le mécanisme d’Attention est au cœur du Transformer ; il permet au modèle de « prêter attention » à différentes parties de la séquence d’entrée et de comprendre les relations entre elles.

Self-Attention : auto-attention

Le Self-Attention permet à chaque position d’une séquence de prêter directement attention à toutes les autres positions :

1
Query (Q): quelles informations souhaitez-vous rechercher à l’emplacement actuel
2
Key (K): Quelles informations sont fournies ailleurs
3
Value (V):contenu informationnel réel
4
Processus de calcul:Attention(Q, K, V) = softmax(QK^T / √d_k) V

Multi-Head Attention : attention multi-têtes

Plusieurs têtes d'attention fonctionnent en parallèle pour comprendre l'information sous différents angles :

  • Calcul parallèle: plusieurs têtes calculent simultanément sans interférer entre elles
  • Différents points de vue: chaque tête se concentre sur différentes relations (syntaxe, sémantique, position, etc.)
  • Fusion d’informations : concatène les sorties de plusieurs têtes puis applique une transformation linéaire
  • Capacité d'expression: Le mécanisme multi-tête améliore considérablement la capacité d’expression du modèle

Encodage positionnel

Le mécanisme d’Attention lui-même ne contient pas d’information de position et doit être injecté via un encodage de position :

  • Encodage positionnel sinusoïdal:utiliser les fonctions sin/cos pour générer l’encodage positionnel
  • Encodage positionnel apprenable: Les modèles tels que BERT utilisent des embeddings apprenables
  • Codage de position relative: se concentrer sur la position relative plutôt que sur la position absolue
  • Limitations : L’encodage positionnel fixe gère difficilement les séquences très longues (par exemple 1M+ tokens)

Théorie du surligneur : une manière intuitive de comprendre l’Attention

La métaphore du surlignage des points clés aide à comprendre le fonctionnement du mécanisme d’Attention.

Expliquer par analogie

Imaginez que vous lisez un article et surlignez les passages importants avec un surligneur :

1
Processus de lecture: vous lisez mot par mot et comprenez le sens de chaque mot
2
Marquer les points clés: lorsque vous rencontrez des informations importantes, marquez-les avec un surligneur
3
Compréhension connexe: Les mots marqués vous aident à comprendre les relations contextuelles
4
Le rôle de l’Attention:L’Attention est le « surligneur » du modèle, qui marque et relie automatiquement les informations importantes

Exemple concret

Phrase : "The cat sat on the mat"
Lorsque le modèle traite "sat", le mécanisme d’Attention va :
• Poids d’attention élevé → « cat » (sujet)
• Poids d’attention au milieu → "on", "mat" (information de position)
• Faible poids d’attention → « The » (article)

Architecture encodeur-décodeur

L’architecture originale du Transformer comprend un encodeur et un décodeur, mais de nombreuses variantes sont apparues dans les applications pratiques.

Encoder(encodeur)

Comprendre la séquence d’entrée et générer une représentation intermédiaire :

  • Self-Attention: Comprendre les relations internes au sein de la séquence d’entrée
  • Feed-Forward: transformation non linéaire
  • Sortie: représentation codée de chaque position
  • Application:tâches de compréhension comme BERT, RoBERTa, etc.

Decoder(décodeur)

Générer la séquence cible à partir de la sortie de l’encodeur :

  • Masked Self-Attention: seule la partie générée est visible
  • Cross-Attention : Se concentrer sur la sortie de l’Encoder
  • Générer: générer le jeton de la séquence cible un par un
  • Application:tâches de génération telles que GPT, T5

Variantes d’application concrètes

GPT(Decoder Only)

Architecture : uniquement le décodeur, suppression de la couche Cross-Attention

Caractéristiques: génération auto-régressive, génération de texte de gauche à droite

Application: Génération de texte, dialogue, génération de code

BERT(Encoder Only)

Architecture: Encodeur uniquement, compréhension bidirectionnelle

Caractéristiques: Voir toute la séquence d’entrée à la fois, avec un contexte bidirectionnel

Application : classification de texte, questions-réponses, reconnaissance d’entités nommées

T5(Encoder-Decoder)

Architecture: Structure Encoder-Decoder complète

Caractéristiques : un cadre unifié dans lequel toutes les tâches NLP sont converties en texte-à-texte

Application: Diverses tâches telles que la traduction, le résumé et les questions-réponses

Réseaux de feedforward et connexions résiduelles

Le Feed-Forward Network, la Residual Connection et la Layer Normalization sont des composants clés pour l’entraînement stable des Transformers.

Feed-Forward Network (FFN)

Le réseau feedforward effectue des transformations non linéaires indépendamment à chaque position :

  • Structure:Un réseau entièrement connecté à deux couches avec une fonction d’activation entre les deux (généralement ReLU ou GELU)
  • Rôle: renforcer la capacité d’expression non linéaire du modèle
  • Caractéristiques: Chaque position est traitée indépendamment, ce qui permet un calcul parallèle
  • Paramètre: Le FFN représente généralement la majeure partie des paramètres du modèle (par ex. 66 % dans GPT-3)

Residual Connection (connexion résiduelle)

Ajouter l’entrée directement à la sortie, ce qui résout le problème de disparition du gradient dans les réseaux profonds :

  • Formule:output = input + sublayer(input)
  • Rôle:Fournir une « autoroute » pour la propagation du gradient
  • Effet : permet au modèle d’entraîner des réseaux plus profonds (par exemple, GPT-3 comporte 96 couches)
  • Source: s’inspirer du succès de ResNet

Layer Normalization

Normaliser la sortie de chaque couche pour stabiliser le processus d’entraînement :

  • Position: après Attention et FFN, avant la connexion résiduelle
  • Rôle: Des distributions stables des valeurs d’activation accélèrent la convergence de l’entraînement
  • Effet: permet d’utiliser un taux d’apprentissage plus élevé, rendant l’entraînement plus stable
  • Variante: Pre-LN (normalisation avant la sous-couche) vs Post-LN (normalisation après la sous-couche)

Structure complète du Transformer Block

Transformer Block:
1. Multi-Head Self-Attention
2. Add & Norm (connexion résiduelle + normalisation de couche)
3. Feed-Forward Network
4. Add & Norm (connexion résiduelle + normalisation de couche)

Plusieurs Transformer Blocks sont empilés pour former un réseau profond, et chaque Block contient la structure ci-dessus

Résultats d’apprentissage

À la fin de ce chapitre, vous pourrez :

  • 1Comprendre en profondeur les principes mathématiques du mécanisme d’Attention (Query, Key, Value) et son processus de calcul
  • 2Comprendre comment le Multi-Head Attention interprète l’information sous plusieurs angles, ainsi que le rôle de l’encodage positionnel
  • 3Comprendre les différences d’architecture et les cas d’usage de GPT (Decoder only) et BERT (Encoder only)
  • 4Comprendre le rôle de Feed-Forward Network, Residual Connection et Layer Normalization