# Low-Resource Neural Machine Translation Improvement Using Source-Side Monolingual Data
## 5 Methodology
### Experimental Architecture
#### 5.4.2 Self-Learning  
In machine translation, a model is trained on parallel (authentic) data and then used to translate a set of monolingual source sentences into the target language. This creates pseudo-parallel (synthetic) training data. In the next step, the synthetic data are used to train a better model by combining the pseudo-parallel data with the authentic parallel data. The self-training approach was first introduced by [PERSON] et al. [18] to improve phrase-based statistical machine translation systems. In their work, they used a self-training system to generate translations of a set of source data. Then, the confidence score of each of the translated sentences was calculated, and based on these scores, reliable translations were selected and further adopted as additional training data for improving the same system. We applied the self-learning approach to train the best-preforming model from the baseline models by combining the pseudo-parallel training data with the authentic parallel data. In our scenario, the self-learning approach was implemented in the following ways (more details can be found in Algorithm 1): in order to select the best-preforming model from our baseline models, we trained three baseline NMT models \(Tm\) for languages \(X\) and \(Y\) (\(X\) and \(Y\) represent Wolyatta and English, respectively) in the \(X\to Y\) translation direction using the authentic \(X\)-\(Y\) parallel dataset \(Pd\). After training \(Tm\), we generated the target synthetic dataset \(Sd\) by translating the Wolyatta monolingual dataset \(Md\) using the selected \(Tm\) from our baseline model. Then, we combined \(Md\) and \(Sd\) to form the synthetic parallel dataset \(Sp\). Finally, we trained a new \(X\to Y\) translation on the combination of both \(Pd\) and \(Sp\) datasets. ```
```  
\(\bullet\) Authentic parallel dataset: \(Pd\)  
\(\bullet\) Monolingual dataset: \(Md\)  
\(\bullet\) Target synthetic dataset: \(Sd\)  
\(\bullet\) Synthetic parallel dataset: \(Sp\)  
\(\bullet\) Languages: \(X\), \(Y\)  
\(\bullet\) Translation model: \(Tm\)\(X\)\(\rightarrow\)\(Y\)
```

\(\bullet\)
```
\(\bullet\)
```

**Algorithm 1** Self-learning approach. In our self-learning approach, we used in-domain, mixed validation sets to fine-tune the parameters of the NMT model during training time, and evaluated its performance using an in-domain test set. #### 5.4.3 Fine-Tuning

Transfer learning is one of the currently suggested approaches to improve the performance of NMT for low-resource languages [12]. We applied transfer learning by fine-tuning our self-trained NMT models using the parallel Wolaytta-English parallel dataset to obtain our final NMT model. During fine-tuning, we used both self-trained NMT models with in-domain and mixed validation sets. ### Evaluation

We evaluated the performance of our model in terms of translation accuracy. There are many evaluation techniques developed for such purpose: human evaluation, Bi-lingual Evaluation Understudy (BLEU) score, National Institute of Standards and Technology (NIST) score, Metric for Evaluation of Translation with Explicit Ordering (METEOR), Translation Edit Rate (TER), and Character-level F-score (chrf). #### 5.5.1 BLEU Score

BLEU is an automatic metric based on n-grams [40]. It measures MT adequacy by looking at word precision and MT fluency by calculating n-gram precisions, returning a translation score with in the range [0, 1] or alternatively with a [0, 100] scale. We used a particular implementation of BLEU, called SacreBLEU. It outputs dataset scores, not segment scores. The greater the score, the closer the translation is to the reference. The rationale behind BLEU is that high-quality translations will share many n-grams with human translations [40].