Acoustic Model Discussions

Nested
Tied List
User: emanuelle
Date: 8/7/2008 12:00 pm
Views: 7857
Rating: 9

Hi,

i am with doubt, i create a new .grammar and .voca then i compile with mkdfa.pl, but when i run julius for linux, that i had download here, i got an error

Making pseudo bi/mono-phone for IW-triphone...1026 added as logical...done
reading [grammar/sample.dfa] and [grammar/sample.dict]...
Reading in dictionary...
line 52: triphone "iy-p+s" not found
> 23    [SLEEPS]        s l iy p s
line 84: triphone "uw-d+ax" not found
> 29    [STUDENT]       s t uw d ax n t
////// Missing phones:
iy-p+s
uw-d+ax
//////////////////////
error in reading grammar/sample.dict: 2 words failed out of 88 words
ERROR: failed to read dictionary, terminated

Then, i would know if i have to do a new acusticus model for this julius all time that i insert a new word in my .voca. I get this words in the file dict into Julius_AcousticModels_8kHz-16bit_MFCC_O_D_build726, so is there any tiedlist with all possible word or i have to do this?

 

thanks 

--- (Edited on 8/7/2008 12:00 pm [GMT-0500] by emanuelle) ---

Re: Tied List
User: kmaclean
Date: 8/23/2008 8:51 pm
Views: 260
Rating: 7

Hi emanuelle,

Sorry for the delay in replying, been travelling...

First off, the most current release of the VoxForge acoustic model is old and needs to be updated.  

>would know if i have to do a new acusticus model for this julius all time that

>i insert a new word in my .voca

It depends... the dict file included in the Julius_AcousticModels_8kHz-16bit_MFCC_O_D_build726 build only shows the words that were used in the training set used to create those acoustic models.  However, Step 10 of the acoustic model creation process (note the VoxForge tutorial uses a different lexicon than was used in the VoxForge acoustic model) creates tied-state triphones for the entire lexicon file.

So in theory you are not limited to just the words in the dict file.  You are really only limited to the words in the original lexicon (much larger set of words) that was used to train the acoustic model (likely revision 2107 of the VoxForge Lexicon file).

>so is there any tiedlist with all possible word or i have to do this?

The tiedlist file is simply a list of the monophones, biphones and triphones that were created as part of the acoustic model creation process.  Adding new triphones for new words is done automatically when you retrain a new acoustic model as new words are added to your training set.  You can't add new mono/bi/tri-phones to the tiedlist file if they don't exist in your hmmdef file. 

You could theoretically manually create a mapping from a "logical" triphone to a "physical" triphone (i.e. the actual hmmdef entry) - which is basically what step 10 of the training process is doing automatically, but it would get very tedious to do this for every new word you come across.  It might not be as accurate as retraining with real speech audio data containing the new word you want to recognize.

Hoe that helps.

Ken

--- (Edited on 8/23/2008 9:51 pm [GMT-0400] by kmaclean) ---

Re: Tied List
User: Visitor
Date: 9/7/2008 7:56 pm
Views: 70
Rating: 4
I have a question about building a robust acoustic model for ASR with an arbitrary vocabulary.  This thread suggests that in order for the recognizer to work robustly, training data must be included for all possible triphones.  Is this the case?  That would suggest a very large corpus of training data that includes some unusual phoneme combinations.

--- (Edited on 9/7/2008 7:56 pm [GMT-0500] by Visitor) ---

Re: Tied List
User: kmaclean
Date: 9/7/2008 8:39 pm
Views: 3881
Rating: 3

Hi,

>This thread suggests that in order for the recognizer to work robustly,

>training data must be included for all possible triphones.

See nsh's comments (7th post down) here for a correction of this assumption: Re: covering all nodes of a language

Ken

--- (Edited on 9/7/2008 9:39 pm [GMT-0400] by kmaclean) ---

PreviousNext