kaldi/egs/babel/s5b
kkm 829432d05b Update arpa2fst invocations in individual egs/*/local scripts 2016-04-10 20:15:08 -07:00
..
conf trunk: standardizing all perl and python scripts to start with a shebang /usr/bin/env perl|python, and to be executable. Minor script change to train_mono.sh to print better info in case of error. 2015-06-02 23:03:11 +00:00
local Update arpa2fst invocations in individual egs/*/local scripts 2016-04-10 20:15:08 -07:00
EXAMPLE.vietnamese (trunk/egs/babel) A couple of outstanding modifications of babel, including an tutorial example how to run (and in what order) the script. The combination stage is still not completely smooth/automatic. NB: Despite this commit, the current version of babel recipes is still s5c\! 2015-04-01 18:42:04 +00:00
README.txt Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
RESULTS (sandbox/pitch/BABEL): copying s5 to s5b to start new version of the babel scripts 2013-11-22 18:47:08 +00:00
RESULTS.txt (sandbox/pitch/BABEL): copying s5 to s5b to start new version of the babel scripts 2013-11-22 18:47:08 +00:00
babel.html trunk: normalized line endings to unix standard '\n' in all egs/ files (8 offenders total). 2015-07-12 05:12:03 +00:00
cmd.sh modifying cmd.sh in example recipes to encourage the use of new-style queue options and conf/queue.conf 2016-02-18 16:58:46 -05:00
path.sh (sandbox/tacc_kaldi/s5b) Checking in last changes done during the eval. Nothing significant, just another step towards merging the tacc_kaldi/babel with trunk/babel and removing the sandbox 2014-08-04 18:30:39 +00:00
run-1-main-extend-lex.sh trunk: changes to babel scripts: 1. using train_pnorm_fast.sh instead of train_pnorm.sh; 2. removing unused script for extended lexicon. Both tested. 2014-10-09 20:14:12 +00:00
run-1-main.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-2-segmentation.sh Segmentation scripts 2014-02-18 03:40:48 +00:00
run-2a-nnet-cpu.sh (sandbox/tacc_kaldi/s5b) Checking in last changes done during the eval. Nothing significant, just another step towards merging the tacc_kaldi/babel with trunk/babel and removing the sandbox 2014-08-04 18:30:39 +00:00
run-2a-nnet-ensemble-gpu.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-2a-nnet-gpu-realign.sh trunk: extending nnet2 scripts to support Viterbi realignment during training 2014-10-20 21:14:30 +00:00
run-2a-nnet-gpu.sh trunk: changes to babel scripts: 1. using train_pnorm_fast.sh instead of train_pnorm.sh; 2. removing unused script for extended lexicon. Both tested. 2014-10-09 20:14:12 +00:00
run-2a-nnet-mpe.sh mpe training parameters for Babel fullLP; limitedLP needs re-investigation as we didn't run that after fixing the normalization stuff. 2014-02-07 20:33:21 +00:00
run-2b-bnf.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-3b-bnf-nnet.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-3b-bnf-sgmm.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-4-anydecode.sh trunk: changes to babel scripts: 1. using train_pnorm_fast.sh instead of train_pnorm.sh; 2. removing unused script for extended lexicon. Both tested. 2014-10-09 20:14:12 +00:00
run-4b-anydecode-bnf.sh Finalizing the released recipe for OP1 2014-08-26 15:32:50 +00:00
run-6-combine.sh (trunk/egs/babel) A couple of outstanding modifications of babel, including an tutorial example how to run (and in what order) the script. The combination stage is still not completely smooth/automatic. NB: Despite this commit, the current version of babel recipes is still s5c\! 2015-04-01 18:42:04 +00:00
steps (sandbox/pitch/BABEL): copying s5 to s5b to start new version of the babel scripts 2013-11-22 18:47:08 +00:00
utils (sandbox/pitch/BABEL): copying s5 to s5b to start new version of the babel scripts 2013-11-22 18:47:08 +00:00

README.txt

How to setup the BABEL database training environment
====================================================
a) Preparation: you need to make sure the BABEL data and the F4DE scoring software
   is set up as it is in JHU, or change this setup accordingly.  This will probably 
   be hard and will involve some trial and error.  Some relevant pathnames can be 
   found in conf/lang/* and ./path.sh

   Link one of the config files in conf/languages to ./lang.conf.  E.g.:
    ln -s conf/languages/105-turkish-limitedLP.official.conf lang.conf
   

b) If you plan to work on one or more languages, the following approach is advised.
    aa) create empty directory somewhere according to your choice
        (
          mkdir 206-zulu-llp; cd 206-zulu-llp
        )

    ab) copy cmd.sh and path.sh (you will probably need to do some changes in these)
        especially pay attention to KALDI_ROOT in path.sh and possibly switch to using
        run.pl in cmd.sh
        (
          cp /path/to/kaldi/egs/babel/s5b/{cmd.sh,path.sh} .
        )

    ac) symlink all the directories here to that directory
        (
          ln -s /path/to/kaldi/egs/babel/s5b/{conf,steps,utils,local} .
        )
    ad) link the necessary scripts ( see below )
        {
          ln -s /path/to/kaldi/egs/babel/s5b/run-1-main.sh .
        }
    ae) link the appropriate language-specific config file to lang.conf in
        each directory.
        (
          206-zulu-llp$ ln -s conf/lang/206-zulu-limitedLP.official.conf lang.conf
        )


Running the training scripts
===================================================

You run the scripts in order, i.e.
 run-1-main.sh
 run-2a-nnet.sh and run-2-bnf.sh may be run in parallel, but run-2-bnf.sh should be
    run on a machine that has a GPU.
 run-3-bnf-system.sh trains an SGMM system on top of bottleneck features from run-2-bnf.sh
 run-4-test.sh is decoding with provided segmentation (we get this from CMU)
 run-5-anydecode.sh seems to be decoding with the segmentation provided 



Official NIST submission preparation
==================================================
The make_release.sh script might come handy.
The scripts evaluates the performance of the sgmm2_mmi_b.0.1 system on 
the eval.uem dataset and chooses the same set of parameters to 
determine the path inside the test.uem dataset. 

./make_release.sh --relname defaultJHU --lp FullLP --lr BaseLR --ar NTAR  \
  conf/languages/106-tagalog-fullLP.official.conf /export/babel/data/releases





./run-1-main.sh
./run-2a-nnet-ensemble-gpu.sh
./run-2b-bnf.sh --semisupervised false --ali-dir exp/tri5_ali/
./run-3b-bnf-sgmm.sh --semisupervised false
./run-3b-bnf-nnet.sh --semisupervised false

./run-2-segmentation.sh

./run-4-anydecode.sh --dir dev2h.seg
./run-4b-anydecode-bnf.sh --dir dev2h.seg --semisupervised false --extra-kws true



./run-4-anydecode.sh --dir unsup.seg --skip-kws true --skip-stt true
./run-4b-anydecode-bnf.sh --dir unsup.seg --skip-kws true --skip-stt true --semisupervised false