| #!/bin/bash |
|
|
| |
|
|
| function die() { |
| echo "$@" |
| exit 1 |
| } |
| RUNDIR=`pwd 2> /dev/null` |
| if [ -z $RUNDIR ]; then |
| RUNDIR=`pwd` |
| fi; |
|
|
|
|
| [ -d $WORKSPACE ] || die "Missing $WORKSPACE" |
| echo "Workspace: $WORKSPACE" |
| echo "This test is expected to take an hour." |
|
|
| MOSES=$WORKSPACE/moses-cmd/src/moses |
|
|
| [ -x $MOSES ] || die "Missing $MOSES" |
|
|
| export SCRIPTS_ROOTDIR=$WORKSPACE/scripts |
|
|
| cp -r ../cs-en-sample ./corpus || die "Missing $RUNDIR/../cs-en-sample" |
| echo "Copied cs-en-sample files" |
|
|
| mv corpus/test.* ./ || die "Missing corpus/test.*" |
| cp corpus/train.cs ./dev.src || die "Missing corpus/train.cs" |
| cp corpus/train.en ./dev.ref || die "Missing corpus/train.en" |
|
|
| echo "Test and 'tuning' data ready. Tuning equals training." |
|
|
| bindir=$WORKSPACE/bin |
| [ -d $bindir ] || die "Please create $WORKSPACE/bin and put GIZA++ and such there" |
|
|
| echo "Starting training script." |
|
|
| $SCRIPTS_ROOTDIR/training/train-factored-phrase-model.perl \ |
| --bin-dir=$bindir \ |
| --f cs --e en \ |
| --translation-factors 0-0 \ |
| --decoding-steps t0 \ |
| --first-step 1 \ |
| --last-step 9 \ |
| --corpus corpus/train \ |
| --root . \ |
| --parallel \ |
| --lm 0:3:$RUNDIR/corpus/lm.en.gz \ |
| || die "Failed to train the model" |
|
|
| echo "Finished moses.ini, merting." |
|
|
| $SCRIPTS_ROOTDIR/training/mert-moses.pl \ |
| --working-dir=mert-tuning \ |
| $RUNDIR/dev.src \ |
| $RUNDIR/dev.ref \ |
| $MOSES \ |
| $RUNDIR/model/moses.ini \ |
| --decoder-flags="-dl 6 " \ |
| || die "Merting failed" |
|
|
| |
| |
| |
| |
|
|
| echo "Finished merting, filtering phrases for test data." |
|
|
| $SCRIPTS_ROOTDIR/training/filter-model-given-input.pl \ |
| filtered-opt \ |
| mert-tuning/moses.ini \ |
| test.src \ |
| || die "Failed to filter phrases for test data." |
|
|
| echo "Finished filtering. Deconding test set." |
|
|
| $MOSES \ |
| -dl 6 \ |
| -f filtered-opt/moses.ini \ |
| -i test.src \ |
| > test.opt \ |
| || die "Decoding of test set failed." |
|
|
| $SCRIPTS_ROOTDIR/generic/multi-bleu.perl test.ref \ |
| < test.opt > test.opt.bleu \ |
| || die "Final scoring failed" |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| echo "Success." |
|
|
|
|