| RDLM: relational dependency language model |
| |
|
|
| This is a language model for the string-to-tree decoder with a dependency |
| grammar. It should work with any corpus with projective dependency annotation in |
| ConLL format, converted into the Moses format with the script |
| mosesdecoder/scripts/training/wrappers/conll2mosesxml.py It depends on NPLM for |
| neural network training and querying. |
|
|
| Prerequisites |
| |
|
|
| Install NPLM and compile moses with it. See the instructions in the Moses documentation for details: |
|
|
| http://www.statmt.org/moses/?n=FactoredTraining.BuildingLanguageModel |
|
|
| Training |
| |
|
|
| RDLM is designed for string-to-tree decoding with dependency annotation on the |
| target side. If you have such a system, you can train RDLM on the target side of |
| the same parallel corpus that is used for training the translation model. |
|
|
| To train the model on additional monolingual data, or test it on some held-out |
| test/dev data, parse and process it in the same way that the parallel corpus has |
| been processed. This includes tokenization, parsing, truecasing, compound |
| splitting etc. |
|
|
| RDLM is split into two neural network models, which can be trained with |
| `train_rdlm.py`. An example command for training follows: |
|
|
| mkdir working_dir_head |
| mkdir working_dir_label |
| ./train_rdlm.py |
| ./train_rdlm.py |
|
|
| for more options, run `train_rdlm.py |
| include the vocabulary size of the label model (depending on the number of |
| dependency relations in the grammar), the size of the models, and the number of |
| training epochs. |
|
|
| Decoding |
| |
|
|
| To use RDLM during decoding, add the following line to your moses.ini config: |
|
|
| [feature] |
| RDLM path_head_lm=/path/to/output_directory/rdlm_head.model.nplm path_label_lm=/path/to/output_directory/rdlm_label.model.nplm context_up=2 context_left=3 context_right=0 |
|
|
| [weight] |
| RDLM 0.1 0.1 |
|
|
| Reference |
| |
|
|
| Sennrich, Rico (2015). Modelling and Optimizing on Syntactic N-Grams for Statistical Machine Translation. |
| Transactions of the Association for Computational Linguistics. |
|
|