Résumé par IA · traduit de l'anglais par IA

Attention Is All You Need

Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin

arXiv:1706.03762v7cs.CLcs.LG

TL;DR

Les modèles récurrents de séquences nécessitent un calcul séquentiel qui empêche la parallélisation au sein des exemples d’entraînement. Le Transformer remplace la récurrence et les convolutions par l’attention et atteint l’état de l’art en traduction anglais-allemand et anglais-français sur WMT 2014, tout en s’entraînant nettement plus vite que les architectures récurrentes ou convolutives.

  • Problème

    Les modèles récurrents de transduction de séquences restent contraints par le calcul séquentiel, qui empêche la parallélisation au sein des exemples d’entraînement, surtout pour les séquences longues.

    Source : §1 · p. 2
  • Méthode

    Le Transformer effectue la transduction de séquences à l’aide de l’attention plutôt que de couches récurrentes ou convolutives.

    Source : §2 · p. 2, §7 · p. 10
  • Résultats

    Le Transformer atteint l’état de l’art en traduction anglais-allemand et anglais-français sur WMT 2014, tout en s’entraînant nettement plus vite que les architectures récurrentes ou convolutives.

    Source : §7 · p. 10
  • À retenir et limites

    L’auto-attention relie toutes les positions au moyen d’un nombre constant d’opérations séquentielles, tandis que les couches récurrentes nécessitent O(n) opérations séquentielles.

    Source : §4 · p. 6

Abstract

from arXiv · show

The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely. Experiments on two machine translation tasks show these models to be superior in quality while being more parallelizable and requiring significantly less time to train. Our model achieves 28.4 BLEU on the WMT 2014 English-to-German translation task, improving over the existing best results, including ensembles by over 2 BLEU. On the WMT 2014 English-to-French translation task, our model establishes a new single-model state-of-the-art BLEU score of 41.8 after training for 3.5 days on eight GPUs, a small fraction of the training costs of the best models from the literature. We show that the Transformer generalizes well to other tasks by applying it successfully to English constituency parsing both with large and limited training data.

1 Introduction

Le Transformer remplace la récurrence par l’attention pour capturer les dépendances globales entre entrée et sortie, permettant une parallélisation nettement accrue et un nouvel état de l’art en traduction.

1 Introduction

  • Le calcul séquentiel des états cachés des modèles récurrents empêche la parallélisation au sein des exemples d’entraînement, ce qui devient une limitation majeure pour les séquences longues.Les contraintes de mémoire limitent le regroupement des exemples en lots. Des techniques de factorisation [21] et le calcul conditionnel [32] améliorent l’efficacité, sans toutefois supprimer la contrainte séquentielle fondamentale.Source : §1 · p. 2
  • L’attention modélise les dépendances indépendamment de la distance dans la séquence [2, 19], mais reste généralement associée à des réseaux récurrents, à quelques exceptions près.Cela motive une architecture utilisant l’attention sans récurrence.Source : §1 · p. 2
  • Douze heures sur huit GPU P100 peuvent suffire au Transformer fondé uniquement sur l’attention pour atteindre un nouvel état de l’art en traduction tout en permettant une parallélisation nettement accrue.L’architecture se passe de récurrence et repose entièrement sur l’attention pour capturer les dépendances globales entre entrée et sortie.Source : §1 · p. 2

2 Contexte

Le Transformer est présenté comme le premier modèle de transduction, à la connaissance des auteurs, à calculer les représentations d’entrée et de sortie uniquement par auto-attention, sans RNN alignés sur les positions des séquences ni convolution. Il relie des positions quelconques en un nombre constant d’opérations, tandis que l’attention multi-tête compense la baisse de résolution effective due à la moyenne des positions pondérées par l’attention.

  • Un nombre constant d’opérations relie des positions quelconques dans le Transformer, contre une croissance linéaire pour ConvS2S [9] et logarithmique pour ByteNet [18] lorsque la distance augmente.Extended Neural GPU, ByteNet [18] et ConvS2S [9] utilisent des convolutions pour calculer les représentations cachées en parallèle aux différentes positions d’entrée et de sortie. Le nombre d’opérations dépendant de la distance, les dépendances à longue distance sont plus difficiles à apprendre.Source : §2 · p. 2
  • L’attention multi-tête compense la baisse de résolution effective due à la moyenne des positions pondérées par l’attention dans le Transformer.Source : §2 · p. 2
  • L’auto-attention, également appelée intra-attention, relie différentes positions d’une même séquence pour en calculer la représentation.Les succès antérieurs concernent notamment la compréhension de textes, le résumé abstractif, l’implication textuelle et les représentations de phrases indépendantes de la tâche [4] [28] [22]. Les réseaux à mémoire de bout en bout utilisent, eux, une attention récurrente plutôt qu’une récurrence alignée sur les positions de la séquence, avec de bons résultats en questions-réponses en langage simple et en modélisation du langage [34].Source : §2 · p. 2
  • À la connaissance des auteurs, le Transformer est le premier modèle de transduction à calculer les représentations d’entrée et de sortie uniquement par auto-attention, sans RNN alignés sur les positions des séquences ni convolution.Source : §2 · p. 2

3 Architecture du modèle · 3.1 Empilements de couches de l’encodeur et du décodeur · 3.2 Attention

Le Transformer utilise des couches empilées d’auto-attention et des couches entièrement connectées appliquées à chaque position, dans une architecture encodeur-décodeur autorégressive. Ses mécanismes d’attention relient les positions d’entrée entre elles et les positions du décodeur aux sorties de l’encodeur, tout en restreignant l’auto-attention du décodeur pour préserver la génération autorégressive.

3 Architecture du modèle

  • Le Transformer utilise des couches empilées d’auto-attention et des couches entièrement connectées appliquées à chaque position, dans une architecture encodeur-décodeur qui génère les symboles de sortie de manière autorégressive [10].L’encodeur transforme les représentations des symboles d’entrée en représentations continues ; le décodeur utilise ces représentations et les symboles déjà générés pour produire les sorties successives.Source : §3 · pp. 2–3

3.1 Empilements de couches de l’encodeur et du décodeur

  • 6 couches d’encodeur identiques combinent chacune une auto-attention multi-tête et un réseau à propagation avant appliqué à chaque position.Chaque sous-couche est entourée d’une connexion résiduelle [11], suivie d’une normalisation de couche [1], ce qui donne LayerNorm(x + Sublayer(x)). Toutes les sous-couches et les couches de plongement produisent des sorties de dimension dmodel = 512.Source : §3.1 · p. 3
  • 6 couches de décodeur identiques ajoutent une attention sur les sorties de l’encodeur à la structure des couches d’encodeur, avec des connexions résiduelles suivies d’une normalisation de couche.L’auto-attention masquée et les plongements de sortie décalés d’une position garantissent que les prédictions à la position i dépendent uniquement des sorties connues aux positions inférieures à i.Source : §3.1 · p. 3

3.2 Attention

  • L’attention transforme une requête et des paires clé-valeur en une somme pondérée des valeurs, dont les poids dépendent de la compatibilité entre requête et clés.La requête, les clés, les valeurs et la sortie sont toutes des vecteurs.Source : §3.2 · pp. 3–4

3.2.1 Attention par produit scalaire mis à l’échelle

  • L’attention par produit scalaire mis à l’échelle divise les produits scalaires entre requêtes et clés par √dk avant de pondérer les valeurs par softmax, afin de contrer les effets supposés de faibles gradients lorsque dk est grand.Les requêtes et les clés sont de dimension dk, tandis que les valeurs sont de dimension dv. Les auteurs supposent que des produits scalaires élevés poussent softmax dans des régions où les gradients sont extrêmement faibles.Source : §3.2.1 · p. 4
  • L’attention par produit scalaire est en pratique plus rapide et moins gourmande en mémoire que l’attention additive [2], car elle utilise une multiplication matricielle optimisée.Les deux ont une complexité théorique similaire ; l’attention additive [2] calcule la compatibilité avec un réseau à propagation avant doté d’une seule couche cachée. Leurs performances sont similaires pour de faibles valeurs de dk, mais l’attention additive surpasse l’attention par produit scalaire sans mise à l’échelle lorsque dk est plus grand [3].Source : §3.2.1 · p. 4

3.2.2 Attention multi-tête

  • L’attention multi-tête porte conjointement sur différents sous-espaces de représentation et différentes positions, évitant la limitation due au moyennage d’une tête unique.Différentes projections apprises produisent en parallèle des sorties d’attention, qui sont concaténées puis projetées à nouveau. Avec h = 8 têtes et dk = dv = dmodel/h = 64, les dimensions réduites des têtes maintiennent un coût de calcul similaire à celui d’une attention à tête unique utilisant la dimension complète.Source : §3.2.2 · pp. 4–5

3.2.3 Applications de l’attention dans notre modèle

  • L’auto-attention de l’encodeur couvre toutes les positions d’entrée, l’attention encodeur-décodeur interroge les sorties de l’encodeur et l’auto-attention du décodeur masque les positions futures.Les requêtes de l’attention encodeur-décodeur proviennent de la couche précédente du décodeur, tandis que les clés et les valeurs proviennent des sorties de l’encodeur ; l’auto-attention de l’encodeur tire les trois de la couche précédente de l’encodeur. Le masquage du décodeur fixe à −∞ les connexions interdites avant softmax pour préserver la génération autorégressive.Source : §3.2.3 · p. 5

3.3 Réseaux à propagation avant par position

Chaque couche de l’encodeur et du décodeur comprend un réseau à propagation avant par position, composé de deux transformations linéaires séparées par ReLU. Les paramètres sont communs à toutes les positions, mais diffèrent d’une couche à l’autre.

3.3 Réseaux à propagation avant par position

  • Chaque couche de l’encodeur et du décodeur complète l’attention par un réseau à propagation avant entièrement connecté, composé de deux transformations linéaires séparées par ReLU.Le réseau est appliqué séparément et de manière identique à chaque position.Source : §3.3 · p. 5
  • Les transformations linéaires partagent leurs paramètres entre les positions, mais utilisent des paramètres différents d’une couche à l’autre, ce qui équivaut à deux convolutions à noyau de taille 1.Source : §3.3 · p. 5
  • 512 est la dimension d’entrée et de sortie dmodel ; 2048 est la dimension de la couche interne dff.Source : §3.3 · p. 5

3.4 Plongements et softmax

Le Transformer utilise des plongements de jetons appris et une couche de sortie linéaire suivie d’un softmax, avec une matrice de poids commune aux deux couches de plongement et à la transformation précédant le softmax, comme dans [30].

  • Les deux couches de plongement et la transformation linéaire précédant le softmax partagent la même matrice de poids, comme dans [30].Source : §3.4 · p. 5
  • Les plongements appris associent aux jetons d’entrée et de sortie des vecteurs de dimension dmodel, les poids des plongements étant multipliés par dmodel^0.5.Source : §3.4 · p. 5
  • Une transformation linéaire apprise suivie d’un softmax convertit les sorties du décodeur en probabilités prédites du jeton suivant.Source : §3.4 · p. 5

3.5 Encodage positionnel

Le Transformer ajoute des encodages positionnels aux plongements d’entrée de l’encodeur et du décodeur pour fournir l’information d’ordre séquentiel sans récurrence ni convolution. Il utilise des sinusoïdes fixes, qui ont donné des résultats presque identiques à ceux des plongements positionnels appris [9] et pourraient permettre une extrapolation à des séquences plus longues.

3.5 Encodage positionnel

  • Les encodages positionnels fournissent l’information d’ordre séquentiel en étant ajoutés aux plongements d’entrée à la base des piles de l’encodeur et du décodeur.Les encodages et les plongements ont la même dimension dmodel, ce qui permet de les additionner.Source : §3.5 · p. 6
  • Les fonctions sinus et cosinus encodent les positions avec des longueurs d’onde formant une progression géométrique de 2π à 10000 · 2π.Pour tout décalage fixe k, PE_pos+k est une fonction linéaire de PE_pos ; les auteurs ont supposé que cela faciliterait l’apprentissage d’une attention fondée sur les positions relatives.Source : §3.5 · p. 6
  • Les plongements positionnels appris [9] et les encodages sinusoïdaux ont donné des résultats presque identiques.Les auteurs ont choisi les sinusoïdes parce qu’elles pourraient permettre une extrapolation à des séquences plus longues que celles rencontrées pendant l’entraînement.Source : §3.5 · p. 6

4 Pourquoi l’auto-attention

L’auto-attention relie toutes les positions avec un nombre constant d’opérations séquentielles et nécessite moins de calculs que la récurrence lorsque la longueur de séquence est inférieure à la dimension des représentations. Cette section compare également les longueurs des chemins de dépendance et relève des avantages potentiels en matière d’interprétabilité.

  • La comparaison évalue l’auto-attention, la récurrence et la convolution selon la complexité de calcul par couche, le nombre minimal d’opérations séquentielles et la longueur maximale des chemins de dépendance.Des chemins plus courts pour les signaux de propagation avant et arrière facilitent l’apprentissage des dépendances à longue portée.Source : §4 · p. 6
  • La récurrence nécessite O(n) opérations séquentielles, contre un nombre constant pour l’auto-attention ; celle-ci nécessite moins de calculs lorsque la longueur de séquence n < la dimension d des représentations.La condition n < d est couramment satisfaite pour les représentations de phrases utilisées en traduction automatique.Source : §4 · pp. 6–7
  • Restreindre l’auto-attention à des voisinages de taille r donnerait une longueur maximale de chemin de O(n/r), une amélioration proposée pour réduire le coût de calcul sur les séquences très longues.Cette approche d’attention restreinte est laissée à de futurs travaux.Source : §4 · p. 7
  • O(n/k) couches convolutives à noyaux contigus ou O(logk(n)) couches convolutives dilatées [18] sont nécessaires pour relier toutes les positions, ce qui allonge les chemins de dépendance.Les convolutions coûtent généralement k fois plus que la récurrence ; les convolutions séparables [6] réduisent la complexité à O(k · n · d + n · d^2). Pour k = n, ce coût correspond à celui de l’auto-attention associée à une couche à propagation avant appliquée à chaque position.Source : §4 · p. 7
  • Les différentes têtes d’attention apprennent des tâches distinctes, et beaucoup semblent refléter des structures syntaxiques et sémantiques, ce qui suggère des avantages potentiels en matière d’interprétabilité.Les auteurs examinent les distributions d’attention et présentent des exemples en annexe.Source : §4 · p. 7

5 Entraînement

L’entraînement du Transformer utilisait des lots constitués selon la longueur des séquences, huit GPU NVIDIA P100, Adam avec montée progressive puis décroissance du taux d’apprentissage, et une régularisation par dropout et lissage des étiquettes.

5.1 Données d’entraînement et constitution des lots

  • Les données d’entraînement comprenaient environ 4.5 millions de paires de phrases anglais-allemand et 36M de phrases anglais-français provenant de WMT 2014, regroupées en lots selon la longueur approximative des séquences.Pour l’anglais-allemand, le byte-pair encoding [3] utilisait un vocabulaire source-cible partagé d’environ 37000 tokens ; pour l’anglais-français, le vocabulaire word-piece comptait 32000 unités [38]. Chaque lot contenait environ 25000 tokens source et 25000 tokens cible.Source : §5.1 · p. 7

5.2 Matériel et durée d’entraînement

  • Sur une seule machine, 8 GPU NVIDIA P100 ont entraîné les modèles « base » pendant 100,000 itérations (12 heures) et les modèles « big » pendant 300,000 itérations (3.5 jours).Chaque itération d’entraînement prenait environ 0.4 seconde pour les modèles « base » et 1.0 seconde pour les modèles « big ».Source : §5.2 · p. 7

5.3 Optimiseur

  • Adam [20] utilisait un taux d’apprentissage croissant linéairement pendant 4000 itérations de montée en régime, puis décroissant proportionnellement à l’inverse de la racine carrée du numéro d’itération.Les paramètres de l’optimiseur étaient β1 = 0.9, β2 = 0.98 et ϵ = 10^-9.Source : §5.3 · p. 7

5.4 Régularisation

  • Le dropout et le lissage des étiquettes [36] régularisaient l’entraînement ; le lissage améliorait l’exactitude et le score BLEU malgré une dégradation de la perplexité.Le dropout était appliqué aux sorties des sous-couches avant l’addition résiduelle et la normalisation, ainsi qu’aux sommes des plongements et des encodages positionnels dans les deux empilements ; son taux était de 0.1 pour le modèle « base ». Le lissage des étiquettes utilisait une valeur de 0.1.Source : §5.4 · p. 8

6 Résultats

Le Transformer établit de nouvelles références en traduction anglais-allemand et anglais-français avec un modèle unique, tout en réduisant les coûts d’entraînement, et se généralise à l’analyse syntaxique en constituants de l’anglais. Les études d’ablation montrent les avantages de plusieurs têtes d’attention, de clés de plus grande dimension, de modèles plus grands et du dropout, avec des résultats similaires pour les encodages positionnels appris et sinusoïdaux.

6.1 Traduction automatique

  • Avec 28.4 BLEU sur WMT 2014 anglais-allemand, le modèle dépasse de plus de 2.0 BLEU les meilleurs modèles publiés jusque-là, y compris les ensembles.L’entraînement du grand modèle a pris 3.5 jours sur 8 GPU P100. Le modèle de base a également surpassé tous les modèles et ensembles publiés jusque-là, pour une fraction des coûts d’entraînement des modèles concurrents.Source : §6.1 · p. 8
  • Avec 41.0 BLEU sur WMT 2014 anglais-français, le modèle surpasse tous les modèles uniques publiés jusque-là, pour moins de 1/4 du coût d’entraînement du précédent modèle de référence.Le grand modèle anglais-français utilisait un dropout Pdrop = 0.1 au lieu de 0.3.Source : §6.1 · p. 8

6.2 Variantes du modèle

  • Un écart de 0.9 BLEU sépare l’attention à une seule tête de la meilleure configuration à coût de calcul constant, tandis qu’un nombre excessif de têtes réduit également la qualité.Ces variantes architecturales ont été évaluées sur le jeu de développement anglais-allemand newstest2013, sans moyenner les points de contrôle.Source : Table 3 · p. 9, §6.2 · p. 9
  • Des clés d’attention de plus petite dimension dégradent la qualité, les modèles plus grands sont plus performants et le dropout aide à prévenir le surapprentissage ; les plongements positionnels appris [9] donnent des résultats presque identiques aux encodages sinusoïdaux.Les auteurs suggèrent que l’évaluation de la compatibilité pourrait bénéficier d’une fonction plus élaborée qu’un produit scalaire.Source : §6.2 · p. 9

6.3 Analyse syntaxique en constituants de l’anglais

  • 40K phrases d’entraînement de WSJ suffisent à surpasser Berkeley-Parser ; dans l’ensemble, les résultats d’analyse syntaxique dépassent ceux des modèles publiés jusque-là, à l’exception de Recurrent Neural Network Grammar [8].Un Transformer à quatre couches avec dmodel = 1024 a été évalué avec un entraînement sur WSJ uniquement et dans un cadre semi-supervisé utilisant environ 17M phrases [37]. Seules quelques expériences ont servi à choisir le dropout, les taux d’apprentissage et la largeur du faisceau ; les autres paramètres sont restés identiques à ceux du modèle de base anglais-allemand.Source : §6.3 · pp. 9–10, Table 4 · p. 10

7 Conclusion

Le Transformer est un modèle de transduction de séquences fondé entièrement sur l’attention, qui remplace les couches récurrentes par de l’auto-attention multi-têtes. Il atteint des performances de référence en traduction tout en s’entraînant nettement plus vite que les architectures récurrentes ou convolutives.

7 Conclusion

  • Le Transformer est le premier modèle de transduction de séquences fondé entièrement sur l’attention, remplaçant les couches récurrentes de l’encodeur et du décodeur par de l’auto-attention multi-têtes.Source : §7 · p. 10
  • Le Transformer atteint des performances de référence en traduction anglais-allemand et anglais-français sur WMT 2014, surpassant tous les ensembles de modèles précédemment publiés en anglais-allemand.L’entraînement est nettement plus rapide que pour les architectures à couches récurrentes ou convolutives.Source : §7 · p. 10
  • Les travaux futurs visent des modalités d’entrée et de sortie non textuelles, une attention locale restreinte pour les entrées et sorties volumineuses, et une génération moins séquentielle.Les modalités envisagées comprennent les images, l’audio et la vidéo ; une attention locale restreinte viserait à les traiter efficacement.Source : §7 · p. 10

Visualisations de l’attention

Les visualisations de l’auto-attention de l’encodeur montrent des têtes qui suivent des dépendances à longue distance, semblent résoudre des anaphores et présentent des comportements distincts liés à la structure des phrases.

Visualisations de l’attention

  • De nombreuses têtes d’attention de la couche 5 sur 6 de l’encodeur suivent la dépendance à longue distance reliant « making » à « more difficult ».La visualisation affiche uniquement l’attention issue du mot « making », les différentes couleurs identifiant les différentes têtes.Source : Figure 3 · p. 13
  • Deux têtes d’attention de la couche 5 sur 6 de l’encodeur semblent participer à la résolution des anaphores, avec une attention très ciblée depuis « its ».La visualisation montre l’ensemble de l’attention pour la tête 5 et isole l’attention issue de « its » pour les têtes 5 et 6.Source : Figure 4 · p. 14
  • Les différentes têtes d’attention présentent des comportements appris distincts, notamment des motifs liés à la structure des phrases et une apparente résolution des anaphores.Deux exemples liés à la structure des phrases proviennent de têtes d’auto-attention différentes de la couche 5 sur 6 de l’encodeur.Source : Figure 4 · p. 14, Figure 5 · p. 15
Loading 1706.03762v7…