Source-linked AI summary
Attention Is All You Need
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin
TL;DR
Sequenztransduktionsmodelle stützen sich auf sequenzielle rekurrente oder konvolutionale Berechnungen, was die Parallelisierung während des Trainings einschränkt. Diese Arbeit führt den ausschließlich auf Attention basierenden Transformer ein, der bei beiden WMT-2014-Aufgaben eine Übersetzungsqualität auf dem Stand der Technik erreicht und zugleich deutlich schneller trainiert werden kann.
Problem
Die sequenzielle Berechnung in rekurrenten Sequenzmodellen schränkt die Parallelisierung innerhalb der Trainingsbeispiele ein, insbesondere bei längeren Sequenzen.
Methode
Der Transformer ersetzt rekurrente Schichten durch Multi-Head-Self-Attention, um Sequenzrepräsentationen zu berechnen und globale Abhängigkeiten abzuleiten.
Ergebnisse
28.4 BLEU auf WMT 2014 English-to-German etablierte einen neuen Stand der Technik, während der Transformer auch bei English-to-French Ergebnisse auf dem Stand der Technik erzielte.
Schlussfolgerungen und Einschränkungen
Für die Übersetzung kann der Transformer deutlich schneller trainiert werden als rekurrente oder konvolutionale Architekturen und erreicht dabei eine Qualität auf dem Stand der Technik.
Abstract
from arXiv · showhide
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 Einleitung
Der Transformer ersetzt die rekurrente Sequenzmodellierung durch alleinige Nutzung von Attention. Dadurch adressiert er die begrenzte Parallelisierbarkeit rekurrenter Berechnungen und erfasst globale Input-Output-Abhängigkeiten. Bereits nach nur zwölf Stunden auf acht P100-GPUs erreicht er eine stärkere Parallelisierbarkeit und eine neue State-of-the-Art-Übersetzungsqualität.
- 1 Einleitung: Rekurrente und gated Architekturen hatten sich als State-of-the-Art-Ansätze für Sequenzmodellierung und Transduktion etabliert, darunter Sprachmodellierung und maschinelle Übersetzung [7] [2] [5].Nachfolgende Arbeiten verbesserten rekurrente Sprachmodelle und Encoder-Decoder-Architekturen weiter [38] [24] [15].
- 1 Einleitung: Rekurrente Modelle faktorisieren die Berechnung über Sequenzpositionen, sodass jeder Hidden State vom vorherigen Zustand abhängt und eine Parallelisierung innerhalb von Trainingsbeispielen verhindert wird.Diese Einschränkung wird bei längeren Sequenzen wichtiger, da Speicherbeschränkungen das Batching über mehrere Beispiele hinweg begrenzen.
- 1 Einleitung: Der Transformer verzichtet auf Rekurrenz und stützt sich vollständig auf Attention, um globale Abhängigkeiten zwischen Input und Output zu erfassen.Attention-Mechanismen modellieren Abhängigkeiten unabhängig von ihrer Distanz in Input- oder Output-Sequenzen [2, 19].
- 1 Einleitung: Der Transformer ermöglicht eine deutlich stärkere Parallelisierung und erreicht bereits nach nur zwölf Stunden auf acht P100-GPUs eine neue State-of-the-Art-Übersetzungsqualität.Sein Design ersetzt die rekurrente Komponente, anstatt Attention mit einem rekurrenten Netzwerk zu kombinieren.
2 Hintergrund
Frühere Ansätze reduzierten die sequentielle Berechnung durch konvolutionale oder rekurrente Aufmerksamkeitsmechanismen, während Self-Attention bereits bei mehreren Sprachaufgaben erfolgreich war. Der Transformer wird als erstes Transduktionsmodell vorgestellt, das ausschließlich Self-Attention verwendet – ohne sequenzalignierte Rekurrenz oder Konvolution.
- Konvolutionale Modelle: Extended Neural GPU, ByteNet [18] und ConvS2S [9] verwenden Konvolutionen, um alle Hidden-Repräsentationen von Eingabe und Ausgabe parallel zu berechnen und zugleich die sequentielle Berechnung zu reduzieren.Die Verknüpfung beliebiger Positionen erfordert bei ConvS2S mit der Distanz linear und bei ByteNet logarithmisch wachsende Operationen.
- Self-Attention: Self-Attention verknüpft Positionen innerhalb einer Sequenz, um deren Repräsentation zu berechnen, und war beim Leseverständnis, bei der Zusammenfassung, bei Textimplikation und beim Lernen von Satzrepräsentationen erfolgreich [4] [28] [22].
- Verwandte Attention-Modelle: End-to-end Memory Networks verwenden rekurrente Attention anstelle von sequenzalignierter Rekurrenz und erzielen gute Ergebnisse bei Fragenbeantwortung in einfacher Sprache und bei Sprachmodellierung.
- Neuheit: Der Transformer wird als erstes Transduktionsmodell beschrieben, das vollständig auf Self-Attention beruht – ohne sequenzalignierte RNNs oder Konvolution.Das Paper begründet Self-Attention und ihre Vorteile gegenüber Modellen wie [17] [18] und [9].
3 Modellarchitektur · 3.1 Encoder- und Decoder-Stacks · 3.2 Attention
Der Transformer ersetzt rekurrente oder konvolutionale Sequenztransduktion durch gestapelte Self-Attention und punktweise vollverbundene Schichten in Encoder- und Decoder-Stacks. Seine Attention-Mechanismen verwenden skalierte Skalarprodukte, mehrere parallele Köpfe und Maskierung zur Unterstützung der autoregressiven Dekodierung.
- 3 Modellarchitektur: Der Transformer verwendet sowohl für den Encoder als auch für den Decoder gestapelte Self-Attention und punktweise vollverbundene Schichten gemäß einer Encoder-Decoder-Architektur [5] [2].Der Encoder bildet Eingabesymbole auf kontinuierliche Repräsentationen ab, während der autoregressive Decoder Ausgabesymbole sequenziell erzeugt [10].
- 3.1 Encoder- und Decoder-Stacks: Der Encoder enthält N = 6 identische Schichten, die jeweils Multi-Head Self-Attention mit einem positionsweisen Feed-Forward-Netzwerk, Residualverbindungen und Layer-Normalisierung kombinieren [11] [1].Jede Unterschicht verwendet LayerNorm(x + Sublayer(x)).
- 3.1 Encoder- und Decoder-Stacks: Der Decoder enthält N = 6 Schichten mit Encoder-Decoder-Attention, Residualverbindungen, Layer-Normalisierung und maskierter Self-Attention, die den Zugriff auf nachfolgende Positionen verhindert.Die Maskierung erhält die autoregressive Generierung aufrecht, indem sie unzulässige Verbindungen zu zukünftigen Positionen blockiert.
- 3.2 Attention: Scaled Dot-Product Attention berechnet Skalarprodukte von Queries und Keys, dividiert sie durch √dk, wendet Softmax-Gewichte an und bildet gewichtete Summen der Values.Die Skalierung wirkt großen Skalarprodukten entgegen, die Softmax bei großen dk in Bereiche mit extrem kleinen Gradienten treiben können.
- 3.2.2 Multi-Head Attention: Multi-Head Attention projiziert Queries, Keys und Values in mehrere gelernte niederdimensionale Unterräume, verarbeitet sie parallel, konkateniert die Ausgaben und projiziert sie erneut.Dadurch kann das Modell gemeinsam auf verschiedene Repräsentationsunterräume und Positionen fokussieren, ohne die durch die Mittelung eines einzelnen Heads bedingte Einschränkung.
- 3.2.2 Multi-Head Attention: Das Modell verwendet h = 8 Attention-Heads mit dk = dv = dmodel/h = 64, wodurch die gesamten Rechenkosten ähnlich wie bei einer Single-Head Attention mit voller Dimensionalität bleiben.Die reduzierte Dimensionalität jedes Heads gleicht die Kosten der parallelen Ausführung der Heads aus.
- 3.2.3 Anwendungen von Attention in unserem Modell: Attention wird als Encoder-Decoder-Attention über alle Eingabepositionen, als Encoder-Self-Attention über die vorherige Schicht und als Decoder-Self-Attention über die Positionen bis zur aktuellen Position angewendet.Decoder-Self-Attention maskiert unzulässige Verbindungen, indem ihre Softmax-Eingaben auf −∞ gesetzt werden, und erhält so den Informationsfluss von links nach rechts aufrecht.
3.3 Positionsweise Feed-Forward-Netzwerke
Jede Encoder- und Decoder-Schicht ergänzt die Attention um ein positionsweises Feed-Forward-Netzwerk. Es wendet zwei lineare Transformationen mit einer dazwischengeschalteten ReLU an, wobei die Parameter über Positionen hinweg geteilt werden, zwischen den Schichten jedoch unterschiedlich sind.
- 3.3 Positionsweise Feed-Forward-Netzwerke: Jede Encoder- und Decoder-Schicht enthält ein positionsweises Feed-Forward-Netzwerk, das an jeder Position separat und identisch angewendet wird.Das Netzwerk besteht aus zwei linearen Transformationen mit einer ReLU-Aktivierung dazwischen.
- 3.3 Positionsweise Feed-Forward-Netzwerke: Das Feed-Forward-Netzwerk verwendet über alle Positionen hinweg dieselben Parameter der linearen Transformation, zwischen den Schichten jedoch unterschiedliche Parameter.Es lässt sich auch als zwei Faltungen mit Kernelgröße 1 beschreiben.
- 3.3 Positionsweise Feed-Forward-Netzwerke: Das Modell verwendet d_model = 512 für Eingabe- und Ausgaberepräsentationen sowie d_ff = 2048 für die innere Schicht des Feed-Forward-Netzwerks.
3.4 Embeddings und Softmax
Der Transformer verwendet gelernte Token-Embeddings und eine gelernte lineare Transformation mit Softmax, um Wahrscheinlichkeiten für das nächste Token zu erzeugen. Er teilt eine Gewichtsmatrix über beide Embedding-Schichten und die Transformation vor der Softmax und skaliert die Embedding-Gewichte mit √dmodel.
- 3.4 Embeddings und Softmax: Gelernte Embeddings bilden Eingabe- und Ausgabetokens auf Vektoren der Dimension dmodel ab, während eine gelernte lineare Transformation und Softmax Wahrscheinlichkeiten für das vorhergesagte nächste Token erzeugen.Diese Komponenten folgen dem standardmäßigen Aufbau der Sequenztransduktion.
- 3.4 Embeddings und Softmax: Das Modell teilt eine Gewichtsmatrix über seine beiden Embedding-Schichten und die lineare Transformation vor der Softmax, gemäß [30].
- 3.4 Embeddings und Softmax: Die Gewichte der Embedding-Schichten werden vor ihrer Verwendung mit √dmodel multipliziert.
3.5 Positionskodierung
Da dem Transformer Rekurrenz und Faltung fehlen, fügt er den Eingabeeinbettungen von Encoder und Decoder Positionskodierungen hinzu, um die Token-Reihenfolge darzustellen. Das Paper verwendet sinusförmige Kodierungen, deren Struktur relativer Positionen Attention und Extrapolation über die Trainingslängen hinaus unterstützen könnte.
- 3.5 Positionskodierung: Sinusförmige Positionskodierungen fügen den Eingabeeinbettungen von Encoder und Decoder Informationen über die Reihenfolge hinzu und verwenden dieselbe Dimension wie die Einbettungen, sodass sie summiert werden können.Die Kodierungen sind notwendig, weil das Modell weder Rekurrenz noch Faltung enthält.
- 3.5 Positionskodierung: Jede Kodierungsdimension ist eine Sinusfunktion mit Wellenlängen, die geometrisch von 2π bis 10000 · 2π fortschreiten.Es wurde angenommen, dass dieses Design dem Modell helfen könnte, Attention anhand relativer Positionen zu lernen, weil sich PEpos+k für festes k linear aus PEpos darstellen lässt.
- 3.5 Positionskodierung: Gelernten Positionsrepräsentationen [9] und sinusförmigen Kodierungen lieferten nahezu identische Ergebnisse, doch die sinusförmige Variante wurde wegen einer möglichen Längenextrapolation ausgewählt.Der Vergleich wird in Table 3, Zeile (E), berichtet.
4 Warum Self-Attention
Der Abschnitt begründet Self-Attention durch den Vergleich von Rechenkomplexität, Parallelisierbarkeit und Pfadlänge für Abhängigkeiten über große Distanzen mit rekurrenten und konvolutionalen Schichten. Self-Attention bietet eine konstante sequenzielle Tiefe, eine günstige Komplexität für typische Satzlängen und potenziell interpretierbare Attention-Muster.
- Der Vergleich bewertet Schichten anhand der Rechenkomplexität pro Schicht, der parallelisierbaren Berechnung und der erforderlichen Pfadlänge zum Erlernen von Abhängigkeiten über große Distanzen.Kürzere Pfade erleichtern das Erlernen von Abhängigkeiten über große Distanzen.
- Self-Attention verbindet alle Eingabe-Ausgabe-Positionen mit einer konstanten Anzahl sequenzieller Operationen, während rekurrente Schichten O(n) sequenzielle Operationen erfordern.
- Self-Attention ist schneller als rekurrente Schichten, wenn die Sequenzlänge n kleiner als die Repräsentationsdimensionalität d ist, wie es bei Wortsegment- und Byte-Pair-Satzrepräsentationen häufig der Fall ist.Bei sehr langen Sequenzen kann die Beschränkung der Attention auf eine Nachbarschaft der Größe r die Rechenleistung verbessern, erhöht jedoch die maximale Pfadlänge.
- Konvolutionale Schichten benötigen O(n/k) Schichten mit zusammenhängenden Kerneln oder O(logk(n)) Schichten mit dilatierter Konvolution, um alle Positionen zu verbinden, und sind im Allgemeinen um den Faktor k teurer als rekurrente Schichten.Separierbare Konvolutionen verringern die konvolutionale Komplexität.
- Attention-Verteilungen können die Interpretierbarkeit verbessern, weil einzelne Köpfe unterschiedliche Aufgaben erlernen und häufig syntaktisches oder semantisches Verhalten zeigen.Der Abschnitt weist darauf hin, dass diese Muster im Anhang veranschaulicht und diskutiert werden.
5 Training
Der Transformer wurde auf WMT-2014-Übersetzungsdatensätzen mit Adam, einem Lernratenplan mit Warmup und Decay sowie Regularisierung trainiert. Das Training verwendete 8 NVIDIA P100 GPUs und dauerte je nach Konfiguration 12 Stunden bis 3.5 Tage; dabei wurden bei geringeren Trainingskosten bessere BLEU-Scores als mit bisherigen State-of-the-Art-Modellen erzielt.
- Für das Training wurden etwa 4.5 Millionen Englisch-Deutsch-Satzpaare mit einem gemeinsamen 37,000-Token-Byte-Pair-Vokabular sowie 36 Millionen Englisch-Französisch-Sätze mit einem 32,000-Token-WordPiece-Vokabular verwendet.Satzpaare wurden nach ungefährer Sequenzlänge zu Batches zusammengefasst.
- Auf einer Maschine mit 8 NVIDIA P100 GPUs wurden Base-Modelle 100,000 Schritte lang in 12 Stunden trainiert, während Big-Modelle 300,000 Schritte über 3.5 Tage trainiert wurden.Schritte des Base-Modells dauerten etwa 0.4 Sekunden, Schritte des Big-Modells 1.0 Sekunde.
- Die Optimierung verwendete Adam mit β1 = 0.9, β2 = 0.98 und ϵ = 10^-9; dabei wurde die Lernrate für 4,000 Warmup-Schritte erhöht, bevor ein Invers-Quadratwurzel-Decay einsetzte.
- Der Transformer erzielt bei den WMT-2014-Tests für Englisch-Deutsch und Englisch-Französisch bessere BLEU-Scores als frühere State-of-the-Art-Modelle, und zwar mit einem Bruchteil der Trainingskosten.
- Die Regularisierung umfasste Residual- und Embedding-Position-Dropout mit Pdrop = 0.1 im Base-Modell sowie Label Smoothing mit ϵls = 0.1, das trotz einer Verschlechterung der Perplexität die Genauigkeit und den BLEU-Score verbesserte.
6 Ergebnisse
Der Transformer erzielt Übersetzungsergebnisse auf dem Stand der Technik bei deutlich geringeren Trainingskosten, während Komponentenstudien wichtige Entscheidungen zur Architektur und Regularisierung identifizieren. Außerdem generalisiert er gut auf das englische Constituency Parsing und übertrifft frühere Systeme mit Ausnahme der Recurrent Neural Network Grammar.
- Übersetzungsergebnisse: 28.4 BLEU auf WMT 2014 English-to-German übertrifft die zuvor besten berichteten Modelle, einschließlich Ensembles, um mehr als 2.0 BLEU.Das Training dauerte 3.5 Tage auf 8 P100 GPUs.
- Übersetzungsergebnisse: 41.0 BLEU auf WMT 2014 English-to-French übertrifft alle zuvor veröffentlichten Einzelmodelle bei weniger als einem Viertel der bisherigen Trainingskosten für den Stand der Technik.Das English-to-French big model verwendete eine Dropout-Rate von Pdrop = 0.1.
- Ablationsstudien: Auf englischen English-to-German-Entwicklungsdaten verringern zu wenige oder zu viele Attention-Heads die Qualität, kleinere Key-Dimensionen verschlechtern sie, und größere Modelle sowie Dropout verbessern die Leistung.Attention mit einem einzelnen Head ist 0.9 BLEU schlechter als die beste Einstellung; gelernte Positions-Embeddings erzielen nahezu identische Ergebnisse wie sinusförmige Encodings [9].
- Englisches Constituency Parsing: Beim englischen Constituency Parsing übertrifft der Transformer alle zuvor berichteten Modelle mit Ausnahme der Recurrent Neural Network Grammar [8].Er übertrifft auch den Berkeley-Parser, wenn er ausschließlich auf dem 40K-Sätze umfassenden WSJ-Trainingssatz trainiert wird.
7 Schlussfolgerung
Der Transformer ist ein Sequenztransduktionsmodell, das vollständig auf Multi-Head Self-Attention basiert und rekurrente Encoder-Decoder-Schichten ersetzt. Er lässt sich schneller trainieren als rekurrente oder konvolutionale Architekturen und erzielt bei beiden WMT-2014-Übersetzungsaufgaben State-of-the-Art-Ergebnisse.
- Das Modell ist die erste Sequenztransduktionsarchitektur, die vollständig auf Attention basiert und rekurrente Schichten durch Multi-Head Self-Attention ersetzt.
- Der Transformer erzielt bei WMT 2014 Englisch-Deutsch und Englisch-Französisch State-of-the-Art-Ergebnisse und übertrifft bei Englisch-Deutsch alle zuvor berichteten Ensembles.Er lässt sich außerdem deutlich schneller trainieren als Architekturen, die auf rekurrenten oder konvolutionalen Schichten basieren.
- Zukünftige Arbeiten werden Attention-basierte Modelle über Text hinaus erweitern, beschränkte Attention für große Eingaben und Ausgaben entwickeln und die Generierung weniger sequenziell gestalten.Zu den vorgeschlagenen Modalitäten gehören Bilder, Audio und Video.
Visualisierungen der Attention
Visualisierungen der Attention zeigen, dass Encoder-Self-Attention-Heads unterschiedliche Verhaltensweisen im Zusammenhang mit Langstreckenabhängigkeiten, der Auflösung von Anaphern und der Satzstruktur erlernen.
- Visualisierungen der Attention: Encoder-Self-Attention-Heads in Layer 5 verfolgen Langstreckenabhängigkeiten; viele fokussieren auf die Abhängigkeit zwischen ‘making’ und ‘more difficult’.Die Visualisierung zeigt die Attention für das Wort ‘making’, wobei unterschiedliche Farben verschiedene Heads darstellen.
- Visualisierungen der Attention: Zwei Attention-Heads in Layer 5 scheinen an der Auflösung von Anaphern beteiligt zu sein und erzeugen für das Wort ‘its’ eine besonders scharfe Attention.Die Abbildung zeigt die vollständigen Attentions für Head 5 sowie isolierte Attentions von ‘its’ für Heads 5 und 6.
- Visualisierungen der Attention: Viele Attention-Heads zeigen ein Verhalten im Zusammenhang mit der Satzstruktur, und verschiedene Heads erlernen eindeutig unterschiedliche Aufgaben.Die Beispiele stammen von zwei Encoder-Self-Attention-Heads in Layer 5 von 6.