[Subject Prev][Subject Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hts-users:02407] Re: Any easy way of getting an adapted model set?


Hello, Dr. Zen,

Your patch worked -- I obtained a non-diagonal covariance model set.

By the way, I suppose the patch needs to be further improved. Currently, in any of the three following cases, an adapted model set will be generated by the AX command of HHEd:

Case 1:
HTK Configuration Parameters[26]
  Module/Tool     Parameter                  Value
# HADAPT          SAVEFULLC                   TRUE
  HADAPT          SAVESPKRMODELS              TRUE
  .... (other 24 parameters)

Case 2:
HTK Configuration Parameters[26]
  Module/Tool     Parameter                  Value
# HADAPT          SAVEFULLC                  FALSE
  HADAPT          SAVESPKRMODELS              TRUE
  .... (other 24 parameters)

Case 3:
HTK Configuration Parameters[26]
  Module/Tool     Parameter                  Value
# HADAPT          SAVEFULLC                  FALSE
  HADAPT          SAVESPKRMODELS             FALSE
  .... (other 24 parameters)

This may be a problem especially when someone is going to generate an "adapted" HTS engine by both AX and CM commands. He may not want an adapted model set.

Thanks a lot for your kind help.

Hui LIANG


--- On Thu, 18/2/10, Heiga ZEN (Byung Ha CHUN) <heiga.zen@xxxxxxxxxxxxxxxxx> wrote:

Please apply the following modification to HHEd.c, re-compile this, and try it again:


--- HHEd.c 2010-02-04 10:35:05.906117000 +0000
+++ HHEd.c 2010-02-18 13:49:19.237243000 +0000
@@ -8115,24 +8115,26 @@
 void AdaptXFormCommand()
 {
    char fn[MAXFNAMELEN], macroname[MAXSTRLEN];
    AdaptXForm *xf;

    ChkedAlpha("AX adapt Xform file name", fn);
    if (trace & T_BID) {
       printf("\nAX %s\n Setting HMMSet adapt XForm\n", fn);
       fflush(stdout);
    }
    xf = LoadOneXForm(hset,NameOf(fn,macroname),fn);
    SetXForm(hset, NULL, xf);
+
+   ApplyHMMSetXForm(hset, hset->curXForm, TRUE);
 }

 /* ----------------- ReOrderFeatures Command -------------------- */

 void ReOrderFeaturesCommand()
 {
    int i,j,vSize,nr,nc;
    char *mac="varFloor1"; /* single stream assumed */
    MLink m;
    LabId id;
    Vector tmpm,tmpv,mean,var;
    Matrix tmpxf,xform;


     


Follow-Ups
[hts-users:02408] Re: Any easy way of getting an adapted model set?, Heiga ZEN (Byung Ha CHUN)