Speech Recognition Engines

Flat
How to pass parameters like VTNL,TOPN to decoder in Sphinxtrain?
User: Binh
Date: 8/23/2013 7:28 am
Views: 4192
Rating: 3

Hello everyone,


I just implemented the following tutorial on sphinxtrain.

http://cmusphinx.sourceforge.net/wiki/tutoriallm

Got a couple of warnings but everything worked out. In this tutorial the decoder is part of the trainig script and you get an automatic result and scoring in the end. Very convenient.

Now I want to improve the result by using VTLN(vocal tract length normalisation) and more gaussians.

In this sphinxtrain version everything is set in sphinxtrain.cfg ( for trainer and decoder)

There is already an example for training in the starting config file.

# Number of top gaussians to score a frame. A little bit less accurate computations
# make training significantly faster. Uncomment to apply this during the training
# For good accuracy make sure you are using the same setting in decoder
# In theory this can be different for various training stages. For example 4 for
# CI stage and 16 for CD stage
#$CFG_CI_TOPN = 8;
#$CFG_CD_TOPN = 32;

But it says you need the same setting in the decoder as well. But there is no äquivlent command in the decoding section.

I tried to add some flags I found in older Scripts like

$DEC_CFG_GAUSSIANS = $CFG_FINAL_NUM_DENSITIES;

or

$DEC_CFG_TOPN = 16

But there doesn't seem to be any impcact. Furthermore the decode log still says pocketsphinx is started with default parameter -topn 4.

The same goes for VTLN. There is a part in the training section but no part in the decoder section to be set.

# (yes/no) Perform vocal tract length normalization in training.  This
# will result in a "normalized" model which requires VTLN to be done
# during decoding as well.
$CFG_VTLN = 'no';
# Starting warp factor for VTLN
$CFG_VTLN_START = 0.80;
# Ending warp factor for VTLN
$CFG_VTLN_END = 1.40;
# Step size of warping factors
$CFG_VTLN_STEP = 0.05;

My config script can be found here:

http://www.messe2media.com/files/sphinx_train.cfg


Maybe some can help me here.

If I set up the training according to that tutorial.

How do I set VTLN and TOPN for the decoder?

Do I need to set them at all for the decoder or it is done by the script?

Can they be set? Or does this training script doesn't allow it and I need to recognize speratly from this training script with these arguments set?

 

Binh

 

--- (Edited on 8/23/2013 7:28 am [GMT-0500] by Binh) ---

Re: How to pass parameters like VTNL,TOPN to decoder in Sphinxtrain?
User: sophie
Date: 4/27/2015 12:57 pm
Views: 1472
Rating: 1

are you get solve it  ???  i face the same problem and i dont know the solution

 

thanx  

--- (Edited on 4/27/2015 12:57 pm [GMT-0500] by Visitor) ---

PreviousNext