name: bw_train
synopsis: bw_train [arguments]

description:
this is the baum-welch training program. it performs a reestimation of the
HMM model parameters using the standard forward-backward algorithm.
all input to the utility is provided via a parameter file

Note that for the HTK feature file, this utility strips the HTK header
and read features as floats. The ISIP prototype system has features as
doubles. This is a very limited HTK format support that we provide for
our system.

arguments:

    -p params_file	: parameter file
    -help               : display this message

example:

bw_train -p params.text

a sample parameter file:

  # parameter file for Baum Welch training
  #
  
  # define training mode (normal, batch or combine)
  # - in normal mode, the parameters are updated on the given input data
  # - in batch mode, accumulator files are output but no parameter updating
  #   is done. combine mode must be used to combine the accumulator files and
  #   perform the reestimation
  # - in combine mode, accumulator files are combined and used to update the
  #   HMM parameters
  #
  # train_mode = normal
  # train_mode = combine
  train_mode = batch
  
  # define accumulator file 
  #
  acc_file = acc/acc_0.bin
  
  # in combine mode you define an accumulator list containing all of the 
  # accumulator filenames produced in batch mode
  #
  # acclist_file = acc/acc.list
  
  # define input file list
  #
  mfcclist_file = train_mfcc_0.list
  
  # define model-level transcription file
  #
  lablist_file = train_model_trans_0.list
  
  # define the file containing the list of context-independent models
  #
  monophones_file = monophones.text
  
  # define the model definition file
  #
  models_file = models.text
  
  # define phone mapping file created by create_triphone_map
  #
  phones_file = phones.text
  
  # define lexicon file
  #
  lexicon_file = lexicon.text
  
  # define the input states file
  #
  states_file = states.bin
  
  # define the input transitions file
  #
  transitions_file = transitions.text
  
  # in combine mode or normal mode we define the states file which will 
  # contain the updated HMM states
  #
  # updated_states_file = hmm1/states.bin
  
  # in combine mode or normal mode we define the transitions file which will
  # contain the updated HMM transitions
  #
  # updated_trans_file = hmm1/transitions.text
  
  # define input(mfcc)/output(states) mode file format (ascii or binary)
  # accumulator files are always written in binary
  #
  input_mode = binary
  output_mode = binary

  # define input feature file format (isip_proto (default) or htk)
  #
  input_feature_format = isip_proto
  
  # define context mode (monophone, word_internal, or cross_word)
  # 
  context_mode = cross_word
  
  # define training thresholds.
  # - min_mpd is the minimum model probability deviance
  # - beam_width is the beam width used for beta pruning
  # - min_occupancy is a floor on the occupancy probability
  # - min_model_count is the minimum number of times a model must occur before
  #   parameters of that model are updated
  #
  min_mpd = 1000
  beam_width = 500.0
  min_occupancy = 1.0e-10
  min_model_count = 3
  
  # define variance floor file
  # 
  variance_floor_file = varfloor.text
  
  # define the state occupancy file. if this mode is turned on then the
  # utility will dump state occupancies at the end of the training run. this 
  # is a necessary input to the state tying utility.
  # the occupancy mode is either "on" or "off"
  #
  state_occupancy_file = state_occ.text
  state_occupancy = off
  
  # define parameters for the computation of delta and acceleration features
  # options for compute_delta and compute_acc are yes/no 
  #
  delta_win = 2
  compute_delta = no
  compute_acc = no


man page: http://www.isip.msstate.edu/projects/speech/education/toolkits/asr/acoustic_models/training/bw_train.html
