The JHU Submission to the 2020 Duolingo Shared Task on Simultaneous Translation and Paraphrase for Language Education
The JHU Submission to the 2020 Duolingo Shared Task on Simultaneous Translation and Paraphrase for Language Education
Huda Khayrallah, Jacob Bremerman, Arya D. McCarthy, Kenton Murray, Winston Wu, and Matt Post
Center for Language and Speech Processing, Johns Hopkins University
Human Language Technology Center of Excellence, Johns Hopkins University
University of Maryland, College Park
Abstract
The Duolingo 2020 STAPLE Shared Task (Mayhew et al., 2020) focuses on generating a comprehensive set of translations for a given sentence, translating from English into Hungarian, Japanese, Korean, Portuguese, and Vietnamese. The formulation of this task differs from the conventional machine translation setup: instead of the n-gram match (BLEU) against a single reference, sentence-level exact match is computed between a list of proposed candidates and a weighted list of references. The set of references is drawn from Duolingo’s language-teaching app. Any auxiliary data is allowed for building systems, including existing very-large parallel corpora for translation. Our approach begins with strong MT systems.
1 Introduction
The objective of the task is to recover the list of references, and performance is measured by a weighted F-score. Entries outperform baseline weighted F1 scores by a factor of 2 to 10 and are ranked first in the official evaluation for every language pair.
In addition to our system description, we perform additional analysis. We find that stronger BLEU performance of the beam-search generated translation is not indicative of improvements on the task metric—weighted macro F1 of a set of hypotheses—and suggest this should encourage further research on how to train NMT models when n-best lists are needed. We perform detailed analysis on our output, which led to additional development on English–Portuguese.
2 Task Description
| hu | ja | ko | pt | vi | |
|---|---|---|---|---|---|
| total prompts | 4000 | 2500 | 2500 | 4000 | 3500 |
| mean translations | 63 | 342 | 280 | 132 | 56 |
| median translations | 36 | 192 | 154 | 68 | 30 |
| STD. translations | 66 | 362 | 311 | 150 | 62 |
Table 1: Statistics over the Duolingo-provided data.
These translations come from courses intended to teach English to speakers of other languages; the references are initially generated by trained translators, and augmented by verified user translations. Each translation is associated with a relative frequency denoting how often it is selected by Duolingo users. All of the provided task data is lower-cased.
For each language pair, we created an internal split of the Duolingo-provided training data: 100 training prompts for use in validating the MT system (JHU-VALID), another 100 intended for model selection (JHU-DEV), and a 300-prompt test set for candidate selection (JHU-TEST). The remaining data (JHU-TRAIN) was used for training the MT models.
Weighted F1
Weighted Macro F1 is computed as follows:
[ F_{1} = \sum_{s \in S} \frac{\text{Weighted} F_{1}(s)}{|S|},]
where S is all prompts in the test corpus. The weighted F1 is computed with a weighted recall, where TPs are the true positives for a prompt s, and FNs are the false negatives for a prompt s.
Evaluation
Evaluation is conducted on lowercased text with the punctuation removed.
3 Machine Translation Systems
We began by building high-quality state-of-the-art machine translation systems.
Data and Preprocessing
Additional data for our systems was obtained from Opus. We removed duplicate bitext pairs, then reserved 3k random pairs from each dataset to create validation, development, and test sets of 1k sentences each. The validation dataset is used as held-out data to determine when to stop training the MT system.
Table 2: Number of English word tokens for all datasets used to train the baseline MT models.
| hu | ja | ko | pt | vi | |
|---|---|---|---|---|---|
| Europarl | 2,351k | - | - | 2,408k | - |
| GlobalVoices | 194k | 822k | 37k | 1,585k | - |
| OpenSubtitles | 252,622k | 13,097k | 8,840k | 196,960k | 20,298k |
| Tatoeba | 580k | 1,537k | - | 1,215k | 16k |
| WikiMatrix | 5,682k | 9,013k | 2,598k | 45,147k | 17,427k |
| JW300 | 19,378k | 34,325k | 32,356k | 39,023k | 11,233k |
| QED | 5,693k | 9,064k | 9,992k | 8,542k | 5,482k |
Training Models
We used fairseq to train standard Transformer models with several configurations. We trained two sets of models: MODEL1 and MODEL2, with fine-tuning strategies varying based on data selections.
Table 3: The weighted macro F1 on JHU-TEST for MODEL1 and fine-tuned variants.
| en $ \rightarrow x $ | hu | ja | ko | pt | vi | |
|---|---|---|---|---|---|---|
| MODEL1 | 44.8 | 11.8 | 4.0 | 32.6 | 27.2 | |
| fine-tune on: | JHU-TRAIN:1-best | 43.4 | 12.4 | 11.4 | 41.6 | 41.6 |
| JHU-TRAIN:all | 52.1 | 23.1 | 23.1 | 49.3 | 52.0 | |
| upweighted JHU-TRAIN:all+1x1-best | 52.1 | 23.5 | 24.3 | 50.1 | 52.3 | |
| upweighted JHU-TRAIN:all+9x1-best | 56.6 | 24.1 | 25.0 | 52.8 | 54.3 | |
| upweighted JHU-TRAIN:all+99x1-best | 54.0 | 23.0 | 21.9 | 51.1 | 52.4 |
Results
We present results of our different methods on our internal development set and present our official evaluation performance in subsequent sections.
Conclusion
Our approach was general, borrowing from best practices in machine translation. We built large, general-domain MT systems that were then fine-tuned on in-domain data. We then followed an "overgenerate and filter" approach that made effective use of the scores from the systems to find a per-prompt truncation of large n-best lists produced from these systems. These techniques performed very well, ranking first in all five language pairs.
Acknowledgments
We thank Najoung Kim for feedback on Korean, An Nguyen for remarks on Vietnamese and Vinicius C. Costa for input on Portuguese.