Menu

Following Sphinx Tutorial

Help
Rossi Luo
2010-02-11
2012-09-22
  • Rossi Luo

    Rossi Luo - 2010-02-11

    When I followed the "How to perform a preliminary training run" step and do
    the "perl scripts_pl/RunAll.pl
    " action, it failed at 20.ci_hmm/slave_convg.pl. The description in an4.html
    is

    MODULE: 20 Training Context Independent models (2010-02-11 13:45)

    Phase 1: Cleaning up directories:
    accumulator... logs... qmanager... models... completed

    Phase 2: Flat initialize

    mk_mdef_gen Log File
    completed

    mk_flat Log File
    completed

    Phase 3: Forward-Backward

    Baum welch starting for 1 Gaussian(s), iteration: 1 (1 of 2)

    bw Log File

    Baum welch starting for 1 Gaussian(s), iteration: 1 (2 of 2)

    bw Log File

    This step had 950 ERROR messages and 1852 WARNING messages. Please check the
    log file for details.
    completed

    This step had 946 ERROR messages and 1841 WARNING messages. Please check the
    log file for details.
    completed

    Training failed in iteration 1

    I am using cygWin in Windows 7.

    I have searched the forum, but nothing useful is found. Many thanks for any
    help.

     
  • Nickolay V. Shmyrev

    This step had 950 ERROR messages and 1852 WARNING messages. Please check the
    log file for details.

    It tells you to check log for details. Did you try to follow this wise
    suggestion? Logs are in logdir subfolder in an4 training folder.

     
  • Rossi Luo

    Rossi Luo - 2010-02-11

    As recorded in the logs all the errors are from this:

    ERROR: "backward.c", line 1020: alpha(2.500000e-01) <> sum of alphas * betas
    (0.000000e+00) in frame 97
    ERROR: "baum_welch.c", line 331: fash/an251-fash-b ignored

    The responding code is

    /* check an invariant.  Theoretically,
         * sum_alpha_beta - alpha[n_obs-1][n_state-1] must be zero, but
         * we're dealing with finite machine word length, pruning, etc. */
    
        if (fabs(sum_alpha_beta - active_alpha[n_obs-1][q_f])
            > (S2_ALPHA_BETA_EPSILON * active_alpha[n_obs-1][q_f])) {
    
            E_ERROR("alpha(%e) <> sum of alphas * betas (%e) in frame %d\n",
                active_alpha[n_obs-1][q_f], sum_alpha_beta, t);
    
            retval = S3_ERROR;
    
            goto free;
        }
    
    
    
    
        ckd_free((void *)active_alpha);
        ckd_free((void *)active_astate);
    
        E_ERROR("%s ignored\n", corpus_utt_brief_name());
    
        return S3_ERROR;
    

    I don't understand the code, thanks very much for you help。

    Since I followed the tutorial exactly, I am not supposed to meet such a
    problem, am I?

    Many thanks

     
  • Nickolay V. Shmyrev

    Its most likely that your files were currupted during extraction. I remember
    cygwin has special mode when on extraction it automatically adds windows-style
    CR+LF to the files. Check md5sum of an251-fash-b.sph, it should be
    b590c787769e6d13cb8ccc693c57b303 an251-fash-b.sph.

     
  • Nickolay V. Shmyrev

    And, cygwin is a pain for various reasons as it always was. Install linux in a
    virtual machine and enjoy real speech recognition development environment.

     
  • Rossi Luo

    Rossi Luo - 2010-02-12

    Thanks nshmyrev, I dropped cygwin and installed vmware and ubuntu, then
    followed the tutorial's instructions again. Yes, all the perl scripts seems
    excuted properly. But I havn't got the "./model_parameters/an4.1000.s2models"
    which is seems available immediate after the training finished according to
    the tutorial.

    This is the log file:
    http://docs.google.com/View?id=dd9b6sxp_123fv4nqjc9

    Many thanks.

     
  • Nickolay V. Shmyrev

    Right, since you trained continouos model result will be in an4.cd_cont_1000.
    See earlier in tutorial

    $CFG_HMM_TYPE = this variable could have the values .semi. or .cont.. Notice
    the dots "." surrounding the string. Use .semi. if you are training semi-
    continuous HMMs, mostly for Pocketsphinx, or .cont. if you are training
    continuous HMMs (required for SPHINX-4, and the most common choice for
    SPHINX-3)

     

Log in to post a comment.