Qu'est-ce qu'un mécanisme d'attention

Un mécanisme d'attention est une technique dans les réseaux de neurones qui permet au modèle de se concentrer sur les parties les plus pertinentes de l'entrée lors de la production d'une sortie.

Le mécanisme d'attention est une technique utilisée principalement dans les modèles d'apprentissage profond, en particulier pour les tâches de séquence à séquence comme la traduction automatique, la résumé de texte et le sous-titrage d'images. Il résout la limitation des modèles traditionnels (comme les RNN de base) qui peinent à gérer de longues séquences d'entrée en compressant toutes les informations dans un vecteur de contexte de taille fixe. L'attention permet au modèle de se concentrer dynamiquement sur des parties spécifiques de la séquence d'entrée lors de la génération de chaque partie de la séquence de sortie. Architecturalement, il implique le calcul de 'scores d'attention' entre l'état actuel du décodeur et chaque élément de la séquence d'entrée encodée. Ces scores sont ensuite normalisés (souvent à l'aide d'une fonction softmax) pour produire des 'poids d'attention'. Une somme pondérée des éléments d'entrée, utilisant ces poids, forme un vecteur de contexte spécifique à l'étape de décodage actuelle. Cela permet au modèle d' 'attirer l'attention' sur les informations d'entrée les plus pertinentes, améliorant les performances sur les tâches nécessitant la compréhension des dépendances à longue portée. Les compromis incluent une complexité computationnelle et une utilisation de la mémoire accrues par rapport aux modèles non attentionnels, mais les gains en précision et la capacité à gérer des séquences plus longues sont souvent significatifs.

        graph LR
  Center["Qu'est-ce qu'un mécanisme d'attention "]:::main
  Pre_deep_learning["deep-learning"]:::pre --> Center
  click Pre_deep_learning "/terms/deep-learning"
  Pre_linear_algebra["linear-algebra"]:::pre --> Center
  click Pre_linear_algebra "/terms/linear-algebra"
  Rel_transformer_architecture["transformer-architecture"]:::related -.-> Center
  click Rel_transformer_architecture "/terms/transformer-architecture"
  Rel_context_window["context-window"]:::related -.-> Center
  click Rel_context_window "/terms/context-window"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 Test de connaissances

1 / 3

🧒 Explique-moi comme si j'avais 5 ans

C'est comme quand vous lisez une longue histoire et que vous revenez à une phrase spécifique que vous avez lue plus tôt pour vous aider à comprendre ce qui se passe en ce moment.

🤓 Expert Deep Dive

Les mécanismes d'attention améliorent fondamentalement la modélisation de séquences en permettant une récupération d'informations de longueur variable et dépendante du contexte. Architecturalement, ils introduisent un paradigme requête-clé-valeur (QKV). L'état actuel du décodeur sert généralement de requête, tandis que les états cachés de l'encodeur agissent comme clés et valeurs. Le score d'alignement entre la requête et chaque clé détermine le poids d'attention via une fonction de scoring (par exemple, produit scalaire, additif). Cette distribution de poids permet au modèle de calculer un vecteur de contexte comme une somme pondérée de valeurs, récupérant ainsi efficacement les informations pertinentes. L'auto-attention, telle qu'utilisée dans les Transformers, applique ce mécanisme non seulement entre l'encodeur et le décodeur, mais aussi au sein de la séquence d'entrée elle-même, permettant au modèle de pondérer l'importance de différents mots les uns par rapport aux autres. Cette computation parallélisable et cette capacité à capturer les dépendances à longue portée sans récurrence sont des avantages architecturaux clés. Des vulnérabilités peuvent survenir lors d'attaques adverses manipulant les schémas d'attention ou de biais appris à partir de distributions de données biaisées.

🔗 Termes associés

📚 Sources