Moses

From MetaCentrum
Jump to navigation Jump to search

Description

Moses is a statistical machine translation system that allows you to automatically train translation models for any language pair. All you need is a collection of translated texts (parallel corpus). An efficient search algorithm finds quickly the highest probability translation among the exponential number of choices.

License

open-source under the terms of the GNU Lesser General Public License

Usage

Upcoming modulesystem change alert!

Due to large number of applications and their versions it is not practical to keep them explicitly listed at our wiki pages. Therefore an upgrade of modulefiles is underway. A feature of this upgrade will be the existence of default module for every application. This default choice does not need version number and it will load some (usually latest) version.

You can test the new version now by adding a line

source /cvmfs/software.metacentrum.cz/modulefiles/5.1.0/loadmodules

to your script before loading a module. Then, you can list all versions of moses and load default version of moses as

module avail moses/ # list available modules
module load moses   # load (default) module


If you wish to keep up to the current system, it is still possible. Simply list all modules by

module avail moses

and choose explicit version you want to use.

1. Running the application -- Interactive mode:

  • ask the scheduler for an interactive job having desired number of nodes/processors (nodes and ppn attributes) reserved
$ qsub -I -l nodes=X:ppn=Y -l mem=Zg
Note: Do not forget to apppropriately set the amount of requested memory (mem attribute) and/or another job requirements.
  • load the Moses module
$ module add moses-3.0  # moses-3.0
  • prepare the configuration and the input files and run the computation
$ moses -f config_file.ini  <input_file >output_file  # 1-node computation
$ mpirun moses -f config_file.ini  <input_file >output_file  # MPI version
$ moses_chart -f config_file.ini  <input_file >output_file  # 1-node computation
$ mpirun moses_chart -f config_file.ini  <input_file >output_file  # MPI version

2. Running the application -- Batch mode:

  • prepare the job description script -- use a general skeleton supplemented by the following lines:
...
# load the Moses module
module add moses-3.0  # moses-3.0

# run the computation
moses -f config_file.ini  <input_file >output_file  # 1-node computation
# mpirun moses -f config_file.ini  <input_file >output_file  # MPI version
# moses_chart -f config_file.ini  <input_file >output_file  # 1-node computation
# mpirun moses_chart -f config_file.ini  <input_file >output_file  # MPI version
...
  • pass the job description file to the scheduler together with (at least) the requested number of nodes/processors and requested amount of memory
$ qsub -l nodes=X:ppn=Y -l mem=Zg mydescriptionfile.sh

Documentation

http://www.statmt.org/moses/manual/manual.pdf

Homepage

http://www.statmt.org/moses