Habr AI→ original

Habr a publié un guide bref sur attention : self-attention, cross-attention et multi-head

Habr a publié un mini-guide clair sur attention dans les transformers. Le texte explique brièvement comment on obtient Q, K et V à partir des embeddings…

Traité par IA depuis Habr AI ; édité par Hamidun News
Habr a publié un guide bref sur attention : self-attention, cross-attention et multi-head
Source : Habr AI. Collage: Hamidun News.
◐ Écouter l'article

Habr a publié un guide bref sur l'attention : self-attention, cross-attention et multi-head

Habr a publié une analyse brève du mécanisme d'attention — l'idée fondamentale sur laquelle les transformers et les LLMs modernes sont construits. Le matériel montre, sans remplissage inutile, comment un modèle choisit quels tokens approuver davantage et l'explique ensuite avec un exemple numérique simple et du code en PyTorch.

Comment fonctionne l'attention

L'auteur commence par une définition basique : l'attention permet à un réseau de neurones de ne pas traiter toutes les parties de l'entrée de manière égale, mais de décider dynamiquement ce qui est plus important pour la tâche actuelle. Pour ce faire, la séquence d'entrée est transformée en trois ensembles de représentations — Query, Key et Value. Ensuite, le modèle compare la requête de chaque token avec les clés de tous les autres tokens, obtient des poids d'importance et sur cette base crée un nouveau vecteur contextuel.

C'est le principal tour : la valeur d'un mot ou d'un élément dépend non seulement de lui-même, mais de tout l'environnement.

  • à partir des embeddings, on construit les matrices Q, K et V
  • puis la similarité des tokens est calculée par produit scalaire
  • le résultat est mis à l'échelle en divisant par la racine carrée de la dimensionnalité
  • après softmax, on obtient les poids d'attention
  • la sortie finale est la somme pondérée de la matrice V

Il est expliqué séparément pourquoi la division par sqrt(d_k) est nécessaire. À mesure que la dimensionnalité des vecteurs augmente, les produits scalaires deviennent trop grands, softmax sature rapidement et les gradients commencent à s'estomper. La mise à l'échelle maintient les calculs dans une plage plus stable et rend l'entraînement plus prévisible. Pour les débutants, c'est une emphase utile : dans la plupart des explications, la formule est présentée comme donnée, mais ici on montre quel problème elle résout réellement.

Exemple avec des tokens

La partie la plus compréhensible du texte est un exemple jouet avec la phrase « Karina va au magasin ». L'auteur simplifie le problème à quatre tokens et des embeddings bidimensionnels pour ne pas se noyer dans les matrices, puis parcourt manuellement toutes les étapes : tokenisation, ajout d'information positionnelle, construction de la matrice X, calcul de QK^T, mise à l'échelle, softmax et la multiplication finale par V. De ce fait, l'attention cesse de ressembler à de la magie d'une formule et devient une séquence ordinaire d'opérations sur des vecteurs.

Après normalisation, on peut voir comment l'attention se distribue. Pour le token « Karina », le modèle dans l'exemple prend environ 31% des informations du mot lui-même, 15% du mot « va » et le reste d'autres tokens de la phrase. À la sortie, les embeddings originaux se transforment en nouvelles représentations, désormais contextuelles.

C'est un moment important pour comprendre les transformers : le modèle ne stocke pas une valeur fixe d'un mot une fois pour toutes, mais le réassemble à nouveau dans chaque contexte.

«

Chaque vecteur après self-attention ne décrit plus le mot par lui-même. »

Autres types d'attention

Dans la deuxième moitié de l'article, l'auteur passe à deux extensions du schéma basique. La cross-attention est décrite comme un mode dans lequel la Query est tirée d'une séquence, tandis que Key et Value sont tirées d'une autre. En pratique, il est pratique de la concevoir comme un mécanisme qui permet au décodeur d'accéder au contexte de l'encodeur.

La formule change à peine, mais la source des données change : le modèle compare la requête actuelle non pas avec elle-même, mais avec un contexte externe. C'est un bloc clé pour les traducteurs, les systèmes multimodaux et de nombreuses architectures encoder-decoder. Ensuite, l'attention multi-head est discutée.

Au lieu d'une seule attention, le modèle exécute plusieurs « têtes » en parallèle, et chacune apprend à regarder la séquence sous son propre angle : l'une peut mieux capturer les connexions locales, l'autre — les dépendances lointaines, la troisième — la syntaxe ou les rôles sémantiques. Ensuite, les résultats des têtes sont concaténés et passent par une autre transformation linéaire. L'article inclut également des implémentations minimales des trois variantes en PyTorch : self-attention, cross-attention et multi-head self-attention, de sorte que le texte fonctionne non seulement comme théorie mais aussi comme une antisèche de départ pour la pratique.

Ce que cela signifie

Pour ceux qui commencent tout juste sur le sujet des transformers, c'est un matériel d'introduction réussi : il ne surcharge pas avec des preuves, mais vous guide honnêtement à travers les mathématiques, les exemples et le code. Et pour les praticiens, c'est un rappel que derrière la « magie » des LLMs se cachent des opérations tout à fait concrètes avec des poids, des matrices et du contexte — et les comprendre est utile si vous travaillez avec les modèles non seulement en tant qu'utilisateur.

ZK
Hamidun News
Actualités IA sans bruit. Sélection éditoriale quotidienne de plus de 400 sources. Produit de Zhemal Khamidun, Head of AI chez Alpina Digital.

Besoin d'une IA qui travaille dans votre entreprise — pas seulement dans votre fil d'actualité?

Je construis de l'IA en production pour les entreprises — CRM sur mesure, outils internes, agents autonomes, automatisation des processus. Vous en êtes propriétaire, adaptée à votre processus, sans coût par utilisateur. Réalisé par Zhemal Khamidun, CPO d'AlpinaGPT (plateforme IA, 6 000+ utilisateurs).

Qu'en pensez-vous ?
Chargement des commentaires…