Balancing Training for Multilingual Neural Machine Translation

Xinyi Wang, Yulia Tsvetkov, Graham Neubig

Introduction

Multilingual models are trained to process different languages in a single model, and have been applied to a wide variety of NLP tasks such as text classification (Klementiev et al., 2012; Chen et al., 2018a), syntactic analysis (Plank et al., 2016; Ammar et al., 2016), named-entity recognition (Xie et al., 2018; Wu and Dredze, 2019), and machine translation (MT) (Dong et al., 2015; Johnson et al., 2016). These models have two particularly concrete advantages over their monolingual counterparts. First, deploying a single multilingual model is much more resource efficient than deploying one model for each language under consideration (Arivazhagan et al., 2019; Aharoni et al., 2019). Second, multilingual training makes it possible to transfer knowledge from high-resource languages (HRLs) to improve performance on low-resource languages (LRLs) Zoph et al. (2016); Nguyen and Chiang (2018); Neubig and Hu (2018); Wang and Neubig (2019); Aharoni et al. (2019).

A common problem with multilingual training is that the data from different languages are both heterogeneous (different languages may exhibit very different properties) and imbalanced (there may be wildly varying amounts of training data for each language). Thus, while LRLs will often benefit from transfer from other languages, for languages where sufficient monolingual data exists, performance will often decrease due to interference from the heterogeneous nature of the data. This is especially the case for modestly-sized models that are conducive to efficient deployment (Arivazhagan et al., 2019; Conneau et al., 2019).

To balance the performance on different languages, the standard practice is to heuristically adjust the distribution of data used in training, specifically by over-sampling the training data from LRLs (Johnson et al., 2016; Neubig and Hu, 2018; Arivazhagan et al., 2019; Conneau et al., 2019). For example, Arivazhagan et al. (2019) sample training data from different languages based on the dataset size scaled by a heuristically tuned temperature term. However, such heuristics are far from perfect. First, Arivazhagan et al. (2019) find that the exact value of this temperature term significantly affects results, and we further show in experiments that the ideal temperature varies significantly from one experimental setting to another. Second, this heuristic ignores factors other than data size that affect the interaction between different languages, despite the fact that language similarity has been empirically proven important in examinations of cross-lingual transfer learning (Wang and Neubig, 2019; Lin et al., 2019).

In this paper, we ask the question: “is it possible to learn an optimal strategy to automatically balance the usage of data in multilingual model training?” To this effect, we propose a method that learns a language scorer that can be used throughout training to improve the model performance on all languages. Our method is based on the recently proposed approach of Differentiable Data Selection (Wang et al., 2019b, DDS), a general machine learning method for optimizing the weighting of different training examples to improve a pre-determined objective. In this work, we take this objective to be the average loss from different languages, and directly optimize the weights of training data from each language to maximize this objective on a multilingual development set. This formulation has no heuristic temperatures, and enables the language scorer to consider the interaction between languages.

Based on this formulation, we propose an algorithm that improves the ability of DDS to optimize multiple model objectives, which we name MultiDDS. This is particularly useful in the case where we want to optimize performance on multiple languages simultaneously. Specifically, MultiDDS (1) has a more flexible scorer parameterization, (2) is memory efficient when training on multiple languages, and (3) stabilizes the reward signal so that it improves all objectives simultaneously instead of being overwhelmed by a single objective.

While the proposed methods are model-agnostic and thus potentially applicable to a wide variety of tasks, we specifically test them on the problem of training multilingual NMT systems that can translate many languages in a single model. We perform experiments on two sets of languages (one with more similarity between the languages, one with less) and two translation directions (one-to-many and many-to-one where the “one” is English). Results show that MultiDDS consistently outperforms various baselines in all settings. Moreover, we demonstrate MultiDDS provides a flexible framework that allows the user to define a variety of optimization objectives for multilingual models.

Multilingual Training Preliminaries

Multilingual Training Formulation

A multilingual NMT model can translate nn pairs of languages {S1-T1,S2-T2,...,Sn-Tn}\{S^{1}\text{-}T^{1},S^{2}\text{-}T^{2},...,S^{n}\text{-}T^{n}\}, from any source language SiS^{i}. to its corresponding target TiT^{i}. To train such a multilingual model, we have access to nn sets of training data Dtrain=Dtrain1,Dtrain2,,DtrainnD_{\text{train}}=D_{\text{train}}^{1},D_{\text{train}}^{2},\ldots,D_{\text{train}}^{n}, where DtrainiD_{\text{train}}^{i} is training data for language pair Si-TiS^{i}\text{-}T^{i}. From these datasets, we can define PiP^{i}, the distribution of sentences from SiS^{i}-TiT^{i}, and consequently also define a risk J(θ,Pi)J(\theta,P^{i}) for each language following the monolingual objective in Eq. 1.

However, the question now becomes: “how do we define an overall training objective given these multiple separate datasets?” Several different methods to do so have been proposed in the past. To discuss all of these different methods in a unified framework, we further define a distribution PDP_{D} over the nn sets of training data, and define our overall multilingual training objective as

Evaluation Methods

Relation to Heuristic Strategies

This formulation generalizes a variety of existing techniques that define PD(i)P_{D}(i) using a heuristic strategy, and keep it fixed throughout training.

The simplest strategy sets PD(i)P_{D}(i) to a uniform distribution, sampling minibatches from each language with equal frequency Johnson et al. (2016).

It is also common to sample data in portions equivalent to the size of the corresponding corpora in each language Johnson et al. (2016); Neubig and Hu (2018).

Finally, because both of the strategies above are extreme (proportional under-weighting LRLs, and uniform causing overfitting by re-sampling sentences from limited-size LRL datasets), it is common to sample according to data size exponentiated by a temperature term τ\tau Arivazhagan et al. (2019); Conneau et al. (2019):

When τ=1\tau=1 or τ=\tau=\infty this is equivalent to proportional or uniform sampling respectively, and when a number in the middle is chosen it becomes possible to balance between the two strategies.

As noted in the introduction, these heuristic strategies have several drawbacks regarding sensitivity to the τ\tau hyperparameter, and lack of consideration of similarity between the languages. In the following sections we will propose methods to resolve these issues.

Differentiable Data Selection

Now we turn to the question: is there a better way to optimize PD(i)P_{D}(i) so that we can achieve our final objective of performing well on a representative development set over all languages, i.e. minimizing Jdev(θ,Ddev)J_{\text{dev}}(\theta,D_{\text{dev}}). In order to do so, we turn to a recently proposed method of Differentiable Data Selection (Wang et al., 2019b, DDS), a general purpose machine learning method that allows for weighting of training data to improve performance on a separate set of held-out data.

Specifically, DDS uses a technique called bi-level optimization Colson et al. (2007), that learns a second set of parameters ψ\psi that modify the training objective that we use to learn θ\theta, so as to maximize the final objective Jdev(θ,Ddev)J_{\text{dev}}(\theta,D_{\text{dev}}). Specifically, it proposes to learn a data scorer P(x,y;ψ)P(x,y;\psi), parameterized by ψ\psi, such that training using data sampled from the scorer optimizes the model performance on the dev set. To take the example of learning an NMT system to translate a single language pair ii using DDS, the general objective in Eq. 1 could be rewritten as

DDS optimizes θ\theta and ψ\psi iteratively throughout the training process. Given a fixed ψ\psi, the update rule for θ\theta is simply

To update the data scorer, DDS uses reinforcement learning with a reward function that approximates the effect of the training data on the model’s dev performance

where cos()\text{cos}(\cdot) is the cosine similarity of two vectors. This reward can be derived by directly differentiating J(θ(ψ),Ddevi)J(\theta(\psi),D_{\text{dev}}^{i}) with respect to ψ\psi, but intuitively, it indicates that the data scorer should be updated to up-weigh the data points that have similar gradient with the dev data. According to the REINFORCE algorithm Williams (1992), the update rule for the data scorer then becomes

DDS for Multilingual Training

In this section, we use the previously described DDS method to derive a new framework that, instead of relying on fixed heuristics, adaptively optimizes usage of multilingual data for the best model performance on multiple languages. We illustrate the overall workflow in Fig. 1.

First, we note two desiderata for our multilingual training method: 1) generality: the method should be flexible enough so that it can be utilized universally for different multilingual tasks and settings (such as different translation directions for NMT). 2) scalablity: the method should be stable and efficient if one wishes to scale up the number of languages that a multilingual model supports. Based on these two properties, we introduce MultiDDS, an extension of the DDS method tailored for multilingual training.

MultiDDS directly parameterizes the standard dataset sampling distribution for multilingual training with ψ\psi:

and optimizes ψ\psi to minimize the dev loss. Notably, unlike standard DDS we make the design decision to weight training datasets rather than score each training example x,y\langle x,y\rangle directly, as it is more efficient and also likely easier to learn.

We can thus rewrite the objective in Eq. 2 to incorporate both ψ\psi and θ\theta as:

In other words, while the general DDS framework evaluates the model performance on a single dev set and optimizes the weighting of each training example, our multilingual training objective evaluates the performance over an aggregation of nn dev sets and optimizes the weighting of nn training sets.

The reward signal for updating ψt\psi_{t} is

where Jdev()J_{\text{dev}}(\cdot) defines the combination of nn dev sets, and we simply plug in its definition from Eq. 3. Intuitively, Eq. 10 implies that we should favor the training language ii if its gradient aligns with the gradient of the aggregated dev risk of all languages.

Implementing the Scorer Update

The pseudo-code for the training algorithm using MultiDDS can be found in Alg. 1. Notably, we do not update the data scorer ψ\psi on every training step, because it is too computationally expensive for NMT training (Wang et al., 2019b). Instead, after training the multilingual model θ\theta for a certain number of steps, we update the scorer for all languages. This implementation is not only efficient, but also allows us to re-estimate more frequently the effect of languages that have low probability of being sampled.

In order to do so, it is necessary to calculate the effect of each training language on the current model, namely R(i;θt)R(i;\theta_{t}). We estimate this value by sampling a batch of data from each DtrainiD_{\text{train}}^{i} to get the training gradient for θt\theta_{t}, and use this to calculate the reward for this language. This process is detailed in Alg. 1 of the Alg. 1.

Unlike the algorithm in DDS which requires storing nn model gradients,The NMT algorithm in (Wang et al., 2019b) estimates the reward by storing the moving average of nn training gradients, which is not memory efficient (See Line. 7 of Alg. 2 in (Wang et al., 2019b)). In the preliminary experiments, our approximation performs as well as the moving average approximation (see App. A.1). Thus, we use our approximation method as the component for MultiDDS for the rest of the experiments. this approximation does not require extra memory even if nn is large, which is important given recent efforts to scale multilingual training to 100+ (Arivazhagan et al., 2019; Aharoni et al., 2019) or even 1000+ languages Östling and Tiedemann (2017); Malaviya et al. (2017).

Stabilized Multi-objective Training

In our initial attempts to scale DDS to highly multi-lingual training, we found that one challenge was that the reward for updating the scorer became unstable. This is because the gradient of a multilingual dev set is less consistent and of higher variance than that of a monolingual dev set, which influences the fidelity of the data scorer reward. Suppose the dev set gradient of language kk has variance of var(gdevk)=σ\text{var}(g_{\text{dev}}^{k})=\sigma, and that the dev gradients of each language {gdev1,...,gdevn}\{g_{\text{dev}}^{1},...,g_{\text{dev}}^{n}\} are independent. Then the sum of the gradients from the nn languages has a variance of var(k=1ngdevk)=nσ\text{var}(\sum_{k=1}^{n}g_{\text{dev}}^{k})=n\sigma.

Thus, instead of using the gradient alignment between the training data and the aggregated loss of nn dev sets as the reward, we propose a second approach to first calculate the gradient alignment reward between the data and each of the nn dev sets, then take the average of these as the final reward. This can be expressed mathematically as follows:

To implement this, we can simply replace the standard reward calculation at Line 1 of Alg. 1 to use the stable reward. We name this setting MultiDDS-S. In § 6.6 we show that this method has less variance than the reward in Eq. 10.

Experimental Evaluation

We use the 58-languages-to-English parallel data from Qi et al. (2018). A multilingual NMT model is trained for each of the two sets of language pairs with different level of language diversity:

4 LRLs (Azerbaijani: aze, Belarusian: bel, Glacian: glg, Slovak: slk) and a related HRL for each LRL (Turkish: tur, Russian: rus, Portuguese: por, Czech: ces)

8 languages with varying amounts of data, picked without consideration for relatedness (Bosnian: bos, Marathi: mar, Hindi: hin, Macedonian: mkd, Greek: ell, Bulgarian: bul, French: fra, Korean: kor)

For each set of languages, we test two varieties of translation: 1) many-to-one (M2O): translating 8 languages to English; 2) one-to-many (O2M): translating English into 8 different languages. A target language tag is added to the source sentences for the O2M setting (Johnson et al., 2016).

2 Experiment Setup

All translation models use standard transformer models Vaswani et al. (2017) as implemented in fairseq (Ott et al., 2019) with 6 layers and 4 attention heads. All models are trained for 40 epochs. We preprocess the data using sentencpiece Kudo and Richardson (2018) with a vocabulary size of 8K8K for each language. The complete set of hyperparameters can be found in § A.2. The model performance is evaluated with BLEU score Papineni et al. (2002), using sacreBLEU Post (2018).

We compare with the three standard heuristic methods explained in § 2: 1) Uniform (τ=\tau=\infty): datasets are sampled uniformly, so that LRLs are over-sampled to match the size of the HRLs; 2) Temperature: scales the proportional distribution by τ=5\tau=5 (following Arivazhagan et al. (2019)) to slightly over-sample the LRLs; 3) Proportional (τ=1\tau=1): datasets are sampled proportional to their size, so that there is no over-sampling of the LRLs.

Ours

we run MultiDDS with either the standard reward (MultiDDS), or the stabilized reward proposed in Eq. 11 (MultiDDS-S). The scorer for MultiDDS simply maps the ID of each dataset to its corresponding probability (See Eq. 8. The scorer has N parameters for a dataset with N languages.)

3 Main Results

We first show the average BLEU score over all languages for each translation setting in Tab. 1. First, comparing the baselines, we can see that there is no consistently strong strategy for setting the sampling ratio, with proportional sampling being best in the M2O setting, but worst in the O2M setting. Next, we can see that MultiDDS outperforms the best baseline in three of the four settings and is comparable to proportional sampling in the last M2O-Diverse setting. With the stabilized reward, MultiDDS-S consistently delivers better overall performance than the best baseline, and outperforms MultiDDS in three settings. From these results, we can conclude that MultiDDS-S provides a stable strategy to train multilingual systems over a variety of settings.

Next, we look closer at the BLEU score of each language pair for MultiDDS-S and the best baseline. The results for all translation settings are in Tab. 2. In general, MultiDDS-S outperforms the baseline on more languages. In the best case, for the O2M-Related setting, MultiDDS-S brings significant gains for five of the eight languages, without hurting the remaining three. The gains for the Related group are larger than for the Diverse group, likely because MultiDDS can take better advantage of language similarities than the baseline methods.

It is worth noting that MultiDDS does not impose large training overhead. For example, for our M2O system, the standard method needs around 19 hours and MultiDDS needs around 20 hours for convergence. The change in training time is not siginificant because MultiDDS only optimizes a simple distribution over the training datasets.

4 Prioritizing what to Optimize

Prior works on multilingual models generally focus on improving the average performance of the model on all supported languages (Arivazhagan et al., 2019; Conneau et al., 2019). The formulation of MultiDDS reflects this objective by defining the aggregation of nn dev sets using Eq. 3, which is simply the average of dev risks. However, average performance might not be the most desirable objective under all practical usage settings. For example, it may be desirable to create a more egalitarian system that performs well on all languages, or a more specialized system that does particularly well on a subset of languages.

In this section, we examine the possibility of using MultiDDS to control the priorities of the multilingual model by defining different dev set aggregation methods that reflect these priorities. To do so, we first train the model for 10 epochs using regular MultiDDS, then switch to a different dev set aggregation method. Specifically, we compare MultiDDS with three different priorities:

this is the standard MultiDDS that optimizes all languages throughout training using the average dev risk aggregation in Eq. 3

a more egalitarian system that optimizes the average of the four languages with the worst dev perplexity, so that MultiDDS can focus on optimizing the low-performing languages

a more specialized system that optimizes the four languages with the best dev perplexity, for MultiDDS to focus on optimizing the high-performing languages

We performed experiments with these aggregation methods on the Diverse group, mainly because there is more performance trade-off among these languages. First, in Tab. 3 we show the average BLEU over all languages, and find that MultiDDS with different optimization priorities still maintains competitive average performance compared to the baseline. More interestingly, in Fig. 2, we plot the BLEU score difference of High and Low compared to Regular for all 88 languages. The languages are ordered on the xx-axis from left to right in decreasing perplexity. Low generally performs better on the low-performing languages on the left, while High generally achieves the best performance on the high-performing languages on the right, with results most consistent in the O2M setting. This indicates that MultiDDS is able to prioritize different predefined objectives.

It is also worth noting that low-performing languages are not always low-resource languages. For example, Korean (kor) has the largest amount of training data, but its BLEU score is among the lowest. This is because it is typologically very different from English and the other training languages. Fig. 2 shows that Low is still able to focus on improving kor, which aligns with the predefined objective. This fact is not considered in baseline methods that only consider data size when sampling from the training datasets.

5 Learned Language Distributions

In Fig. 3, we visualize the language distribution learned by MultiDDS throughout the training process. Under all settings, MultiDDS gradually increases the usage of LRLs. Although initialized with the same distribution for both one-to-many and many-to-one settings, MultiDDS learns to up-sample the LRLs more in the one-to-many setting, likely due to the increased importance of learning language-specific decoders in this setting. For the Diverse group, MultiDDS learns to decrease the usage of Korean (kor) the most, probably because it is very different from other languages in the group.

6 Effect of Stablized Rewards

Next, we study the effect of the stablized reward proposed in § 2. In Fig. 4, we plot the regular reward (used by MultiDDS) and the stable reward (used by MultiDDS-S) throughout training. For all settings, the reward in MultiDDS and MultiDDS-S follows the similar trend, while the stable reward used in MultiDDS-S has consistently less variance.

MultiDDS-S also results in smaller variance in the final model performance. We run MultiDDS and MultiDDS-S with 4 different random seeds, and record the mean and variance of the average BLEU score. Tab. 4 shows results for the Diverse group, which indicate that the model performance achieved using MultiDDS-S has lower variance and a higher mean than MultiDDS.

Additionally, we compare the learned language distribution of MultiDDS-S and MultiDDS in Fig. 5. The learned language distribution in both plots fluctuates similarly, but MultiDDS has more drastic changes than MultiDDS-S. This is also likely due to the reward of MultiDDS-S having less variance than that of MultiDDS.

Related Work

Our work is related to the multilingual training methods in general. Multilingual training has a rich history Schultz and Waibel (1998); Mimno et al. (2009); Shi et al. (2010); Täckström et al. (2013), but has become particularly prominent in recent years due the ability of neural networks to easily perform multi-task learning Dong et al. (2015); Plank et al. (2016); Johnson et al. (2016). As stated previously, recent results have demonstrated the importance of balancing HRLs and LRLs during multilingual training (Arivazhagan et al., 2019; Conneau et al., 2019), which is largely done with heuristic sampling using a temperature term; MultiDDS provides a more effective and less heuristic method. Wang and Neubig (2019); Lin et al. (2019) choose languages from multilingual data to improve the performance on a particular language, while our work instead aims to train a single model that handles translation between many languages. (Zaremoodi et al., 2018; Wang et al., 2018, 2019a) propose improvements to the model architecture to improve multilingual performance, while MultiDDS is a model-agnostic and optimizes multilingual data usage.

Our work is also related to machine learning methods that balance multitask learning (Chen et al., 2018b; Kendall et al., 2018). For example, Kendall et al. (2018) proposes to weigh the training loss from a multitask model based on the uncertainty of each task. Our method focuses on optimizing the multilingual data usage, and is both somewhat orthogonal to and less heuristic than such loss weighting methods. Finally, our work is related to meta-learning, which is used in hyperparameter optimization (Baydin et al., 2018), model initialization for fast adaptation (Finn et al., 2017), and data weighting (Ren et al., 2018). Notably, Gu et al. (2018) apply meta-learning to learn an NMT model initialization for a set of languages, so that it can be quickly fine-tuned for any language. This is different in motivation from our method because it requires an adapted model for each of the language, while our method aims to optimize a single model to support all languages. To our knowledge, our work is the first to apply meta-learning to optimize data usage for multilingual objectives.

Conclusion

In this paper, we propose MultiDDS, an algorithm that learns a language scorer to optimize multilingual data usage to achieve good performance on many different languages. We extend and improve over previous work on DDS (Wang et al., 2019b), with a more efficient algorithmic instantiation tailored for the multilingual training problem and a stable reward to optimize multiple objectives. MultiDDS not only outperforms prior methods in terms of overall performance on all languages, but also provides a flexible framework to prioritize different multilingual objectives.

Notably, MultiDDS is not limited to NMT, and future work may consider applications to other multilingual tasks. In addition, there are other conceivable multilingual optimization objectives than those we explored in § 6.4.

Acknowledgement

The first author is supported by a research grant from the Tang Family Foundation. This work was supported in part by NSF grant IIS-1812327. The authors would like to thank Amazon for providing GPU credits.

References

Appendix A Appendix

A.2 Hyperparameters

In this section, we list the details of preprocessing and hyperparameters we use for the experiments.

We use 6 encoder and decoder layers, with 4 attention heads

The embedding size is set to 512, and the feed-forward layer has a dimension of 1024

We use the scaled l2l_{2} normalization before residual connection, which is shown to be helpful for small data (Nguyen and Salazar, 2019)

A.3 Dataset statistics

A.4 Detailed Results for All Settings