diff --git a/egs/swbd/s5c/conf/decode_online.config b/egs/swbd/s5c/conf/decode_online.config index 1c6329c020d..410ca63c28b 100644 --- a/egs/swbd/s5c/conf/decode_online.config +++ b/egs/swbd/s5c/conf/decode_online.config @@ -1,2 +1,2 @@ -beam=15.0 # beam for decoding. Was 13.0 in the scripts. +beam=11.0 # beam for decoding. first_beam=8.0 # beam for 1st-pass decoding in SAT. diff --git a/egs/swbd/s5c/local/chain/run_tdnn_6v.sh b/egs/swbd/s5c/local/chain/run_tdnn_6v.sh index 00a24eb451b..df711d31aa1 100755 --- a/egs/swbd/s5c/local/chain/run_tdnn_6v.sh +++ b/egs/swbd/s5c/local/chain/run_tdnn_6v.sh @@ -1,5 +1,5 @@ #!/bin/bash - +# This script contains online decoding using chain + nnet3 setup. # _6v is as _6h, but moving to a TDNN+ReLU recipe instead of using jesus-layer. # Otherwise we make everything as similar as possible to 6h. # The ReLU dimension, at 576, is chosen to make the number of parameters about @@ -224,53 +224,60 @@ if [ $stage -le 14 ]; then done fi -if [ $stage -le 15 ]; then - # If this setup used PLP features, we'd have to give the option --feature-type plp - # to the script below. - steps/online/nnet3/prepare_online_decoding.sh --mfcc-config conf/mfcc_hires.conf \ - data/lang exp/nnet3/extractor "$dir" ${dir}_online || exit 1; -fi - - - -if [ $stage -le 16 ]; then - iter_opts= - if [ ! -z $decode_iter ]; then - iter_opts=" --iter $decode_iter " - fi - for decode_set in train_dev eval2000; do - ( - steps/online/nnet3/decode.sh --acwt 1.0 --post-decode-acwt 10.0 \ - --nj 50 --cmd "$decode_cmd" $iter_opts --config conf/decode_online.config \ - $graph_dir data/${decode_set}_hires ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_${decode_suff} || exit 1; - if $has_fisher; then - steps/lmrescore_const_arpa.sh --cmd "$decode_cmd" \ - data/lang_sw1_{tg,fsh_fg} data/${decode_set}_hires \ - ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_sw1_{tg,fsh_fg} || exit 1; - fi - ) & - done -fi - -if [ $stage -le 17 ]; then - iter_opts= - if [ ! -z $decode_iter ]; then - iter_opts=" --iter $decode_iter " - fi - for decode_set in train_dev eval2000; do - ( - steps/online/nnet3/decode.sh --acwt 1.0 --post-decode-acwt 10.0 --config conf/decode_online.config \ - --nj 50 --cmd "$decode_cmd" $iter_opts --per-utt true \ - $graph_dir data/${decode_set}_hires ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_${decode_suff}_per_utt || exit 1; - if $has_fisher; then - steps/lmrescore_const_arpa.sh --cmd "$decode_cmd" \ - data/lang_sw1_{tg,fsh_fg} data/${decode_set}_hires \ - ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_sw1_{tg,fsh_fg}_per_utt || exit 1; - fi - ) & - done -fi - +# Results using offline and online decoding +# System 6v_sp 6v_sp_online 6v_sp_online{per_utt} +# WER on train_dev(tg) 14.68 14.72 15.43 +# WER on train_dev(fg) 13.49 13.58 14.18 +# WER on eval2000(tg) 17.2 17.3 18.2 +# WER on eval2000(fg) 15.7 15.9 16.7 + +#if [ $stage -le 15 ]; then +# # If this setup used PLP features, we'd have to give the option --feature-type plp +# # to the script below. +# steps/online/nnet3/prepare_online_decoding.sh --mfcc-config conf/mfcc_hires.conf \ +# data/lang exp/nnet3/extractor "$dir" ${dir}_online || exit 1; +#fi + + + +#if [ $stage -le 16 ]; then +# iter_opts= +# if [ ! -z $decode_iter ]; then +# iter_opts=" --iter $decode_iter " +# fi +# for decode_set in train_dev eval2000; do +# ( +# steps/online/nnet3/decode.sh --acwt 1.0 --post-decode-acwt 10.0 \ +# --nj 50 --cmd "$decode_cmd" $iter_opts --config conf/decode_online.config \ +# $graph_dir data/${decode_set}_hires ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_${decode_suff} || exit 1; +# if $has_fisher; then +# steps/lmrescore_const_arpa.sh --cmd "$decode_cmd" \ +# data/lang_sw1_{tg,fsh_fg} data/${decode_set}_hires \ +# ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_sw1_{tg,fsh_fg} || exit 1; +# fi +# ) & +# done +#fi +# +#if [ $stage -le 17 ]; then +# iter_opts= +# if [ ! -z $decode_iter ]; then +# iter_opts=" --iter $decode_iter " +# fi +# for decode_set in train_dev eval2000; do +# ( +# steps/online/nnet3/decode.sh --acwt 1.0 --post-decode-acwt 10.0 --config conf/decode_online.config \ +# --nj 50 --cmd "$decode_cmd" $iter_opts --per-utt true \ +# $graph_dir data/${decode_set}_hires ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_${decode_suff}_per_utt || exit 1; +# if $has_fisher; then +# steps/lmrescore_const_arpa.sh --cmd "$decode_cmd" \ +# data/lang_sw1_{tg,fsh_fg} data/${decode_set}_hires \ +# ${dir}_online/decode_${decode_set}${decode_iter:+_$decode_iter}_sw1_{tg,fsh_fg}_per_utt || exit 1; +# fi +# ) & +# done +#fi +# wait; exit 0;