Mécanisme d'attention
Supposons que deux informations soient représentées par et . Prendre la moitié de chacune donne
Quelle proportion prendre de chacune ? L’attention calcule ces poids à partir du contenu, au lieu de les fixer à une moitié.
Quel poids attribuer à chaque vecteur ?
Les vecteurs à mélanger sont appelés valeurs (values). Pour choisir leurs poids, introduisons une requête (query), le vecteur utilisé pour rechercher l’information : ici .
Chaque valeur possède une clé (key) à comparer avec la requête. Prenons et . Calculons d’abord les scores, avec la requête et les clés seulement. Les produits scalaires valent et . La division par , racine carrée de la dimension des clés, donne les scores .
Softmax transforme ces scores en poids positifs ou nuls dont la somme vaut un : il prend leurs exponentielles et divise par leur somme.
Mélangeons ensuite les valeurs : chaque poids multiplie la valeur de la même position. Avec les poids arrondis, la sortie est
La meilleure clé n'efface pas l'autre valeur. La température, les clés en double, les écarts de score et les masques modifient tous le mélange obtenu.
Modifiez une composante de ci-dessous ; les clés et les valeurs restent fixes. Pour , les deux scores sont nuls, les poids valent et la sortie . Pour , les poids s’inversent et la sortie vaut environ . Les scores déterminent les proportions ; les valeurs déterminent ce qui est mélangé.
k1 = [1, 0]Score 0.707
Poids 67.0%
k2 = [0, 1]Score 0.000
Poids 33.0%
Pour un nombre quelconque de paires clé/valeur, ce calcul s’écrit
La requête, la clé et la valeur sont des rôles calculatoires, et non des significations intrinsèques. Ce sont généralement des projections apprises, et les valeurs n'ont pas besoin d'être égales aux clés. Ce calcul des poids à partir du contenu, suivi du mélange des valeurs, est une opération différentiable appelée adressage par le contenu.
Scores
L'attention additive utilise un petit réseau appris :
L'attention par produit scalaire mis à l'échelle (scaled dot-product attention) utilise
Si les coordonnées de la requête et de la clé sont mutuellement indépendantes, de moyenne nulle et de variance unitaire, le produit scalaire non redimensionné a une variance et un écart-type , ce qui peut saturer le softmax. La mise à l'échelle est un choix de conception adapté à ce score, et non une loi générale pour toute attention.
Forme matricielle et masques
Pour , et :
a pour dimensions et a pour dimensions . Les masques s’appliquent avant Softmax : le padding exclut les clés de remplissage, le masque causal exclut les positions futures, et les masques structurels limitent les connexions locales, de graphe ou par blocs. Avec un masque additif , une ligne entièrement masquée contient uniquement des logits : le softmax ordinaire n’y définit aucune distribution de probabilités. Consultez le comportement de l’API choisie et traitez explicitement ces lignes ; aucune valeur de retour n’est universelle. Modifier un token masqué ne doit pas changer une sortie non masquée si les représentations Q/K/V autorisées restent fixes.
Normaliser sur les clés, pas sur les requêtes
Le softmax de agit séparément sur chaque ligne, donc sur l’axe des clés. Pour un masque additif, autorise une paire et l’interdit. Dans une séquence causale de trois positions, la première ligne voit la première clé, la deuxième les deux premières et la troisième les trois. Si tous les scores autorisés sont nuls, les lignes valent , et . La diagonale est autorisée quand l’entrée à cette position prédit le token suivant. C’est la convention du Transformer original.
Un masque de padding sur les clés ne supprime pas automatiquement les sorties des requêtes de padding : les exclure de la perte ou de l’agrégation ultérieure. Les conventions booléennes varient selon les API ; vérifier si True signifie autorisé ou interdit. Le test d’invariance au token masqué suppose que Q/K/V aux positions autorisées restent fixes : aucun calcul en amont ne doit déjà y avoir mélangé le contenu masqué.
L’auto-attention (self-attention) tire Q/K/V d’une même représentation, généralement avec des projections apprises distinctes ; l’attention croisée (cross-attention) tire les requêtes d’un côté et K/V de l’autre. L’attention multi-têtes opère dans plusieurs sous-espaces projetés, puis concatène et projette les résultats. Les têtes peuvent être redondantes ou changer avec une reparamétrisation tout en conservant des sorties proches ; aucune ne correspond nécessairement à un concept humain stable, comme la syntaxe ou la coréférence.
L’attention de style Bahdanau a d'abord permis à chaque étape du décodeur RNN d'accéder à plusieurs états de l'encodeur ; Luong a comparé les formes globales et locales. Le Transformer a ensuite fait de l'auto-attention une opération de couche principale. L'attention n'a pas commencé avec le Transformer.
Différentes conceptions d'efficacité pour différents problèmes
L’auto-attention dense forme scores ; à dimensions de tête fixes, le temps et la mémoire intermédiaire de l’implémentation naïve croissent quadratiquement avec la longueur. Les variantes ci-dessous ciblent des coûts différents.
MQA/GQA réduisent surtout le stockage et le trafic mémoire du cache KV autorégressif, sans réduire le nombre de têtes de requête. Ces variantes changent le partage, pas la fonction de score ; leurs noms seuls ne garantissent ni qualité, ni adéquation à l’entraînement, ni compatibilité. Rapportez le nombre de têtes de requête, de têtes K/V, la dimension par tête, la fenêtre, le type de données (dtype) et le kernel plutôt que de dire simplement « attention efficace ». Les RNNs/SSMs peuvent convenir au streaming à état fixe ; la convolution peut économiser données et calcul lorsque la localité est forte.
Frontière d'interprétation
Les poids d'attention sont des coefficients de routage au sein d'une passe avant unique, mais ne constituent pas automatiquement une importance causale. Des poids différents peuvent produire des sorties similaires ; les valeurs et les couches ultérieures modifient l'influence ; les gradients et les interventions peuvent être en désaccord ; et la seule netteté de distribution ne dit pas grand-chose.
« Attention is not Explanation » démontre les défaillances de l'interprétation directe ; une analyse concurrente soutient que l'attention peut néanmoins être informative sous des diagnostics et des tests contrefactuels définis. La conclusion défendable est que les poids peuvent constituer des indices, mais qu'ils doivent être associés à des suppressions, remplacements ou interventions — et non traités comme une explication autonome.
Liens entre les explications
La normalisation utilise la même opération que la régression softmax, mais les poids mélangent ici les valeurs au lieu de prédire des classes. La note Transformer assemble attention, information de position, connexions résiduelles, normalisation et couches feed-forward. Les variantes d’attention et le cache KV reprennent ces formes Q/K/V pour expliquer l’inférence autorégressive et son coût mémoire.
Cette description en Q/K/V est orientée vers le NLP et la pratique des Transformers. La vision, les ensembles, les graphes et les formulations antérieures à base de noyaux statistiques ne reçoivent qu'une couverture de frontière.