Click here to register.

Step 10 - Making Tied-State Triphones

You will be using the global.ded script you created in a previous step, confirm that its contents are as follows:

AS sp
RS cmu
MP sil sil sp

Then execute the HDMan command against the entire lexicon file, not just the training dictionnary we have used thus far (that is why we needed to create a phonetically balanced grammar in Step 2):

$HDMan -A -D -T 1 -b sp -n fulllist -g global.ded -l flog dict-tri ../lexicon/voxforge_lexicon

this creates 2 files:

Next create a new fulllist1 file and copy the contents of the fulllist and triphones1 into it. Copy the  fixfullist.pl script to your 'voxforge/manual folder', and execute as follows to remove any duplicate entries:

$perl fixfulllist.pl fulllist1 fulllist

Your updated file should look like this: fulllist

tree.hed script

Next you create a new script called tree.hed in your 'voxforge/manual' folder containing the following:

RO 100 stats

TR 0

QS  "R_NonBoundary"           { *+* }
QS  "R_Silence"                      { *+sil }
QS  "R_Stop"              { *+p,*+pd,*+b,*+t,*+td,*+d,*+dd,*+k,*+kd,*+g }
QS  "R_Nasal"                        { *+m,*+n,*+en,*+ng }
QS  "R_Fricative"      { *+s,*+sh,*+z,*+f,*+v,*+ch,*+jh,*+th,*+dh }
QS  "R_Liquid"                       { *+l,*+el,*+r,*+w,*+y,*+hh }
QS  "R_Vowel"                       { *+eh,*+ih,*+ao,*+aa,*+uw,*+ah,*+ax,*+er,*+ay,*+oy,*+ey,*+iy,*+ow }
QS  "R_C-Front"                    { *+p,*+pd,*+b,*+m,*+f,*+v,*+w }
QS  "R_C-Central"     { *+t,*+td,*+d,*+dd,*+en,*+n,*+s,*+z,*+sh,*+th,*+dh,*+l,*+el,*+r }
QS  "R_C-Back"                     { *+sh,*+ch,*+jh,*+y,*+k,*+kd,*+g,*+ng,*+hh }
QS  "R_V-Front"                    { *+iy,*+ih,*+eh }
QS  "R_V-Central"     { *+eh,*+aa,*+er,*+ao }
QS  "R_V-Back"                     { *+uw,*+aa,*+ax,*+uh }
QS  "R_Front"                        { *+p,*+pd,*+b,*+m,*+f,*+v,*+w,*+iy,*+ih,*+eh }
QS  "R_Central"                     { *+t,*+td,*+d,*+dd,*+en,*+n,*+s,*+z,*+sh,*+th,*+dh,*+l,*+el,*+r,*+eh,*+aa,*+er,*+ao }
QS  "R_Back"             { *+sh,*+ch,*+jh,*+y,*+k,*+kd,*+g,*+ng,*+hh,*+aa,*+uw,*+ax,*+uh }
QS  "R_Fortis"                       { *+p,*+pd,*+t,*+td,*+k,*+kd,*+f,*+th,*+s,*+sh,*+ch }
QS  "R_Lenis"             { *+b,*+d,*+dd,*+g,*+v,*+dh,*+z,*+sh,*+jh }
QS  "R_UnFortLenis"            { *+m,*+n,*+en,*+ng,*+hh,*+l,*+el,*+r,*+y,*+w }
QS  "R_Coronal"                    { *+t,*+td,*+d,*+dd,*+n,*+en,*+th,*+dh,*+s,*+z,*+sh,*+ch,*+jh,*+l,*+el,*+r }
QS  "R_NonCoronal" { *+p,*+pd,*+b,*+m,*+k,*+kd,*+g,*+ng,*+f,*+v,*+hh,*+y,*+w }
QS  "R_Anterior"        { *+p,*+pd,*+b,*+m,*+t,*+td,*+d,*+dd,*+n,*+en,*+f,*+v,*+th,*+dh,*+s,*+z,*+l,*+el,*+w }
QS  "R_NonAnterior" { *+k,*+kd,*+g,*+ng,*+sh,*+hh,*+ch,*+jh,*+r,*+y }
QS  "R_Continuent"   { *+m,*+n,*+en,*+ng,*+f,*+v,*+th,*+dh,*+s,*+z,*+sh,*+hh,*+l,*+el,*+r,*+y,*+w }
QS  "R_NonContinuent"        { *+p,*+pd,*+b,*+t,*+td,*+d,*+dd,*+k,*+kd,*+g,*+ch,*+jh }
QS  "R_Strident"        { *+s,*+z,*+sh,*+ch,*+jh }
QS  "R_NonStrident"  { *+f,*+v,*+th,*+dh,*+hh }
QS  "R_UnStrident"   { *+p,*+pd,*+b,*+m,*+t,*+td,*+d,*+dd,*+n,*+en,*+k,*+kd,*+g,*+ng,*+l,*+el,*+r,*+y,*+w }
QS  "R_Glide"                        { *+hh,*+l,*+el,*+r,*+y,*+w }
QS  "R_Syllabic"         { *+en,*+m,*+l,*+el,*+er }
QS  "R_Unvoiced-Cons"        { *+p,*+pd,*+t,*+td,*+k,*+kd,*+s,*+sh,*+f,*+th,*+hh,*+ch }
QS  "R_Voiced-Cons" { *+jh,*+b,*+d,*+dd,*+dh,*+g,*+y,*+l,*+el,*+m,*+n,*+en,*+ng,*+r,*+v,*+w,*+z }
QS  "R_Unvoiced-All"            { *+p,*+pd,*+t,*+td,*+k,*+kd,*+s,*+sh,*+f,*+th,*+hh,*+ch,*+sil }
QS  "R_Long"             { *+iy,*+aa,*+ow,*+ao,*+uw,*+en,*+m,*+l,*+el }
QS  "R_Short"                        { *+eh,*+ey,*+aa,*+ih,*+ay,*+oy,*+ah,*+ax,*+uh }
QS  "R_Dipthong"      { *+ey,*+ay,*+oy,*+aa,*+er,*+en,*+m,*+l,*+el }
QS  "R_Front-Start"   { *+ey,*+aa,*+er }
QS  "R_Fronting"       { *+ay,*+ey,*+oy }
QS  "R_High"             { *+ih,*+uw,*+aa,*+ax,*+iy }
QS  "R_Medium"                    { *+ey,*+er,*+aa,*+ax,*+eh,*+en,*+m,*+l,*+el }
QS  "R_Low"              { *+eh,*+ay,*+aa,*+aw,*+ao,*+oy }
QS  "R_Rounded"                   { *+ao,*+uw,*+aa,*+ax,*+oy,*+w }
QS  "R_Unrounded"   { *+eh,*+ih,*+aa,*+er,*+ay,*+ey,*+iy,*+aw,*+ah,*+ax,*+en,*+m,*+hh,*+l,*+el,*+r,*+y }
QS  "R_NonAffricate"            { *+s,*+sh,*+z,*+f,*+v,*+th,*+dh }
QS  "R_Affricate"       { *+ch,*+jh }
QS  "R_IVowel"                      { *+ih,*+iy }
QS  "R_EVowel"                     { *+eh,*+ey }
QS  "R_AVowel"                     { *+eh,*+aa,*+er,*+ay,*+aw }
QS  "R_OVowel"                    { *+ao,*+oy,*+aa }
QS  "R_UVowel"                    { *+aa,*+ax,*+en,*+m,*+l,*+el,*+uw }
QS  "R_Voiced-Stop"  { *+b,*+d,*+dd,*+g }
QS  "R_Unvoiced-Stop"         { *+p,*+pd,*+t,*+td,*+k,*+kd }
QS  "R_Front-Stop"   { *+p,*+pd,*+b }
QS  "R_Central-Stop"            { *+t,*+td,*+d,*+dd }
QS  "R_Back-Stop"     { *+k,*+kd,*+g }
QS  "R_Voiced-Fric"  { *+z,*+sh,*+dh,*+ch,*+v }
QS  "R_Unvoiced-Fric"          { *+s,*+sh,*+th,*+f,*+ch }
QS  "R_Front-Fric"    { *+f,*+v }
QS  "R_Central-Fric" { *+s,*+z,*+th,*+dh }
QS  "R_Back-Fric"     { *+sh,*+ch,*+jh }
QS  "R_aa"                 { *+aa }
QS  "R_ae"                 { *+ae }
QS  "R_ah"                 { *+ah }
QS  "R_ao"                 { *+ao }
QS  "R_aw"                { *+aw }
QS  "R_ax"                 { *+ax }
QS  "R_ay"                 { *+ay }
QS  "R_b"                   { *+b }
QS  "R_ch"                 { *+ch }
QS  "R_d"                   { *+d }
QS  "R_dd"                 { *+dd }
QS  "R_dh"                 { *+dh }
QS  "R_dx"                 { *+dx }
QS  "R_eh"                 { *+eh }
QS  "R_el"                  { *+el }
QS  "R_en"                 { *+en }
QS  "R_er"                  { *+er }
QS  "R_ey"                  { *+ey }
QS  "R_f"                    { *+f }
QS  "R_g"                   { *+g }
QS  "R_hh"                 { *+hh }
QS  "R_ih"                  { *+ih }
QS  "R_iy"                  { *+iy }
QS  "R_jh"                  { *+jh }
QS  "R_k"                   { *+k }
QS  "R_kd"                 { *+kd }
QS  "R_l"                    { *+l }
QS  "R_m"                  { *+m }
QS  "R_n"                   { *+n }
QS  "R_ng"                 { *+ng }
QS  "R_ow"                { *+ow }
QS  "R_oy"                 { *+oy }
QS  "R_p"                   { *+p }
QS  "R_pd"                 { *+pd }
QS  "R_r"                    { *+r }
QS  "R_s"                    { *+s }
QS  "R_sh"                  { *+sh }
QS  "R_t"                    { *+t }
QS  "R_td"                  { *+td }
QS  "R_th"                  { *+th }
QS  "R_ts"                  { *+ts }
QS  "R_uh"                 { *+uh }
QS  "R_uw"                { *+uw }
QS  "R_v"                   { *+v }
QS  "R_w"                  { *+w }
QS  "R_y"                   { *+y }
QS  "R_z"                    { *+z }
QS  "L_NonBoundary"           { *-* }
QS  "L_Silence"                      { sil-* }
QS  "L_Stop"              { p-*,pd-*,b-*,t-*,td-*,d-*,dd-*,k-*,kd-*,g-* }
QS  "L_Nasal"                        { m-*,n-*,en-*,ng-* }
QS  "L_Fricative"      { s-*,sh-*,z-*,f-*,v-*,ch-*,jh-*,th-*,dh-* }
QS  "L_Liquid"                       { l-*,el-*,r-*,w-*,y-*,hh-* }
QS  "L_Vowel"                       { eh-*,ih-*,ao-*,aa-*,uw-*,ah-*,ax-*,er-*,ay-*,oy-*,ey-*,iy-*,ow-* }
QS  "L_C-Front"                    { p-*,pd-*,b-*,m-*,f-*,v-*,w-* }
QS  "L_C-Central"     { t-*,td-*,d-*,dd-*,en-*,n-*,s-*,z-*,sh-*,th-*,dh-*,l-*,el-*,r-* }
QS  "L_C-Back"                     { sh-*,ch-*,jh-*,y-*,k-*,kd-*,g-*,ng-*,hh-* }
QS  "L_V-Front"                    { iy-*,ih-*,eh-* }
QS  "L_V-Central"     { eh-*,aa-*,er-*,ao-* }
QS  "L_V-Back"                     { uw-*,aa-*,ax-*,uh-* }
QS  "L_Front"                        { p-*,pd-*,b-*,m-*,f-*,v-*,w-*,iy-*,ih-*,eh-* }
QS  "L_Central"                     { t-*,td-*,d-*,dd-*,en-*,n-*,s-*,z-*,sh-*,th-*,dh-*,l-*,el-*,r-*,eh-*,aa-*,er-*,ao-* }
QS  "L_Back"             { sh-*,ch-*,jh-*,y-*,k-*,kd-*,g-*,ng-*,hh-*,aa-*,uw-*,ax-*,uh-* }
QS  "L_Fortis"                       { p-*,pd-*,t-*,td-*,k-*,kd-*,f-*,th-*,s-*,sh-*,ch-* }
QS  "L_Lenis"             { b-*,d-*,dd-*,g-*,v-*,dh-*,z-*,sh-*,jh-* }
QS  "L_UnFortLenis"            { m-*,n-*,en-*,ng-*,hh-*,l-*,el-*,r-*,y-*,w-* }
QS  "L_Coronal"                    { t-*,td-*,d-*,dd-*,n-*,en-*,th-*,dh-*,s-*,z-*,sh-*,ch-*,jh-*,l-*,el-*,r-* }
QS  "L_NonCoronal" { p-*,pd-*,b-*,m-*,k-*,kd-*,g-*,ng-*,f-*,v-*,hh-*,y-*,w-* }
QS  "L_Anterior"        { p-*,pd-*,b-*,m-*,t-*,td-*,d-*,dd-*,n-*,en-*,f-*,v-*,th-*,dh-*,s-*,z-*,l-*,el-*,w-* }
QS  "L_NonAnterior" { k-*,kd-*,g-*,ng-*,sh-*,hh-*,ch-*,jh-*,r-*,y-* }
QS  "L_Continuent"   { m-*,n-*,en-*,ng-*,f-*,v-*,th-*,dh-*,s-*,z-*,sh-*,hh-*,l-*,el-*,r-*,y-*,w-* }
QS  "L_NonContinuent"        { p-*,pd-*,b-*,t-*,td-*,d-*,dd-*,k-*,kd-*,g-*,ch-*,jh-* }
QS  "L_Strident"        { s-*,z-*,sh-*,ch-*,jh-* }
QS  "L_NonStrident"  { f-*,v-*,th-*,dh-*,hh-* }
QS  "L_UnStrident"   { p-*,pd-*,b-*,m-*,t-*,td-*,d-*,dd-*,n-*,en-*,k-*,kd-*,g-*,ng-*,l-*,el-*,r-*,y-*,w-* }
QS  "L_Glide"                        { hh-*,l-*,el-*,r-*,y-*,w-* }
QS  "L_Syllabic"         { en-*,m-*,l-*,el-*,er-* }
QS  "L_Unvoiced-Cons"        { p-*,pd-*,t-*,td-*,k-*,kd-*,s-*,sh-*,f-*,th-*,hh-*,ch-* }
QS  "L_Voiced-Cons" { jh-*,b-*,d-*,dd-*,dh-*,g-*,y-*,l-*,el-*,m-*,n-*,en-*,ng-*,r-*,v-*,w-*,z-* }
QS  "L_Unvoiced-All"            { p-*,pd-*,t-*,td-*,k-*,kd-*,s-*,sh-*,f-*,th-*,hh-*,ch-*,sil-* }
QS  "L_Long"             { iy-*,aa-*,ow-*,ao-*,uw-*,en-*,m-*,l-*,el-* }
QS  "L_Short"                        { eh-*,ey-*,aa-*,ih-*,ay-*,oy-*,ah-*,ax-*,uh-* }
QS  "L_Dipthong"      { ey-*,ay-*,oy-*,aa-*,er-*,en-*,m-*,l-*,el-* }
QS  "L_Front-Start"   { ey-*,aa-*,er-* }
QS  "L_Fronting"       { ay-*,ey-*,oy-* }
QS  "L_High"             { ih-*,uw-*,aa-*,ax-*,iy-* }
QS  "L_Medium"                    { ey-*,er-*,aa-*,ax-*,eh-*,en-*,m-*,l-*,el-* }
QS  "L_Low"              { eh-*,ay-*,aa-*,aw-*,ao-*,oy-* }
QS  "L_Rounded"                   { ao-*,uw-*,aa-*,ax-*,oy-*,w-* }
QS  "L_Unrounded"   { eh-*,ih-*,aa-*,er-*,ay-*,ey-*,iy-*,aw-*,ah-*,ax-*,en-*,m-*,hh-*,l-*,el-*,r-*,y-* }
QS  "L_NonAffricate"            { s-*,sh-*,z-*,f-*,v-*,th-*,dh-* }
QS  "L_Affricate"       { ch-*,jh-* }
QS  "L_IVowel"                      { ih-*,iy-* }
QS  "L_EVowel"                     { eh-*,ey-* }
QS  "L_AVowel"                     { eh-*,aa-*,er-*,ay-*,aw-* }
QS  "L_OVowel"                    { ao-*,oy-*,aa-* }
QS  "L_UVowel"                    { aa-*,ax-*,en-*,m-*,l-*,el-*,uw-* }
QS  "L_Voiced-Stop"  { b-*,d-*,dd-*,g-* }
QS  "L_Unvoiced-Stop"         { p-*,pd-*,t-*,td-*,k-*,kd-* }
QS  "L_Front-Stop"   { p-*,pd-*,b-* }
QS  "L_Central-Stop"            { t-*,td-*,d-*,dd-* }
QS  "L_Back-Stop"     { k-*,kd-*,g-* }
QS  "L_Voiced-Fric"  { z-*,sh-*,dh-*,ch-*,v-* }
QS  "L_Unvoiced-Fric"          { s-*,sh-*,th-*,f-*,ch-* }
QS  "L_Front-Fric"    { f-*,v-* }
QS  "L_Central-Fric" { s-*,z-*,th-*,dh-* }
QS  "L_Back-Fric"     { sh-*,ch-*,jh-* }
QS  "L_aa"                 { aa-* }
QS  "L_ae"                 { ae-* }
QS  "L_ah"                 { ah-* }
QS  "L_ao"                 { ao-* }
QS  "L_aw"                { aw-* }
QS  "L_ax"                 { ax-* }
QS  "L_ay"                 { ay-* }
QS  "L_b"                   { b-* }
QS  "L_ch"                 { ch-* }
QS  "L_d"                   { d-* }
QS  "L_dd"                 { dd-* }
QS  "L_dh"                 { dh-* }
QS  "L_dx"                 { dx-* }
QS  "L_eh"                 { eh-* }
QS  "L_el"                  { el-* }
QS  "L_en"                 { en-* }
QS  "L_er"                  { er-* }
QS  "L_ey"                  { ey-* }
QS  "L_f"                    { f-* }
QS  "L_g"                   { g-* }
QS  "L_hh"                 { hh-* }
QS  "L_ih"                  { ih-* }
QS  "L_iy"                  { iy-* }
QS  "L_jh"                  { jh-* }
QS  "L_k"                   { k-* }
QS  "L_kd"                 { kd-* }
QS  "L_l"                    { l-* }
QS  "L_m"                  { m-* }
QS  "L_n"                   { n-* }
QS  "L_ng"                 { ng-* }
QS  "L_ow"                { ow-* }
QS  "L_oy"                 { oy-* }
QS  "L_p"                   { p-* }
QS  "L_pd"                 { pd-* }
QS  "L_r"                    { r-* }
QS  "L_s"                    { s-* }
QS  "L_sh"                  { sh-* }
QS  "L_t"                    { t-* }
QS  "L_td"                  { td-* }
QS  "L_th"                  { th-* }
QS  "L_ts"                  { ts-* }
QS  "L_uh"                 { uh-* }
QS  "L_uw"                { uw-* }
QS  "L_v"                   { v-* }
QS  "L_w"                  { w-* }
QS  "L_y"                   { y-* }
QS  "L_z"                    { z-* }
 
TR 2

(Note: make sure you have a blank line at the end of this file) 

Here is a short description of the commands contained in tree.hed:

  • RO - outlier threshhold
  • 1st "TR" - trace level
  • QS - question - defined by the user (see quests.hed file in HTK distribution - RM demo folder)
(each QS command loads a single question and that question is defined by a set of contexts)
  • 2nd "TR" - enables intermediate level progress reporting
  • TB - clusters one specific setof states - created with the mkclscript.prl command
  • AU - synthesize previously unseen triphones, i.e. use the set of newly created decision trees to make all the triphones included in the list
  • CO - compact the model set: some state definitions will be exactly the same (same means and variances etc.). To save space, only one of these states is kept in the definition, others are added to the tiedlist.
  • ST - save the decision trees in a file

Refer to the HTK book for details on these commands. 

Next run the mkclscript.prl (you should have already copied it from your HTK folder in  'htk-3.3/samples/RMHTK/perl_scripts' folder to your voxforge/HTK_scripts folder) script as follows:

$perl ../HTK_scripts/mkclscript.prl TB 350 monophones0 >> tree.hed

Then add the following to the end of your tree.hed file:

 
TR 1
 
AU "fulllist"
CO "tiedlist"
 
ST "trees"

Your file should look like this: tree.hedtree.hed

Next create  3 more folders: hmm13-15

Then execute the HHEd command:

$HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

This command creates 3 files:

 Next run HERest 2 more times: 

$HERest -A -D -T 1 -T 1 -C config -I wintri.mlf -s stats -t 250.0 150.0 3000.0 -S train.scp -H hmm13/macros -H hmm13/hmmdefs -M hmm14 tiedlist

This command creates 2 files:

$HERest -A -D -T 1 -T 1 -C config -I wintri.mlf -s stats -t 250.0 150.0 3000.0 -S train.scp -H hmm14/macros -H hmm14/hmmdefs -M hmm15 tiedlist

This creates 2 files:

The hmmdefs file in the hmm15 folder, along with the tiedlist file, can now be used with Julian to recognize your speech!


Comments

Click the 'Add' link to add a comment to this page; click the 'Read More' link to view replies to a posted comment.

AddSearch

stats file not opened
By thaparallawadinishant - 1/8/2012

hiii all

I am currently on the step 10, m having tree.hed and now doin followin n gettin error

$ HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones


C:\cygwin\HTK\htk-3.3-windows-binary\htk\HHEd.exe -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1


No HTK Configuration Parameters Set

HHEd
 465/465 Models Loaded [5 states max, 1 mixes max]
RO 100.00 ''
 Setting outlier threshold for clustering
 RO->LS stats
  and loading state occupation stats
  ERROR [+5010]  InitSource: Cannot open source file stats
  ERROR [+7210]  LoadStatsFile: Can't open file stats
 FATAL ERROR - Terminating program C:\cygwin\HTK\htk-3.3-windows-binary\htk\HHEd.exe

 

plz help me out.. Thanks in advance...

triphones models and confusion matrix
By nounou - 12/14/2011

hello, 

I have two probems: 

1- to perfom my speech continuous recognizer I
 use monophone models then triphones models , 
but the accuracy of the system is lower in the second case
 than in monophone models.  
 
 
2- I have no results when I run Hresults with -p option 
to get the confusion matrix 

Hresults -A -D -p -T 1 -e ??? sil -I E:/HTK/Mlf/Ref.mlf E:/HTK/Lg/monophones1 E:/HTK/Mlf/Rechmm15.mlf  



how i can solve that ?? ... please help me 

thanks all 
 

 

help me
By ubaid - 12/8/2011

hi all frindz

while i am executing the following command.

$perl fixfulllist.pl fulllist1 fulllist

Unable to open fulllist1 for reading at fixfulllist.pl line 33.

and line 33 in fixfulllist.pl is  

open (FILEIN,"$filein") || die ("Unable to open $filein for reading");

plz help me and my contact email ubaid_akbar@yahoomail.com or engrubaidakbar@gmail.com

an error at time of installation
By ubaid akbar - 11/23/2011 - 1 Replies

hi

all frinds

at time of installing htk tool kit when i executs nmake command

nmake /f htk_htktoolkit_nt.mkf all

an error

link /nologo /subsystem:console /incrementa:no /OUT:..\bin.win32\HMMIRest.exe HMMI Rest.obj winmm.lib kernel132.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib ..\htlib\htklib.win32.lib

Link:fatal error LNK1104: cannot open file '..\HTKLib\htklib.win32.lib'

NMAKE: fatal error U1077: '"c:\program files (x86)\microsoft visual studio 10.0\vc\bin\link.exe"' :return code '0x450'

top....

how do i execut it.....?????/ plzzzz i need it

i m using visual studio 2010 and 64 bit win 7 operating system...

Error in Step 10 instructions
By zorzal - 6/19/2011 - 3 Replies

I believe the instructions regarding the use of HDMan to generate "fulllist" are inconsistent with those given in HTKBook, as pointed out by Imene.

According to HTKBook p40, what is needed is "a new list of triphones expanded to include all those needed for recognition.This can be generated, for example, by using HDMan on the entire dictionary (not just the training dictionary)."

The VoxForge instructions however just collate a complete list of monophones with the list of triphones extracted from the training data.

To fix this, all that is needed is to append the "TC" instruction to the global.ded file, then proceed with HDMan. (After that, the resulting fulllist file should be merged with the triphones extracted from the training transcriptions, followed by running fixfulllist.pl etc)

 

lower results by using triphones
By shahab - 4/27/2011 - 1 Replies

Hi dear friends,

I have built the triphone models for TIMIT dataset but simply when I use monophone models for testing, I get accuracy about 55% and when I use triphone models, my results decrease to 31%. can anybody help me about this?

ERROR [2662]
By Tara - 2/17/2011 - 2 Replies

After this command:

$HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

i've got this error:

ERROR [2662] AssignStructure : cannot find tree for sp state2.

can anybody help please.

thanks

ERROR [+2662]
By gothrog - 12/20/2010 - 3 Replies

Ken,
I have received the following error:

------------------------------------

TR 1
 Adjusting trace level

AU fulllist
 Creating HMMset using trees to add unseen triphones
  ERROR [+2662]  FindProtoModel: no proto for el in hSet
 FATAL ERROR - Terminating program /usr/local/bin/HHEd

------------------------------------

The thing is the "el" isn't in my list of phones to use at all.  No word in my prompts utilizes that phonetic sound.  It is only in the tree.hed, which was copied and pasted in from the tutorial.  I didn't realize that I may have to modify the tree.hed.

How do I go about doing that properly?
Regards,

Mike

ERROR [+7050]
By Roola - 9/30/2010 - 3 Replies

 

after running this command 

$ HERest -A -D -T 1 -T 1 -C config -I wintri.mlf -s stats -t 250.0 150.0 3000.0 -S train.scp -H hmm13/macros -H hmm13/hmmdefs -M hmm14 tiedlist

I get the following error

HMM Def Error: Mean Vector expected at line 318/col 5/char 18188 in hmm13/hmmdef

  ERROR [+7050]  HMError:

HMM Def Error: GetMean Failed at line 318/col 6/char 18189 in hmm13/hmmdefs

  ERROR [+7050]  HMError:

HMM Def Error: Regression Class Number expected at line 318/col 7/char 18190 in

hmm13/hmmdefs

  ERROR [+7050]  HMError:

HMM Def Error: GetMixtures failed at line 318/col 8/char 18191 in hmm13/hmmdefs

  ERROR [+7050]  HMError:

HMM Def Error: GetStream failed at line 318/col 9/char 18192 in hmm13/hmmdefs

  ERROR [+7050]  HMError:

  ERROR [+7035]  LoadAllMacros: Get macro data failed in MMF hmm13/hmmdefs

  ERROR [+7050]  LoadHMMSet: Macro name expected

  ERROR [+2321]  Initialise: LoadHMMSet failed

 FATAL ERROR - Terminating program C:\cygwin\bin\HERest.exe

 

this is what's in the hmmdefs around line 318

 

 ~s "ST_aa_2_1"

<MEAN> 25

 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000 -1.#IND00e+000

<VARIANCE> 25

 5.573817e-001 5.578978e-001 7.392848e-001 9.394545e-001 5.311690e-001 8.198593e-001 7.110898e-001 6.236224e-001 5.930030e-001 4.934927e-001 6.268919e-001 4.239376e-001 1.591047e-002 1.929596e-002 2.388545e-002 2.828466e-002 2.510188e-002 3.111592e-002 3.215955e-002 2.990042e-002 3.045775e-002 2.946634e-002 2.942908e-002 2.347589e-002 3.007829e-002

<GCONST> -7.071866e+000

 

 How can I solve this?

THANKS

problem in step 10..
By Visitor - 8/30/2010 - 1 Replies

hi..

during step 10 command i am getting this error...

$ HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphoneTR 2
 Adjusting trace level

TR 1
 Adjusting trace level

AU fulllist
 Creating HMMset using trees to add unseen triphones
  ERROR [+2662]  AddUnseenCommand: there are no existing trees
 FATAL ERROR - Terminating program C:\cygwin\HTK\htk-3.3-windows-binary_2\htk\HH
Ed.exe

 

can anybody help..

plz..

trees file containing only the questions
By Gautam - 8/25/2010 - 1 Replies

ST "trees" at the end of the tree.hed script generates a file which includes the tree. But my file consists of only the questions and nothing else.

The only difference was that as I was using 8 gaussian mixtures I used TC instead of TB. I am not sure what could be the error. Is that my tree.hed is completely messed up or something wrong with the thresholds?

 

Something wrong from HDMan output for French
By amza - 7/16/2010 - 2 Replies

Hi,

Currently, I'm trying to build an acoustic model for French speech. When I ran "HDMan" command like this:

HDMan -A -D -T 1 -m -w wlist -n monophones1 -i -l dlog dict french.dic


I got the output like this:

No HTK Configuration Parameters Set

Output dictionary dict opened
Source dictionary french.dic opened 
Dictionary dict created - 3156 words processed, 3156 missing

No HTK Configuration Parameters Set

It found that there's no matching words between wlist and french.dic, and it's absolutely incorrect. I've checked it by myself. What do you think the problem is? It's some encoding issue or something else? Thanks in advance.


regards,

Amalia

hi
By mmm - 6/20/2010 - 1 Replies

hi everyone

I’d like to create batch file called steps.bat contains all steps in this tutorials to gain time because I need to use these steps many times.

 

My problems is that some steps like step 6 contains many substeps so how I can deal with that??

 

See as example below:

create hmmdefs

1.    Create a new file called hmmdefs in your 'voxforge/manual/hmm0' folder:

o        Copy the  monophones0 file to your hmm0 folder;

o        rename the monophones0 file to hmmdefs;

2.    For each phone in hmmdefs:

  • put the phone in double quotes;
  • add '~h ' before the phone (note the space after the '~h'); and
  • copy from line 5 onwards (i.e. starting from "<BEGINHMM>" to "<ENDHMM>") of the hmm0/proto file and paste it after each phone.

Leave one blank line at the end of your file.

Create macros File

The final step in this section is to create the macros file.

A new file called macros should be created and stored in your 'voxforge/manual/hmm0' folder:

  • create a new file called macros in hmm0;
  • copy vFloors to macros
  • copy the first 3 lines of proto (from ~o to <DIAGC>) and add them to the top of the macros file

 

more explanasion please
By mmm - 6/12/2010 - 1 Replies

hi

can anyone explains to me what this terms mean in tree.hed

Stop

Nasal

Fricative

Liquid

C-Front

C-Central

C-Back

V-Front

V-Central

V-Back

Front

Fortis

Lenis

UnFortLenis

Coronal

NonCoronal

Anterior

NonAnterior

Continuent

NonContinuent

Strident

NonStrident

UnStrident

Glide

Syllabic

from where they got this information?

and what i need in order to built tree.hed file in correct way?

and if i have diffrent phonemes such as arabic phonemes ,how i can create some thing like this?

 

 

I have a questions about the tree.hed file!! Please Help!
By bocumad - 5/30/2010 - 1 Replies

I generated the file using

$ perl mkclscript.prl TB 350 monophones0 >> tree.hed

- but it generates only the TR 2 - TB lines and I want to generate also the QS lines from TR0
I have an example on voxforge or in the HTK demo of quests.hed but they are for english language...and I need them for french language:

The question is: Is it necesary to have all the QS lines as in the quests.hed file?? Can I generate the QS lines automaticaly?

I created some QS lines in the tree.hed myself..

TR 0

QS "R_NonBoundary" {*+*}
QS "R_Silence" {*+sil}
............... here are some other QS lines do I need them??
QS "R_E" {*+E}
QS "R_H" {*+H}
QS "R_O" {*+O}
QS "R_R" {*+R}
QS "R_S" {*+S}
QS "R_Z" {*+Z}
QS "R_a" {*+a}
QS "R_an" {*+an}
QS "R_b" {*+b}
QS "R_d" {*+d}
QS "R_e" {*+e}
QS "R_eh" {*+eh}
QS "R_eu" {*+eu}
QS "R_euf" {*+euf}
QS "R_f" {*+f}
QS "R_i" {*+i}
QS "R_in" {*+in}
QS "R_j" {*+j}
QS "R_k" {*+k}
QS "R_l" {*+l}
QS "R_m" {*+m}
QS "R_n" {*+n}
QS "R_o" {*+o}
QS "R_oh" {*+oh}
QS "R_on" {*+on}
QS "R_p" {*+p}
QS "R_s" {*+s}
QS "R_swa" {*+swa}
QS "R_t" {*+t}
QS "R_u" {*+u}
QS "R_v" {*+v}
QS "R_w" {*+w}
QS "R_y" {*+y}
QS "R_z" {*+z}
QS "L_NonBoundary" {*-*}
QS "L_Silence" {sil-*}
...............here are some other QS lines do I need them??
QS "L_E" {E-*}
QS "L_H" {H-*}
QS "L_O" {O-*}
QS "L_R" {R-*}
QS "L_S" {S-*}
QS "L_Z" {Z-*}
QS "L_a" {a-*}
QS "L_an" {an-*}
QS "L_b" {b-*}
QS "L_d" {d-*}
QS "L_e" {e-*}
QS "L_eh" {eh-*}
QS "L_eu" {eu-*}
QS "L_euf" {euf-*}
QS "L_f" {f-*}
QS "L_i" {i-*}
QS "L_in" {in-*}
QS "L_j" {j-*}
QS "L_k" {k-*}
QS "L_l" {l-*}
QS "L_m" {m-*}
QS "L_n" {n-*}
QS "L_o" {o-*}
QS "L_oh" {oh-*}
QS "L_on" {on-*}
QS "L_p" {p-*}
QS "L_s" {s-*}
QS "L_swa" {swa-*}
QS "L_t" {t-*}
QS "L_u" {u-*}
QS "L_v" {v-*}
QS "L_w" {w-*}
QS "L_y" {y-*}
QS "L_z" {z-*}

TR2

..................


If I don`t have all the QS lines will I loose accuracy or will the next steps work?
Or an easyer way to generate the QS lines.

Error in HDMan
By bharathi.ravishanker - 5/27/2010 - 3 Replies

Hi

I tried executing the HDMan command and  get the followig error:

 

Output dictionary dict-tri opened

Source dictionary ../lexicon/voxforge_lexicon.txt opened

  ERROR [+8050]  ReadDict: Phone or outsym expected in word ZYDECO

  ERROR [+1413]  ReadNextWord: ReadDictWord failed

 FATAL ERROR - Terminating program HDMan

 

I need some help here. Thanks

 

ERROR [+2662] AddUnseenCommand: there are no existing trees
By Gothrog - 3/25/2010 - 4 Replies

Hey

I got this error on Step 10 running this command.

$HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

..............................  lots of warning msgs....................

AU fulllist
 Creating HMMset using trees to add unseen triphones
  ERROR [+2662]  AddUnseenCommand: there are no existing trees
 FATAL ERROR - Terminating program /usr/local/bin/HHEd


-----------------------------------------------------

I did have to run dos2unix on the tree.hed after I executed this command:

$perl ../HTK_scripts/mkclscript.prl TB 350 monophones0 >> tree.hed


I'm going to check back with step 9 to see if I can figure out what has happened.  If you have any idea what I did let me know thanks.

 

 

Italian tree.hed
By occimanete - 11/20/2009 - 2 Replies

Hello folks.

So, did any italian made already the italian tree.hed for the festival phoneset and relative Lexicon? If the answer is negative, does anybody know how long does it take to make one? more than one or two days? because in 5 days I need to submit my final thesis and maybe I have to try to see what results i get with monophone and give up with the triphone.

 

Occimanete.

please help this error
By hi - 11/19/2009 - 1 Replies

when i excuted this command:

HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

i have faced with the error[+2662] Assigning structure:can't find tree for b state 2 and terminating program HHed.exe.so what would be the possible cause and the splution.

can anyone help me.

AssignStructure Error
By Ronald - 11/4/2009 - 1 Replies

Hi,

Can anyone help me with this problem. I'm facing this error.


AU fulllist

Creating HMMset using trees to add unseen triphones

ERROR [+2662] AssignStructure: cannot find tree for b state 5

FATAL ERROR - Terminating program HHEd


Ronald

ERROR [+2662] FindProtoModel: no proto f
By hafte - 9/18/2009 - 1 Replies

Dear ,All

 

AU fulllist
 Creating HMMset using trees to add unseen triphones
  ERROR [+2662]  FindProtoModel: no proto for P in hSet
 FATAL ERROR - Terminating program HHEd

error 7321
By xuexiaoyan - 9/5/2009 - 5 Replies

when i do Step 9 - Making Triphones from Monophones",i get aligned.mlf. But when I do the next step"HERest  -A -D -T 1 -C config -I wintri.mlf -t 250.0 150.0 3000.0 -S train.scp -H hmm10/macros -H hmm10/hmmdefs -M hmm11 triphones1
", I got the following error "ERROR [+7321]  CreateInsts: Unknown label sh
 FATAL ERROR - Terminating program HERest

 

by the way ,I use timit to do this experiment. I follow the steps that http://www.voxforge.org/home/dev/acousticmodels/linux/create/htkjulius/tutorial

says.

but when I add the monophones to hmmdefs and triphones,the error disappear.

why is that?

 

Thank you!

tree.hed
By zvaracik - 6/19/2009 - 1 Replies

Can someone help me with create tree.hed for own language (Slovak), or have you any tutorial for creating it?

Thank You very mych.

no proto for sCHAS in hSet in HHEd, step 10
By Ling - 6/13/2009 - 1 Replies

Dear,

I have the problem when runnning HHEd command as below.program terminated due and no hmmdefs and macros file created in hmm13.

 

ling@ling-laptop:~/Tutorial$ HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

.....

TR 1
 Adjusting trace level

AU fulllist
 Creating HMMset using trees to add unseen triphones
  ERROR [+hh]  FindProtoModel: no proto for sCHAS in hSet
 FATAL ERROR - Terminating program HHEd

really hope some one can help.

Thank you so much.

Regards,

Ling

Some mistakes and a new trick
By tpavelka - 5/6/2009 - 5 Replies

First, there are mistakes in the description of HHEd commands, here is my correction:

AU - synthesize previously unseen triphones, i.e. use the set of newly created decision trees to make all the triphones included in the list

CO - compact the model set: some state definitions will be exactly the same (same means and variances etc.). To save space, only one of these states is kept in the definition, others are added to the tiedlist.

ST - save the decision trees in a file

Second, the creation of a full triphone list by HDMan must be done every time new triphones appear in testing data and does not work for cross-word triphones (these are used e.g. in HDecode). My solution for this is simply to synthesize all possible triphones. With the monophone set used by VoxForge acoustic models there is a total of 81315 triphones which translates to about 3.5MB of extra space for the HMM definitions (text form).

A full triphone list can be generated by the script full_list.prl which can be found in the directory samples/RMHTK/perl_scripts which comes with the HTK distribution.

The full triphone HMM generation can be done using HHEd:

Assume the all-triphone list is stored in file xwrd_full_list these are the commands to go into the script file (let's call it synthesize.hed):

LT "trees"
AU "xwrd_full_list"
CO "xwrdtiedlist"

HHEd is run wiht the following parameters:

HHed -T 1 -H hmmdefs -H macros -M hmm_synthesized synthesize.hed tiedlist 

where hmm_synthesized is the directory to store the new files.

 

contradiction whith htk book????
By imene - 4/29/2009 - 2 Replies

 

you said in this tutorial

"You will be using the global.ded script you created in a previous step, confirm that its contents are as follows:

AS sp
RS cmu
MP sil sil sp

"

 

But in htk book it mentioned that the list "fulllist can be generating like that:

 

"

This list can be generated, for example, by using HDMan on the entire dictionary (not just the training dictionary), converting it to triphones using the command TC and outputting
a list of the distinct triphones to a file using the option -n :


HDMan -b sp -n fulllist -g global.ded -l flog beep-tri beep.

"

is the use of the command TC not important in the script global.ded??

HHEd error
By hamid - 3/31/2009 - 2 Replies

Hi,

while I execute this command:

HHEd -A -D -T 1 -H HMM12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

I got this error:

HHEd
 465/465 Models Loaded [5 states max, 1 mixes max]
RO 100.00 ''
 Setting outlier threshold for clustering
 RO->LS stats
  and loading state occupation stats
  ERROR [+5010] InitSource: Cannot open source file stats
  ERROR [+7210] LoadStatsFile: Can't open file stats
 FATAL ERROR - Terminating program C:\cygwin\HTK\htk-3.3-windows-binary\htk\HHEd.exe

can somebody help?

Hamid.

error 7321
By Le Maguer S. - 12/31/2008 - 3 Replies

Hi,

I've got the following error in the HERest command to get hmm14  :

 Processing Data: S0001.mfc; Label S0001.lab
  ERROR [+7321]  CreateInsts: Unknown label d+ay
 FATAL ERROR - Terminating program HERest

 

Does anyone have an idea about the solution ?

 

Thank

getting error in tree clustering
By suhas m - 9/10/2008 - 5 Replies

hi,

while executing  this command, 

HHEd -A -D -T 1 -H hmm14/macros.txt -H hmm14/hmmdefs.txt -M hmm15 tree.hed triphones1 

i got the error

 error [+2663] chkTreeobject:TB only valid for 1 mix daigonal covar models 

 

error in executing HHed
By Divya - 6/18/2008 - 1 Replies

hi,

after i executed the command

HHEd -A -D -T 1 -H hmm12/macros -H hmm12/hmmdefs -M hmm13 tree.hed triphones1

i faced an error

TB 350.00 ST_k_2_ {}
 Tree based clustering
  ERROR [+2640]  TreeBuildCommand: TB commands must be in sequence
 FATAL ERROR - Terminating program HHEd

 can somebody help??