This file describes what the parameters in the configuration file do.
Defaults follow the parameter name in brackets.

--
allow_deletions [true]
  Controls whether deletions from L2 to L1 are permitted

allow_insertions [true]
  Controls whether insertions from L2 to L1 are permitted

beamwidth [100] [deprecated]
  Used to control the number of items allowed per bin (for pruning).
  You probably want "logratiobeam" instead.

cloning [false]
  Used in parsing and training to determine whether cloning is
  permitted.  This functionality is probably not working quite right,
  and should therefore not be used.
  
configfile [N/A]
  Specifies the location of the configuration file containing {key =
  value} pairs.  The configuration file is read before processing
  command-line arguments, and values specified therein will be
  overwritten with other parameter values given on the command line.

countfilelist [/dev/null]
  Used by hub.cpp to point to the file containing a list of file
  names, whose contents are the lists of expected counts.  Enables the
  parallelization (and recombination) of the training corpus.

cyk_first_pass [false]
  In multi-pass decoding (see "two_pass"), indicates that the first
  pass should use the CYK algorithm instead of the agenda-based
  algorithm.

cyk_hooks [false]
  If the hook trick is enabled (see "use_hooks"), indicates that they
  should be built using the CYK algorithm instead of the agenda-based
  algorithm.

debug_dump_charts [0]
  Different positive values control the dumping of charts to various
  files in "rundir"/debug/<sentno>.  This is used differently in
  various parts of the code.

debuglevel [0]
  Used to control debugging output.  There should be no debugging
  output at debuglevel = 0.

decoder [cyk]
  Which decoder to use, when doing decoding.  Options are
    cyk      = used for ngram-based decoding (whether CYK or agenda)
    baseline = no language model is used

defaultprob [1e-10]
  Used in different ways in different places for smoothing.

delpenalty [2.0]
  The price paid for deleting a cell in decoding.  This value is
  multiplied against the cell's log probability.  The default value
  should not be interpreted as a recommendation.

drop_lowcount_phrases [true]
  In EM training, indicates that phrase pairs whose count falls below
  "phrase_count_cutoff" should be thrown out.

epass [false]
  Expectation pass: extra decoding pass to maximize expected number
  of correct chart constituents (Zhang and Gildea ACL 2008).

grammarfile [NONE]
  Location of the ITG grammar file.

inscredit [1.0]
  Multiplied against log phrase probability for insertions in the CYK
  decoder.

iterations [1]
  Maximum number of iterations in EM training.

l1corpus []
  File containing language one corpus.  Read in during training and
  parsing, written to during decoding.  

l1vocabfile []
  ID file mapping numeric IDs to words for L1.

l2corpus []
  File containing language two corpus.

l2vocabfile []
  ID file mapping numeric IDs to words for L2.

lazy_kbest [false]

length_bonus = [0.0]
  Discount applied to phrases during decoding.  length_bonus is
  multiplied by the number of words on the target language side and
  subtracted from the log probability.

lm_weight = [0.5]
  Language model (ngram) weight (multiplied by log probability).

logratiobeam [5.0]
  Used for pruning.

maxins [5]
  The maximum number of phasal candidates considered for insertions.

maxkbufsize [250]
  Currently unused.

maxphrlen [7]
  For decoding, the maximum length of phrases on the target side.  For
  parsing and training, the maximum phrase length on both sides.

maxphrlen_smooth [1]
  The longest phrase (either side) that will be assigned a smoothing
  probability if not found in the t-table.  Only really used during
  training. 

maxsentlen [25]
  The maximum sentence length; sentences longer than this will be
  silently skipped.

maxtrs [5]
  The (maximum) number of phrasal translation candidates that are
  hypothesized for each phrase of the input.

ngram_n [0]
  For decoding, the value of N for ngrams.  Implemented values are 0,
  2, and 3. 

ngrammodel = /p/mt2/users/post/data/chi_eng/lm/lm
  The location of the ngram model file (ARPA format).

pins [0.5]
  When cloning (see "cloning"), the probability of a cloning
  insertion.

probfile = /p/mt2/users/post/data/chi_eng/phrases/9999999.prb

prune_agenda [false]
  Controls pruning of the agenda.

prune_method [ratio]
  Used to control the pruning method in various places in the code.

rundir []
  All output files are written to this directory (or a subdirectory of
  it).  chdir(rundir) is called early in the code.

runid []
  Used as an affix for naming output files.

runmode []
  One of 
    d: decoding, L2 -> L1
    e: decoding, L1 -> L2 [not implemented]
    p: parsing
    t: training (EM)

sentence_from [0]
sentence_to [0]
  Allows range of input sentences to be selected; the rest are
  silently skipped over.

suppress_itgscore [false]
  If set to true, no scores from ITG rules or phrasal translations are
  included.

threshold [1e-10]
  Used as a probability threshold in various places.

two_pass [false]
  Enables two-pass coarse-to-fine decoding for CYK and agenda-based
  ngram decoders.

use_agenda [false]
  If set, agenda-based decoding will be used instead of CYK for ngram
  decoding (to use, set decoder = cyk and use_agenda = true).

use_hooks [false]
  Turns on the hook trick for decoding (Huang, Zhang, and Gildea, 2006).

variational_bayes [false]
  Enables variational bayes for ITG training.

variational_alpha [0.0]
  The value of alpha for variational bayes training (Mark Johnson,
  EMNLP 2007).

verbosity [1]
  Controls the amount of output printed to the terminal when itg is
  running.  By convention, verbosity = 0 should output nothing except
  the result (e.g., the translated sentence, or a parse tree).  I
  (MJP) would like to have a parameter "output" that allows for config
  file specification of what results should be printed (e.g, for the
  decoder, should just the decoded sentence be printed, or also the
  parse tree?)
  
