Commit 32057e2a authored by Dan Povey's avatar Dan Povey
Browse files

Fix to SGMM+FMLLR

git-svn-id: https://svn.code.sf.net/p/kaldi/code/trunk@81 5e6a8d80-dfce-4ca6-a32a-6e07a63d50c8
parent a5d0978f
......@@ -45,4 +45,4 @@ exp/decode_sgmma_fmllr/wer:Average WER is 2.768691 (347 / 12533)
# sgmmb is SGMM with speaker vectors.
exp/decode_sgmmb/wer:Average WER is 2.680922 (336 / 12533)
exp/decode_sgmmb_utt/wer:Average WER is 2.728796 (342 / 12533)
exp/decode_sgmmb_fmllr/wer:Average WER is 2.537302 (318 / 12533)
exp/decode_sgmmb_fmllr/wer:Average WER is 2.553259 (320 / 12533)
......@@ -110,7 +110,7 @@ steps/train_ubma.sh
(steps/train_sgmma.sh; steps/decode_sgmma.sh)&
# train and test system with speaker vectors.
(steps/train_sgmmb.sh; steps/decode_sgmmb.sh)&
(steps/train_sgmmb.sh; steps/decode_sgmmb.sh; steps/decode_sgmmb_fmllr.sh )&
......
# Copyright 2010-2011 Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
......
......@@ -54,40 +54,34 @@ for test in mar87 oct87 feb89 oct89 feb91 sep92; do
spk2utt_opt="--spk2utt=ark:data/test_${test}.spk2utt"
utt2spk_opt="--utt2spk=ark:data/test_${test}.utt2spk"
if [ ! -f $dir/${test}_gselect.gz ]; then
sgmm-gselect $model "$feats" ark,t:- 2>$dir/gselect.log | \
gzip -c > $dir/${test}_gselect.gz || exit 1;
fi
sgmm-gselect $model "$feats" ark,t:- 2>$dir/gselect.log | \
gzip -c > $dir/${test}_gselect.gz || exit 1;
gselect_opt="--gselect=ark:gunzip -c $dir/${test}_gselect.gz|"
# Use smaller beam first time.
if [ ! -f dir/test_${test}.pass1.ali ]; then
sgmm-decode-faster "$gselect_opt" --beam=15.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $alimodel $graphdir/HCLG.fst "$feats" ark,t:$dir/test_${test}.pass1.tra ark,t:$dir/test_${test}.pass1.ali 2> $dir/pass1_${test}.log
fi
if [ ! -f $dir/test_${test}.vecs ]; then
( ali-to-post ark:$dir/test_${test}.pass1.ali ark:- | \
weight-silence-post 0.01 $silphonelist $alimodel ark:- ark:- | \
sgmm-post-to-gpost "$gselect_opt" $alimodel "$feats" ark,s,cs:- ark:- | \
sgmm-est-spkvecs-gpost "$spk2utt_opt" $model "$feats" ark,s,cs:- \
ark:$dir/test_${test}.vecs ) 2>$dir/vecs_${test}.log
fi
if [ ! -f $dir/test_${test}.pass2.ali ]; then
sgmm-decode-faster "$gselect_opt" $utt2spk_opt --spk-vecs=ark:$dir/test_${test}.vecs --beam=20.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $model $graphdir/HCLG.fst "$feats" ark,t:$dir/test_${test}.pass2.tra ark,t:$dir/test_${test}.pass2.ali 2> $dir/pass2_${test}.log
fi
if [ ! -f $dir/test_${test}.fmllr_xforms ]; then
( ali-to-post ark:$dir/test_${test}.pass2.ali ark:- | \
weight-silence-post 0.01 $silphonelist $model ark:- ark:- | \
sgmm-post-to-gpost "$gselect_opt" $model "$feats" ark,s,cs:- ark:- | \
sgmm-est-fmllr-gpost "$spk2utt_opt" $fmllr_model "$feats" ark,s,cs:- \
ark:$dir/test_${test}.fmllr_xforms ) 2>$dir/est_fmllr_${test}.log
fi
if [ ! -f $dir/test_${test}.tra ]; then
sgmm-decode-faster-fmllr "$gselect_opt" $utt2spk_opt --spk-vecs=ark:$dir/test_${test}.vecs --beam=20.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $fmllr_model $graphdir/HCLG.fst "$feats" ark:$dir/test_${test}.fmllr_xforms ark,t:$dir/test_${test}.tra ark,t:$dir/test_${test}.ali 2> $dir/decode_${test}.log
fi
sgmm-decode-faster "$gselect_opt" --beam=15.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $alimodel $graphdir/HCLG.fst "$feats" ark,t:$dir/test_${test}.pass1.tra ark,t:$dir/test_${test}.pass1.ali 2> $dir/pass1_${test}.log
( ali-to-post ark:$dir/test_${test}.pass1.ali ark:- | \
weight-silence-post 0.01 $silphonelist $alimodel ark:- ark:- | \
sgmm-post-to-gpost "$gselect_opt" $alimodel "$feats" ark,s,cs:- ark:- | \
sgmm-est-spkvecs-gpost "$spk2utt_opt" $model "$feats" ark,s,cs:- \
ark:$dir/test_${test}.vecs ) 2>$dir/vecs_${test}.log
sgmm-decode-faster "$gselect_opt" $utt2spk_opt --spk-vecs=ark:$dir/test_${test}.vecs --beam=20.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $model $graphdir/HCLG.fst "$feats" ark,t:$dir/test_${test}.pass2.tra ark,t:$dir/test_${test}.pass2.ali 2> $dir/pass2_${test}.log
( ali-to-post ark:$dir/test_${test}.pass2.ali ark:- | \
weight-silence-post 0.01 $silphonelist $model ark:- ark:- | \
sgmm-post-to-gpost "$gselect_opt" $model "$feats" ark,s,cs:- ark:- | \
sgmm-est-fmllr-gpost --spk-vecs=ark:$dir/test_${test}.vecs \
"$spk2utt_opt" $fmllr_model "$feats" ark,s,cs:- \
ark:$dir/test_${test}.fmllr_xforms ) 2>$dir/est_fmllr_${test}.log
sgmm-decode-faster-fmllr "$gselect_opt" $utt2spk_opt --spk-vecs=ark:$dir/test_${test}.vecs --beam=20.0 --acoustic-scale=0.1 --word-symbol-table=data/words.txt $fmllr_model $graphdir/HCLG.fst "$feats" ark:$dir/test_${test}.fmllr_xforms ark,t:$dir/test_${test}.tra ark,t:$dir/test_${test}.ali 2> $dir/decode_${test}.log
# the ,p option lets it score partial output without dying..
scripts/sym2int.pl --ignore-first-field data/words.txt data_prep/test_${test}_trans.txt | \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment