Effective Approaches to Attention-based Neural Machine Translation
Minh-Thang Luong, Hieu Pham, Christopher D. Manning
Introduction
Neural Machine Translation (NMT) achieved state-of-the-art performances in large-scale translation tasks such as from English to French [Luong et al., 2015] and English to German [Jean et al., 2015]. NMT is appealing since it requires minimal domain knowledge and is conceptually simple. The model by ?) reads through all the source words until the end-of-sentence symbol eos is reached. It then starts emitting one target word at a time, as illustrated in Figure 1. NMT is often a large neural network that is trained in an end-to-end fashion and has the ability to generalize well to very long word sequences. This means the model does not have to explicitly store gigantic phrase tables and language models as in the case of standard MT; hence, NMT has a small memory footprint. Lastly, implementing NMT decoders is easy unlike the highly intricate decoders in standard MT [Koehn et al., 2003].
In parallel, the concept of “attention” has gained popularity recently in training neural networks, allowing models to learn alignments between different modalities, e.g., between image objects and agent actions in the dynamic control problem [Mnih et al., 2014], between speech frames and text in the speech recognition task [jan14], or between visual features of a picture and its text description in the image caption generation task [Xu et al., 2015]. In the context of NMT, ?) has successfully applied such attentional mechanism to jointly translate and align words. To the best of our knowledge, there has not been any other work exploring the use of attention-based architectures for NMT.
In this work, we design, with simplicity and effectiveness in mind, two novel types of attention-based models: a global approach in which all source words are attended and a local one whereby only a subset of source words are considered at a time. The former approach resembles the model of [Bahdanau et al., 2015] but is simpler architecturally. The latter can be viewed as an interesting blend between the hard and soft attention models proposed in [Xu et al., 2015]: it is computationally less expensive than the global model or the soft attention; at the same time, unlike the hard attention, the local attention is differentiable almost everywhere, making it easier to implement and train.There is a recent work by ?), which is very similar to our local attention and applied to the image generation task. However, as we detail later, our model is much simpler and can achieve good performance for NMT. Besides, we also examine various alignment functions for our attention-based models.
Experimentally, we demonstrate that both of our approaches are effective in the WMT translation tasks between English and German in both directions. Our attentional models yield a boost of up to 5.0 BLEU over non-attentional systems which already incorporate known techniques such as dropout. For English to German translation, we achieve new state-of-the-art (SOTA) results for both WMT’14 and WMT’15, outperforming previous SOTA systems, backed by NMT models and -gram LM rerankers, by more than 1.0 BLEU. We conduct extensive analysis to evaluate our models in terms of learning, the ability to handle long sentences, choices of attentional architectures, alignment quality, and translation outputs.
Neural Machine Translation
A neural machine translation system is a neural network that directly models the conditional probability of translating a source sentence, , to a target sentence, .All sentences are assumed to terminate with a special “end-of-sentence” token eos. A basic form of NMT consists of two components: (a) an encoder which computes a representation for each source sentence and (b) a decoder which generates one target word at a time and hence decomposes the conditional probability as:
A natural choice to model such a decomposition in the decoder is to use a recurrent neural network (RNN) architecture, which most of the recent NMT work such as [Kalchbrenner and Blunsom, 2013, Sutskever et al., 2014, Cho et al., 2014, Bahdanau et al., 2015, Luong et al., 2015, Jean et al., 2015] have in common. They, however, differ in terms of which RNN architectures are used for the decoder and how the encoder computes the source sentence representation .
?) used an RNN with the standard hidden unit for the decoder and a convolutional neural network for encoding the source sentence representation. On the other hand, both ?) and ?) stacked multiple layers of an RNN with a Long Short-Term Memory (LSTM) hidden unit for both the encoder and the decoder. ?), ?), and ?) all adopted a different version of the RNN with an LSTM-inspired hidden unit, the gated recurrent unit (GRU), for both components.They all used a single RNN layer except for the latter two works which utilized a bidirectional RNN for the encoder.
In more detail, one can parameterize the probability of decoding each word as:
with being the transformation function that outputs a vocabulary-sized vector.One can provide with other inputs such as the currently predicted word as in [Bahdanau et al., 2015]. Here, \mbox{\boldmath{h}}_{j} is the RNN hidden unit, abstractly computed as:
where computes the current hidden state given the previous hidden state and can be either a vanilla RNN unit, a GRU, or an LSTM unit. In [Kalchbrenner and Blunsom, 2013, Sutskever et al., 2014, Cho et al., 2014, Luong et al., 2015], the source representation is only used once to initialize the decoder hidden state. On the other hand, in [Bahdanau et al., 2015, Jean et al., 2015] and this work, , in fact, implies a set of source hidden states which are consulted throughout the entire course of the translation process. Such an approach is referred to as an attention mechanism, which we will discuss next.
In this work, following [Sutskever et al., 2014, Luong et al., 2015], we use the stacking LSTM architecture for our NMT systems, as illustrated in Figure 1. We use the LSTM unit defined in [Zaremba et al., 2015]. Our training objective is formulated as follows:
Attention-based Models
Our various attention-based models are classifed into two broad categories, global and local. These classes differ in terms of whether the “attention” is placed on all source positions or on only a few source positions. We illustrate these two model types in Figure 2 and 3 respectively.
Common to these two types of models is the fact that at each time step in the decoding phase, both approaches first take as input the hidden state \mbox{\boldmath{h}}_{t} at the top layer of a stacking LSTM. The goal is then to derive a context vector \mbox{\boldmath{c}}_{t} that captures relevant source-side information to help predict the current target word . While these models differ in how the context vector \mbox{\boldmath{c}}_{t} is derived, they share the same subsequent steps.
Specifically, given the target hidden state \mbox{\boldmath{h}}_{t} and the source-side context vector \mbox{\boldmath{c}}_{t}, we employ a simple concatenation layer to combine the information from both vectors to produce an attentional hidden state as follows:
We now detail how each model type computes the source-side context vector \mbox{\boldmath{c}}_{t}.
The idea of a global attentional model is to consider all the hidden states of the encoder when deriving the context vector . In this model type, a variable-length alignment vector \mbox{\boldmath{a}}_{t}, whose size equals the number of time steps on the source side, is derived by comparing the current target hidden state \mbox{\boldmath{h}}_{t} with each source hidden state \mbox{\boldmath{\bar{h}}}_{s}:
Here, is referred as a content-based function for which we consider three different alternatives:
Besides, in our early attempts to build attention-based models, we use a location-based function in which the alignment scores are computed from solely the target hidden state \mbox{\boldmath{h}}_{t} as follows:
Given the alignment vector as weights, the context vector is computed as the weighted average over all the source hidden states.Eq. (8) implies that all alignment vectors \mbox{\boldmath{a}}_{t} are of the same length. For short sentences, we only use the top part of \mbox{\boldmath{a}}_{t} and for long sentences, we ignore words near the end.
2 Local Attention
The global attention has a drawback that it has to attend to all words on the source side for each target word, which is expensive and can potentially render it impractical to translate longer sequences, e.g., paragraphs or documents. To address this deficiency, we propose a local attentional mechanism that chooses to focus only on a small subset of the source positions per target word.
This model takes inspiration from the tradeoff between the soft and hard attentional models proposed by ?) to tackle the image caption generation task. In their work, soft attention refers to the global attention approach in which weights are placed “softly” over all patches in the source image. The hard attention, on the other hand, selects one patch of the image to attend to at a time. While less expensive at inference time, the hard attention model is non-differentiable and requires more complicated techniques such as variance reduction or reinforcement learning to train.
Monotonic alignment (local-m) – we simply set assuming that source and target sequences are roughly monotonically aligned. The alignment vector \mbox{\boldmath{a}}_{t} is defined according to Eq. (7).local-m is the same as the global model except that the vector \mbox{\boldmath{a}}_{t} is fixed-length and shorter.
Predictive alignment (local-p) – instead of assuming monotonic alignments, our model predicts an aligned position as follows:
and \mbox{\boldmath{v}}_{p} are the model parameters which will be learned to predict positions. is the source sentence length. As a result of , . To favor alignment points near , we place a Gaussian distribution centered around . Specifically, our alignment weights are now defined as:
We use the same function as in Eq. (7) and the standard deviation is empirically set as . Note that is a real nummber; whereas is an integer within the window centered at .local-p is similar to the local-m model except that we dynamically compute and use a truncated Gaussian distribution to modify the original alignment weights \operatorname{align}(\mbox{\boldmath{h}}_{t},\mbox{\boldmath{\bar{h}}}_{s}) as shown in Eq. (10). By utilizing to derive \mbox{\boldmath{a}}_{t}, we can compute backprop gradients for and \mbox{\boldmath{v}}_{p}. This model is differentiable almost everywhere.
Comparison to [Gregor et al., 2015] – have proposed a selective attention mechanism, very similar to our local attention, for the image generation task. Their approach allows the model to select an image patch of varying location and zoom. We, instead, use the same “zoom” for all target positions, which greatly simplifies the formulation and still achieves good performance.
3 Input-feeding Approach
Comparison to other work – ?) use context vectors, similar to our \mbox{\boldmath{c}}_{t}, in building subsequent hidden states, which can also achieve the “coverage” effect. However, there has not been any analysis of whether such connections are useful as done in this work. Also, our approach is more general; as illustrated in Figure 4, it can be applied to general stacking recurrent architectures, including non-attentional models.
?) propose a doubly attentional approach with an additional constraint added to the training objective to make sure the model pays equal attention to all parts of the image during the caption generation process. Such a constraint can also be useful to capture the coverage set effect in NMT that we mentioned earlier. However, we chose to use the input-feeding approach since it provides flexibility for the model to decide on any attentional constraints it deems suitable.
Experiments
We evaluate the effectiveness of our models on the WMT translation tasks between English and German in both directions. newstest2013 (3000 sentences) is used as a development set to select our hyperparameters. Translation performances are reported in case-sensitive BLEU [Papineni et al., 2002] on newstest2014 (2737 sentences) and newstest2015 (2169 sentences). Following [Luong et al., 2015], we report translation quality using two types of BLEU: (a) tokenizedAll texts are tokenized with tokenizer.perl and BLEU scores are computed with multi-bleu.perl. BLEU to be comparable with existing NMT work and (b) NISTWith the mteval-v13a script as per WMT guideline. BLEU to be comparable with WMT results.
All our models are trained on the WMT’14 training data consisting of 4.5M sentences pairs (116M English words, 110M German words). Similar to [Jean et al., 2015], we limit our vocabularies to be the top 50K most frequent words for both languages. Words not in these shortlisted vocabularies are converted into a universal token unk.
When training our NMT systems, following [Bahdanau et al., 2015, Jean et al., 2015], we filter out sentence pairs whose lengths exceed 50 words and shuffle mini-batches as we proceed. Our stacking LSTM models have 4 layers, each with 1000 cells, and 1000-dimensional embeddings. We follow [Sutskever et al., 2014, Luong et al., 2015] in training NMT with similar settings: (a) our parameters are uniformly initialized in , (b) we train for 10 epochs using plain SGD, (c) a simple learning rate schedule is employed – we start with a learning rate of 1; after 5 epochs, we begin to halve the learning rate every epoch, (d) our mini-batch size is 128, and (e) the normalized gradient is rescaled whenever its norm exceeds 5. Additionally, we also use dropout with probability for our LSTMs as suggested by [Zaremba et al., 2015]. For dropout models, we train for 12 epochs and start halving the learning rate after 8 epochs. For local attention models, we empirically set the window size .
Our code is implemented in MATLAB. When running on a single GPU device Tesla K40, we achieve a speed of 1K target words per second. It takes 7–10 days to completely train a model.
2 English-German Results
We compare our NMT systems in the English-German task with various other systems. These include the winning system in WMT’14 [Buck et al., 2014], a phrase-based system whose language models were trained on a huge monolingual text, the Common Crawl corpus. For end-to-end NMT systems, to the best of our knowledge, [Jean et al., 2015] is the only work experimenting with this language pair and currently the SOTA system. We only present results for some of our attention models and will later analyze the rest in Section 5.
As shown in Table 1, we achieve progressive improvements when (a) reversing the source sentence, + BLEU, as proposed in [Sutskever et al., 2014] and (b) using dropout, + BLEU. On top of that, (c) the global attention approach gives a significant boost of + BLEU, making our model slightly better than the base attentional system of ?) (row RNNSearch). When (d) using the input-feeding approach, we seize another notable gain of + BLEU and outperform their system. The local attention model with predictive alignments (row local-p) proves to be even better, giving us a further improvement of + BLEU on top of the global attention model. It is interesting to observe the trend previously reported in [Luong et al., 2015] that perplexity strongly correlates with translation quality. In total, we achieve a significant gain of 5.0 BLEU points over the non-attentional baseline, which already includes known techniques such as source reversing and dropout.
The unknown replacement technique proposed in [Luong et al., 2015, Jean et al., 2015] yields another nice gain of + BLEU, demonstrating that our attentional models do learn useful alignments for unknown works. Finally, by ensembling 8 different models of various settings, e.g., using different attention approaches, with and without dropout etc., we were able to achieve a new SOTA result of BLEU, outperforming the existing best system [Jean et al., 2015] by + BLEU.
Latest results in WMT’15 – despite the fact that our models were trained on WMT’14 with slightly less data, we test them on newstest2015 to demonstrate that they can generalize well to different test sets. As shown in Table 2, our best system establishes a new SOTA performance of BLEU, outperforming the existing best system backed by NMT and a 5-gram LM reranker by + BLEU.
3 German-English Results
We carry out a similar set of experiments for the WMT’15 translation task from German to English. While our systems have not yet matched the performance of the SOTA system, we nevertheless show the effectiveness of our approaches with large and progressive gains in terms of BLEU as illustrated in Table 3. The attentional mechanism gives us + BLEU gain and on top of that, we obtain another boost of up to + BLEU from the input-feeding approach. Using a better alignment function, the content-based dot product one, together with dropout yields another gain of + BLEU. Lastly, when applying the unknown word replacement technique, we seize an additional + BLEU, demonstrating the usefulness of attention in aligning rare words.
Analysis
We conduct extensive analysis to better understand our models in terms of learning, the ability to handle long sentences, choices of attentional architectures, and alignment quality. All results reported here are on English-German newstest2014.
We compare models built on top of one another as listed in Table 1. It is pleasant to observe in Figure 5 a clear separation between non-attentional and attentional models. The input-feeding approach and the local attention model also demonstrate their abilities in driving the test costs lower. The non-attentional model with dropout (the blue + curve) learns slower than other non-dropout models, but as time goes by, it becomes more robust in terms of minimizing test errors.
2 Effects of Translating Long Sentences
We follow [Bahdanau et al., 2015] to group sentences of similar lengths together and compute a BLEU score per group. Figure 6 shows that our attentional models are more effective than the non-attentional one in handling long sentences: the quality does not degrade as sentences become longer. Our best model (the blue + curve) outperforms all other systems in all length buckets.
3 Choices of Attentional Architectures
4 Alignment Quality
A by-product of attentional models are word alignments. While [Bahdanau et al., 2015] visualized alignments for some sample sentences and observed gains in translation quality as an indication of a working attention model, no work has assessed the alignments learned as a whole. In contrast, we set out to evaluate the alignment quality using the alignment error rate (AER) metric.
Given the gold alignment data provided by RWTH for 508 English-German Europarl sentences, we “force” decode our attentional models to produce translations that match the references. We extract only one-to-one alignments by selecting the source word with the highest alignment weight per target word. Nevertheless, as shown in Table 6, we were able to achieve AER scores comparable to the one-to-many alignments obtained by the Berkeley aligner [Liang et al., 2006].We concatenate the 508 sentence pairs with 1M sentence pairs from WMT and run the Berkeley aligner.
We also found that the alignments produced by local attention models achieve lower AERs than those of the global one. The AER obtained by the ensemble, while good, is not better than the local-m AER, suggesting the well-known observation that AER and translation scores are not well correlated [Fraser and Marcu, 2007]. We show some alignment visualizations in Appendix A.
5 Sample Translations
We show in Table 5 sample translations in both directions. It it appealing to observe the effect of attentional models in correctly translating names such as “Miranda Kerr” and “Roger Dow”. Non-attentional models, while producing sensible names from a language model perspective, lack the direct connections from the source side to make correct translations. We also observed an interesting case in the second example, which requires translating the doubly-negated phrase, “not incompatible”. The attentional model correctly produces “nicht unvereinbar”; whereas the non-attentional model generates “nicht vereinbar”, meaning “not compatible”.The reference uses a more fancy translation of “incompatible”, which is “im Widerspruch zu etwas stehen”. Both models, however, failed to translate “passenger experience”. The attentional model also demonstrates its superiority in translating long sentences as in the last example.
Conclusion
In this paper, we propose two simple and effective attentional mechanisms for neural machine translation: the global approach which always looks at all source positions and the local one that only attends to a subset of source positions at a time. We test the effectiveness of our models in the WMT translation tasks between English and German in both directions. Our local attention yields large gains of up to BLEU over non-attentional models which already incorporate known techniques such as dropout. For the English to German translation direction, our ensemble model has established new state-of-the-art results for both WMT’14 and WMT’15, outperforming existing best systems, backed by NMT models and -gram LM rerankers, by more than 1.0 BLEU.
We have compared various alignment functions and shed light on which functions are best for which attentional models. Our analysis shows that attention-based NMT models are superior to non-attentional ones in many cases, for example in translating names and handling long sentences.
Acknowledgment
We gratefully acknowledge support from a gift from Bloomberg L.P. and the support of NVIDIA Corporation with the donation of Tesla K40 GPUs. We thank Andrew Ng and his group as well as the Stanford Research Computing for letting us use their computing resources. We thank Russell Stewart for helpful discussions on the models. Lastly, we thank Quoc Le, Ilya Sutskever, Oriol Vinyals, Richard Socher, Michael Kayser, Jiwei Li, Panupong Pasupat, Kelvin Guu, members of the Stanford NLP Group and the annonymous reviewers for their valuable comments and feedback.
References
Appendix A Alignment Visualization
We visualize the alignment weights produced by our different attention models in Figure 7. The visualization of the local attention model is much sharper than that of the global one. This contrast matches our expectation that local attention is designed to only focus on a subset of words each time. Also, since we translate from English to German and reverse the source English sentence, the white strides at the words “reality” and “.” in the global attention model reveals an interesting access pattern: it tends to refer back to the beginning of the source sequence.
Compared to the alignment visualizations in [Bahdanau et al., 2015], our alignment patterns are not as sharp as theirs. Such difference could possibly be due to the fact that translating from English to German is harder than translating into French as done in [Bahdanau et al., 2015], which is an interesting point to examine in future work.