Ticket #41 (new defect)

Opened 13 years ago

Last modified 11 years ago

HTK 3.3 - problems using HERest for supervised adaptation on a 'SHARED' System

Reported by: kmaclean Owned by: kmaclean
Priority: critical Milestone: Acoustic Model 1.0
Component: Acoustic Model Version: 0.1-alpha
Keywords: htk 3.3 HERest Cc:

Description (last modified by kmaclean) (diff)

Email sent to htk-users@…:

Hi,

I am having problems using HERest for supervised adaptation on a 'SHARED' System (I assume this means a [tied-state] triphone based system). I am using HTK 3.3 on Linux (FC4).

I have followed a similar approach to the Adaptation steps outlined in the following 2 email posts to HTK-Users, which talked about HERest supervised adaptation using HTK 3.3, but on a 'PLAIN' system (which I assume means monophones):

 - http://htk.eng.cam.ac.uk/pipermail/htk-users/2006-July/005308.html
 - http://htk.eng.cam.ac.uk/pipermail/htk-users/2006-July/005310.html

I am trying to adapt an Acoustic Model I created using the steps outline in the tutorial in the HTK 3.2 Book using HTK 3.3 and HERest. I don't think there is a problem with my data because I successfully adapted the same Acoustic Model (created using HTK3.3) using HTK 3.2 and HEAdapt.

The approach I took was as follows:

Steps #1-11: Created Acoustic Models

Created Tied-State Triphones as per the tutorial in the HTK 3.2 Book

Step #12: Preparation of the Adaptation Data

(1) adaptWords.scp contains the list of adaptation files (2) adapt.mlf contains the conrresponding transcription for adaptation files

(3) config contains the basic configuration variables for MFCC feature extraction:

TARGETKIND = MFCC_0_D_N_Z
TARGETRATE = 100000.0
SAVECOMPRESSED = T
SAVEWITHCRC = T
WINDOWSIZE = 250000.0
USEHAMMING = T
PREEMCOEF = 0.97
NUMCHANS = 26
CEPLIFTER = 22
NUMCEPS = 12

(4) Realign the training data:

HVite -A -D -V -T 1 -l '*' -o SWT -b SENT-END -C config -H hmm15/macros -H hmm15/hmmdefs -i adaptPhones.mlf -m -t 250.0 150.0 1000.0 -y lab -a -I adaptWords.mlf -S adapt.scp dict tiedlist 

This creates adaptPhones.mlf

Step #13: Generating the Transforms

(1) regtree.hed as following:

RN "models"
LS "stats"
RC 32 "rtree"

(2) Generate Regression Class Tree:

HHEd -A -D -V -T 1  -H hmm15/macros -H hmm15/hmmdefs -M hmmAdapt regtree.hed tiedlist

This creates 4 files in hmmAdapt:

  • hmmdefs
  • macros
  • rtree.tree
  • rtree.base

Step #14: Global MLLR

(1) create a "glob" (under hmmAdapt folder) file as follows:

~b "glob"
<MMFIDMASK> *
<PARAMETERS> MIXBASE
<NUMCLASSES> 1
 <CLASS> 1 {*.state[2-4].mix[1]}

(2) config_adapt_global contains the configuration variables for global transformation:

HADAPT:TRANSKIND = MLLRMEAN
HADAPT:USEBIAS = TRUE
HADAPT:BASECLASS = glob
HADAPT:ADAPTKIND = BASE
HADAPT:TRACE = 61
HMODEL:TRACE = 512

(7) tiedlist contains the list of HMMs

(8) Perform 1st pass Global Adaptation using HERest as following:

HERest -A -D -V -T 1 -C config -C config_adapt_global -S adapt.scp -I adaptPhones.mlf -H hmmAdapt/macros -H hmmAdapt/hmmdefs -H hmmAdapt/glob -K hmmAdapt mllr -u a tiedlist

This creates a file called 'mfc.mllr' in hmmAdapt

Step #15: Adaptation using Regression Class Tree

(1) config_adapt_regc contains the configuration variable for regression class tree transform:

HADAPT:TRANSKIND = MLLRMEAN
HADAPT:USEBIAS = TRUE
HADAPT:BASECLASS = rtree.tree
HADAPT:ADAPTKIND = TREE
HADAPT:SPLITTHRESH = 1000.0
HADAPT:TRACE = 61
HMODEL:TRACE = 512

(1) Perform 2nd pass global transformation:

HERest -a -A -D -V -T 1 -C config -C config_adapt_regc -S adapt.scp -J hmmAdapt mllr -I adaptPhones.mlf -H hmmAdapt/macros -H hmmAdapt/hmmdefs -H hmmAdapt/mfc.mllr -K hmmAdapt mllr1 -u a -z regc.tmf tiedlist

When I run this I get the a segmentation fault as follows:


HERest -a -A -D -V -T 1 -C config -C config_adapt_regc -S adapt.scp -J hmmAdapt mllr -I adaptPhones.mlf -H hmmAdapt/macros -H hmmAdapt/hmmdefs -H hmmAdapt/mfc.mllr -K hmmAdapt mllr1 -u a -z regc.tmf tiedlist


HTK Configuration Parameters[17]
  Module/Tool     Parameter                  Value
# HMODEL          TRACE                        512
# HADAPT          TRACE                         61
# HADAPT          SPLITTHRESH          1000.000000
# HADAPT          ADAPTKIND                   TREE
# HADAPT          BASECLASS             rtree.tree
# HADAPT          USEBIAS                     TRUE
# HADAPT          TRANSKIND               MLLRMEAN
#                 NUMCEPS                       12
#                 CEPLIFTER                     22
#                 NUMCHANS                      26
#                 PREEMCOEF               0.970000
#                 USEHAMMING                  TRUE
#                 WINDOWSIZE         250000.000000
#                 SAVEWITHCRC                 TRUE
#                 SAVECOMPRESSED              TRUE
#                 TARGETRATE         100000.000000
#                 TARGETKIND          MFCC_0_D_N_Z


HTK Version Information
Module     Version    Who    Date      : CVS Info
HERest     3.3        CUED   28/04/05  : $Id: HERest.c,v 1.3 2005/07/22 10:17:13 mjfg Exp $
HShell     3.3        CUED   28/04/05  : $Id: HShell.c,v 1.2 2005/05/12 15:51:24 jal58 Exp $
HMem       3.3        CUED   28/04/05  : $Id: HMem.c,v 1.1.1.1 2005/05/12 10:52:50 jal58 Exp $
HMath      3.3        CUED   28/04/05  : $Id: HMath.c,v 1.1.1.1 2005/05/12 10:52:50 jal58 Exp $
HSigP      3.3        CUED   28/04/05  : $Id: HSigP.c,v 1.1.1.1 2005/05/12 10:52:51 jal58 Exp $
HAudio     3.3        CUED   28/04/05  : $Id: HAudio.c,v 1.2 2005/05/12 15:51:23 jal58 Exp $
HWave      3.3        CUED   28/04/05  : $Id: HWave.c,v 1.1.1.1 2005/05/12 10:52:52 jal58 Exp $
HVQ        3.3        CUED   28/04/05  : $Id: HVQ.c,v 1.1.1.1 2005/05/12 10:52:52 jal58 Exp $
HLabel     3.3        CUED   28/04/05  : $Id: HLabel.c,v 1.2 2005/05/12 15:51:24 jal58 Exp $
HModel     3.3        CUED   28/04/05  : $Id: HModel.c,v 1.4 2005/07/22 10:17:01 mjfg Exp $
HParm      3.3        CUED   28/04/05  : $Id: HParm.c,v 1.2 2005/07/22 10:17:02 mjfg Exp $
HTrain     3.3        CUED   28/04/05  : $Id: HTrain.c,v 1.1.1.1 2005/05/12 10:52:51 jal58 Exp $
HUtil      3.3        CUED   28/04/05  : $Id: HUtil.c,v 1.2 2005/07/22 10:17:02 mjfg Exp $
HFB        3.3        CUED   28/04/05  : $Id: HFB.c,v 1.3 2005/05/12 15:51:24 jal58 Exp $
HAdapt     3.3        CUED   28/04/05  : $Id: HAdapt.c,v 1.3 2005/07/22 10:17:01 mjfg Exp $
HMap       3.3        CUED   28/04/05  : $Id: HMap.c,v 1.1.1.1 2005/05/12 10:52:53 jal58 Exp $

  Using baseclass macro "glob" from file hmmAdapt/glob
HERest  ML Updating: XForms

 System is SHARED
1037 Logical/81 Physical Models Loaded, VecSize=25
3 MMF input files
Segmentation fault

Any help would be greatly appreciated,

thanks,

Ken

Change History

comment:1 Changed 13 years ago by kmaclean

  • Description modified (diff)

Possible solutions:

  • use HTK 3.2
  • get mfc from Acoustic Model, and merge with adaptation data and create new Acoustic Model from scratch - would take too long ...

comment:2 Changed 13 years ago by kmaclean

  • Milestone changed from 0.1-beta to 0.1-gamma

for 0.1 beta release - created user tutorial that uses HTK version 3.2.1 rather than 3.3 - until issues with HERest adaption get addressed Need a fix for 0.1 gamma release

comment:3 Changed 13 years ago by anonymous

Need to see if this has been fixed in HTK release 3.4 - see message

comment:4 Changed 12 years ago by kmaclean

  • Milestone changed from Unassigned to Acoustic Model 1.0

comment:5 Changed 11 years ago by kmaclean

See tpavelka's post:

I have noticed the ticket just now so I have tried both HTK 3.3 and 3.4.1. Both run without problems. Here are the commands:

3.4.1:

h:\work\develop\speech\HTK3.4.1\bin.win32\HERest -C config_train_0_D_N_Z -C scripts/config.global -S lists/adapt_0_D_25_10_ralfherzog_100.txt -I MLF/aligned.mlf -H hmms/hmm_adapted/macros -u a  -J hmms/classes -K hmms/xforms mllr1 -H hmms/hmm_adapted/hmmdefs tiedlist

h:\work\develop\speech\HTK3.4.1\bin.win32\HERest -a -C config_train_0_D_N_Z -C scripts/config.rc -S lists/adapt_0_D_25_10_ralfherzog_100.txt -I MLF/aligned.mlf -H hmms/hmm_adapted/macros -u a -J hmms/xforms mllr1 -J hmms/classes -K hmms/xforms mllr2 -H hmms/hmm_adapted/hmmdefs tiedlist
3.3:

H:\work\develop\speech\htk3.3\bin\HERest -C config_train_0_D_N_Z -C scripts/config.global -S lists/adapt_0_D_25_10_ralfherzog_100.txt -I MLF/aligned.mlf -H hmms/hmm_adapted/macros -u a  -J hmms/classes -K hmms/xforms mllr1 -H hmms/hmm_adapted/hmmdefs tiedlist

H:\work\develop\speech\htk3.3\bin\HERest -a -C config_train_0_D_N_Z -C scripts/config.rc -S lists/adapt_0_D_25_10_ralfherzog_100.txt -I MLF/aligned.mlf -H hmms/hmm_adapted/macros -u a -J hmms/xforms mllr1 -J hmms/classes -K hmms/xforms mllr2 -H hmms/hmm_adapted/hmmdefs tiedlist

Note: See TracTickets for help on using tickets.