hi,
so far i've followed the SphinxTrain instructons and got stuck at creating means and variance files.
i don't clear enough about which feature-set should i choose in order to train the continuous HMM. or is it the options doesn't make any different to any model? which one is the best feature-set should i use?
1) c/1..L-1/,d/1..L-1/,c/0/d/0/dd/0/,dd/1..L-1/
2) c/1..L-1/d/1..L-1/c/0/d/0/dd/0/dd/1..L-1/
3) c/0..L-1/d/0..L-1/dd/0..L-1/
4) c/0..L-1/d/0..L-1/
5) c/0..L-1/
6) c/0..L-1/dd/0..L-1/
i've ran cp_parm executable and got the error says:
'segementation fault (core dumped)'
i want to train E-set data corpus and from the dictionary, i got 14 phones for all utterances. i've restricted the num. of state per HMM to be 3. so the total num of states = 42 (14*3).
my copyoperations map files was created like below:
0 0
1 0
2 0
. .
. .
40 0
41 0
42 0
can anyone here tell me what was my mistake and how to fix the problem?
thanks.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm learning how to use the SphinxTrain application as well, and just completed my first attempt at training models from the LDC's WSJ0 data. We already ship similar models in Sphinx-4 (cmusphinx/sphinx4/models/acoustic/wsj), but I just wanted to make sure I understood the process.
The feature I've been using is the same one that is used by default in Sphinx-4:
-feat 1s_c_d_dd
From looking at cmusphinx/SphinxTrain/src/libs/libcep_feat/feat.c, it looks like the string "1s_c_d_dd" maps to:
c/0..L-1/d/0..L-1/dd/0..L-1/
Note that getting the training going is pretty laborious, and it can take a long time between failures. I actually started working with SphinxTrain at the end of June, and it took me until last Saturday (July 17) to get my first complete set of models trained. Of course, this was done on nights/weekends, so I might have been able to do it faster.
Will
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The options in SphinxTrain allow for much more flexibility than the decoders support. Until you understand the Sphinx decoder implementation and are prepared to modify the source code, I advise you to stick as close to the default options as you can. In particular, use the default $CFG_FEATURE and leave $CFG_STATESPERHMM at 5. Once you have everything (not just SphinxTrain running to completeion, succesful speech recognition) working, you can start exploring the options to make it better (smaller, faster, more accurate, ...).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
i want to train the continuous models (CHMM) and have followed the documentation from http://www.speech.cs.cmu.edu/sphinxman/fr4.html (since early this month) which is the instruction to train the continuous and semi-continuous models.
so, right now i'm in process training my E-set CI models using bin/bw executable and got stuck...
this is the last lines of the implementation:
next_prime: failed to find next primt for 0
next_prime: failed to find next primt for 0
assertion "n_state > 0" failed: file "baum_welch.c", line 172 utt> 9 0BF1SET9 114 0 0Aborted (core dumped)
i use the 3rd feature-set (c/0..L-1/d/0..L-1/dd/0..L-1/) and 5_state_bakis topology.
My best suggestion is to examine the bw.log file for things that don't seem right. Unfortunately, this implies you will recognize what a successful log should look like, and the SphinxTrain release doesn't contain any samples of successful training. I'll email you a bw.log file for you to compare against yours.
(My guess is that SphinxTrain found no training data. Is your etc/e_set.fileids file empty, perhaps?)
Roger
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hi,
so far i've followed the SphinxTrain instructons and got stuck at creating means and variance files.
i don't clear enough about which feature-set should i choose in order to train the continuous HMM. or is it the options doesn't make any different to any model? which one is the best feature-set should i use?
1) c/1..L-1/,d/1..L-1/,c/0/d/0/dd/0/,dd/1..L-1/
2) c/1..L-1/d/1..L-1/c/0/d/0/dd/0/dd/1..L-1/
3) c/0..L-1/d/0..L-1/dd/0..L-1/
4) c/0..L-1/d/0..L-1/
5) c/0..L-1/
6) c/0..L-1/dd/0..L-1/
i've ran cp_parm executable and got the error says:
'segementation fault (core dumped)'
i want to train E-set data corpus and from the dictionary, i got 14 phones for all utterances. i've restricted the num. of state per HMM to be 3. so the total num of states = 42 (14*3).
my copyoperations map files was created like below:
0 0
1 0
2 0
. .
. .
40 0
41 0
42 0
can anyone here tell me what was my mistake and how to fix the problem?
thanks.
i've found the answer to my 2nd question above:
cp_parm (creating means & variance files)
the num of phone for the e-set letters are 9+1 (including SIL). so total num of state = 30 (10*3)
segmentation fault happens because the state list in copyoperations map file didn't match the actual num of phones for e-set letters.
so, can anyone here tell me something about my first question: FEATURE-SET OPTIONS?
Hi:
I'm learning how to use the SphinxTrain application as well, and just completed my first attempt at training models from the LDC's WSJ0 data. We already ship similar models in Sphinx-4 (cmusphinx/sphinx4/models/acoustic/wsj), but I just wanted to make sure I understood the process.
The feature I've been using is the same one that is used by default in Sphinx-4:
-feat 1s_c_d_dd
From looking at cmusphinx/SphinxTrain/src/libs/libcep_feat/feat.c, it looks like the string "1s_c_d_dd" maps to:
c/0..L-1/d/0..L-1/dd/0..L-1/
Note that getting the training going is pretty laborious, and it can take a long time between failures. I actually started working with SphinxTrain at the end of June, and it took me until last Saturday (July 17) to get my first complete set of models trained. Of course, this was done on nights/weekends, so I might have been able to do it faster.
Will
The options in SphinxTrain allow for much more flexibility than the decoders support. Until you understand the Sphinx decoder implementation and are prepared to modify the source code, I advise you to stick as close to the default options as you can. In particular, use the default $CFG_FEATURE and leave $CFG_STATESPERHMM at 5. Once you have everything (not just SphinxTrain running to completeion, succesful speech recognition) working, you can start exploring the options to make it better (smaller, faster, more accurate, ...).
Hi,
thanks for the helps!
i want to train the continuous models (CHMM) and have followed the documentation from http://www.speech.cs.cmu.edu/sphinxman/fr4.html (since early this month) which is the instruction to train the continuous and semi-continuous models.
so, right now i'm in process training my E-set CI models using bin/bw executable and got stuck...
this is the last lines of the implementation:
next_prime: failed to find next primt for 0
next_prime: failed to find next primt for 0
assertion "n_state > 0" failed: file "baum_welch.c", line 172 utt> 9 0BF1SET9 114 0 0Aborted (core dumped)
i use the 3rd feature-set (c/0..L-1/d/0..L-1/dd/0..L-1/) and 5_state_bakis topology.
and this is the cmd_line that i used:
bin/bw
-moddeffn model_architecture/e_set/e_set_ci.mdef
-ts2cbfn .cont.
-mixwfn model_parameters/e_set/e_set_mixw.gau
-mwfloor 0.00001
-tmatfn model_parameters/e_set/e_set.tmat
-meanfn model_parameters/e_set/e_set.means
-varfn model_parameters/e_set/e_set.var
-dictfn etc/e_set.dict
-fdictfn etc/filler.dict
-ctlfn etc/e_set.fileids
-part 1
-npart 1
-cepdir feat/ti_alpha
-cepext feat
-lsnfn etc/e_set.transcription
-accumdir model_parameters/e_set
-varfloor 0.00001
-topn 1
-abeam 1e-100
-bbeam 1e-100
-agc max
-cmn current
-varnorm yes
-meanreest yes
-varreest yes
-2passvar yes
-tmatreest yes
-feat c/0..L-1/d/0..L-1/dd/0..L-1/
-ceplen 13
kindly,can anyone help me out...?
i need to catch up my time line.
My best suggestion is to examine the bw.log file for things that don't seem right. Unfortunately, this implies you will recognize what a successful log should look like, and the SphinxTrain release doesn't contain any samples of successful training. I'll email you a bw.log file for you to compare against yours.
(My guess is that SphinxTrain found no training data. Is your etc/e_set.fileids file empty, perhaps?)
Roger
thanks for the respond!
i think SphinxTrain did found my training data because it went ok for the first 8 feature files and only get error when reach the 9th.
i've sent the full implementation lines to your email.
any given solution will be very appreciated!
thanks.