TI Digits Short: Generating Triphone Lists and Initial Training
We have previously created lists of monophones for our earlier steps but we are now ready to begin
training triphones. A triphone model is in the form
previous_phone - current_phone + next_phone
These models can be further classified as word internal triphones (abreviated as wint) or cross word
triphones (abreviated as xword). Wint triphones cannot cross word boundaries (i.e. a wint triphone can
only consist of phones from one word) while xword triphones can (i.e. an xword triphone can contain
phones from multiple words).
For the TI Digits task, due to the limited lexicon (i.e. "Oh", "Zero", "One", "Two", ..., "Nine"),
xword triphone models don't produce better results than wint models. Thus for this task we will focus
only on wint models. Crossword triphone models will be discussed in the following tutorial for the
Wall Street Journal (WSJ) task.
In this section we will begin by generating a list of wint triphones that exist in our data and then lead
up to the initial training of our wint models.
Procedure
- Lets first create a list of triphones. Similar to generating a list of monophones, we use HTK's
built in function HLEd to do this. Again, the first argument refers to the output list's name, the next
refers to the output wint based transcription file, the third is the configuration file that tells the
system how to create wint triphones (as opposed to xword triphones), and finally the last argument is the
transcription list of all input training data.
- From the directory isip/exp/htk_tutorial/train type:
HLEd -n triphones1 -l '*' -i ../data_preparation/trans/train_trans_wintri.mlf
mkwintri.led aligned/aligned.mlf
- Now before we begin training we need to create folders for our HMM's. We will need 11
directories so under the directory isip/exp/htk_tutorial/train create the folders hmm15, hmm16, ...,
hmm25.
- Before we begin our re-estimations we have to perform a simple cloning. This step uses a tree
header to make a template for our triphone models from the previous monophone models. We will perform a
more in depth cloning in the next portion of this tutorial as well.
- First make the tree header using the provided maketrihed. This will generate the file
"mktri.hed". From the directory isip/exp/htk_tutorial/train type:
maketrihed monophones1 triphones1
- Now we perform cloning using HTK's built in function HHEd. The input monophone models are
retrieved from hmm14 and our new cloned, wint models will be stored in hmm15. From the same
directory as the previous step type:
HHEd -B -H hmm14/macros -H hmm14/hmmdefs -M hmm15 mktri.hed monophones1
- Now we're ready to begin our training. We again use HERest to re-estimate our models with the EM
algorithm. The only differences from our monophone training is that we now use our list of triphones and
our new transcriptions (in the format of wint triphones). We also use config_wint instead of config0.
These two files are almost identical except for two additional lines in config_wint which indicate the
usage of wint triphone models instead of monophones. You can look in the HTK book for further information
about those parameters if you like.
- From the same directory as above type:
HERest -B -A -C config_wint -I ../data_preparation/trans/train_trans_wintri.mlf -t 250.0
150.0 3000.0 -S train_list2.list -H hmm15/macros -H hmm15/hmmdefs -M hmm16 triphones1
HERest -B -A -C config_wint -I ../data_preparation/trans/train_trans_wintri.mlf -t 250.0
150.0 3000.0 -S train_list2.list -H hmm16/macros -H hmm16/hmmdefs -M hmm17 triphones1
HERest -B -A -C config_wint -I ../data_preparation/trans/train_trans_wintri.mlf -t 250.0
150.0 3000.0 -S train_list2.list -H hmm17/macros -H hmm17/hmmdefs -M hmm18 triphones1
HERest -B -A -C config_wint -I ../data_preparation/trans/train_trans_wintri.mlf -t 250.0
150.0 3000.0 -S train_list2.list -H hmm18/macros -H hmm18/hmmdefs -M hmm19 triphones1
HERest -B -C config_wint -I ../data_preparation/trans/train_trans_wintri.mlf -t 250.0
150.0 3000.0 -s stats -S train_list2.list -H hmm19/macros -H hmm19/hmmdefs -M hmm20
triphones1
Data Preparation
|
Training
|
Decoding
|
|