Hello
I've updated the code to the last Kaldi version and got strange results after rebuilding lang with pronunciation and silence probabilities.
my old Kaldi branch:
commit 64025aa7294dc62edefa3af8f4a4aaf92bf5c25a
Author: Nickolay V. Shmyrev ....
Date: Wed May 2 05:58:11 2018 +0300
[scripts] rnnlm scripts: ignore first iteration while looking for the best model (#2399)
the results with it
%WER 31.69 [ 631 / 1991, 119 ins, 116 del, 396 sub ] exp/mono/decode/wer_14
%WER 17.08 [ 340 / 1991, 79 ins, 71 del, 190 sub ] exp/tri1/decode/wer_16
%WER 15.87 [ 316 / 1991, 66 ins, 67 del, 183 sub ] exp/tri2/decode/wer_17
%WER 14.06 [ 280 / 1991, 58 ins, 60 del, 162 sub ] exp/tri3/decode/wer_17
+ silence prob
%WER 9.34 [ 186 / 1991, 54 ins, 35 del, 97 sub ] exp/tri3/decode_sp/wer_15
new Kaldi branch:
commit 8e30fddb300a87e7c79ef2c0b9c731a8a9fd23f0
Author: Hossein Hadian ...
Date: Sat Oct 20 07:35:35 2018 +0330
[src] Add support for context independent phones in gmm-init-biphone (for e2e) (#2779)
the results with it:
%WER 32.70 [ 651 / 1991, 97 ins, 148 del, 406 sub ] exp/mono/decode/wer_16
%WER 16.83 [ 335 / 1991, 78 ins, 70 del, 187 sub ] exp/tri1/decode/wer_16
%WER 15.12 [ 301 / 1991, 74 ins, 62 del, 165 sub ] exp/tri2/decode/wer_16
%WER 13.81 [ 275 / 1991, 61 ins, 53 del, 161 sub ] exp/tri3/decode/wer_16
+ silence prob
%WER 21.09 [ 420 / 1991, 157 ins, 37 del, 226 sub ] exp/tri3/decode_sp/wer_13
Here is a part of my recipe.
#############################
# align tri2
steps/align_si.sh --boost-silence $boost_sil --nj $njobs --cmd "$train_cmd" \
data/train data/lang exp/tri2 exp/tri2_ali || exit 1;
steps/train_lda_mllt.sh --cmd "$train_cmd" \
--splice-opts "--left-context=3 --right-context=3" 2500 15000 \
data/train data/lang exp/tri2_ali exp/tri3 || exit;
utils/mkgraph.sh data/lang_test exp/tri3 exp/tri3/graph
steps/decode.sh --config conf/decode.config --nj $njobs --cmd "$decode_cmd" \
exp/tri3/graph data/test exp/tri3/decode
# Now we compute the pronunciation and silence probabilities from training data,
# and re-create the lang directory.
steps/get_prons.sh --cmd "$train_cmd" \
data/train data/lang exp/tri3
utils/dict_dir_add_pronprobs.sh --max-normalize true \
data/local/dict \
exp/tri3/pron_counts_nowb.txt exp/tri3/sil_counts_nowb.txt \
exp/tri3/pron_bigram_counts_nowb.txt data/local/dict_sp
utils/prepare_lang.sh data/local/dict_sp \
"<UNK>" data/local/lang_tmp_sp data/lang_sp
# Prepare G.fst and data/{train,test} directories
local/ag_format_lms.sh --src-dir data/lang_sp data/local || exit
utils/mkgraph.sh data/lang_sp_test_short \
exp/tri3 exp/tri3/graph_sp
steps/decode.sh --config conf/decode.config --nj $njobs --cmd "$decode_cmd" \
exp/tri3/graph_sp data/test exp/tri3/decode_sp
##################
Best regards
Alex