Imaginez une salle de réunion où, pour comprendre chaque mot d'une phrase, vous pouviez instantanément consulter tous les autres mots et décider lesquels comptent vraiment. C'est exactement ce que fait le mécanisme d'attention (ou self-attention) : il permet à un modèle de pondérer dynamiquement l'importance de chaque élément d'une séquence par rapport aux autres. Introduit au cœur de l'architecture Transformer en 2017, il a remplacé les réseaux récurrents et est devenu le moteur des grands modèles de langage actuels.
L'intuition : qui regarde qui ?
Dans la phrase « le chat dort car il est fatigué », pour interpréter le mot « il », le modèle doit le relier à « chat ». L'attention apprend ces liens. Chaque mot génère trois vecteurs :
- une Requête (Query) : « que cherche-je ? »
- une Clé (Key) : « que puis-je offrir ? »
- une Valeur (Value) : « quelle information je porte »
La formule
L'attention compare requêtes et clés, normalise les scores, puis combine les valeurs :
$$\text{Attention}(Q, K, V) = \text{softmax}!\left(\frac{QK^{\top}}{\sqrt{d_k}}\right)V$$
Le facteur $\sqrt{d_k}$ stabilise les gradients. Le softmax transforme les scores en poids dont la somme vaut 1.
Pourquoi c'est révolutionnaire
| Critère | Récurrence (RNN) | Self-Attention |
|---|---|---|
| Traitement | séquentiel | parallèle |
| Dépendances longues | difficiles | directes |
| Contexte | limité | global |
La variante multi-têtes (multi-head) répète l'opération en parallèle pour capter plusieurs types de relations (syntaxe, sémantique…).
Sans attention, pas de ChatGPT : c'est la brique qui a fait entrer l'IA dans l'ère des Transformers.