--- theme: default --- # Attention Is All You Need ## A Revolutionary Architecture for Sequence Transduction Ashish Vaswani et al. NIPS 2017 --- ## Abstract - Proposes Transformer: first model based solely on attention mechanisms - Dispenses with recurrence and convolutions entirely - Achieves superior quality while being more parallelizable - 28.4 BLEU on WMT 2014 English-to-German (↑2+ BLEU) - 41.8 BLEU on WMT 2014 English-to-French (new state-of-the-art) - Generalizes well to other tasks like English constituency parsing --- ## Background: The Problem with Traditional Approaches - **Recurrent models (RNN/LSTM/GRU)** - Inherently sequential computation - Limited parallelization - Difficult to learn long-range dependencies - **Convolutional models** - Fixed kernel size limits long-range dependencies - O(n/k) or O(logk(n)) operations for distant connections - Less efficient than attention for sequence tasks --- ## Key Innovation: Attention as the Core Mechanism - **Self-attention** connects all positions with constant operations - **Parallelization** possible across sequence positions - **Long-range dependencies** modeled directly - **Interpretability** through attention distributions - **Computational efficiency** for typical sequence lengths --- ## Transformer Model Architecture The overall encoder-decoder structure with stacked self-attention and feed-forward layers. --- ## Encoder Architecture - Stack of 6 identical layers - Each layer has two sub-layers: 1. Multi-head self-attention mechanism 2. Position-wise fully connected feed-forward network - Residual connections around each sub-layer - Layer normalization after each sub-layer - All sub-layers produce outputs of dimension dmodel = 512 --- ## Decoder Architecture - Stack of 6 identical layers - Three sub-layers per layer: 1. Masked multi-head self-attention 2. Multi-head attention over encoder outputs 3. Position-wise fully connected feed-forward network - Residual connections and layer normalization - Masking prevents attending to future positions - Output embeddings offset by one position --- ## Attention Mechanism - Maps query and key-value pairs to output - Output = weighted sum of values - Weights computed by compatibility function of query and keys **Scaled Dot-Product Attention:** $$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$ - Scaling prevents gradients from becoming too small - More efficient than additive attention in practice --- ## Multi-Head Attention - Projects queries, keys, values h times with different linear projections - Performs attention in parallel on projected subspaces - Concatenates results and projects again $$\text{MultiHead}(Q, K, V) = \text{Concat}(\text{head}_1, ..., \text{head}_h)W^O$$ where $\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)$ - h = 8 parallel attention heads in base model - $d_k = d_v = d_{\text{model}}/h = 64$ --- ## Three Applications of Attention 1. **Encoder-decoder attention** - Queries from decoder, keys/values from encoder - Allows decoder to attend to all input positions 2. **Encoder self-attention** - All keys, values, queries from previous encoder layer - Each position attends to all positions in previous layer 3. **Decoder self-attention** - Each position attends to previous positions in decoder - Masking prevents attending to future positions --- ## Positional Encoding - Injects sequence order information since no recurrence/convolution - Added to input embeddings (same dimension dmodel) - Uses sine and cosine functions of different frequencies: $$PE_{(pos,2i)} = \sin(pos/10000^{2i/d_{\text{model}}})$$ $$PE_{(pos,2i+1)} = \cos(pos/10000^{2i/d_{\text{model}}})$$ - Allows model to learn relative position relationships - Performed as well as learned positional embeddings --- ## Why Self-Attention? | Aspect | Self-Attention | Recurrent | Convolutional | |--------|----------------|-----------|---------------| | Complexity | O(n²·d) | O(n·d²) | O(k·n·d²) | | Parallelization | O(1) | O(n) | O(1) | | Long-range paths | O(1) | O(n) | O(logk(n)) | - More parallelizable than RNNs - Better at capturing long-range dependencies than CNNs - More efficient for typical sequence lengths (n < d) - More interpretable through attention weights --- ## Training Details - **Datasets**: WMT 2014 EN-DE (4.5M) and EN-FR (36M) - **Batching**: ~25,000 source and target tokens per batch - **Hardware**: 8 NVIDIA P100 GPUs - **Optimizer**: Adam (β1=0.9, β2=0.98, ϵ=10⁻⁹) - **Learning rate**: $d_{\text{model}}^{-0.5} \cdot \min(\text{step_num}^{-0.5}, \text{step_num} \cdot \text{warmup_steps}^{-1.5})$ - **Regularization**: Residual dropout (Pdrop=0.1), label smoothing (ϵls=0.1) --- ## Machine Translation Results | Model | EN-DE BLEU | EN-FR BLEU | Training Cost (FLOPs) | |-------|------------|------------|-----------------------| | GNMT + RL Ensemble | 26.30 | 41.16 | 1.8×10²⁰ / 1.1×10²¹ | | ConvS2S Ensemble | 26.36 | 41.29 | 7.7×10¹⁹ / 1.2×10²¹ | | **Transformer (big)** | **28.4** | **41.8** | **2.3×10¹⁹** | - Transformer (big) outperforms all previous models - Achieves new state-of-the-art with significantly lower training cost - Trained in 3.5 days on 8 GPUs (vs. weeks for competitors) --- ## Model Architecture Ablations | Variation | Dev PPL | Dev BLEU | |-----------|---------|----------| | Base model | 4.92 | 25.8 | | Single attention head | 5.29 | 24.9 | | 32 attention heads | 5.01 | 25.4 | | No dropout | 4.67 | 25.3 | | Learned positional embeddings | 4.92 | 25.7 | | Big model | 4.33 | 26.4 | -多头注意力优于单头注意力 - dropout对防止过拟合至关重要 - 正弦位置编码与学习的位置编码效果相当 - 增大模型尺寸(dmodel=1024, dff=4096)提升性能 --- ## Generalization to English Constituency Parsing | Parser | Training | WSJ 23 F1 | |--------|----------|-----------| | Petrov et al. (2006) | WSJ only | 90.4 | | Dyer et al. (2016) | WSJ only | 91.7 | | **Transformer (4 layers)** | **WSJ only** | **91.3** | | Vinyals & Kaiser (2014) | Semi-supervised | 92.1 | | **Transformer (4 layers)** | **Semi-supervised** | **92.7** | - Transformer performs well without task-specific modifications - Outperforms RNN approaches in small-data regimes - Achieves 92.7 F1 in semi-supervised setting --- ## Attention Visualization: Long-Distance Dependencies Encoder self-attention in layer 5 showing attention to distant dependency of the verb "making". --- ## Attention Visualization: Anaphora Resolution Attention heads involved in resolving the pronoun "its" to its referent "The Law". --- ## Limitations and Future Work - **Limitations**: - Quadratic complexity in sequence length - Less effective for very long sequences - Still generates output sequentially - **Future work**: - Local, restricted attention mechanisms - Applications to other modalities (images, audio, video) - Less sequential generation approaches - Efficient handling of large inputs/outputs --- ## Conclusion - Transformer achieves state-of-the-art results in machine translation - Eliminates recurrence and convolution in favor of self-attention - Significantly faster training through parallelization - Generalizes well to other sequence tasks like constituency parsing - Paves the way for modern attention-based models in NLP - Code available at https://github.com/tensorflow/tensor2tensor