hiii,
I am tying to train an acoustic model..bt i found certain errors.plz help me to resolve them.
[shikha@shikhaseth ~]$ cd /home/shikha/Documents/ASR/model/am/ [shikha@shikhaseth am]$ sphinxtrain run
Sphinxtrain path: /usr/local/lib/sphinxtrain
Sphinxtrain binaries path: /usr/local/libexec/sphinxtrain
Running the training
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/000.comp_feat/slave_feat.pl line 51.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/000.comp_feat/slave_feat.pl line 51.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/00.verify/verify_all.pl line 47.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/00.verify/verify_all.pl line 47.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/0000.g2p_train/g2p_train.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/0000.g2p_train/g2p_train.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/01.lda_train/slave_lda.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/01.lda_train/slave_lda.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/02.mllt_train/slave_mllt.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/02.mllt_train/slave_mllt.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/05.vector_quantize/slave.VQ.pl line 54.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/05.vector_quantize/slave.VQ.pl line 54.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/10.falign_ci_hmm/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/10.falign_ci_hmm/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/11.force_align/slave_align.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/11.force_align/slave_align.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/12.vtln_align/slave_align.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/12.vtln_align/slave_align.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/20.ci_hmm/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/20.ci_hmm/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/30.cd_hmm_untied/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/30.cd_hmm_untied/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/40.buildtrees/slave.treebuilder.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/40.buildtrees/slave.treebuilder.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/45.prunetree/slave.state-tying.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/45.prunetree/slave.state-tying.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/50.cd_hmm_tied/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/50.cd_hmm_tied/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/60.lattice_generation/slave_genlat.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/60.lattice_generation/slave_genlat.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/61.lattice_pruning/slave_prune.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/61.lattice_pruning/slave_prune.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/62.lattice_conversion/slave_conv.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/62.lattice_conversion/slave_conv.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/65.mmie_train/slave_convg.pl line 50.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/65.mmie_train/slave_convg.pl line 50.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/90.deleted_interpolation/deleted_interpolation.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/90.deleted_interpolation/deleted_interpolation.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/decode/slave.pl line 45.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/decode/slave.pl line 45. [shikha@shikhaseth am]$ perl script_pl/sphinxtrain run
Can't open perl script "script_pl/sphinxtrain": No such file or directory [shikha@shikhaseth am]$ perl scripts_pl/$sphinxtrain run
Can't open perl script "scripts_pl/": No such file or directory
$CFG_WAVFILES_DIR = "$CFG_BASE_DIR/wav";
$CFG_WAVFILE_EXTENSION = 'wav';
$CFG_WAVFILE_TYPE = 'wav'; # one of nist, mswav, raw
$CFG_FEATFILES_DIR = "$CFG_BASE_DIR/feat";
$CFG_FEATFILE_EXTENSION = 'mfc';
$CFG_VECTOR_LENGTH = 13;
Feature extraction parameters
$CFG_WAVFILE_SRATE = 8000.0;
$CFG_NUM_FILT = 31; # For wideband speech it's 40, for telephone 8khz reasonable value is 31
$CFG_LO_FILT = 200; # For telephone 8kHz speech value is 200
$CFG_HI_FILT = 3500; # For telephone 8kHz speech value is 3500
$CFG_MIN_ITERATIONS = 1; # BW Iterate at least this many times
$CFG_MAX_ITERATIONS = 10; # BW Don't iterate more than this, somethings likely wrong.
(none/max) Type of AGC to apply to input files
$CFG_AGC = 'none';
(current/none) Type of cepstral mean subtraction/normalization
to apply to input files
$CFG_CMN = 'current';
(yes/no) Normalize variance of input files to 1.0
$CFG_VARNORM = 'no';
(yes/no) Train full covariance matrices
$CFG_FULLVAR = 'no';
(yes/no) Use diagonals only of full covariance matrices for
Forward-Backward evaluation (recommended if CFG_FULLVAR is yes)
$CFG_DIAGFULL = 'no';
(yes/no) Perform vocal tract length normalization in training. This
will result in a "normalized" model which requires VTLN to be done
$CFG_HMM_TYPE = '.ptm.'; # PocketSphinx (larger data sets)
if (($CFG_HMM_TYPE ne ".semi.")
and ($CFG_HMM_TYPE ne ".ptm.")
and ($CFG_HMM_TYPE ne ".cont.")) {
die "Please choose one CFG_HMM_TYPE out of '.cont.', '.ptm.', or '.semi.', " .
"currently $CFG_HMM_TYPE\n";
}
This configuration is fastest and best for most acoustic models in
PocketSphinx and Sphinx-III. See below for Sphinx-II.
$CFG_STATESPERHMM = 3;
$CFG_SKIPSTATE = 'no';
if ($CFG_HMM_TYPE eq '.semi.') {
$CFG_DIRLABEL = 'semi';
Four stream features for PocketSphinx
$CFG_FEATURE = "s2_4x";
$CFG_NUM_STREAMS = 4;
$CFG_INITIAL_NUM_DENSITIES = 256;
$CFG_FINAL_NUM_DENSITIES = 8;
die "For semi continuous models, the initial and final models have the same density"
if ($CFG_INITIAL_NUM_DENSITIES != $CFG_FINAL_NUM_DENSITIES);
} elsif ($CFG_HMM_TYPE eq '.ptm.') {
$CFG_DIRLABEL = 'ptm';
Four stream features for PocketSphinx
$CFG_FEATURE = "s2_4x";
$CFG_NUM_STREAMS = 4;
$CFG_INITIAL_NUM_DENSITIES = 64;
$CFG_FINAL_NUM_DENSITIES = 8;
die "For phonetically tied models, the initial and final models have the same density"
if ($CFG_INITIAL_NUM_DENSITIES != $CFG_FINAL_NUM_DENSITIES);
} elsif ($CFG_HMM_TYPE eq '.cont.') {
$CFG_DIRLABEL = 'cont';
Single stream features - Sphinx 3
$CFG_FEATURE = "1s_c_d_dd";
$CFG_NUM_STREAMS = 1;
$CFG_INITIAL_NUM_DENSITIES = 1;
$CFG_FINAL_NUM_DENSITIES = 8;
die "The initial has to be less than the final number of densities"
if ($CFG_INITIAL_NUM_DENSITIES > $CFG_FINAL_NUM_DENSITIES);
}
Number of top gaussians to score a frame. A little bit less accurate computations
make training significantly faster. Uncomment to apply this during the training
For good accuracy make sure you are using the same setting in decoder
In theory this can be different for various training stages. For example 4 for
make sure that ur config file(etc/sphinxtrain.cfg) is correct.
|$CFG_WAVFILE_TYPE = 'wav'; # one of nist, mswav, raw
use mswav (if ur recorded audio files .wav files)
|$CFG_WAVFILE_SRATE = 8000.0;
YOU NEED TO MAKE SURE THAT YOU RECORDINGS ARE AT A SAMPLING RATE OF 16 KHZ (or 8 kHz if you train a telephone model) IN MONO WITH SINGLE CHANNEL.
|$CFG_HMM_TYPE = '.cont.';
This is for if u work for continuous speech recognition.
|$CFG_HMM_TYPE = '.semi.'; # PocketSphinx
This is for if u work for semi continuous speech recognition. So put asterisk(#) in front of $CFG_HMM_TYPE = '.cont.'; and delete that asterist(#) in front of $CFG_HMM_TYPE = '.semi.';
|Can't open perl script "scripts_pl/": No such file or directory
make sure that ur system has perl
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I hv edited ur .cfg file, u just go through compare with ur own .cfg file to know what u made mistake. Then u make newer .cfg file or jus replace with edited one. U changed lot of things manually, this is not advisable. U need to change manually only two things those are
$CFG_WAVFILE_TYPE = 'mswav'; # one of nist, mswav, raw
$CFG_HMM_TYPE = '.cont.'; for continuous speech
#$CFG_HMM_TYPE = '.semi.'; for semi-continuous speech. Here U need decide which1 for ur proj..
No need to change rest of things... Here I hv attached my own .cfg file for ur reference. Am working for semi-continuous speech in Ubuntu.
Recording files must be in MS WAV format with specific sample rate - 16 kHz, 16 bit, mono for desktop application, 8kHz, 16bit, mono for telephone applications.
Your 2_HN.wav file is 8kHz sample rate.. Are u working for telephone applications?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This is not a problem with his actual configuration file yet. The problem is most likely that SphinxTrain cannot locate the file in the filesystem. Please post your file hierarchy (where is sphinxtrain, sphinxbase, contents of local directory)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi.
What is your file structure? Can you list your file tree? (What is your current directory, where is sphinxtrain/sphinxbase, what subdirectories, etc.) Also give the output of ls.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hiii,
I am tying to train an acoustic model..bt i found certain errors.plz help me to resolve them.
[shikha@shikhaseth ~]$ cd /home/shikha/Documents/ASR/model/am/
[shikha@shikhaseth am]$ sphinxtrain run
Sphinxtrain path: /usr/local/lib/sphinxtrain
Sphinxtrain binaries path: /usr/local/libexec/sphinxtrain
Running the training
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/000.comp_feat/slave_feat.pl line 51.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/000.comp_feat/slave_feat.pl line 51.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/00.verify/verify_all.pl line 47.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/00.verify/verify_all.pl line 47.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/0000.g2p_train/g2p_train.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/0000.g2p_train/g2p_train.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/01.lda_train/slave_lda.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/01.lda_train/slave_lda.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/02.mllt_train/slave_mllt.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/02.mllt_train/slave_mllt.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/05.vector_quantize/slave.VQ.pl line 54.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/05.vector_quantize/slave.VQ.pl line 54.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/10.falign_ci_hmm/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/10.falign_ci_hmm/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/11.force_align/slave_align.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/11.force_align/slave_align.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/12.vtln_align/slave_align.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/12.vtln_align/slave_align.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/20.ci_hmm/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/20.ci_hmm/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/30.cd_hmm_untied/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/30.cd_hmm_untied/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/40.buildtrees/slave.treebuilder.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/40.buildtrees/slave.treebuilder.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/45.prunetree/slave.state-tying.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/45.prunetree/slave.state-tying.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/50.cd_hmm_tied/slave_convg.pl line 49.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/50.cd_hmm_tied/slave_convg.pl line 49.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/60.lattice_generation/slave_genlat.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/60.lattice_generation/slave_genlat.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/61.lattice_pruning/slave_prune.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/61.lattice_pruning/slave_prune.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/62.lattice_conversion/slave_conv.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/62.lattice_conversion/slave_conv.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/65.mmie_train/slave_convg.pl line 50.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/65.mmie_train/slave_convg.pl line 50.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/90.deleted_interpolation/deleted_interpolation.pl line 48.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/90.deleted_interpolation/deleted_interpolation.pl line 48.
Configuration (e.g. etc/sphinx_train.cfg) not defined
Compilation failed in require at /usr/local/lib/sphinxtrain/scripts/decode/slave.pl line 45.
BEGIN failed--compilation aborted at /usr/local/lib/sphinxtrain/scripts/decode/slave.pl line 45.
[shikha@shikhaseth am]$ perl script_pl/sphinxtrain run
Can't open perl script "script_pl/sphinxtrain": No such file or directory
[shikha@shikhaseth am]$ perl scripts_pl/$sphinxtrain run
Can't open perl script "scripts_pl/": No such file or directory
=====================================================
and these are the contents of sphinx_train.cfg-----------
----------------------
Configuration script for sphinx trainer --mode:Perl--
$CFG_VERBOSE = 1; # Determines how much goes to the screen.
These are filled in at configuration time
/home/shikha/documents/ASR/model/am = "/home/shikha/Documents/ASR/model/am/";
Experiment name, will be used to name model files and log files
$CFG_EXPTNAME = "/home/shikha/Documents/ASR/model/am";
Directory containing SphinxTrain binaries
$CFG_BASE_DIR = "/usr/local/libexec/sphinxtrain";
$CFG_SPHINXTRAIN_DIR = "/usr/local/lib/sphinxtrain";
$CFG_BIN_DIR = "/usr/local/libexec/sphinxtrain";
$CFG_SCRIPT_DIR = "/usr/local/lib/sphinxtrain/scripts";
Audio waveform and feature file information
$CFG_WAVFILES_DIR = "$CFG_BASE_DIR/wav";
$CFG_WAVFILE_EXTENSION = 'wav';
$CFG_WAVFILE_TYPE = 'wav'; # one of nist, mswav, raw
$CFG_FEATFILES_DIR = "$CFG_BASE_DIR/feat";
$CFG_FEATFILE_EXTENSION = 'mfc';
$CFG_VECTOR_LENGTH = 13;
Feature extraction parameters
$CFG_WAVFILE_SRATE = 8000.0;
$CFG_NUM_FILT = 31; # For wideband speech it's 40, for telephone 8khz reasonable value is 31
$CFG_LO_FILT = 200; # For telephone 8kHz speech value is 200
$CFG_HI_FILT = 3500; # For telephone 8kHz speech value is 3500
$CFG_MIN_ITERATIONS = 1; # BW Iterate at least this many times
$CFG_MAX_ITERATIONS = 10; # BW Don't iterate more than this, somethings likely wrong.
(none/max) Type of AGC to apply to input files
$CFG_AGC = 'none';
(current/none) Type of cepstral mean subtraction/normalization
to apply to input files
$CFG_CMN = 'current';
(yes/no) Normalize variance of input files to 1.0
$CFG_VARNORM = 'no';
(yes/no) Train full covariance matrices
$CFG_FULLVAR = 'no';
(yes/no) Use diagonals only of full covariance matrices for
Forward-Backward evaluation (recommended if CFG_FULLVAR is yes)
$CFG_DIAGFULL = 'no';
(yes/no) Perform vocal tract length normalization in training. This
will result in a "normalized" model which requires VTLN to be done
during decoding as well.
$CFG_VTLN = 'no';
Starting warp factor for VTLN
$CFG_VTLN_START = 0.80;
Ending warp factor for VTLN
$CFG_VTLN_END = 1.40;
Step size of warping factors
$CFG_VTLN_STEP = 0.05;
Directory to write queue manager logs to
$CFG_QMGR_DIR = "$CFG_BASE_DIR/qmanager";
Directory to write training logs to
$CFG_LOG_DIR = "$CFG_BASE_DIR/logdir";
Directory for re-estimation counts
$CFG_BWACCUM_DIR = "$CFG_BASE_DIR/bwaccumdir";
Directory to write model parameter files to
$CFG_MODEL_DIR = "$CFG_BASE_DIR/model_parameters";
Directory containing transcripts and control files for
speaker-adaptive training
$/home/shikha/Documents/ASR/model/etc = "$CFG_BASE_DIR/etc";
Decoding variables for MMIE training
$CFG_LANGUAGEWEIGHT = "11.5";
$CFG_BEAMWIDTH = "1e-100";
$CFG_WORDBEAM = "1e-80";
$CFG_LANGUAGEMODEL = "$/home/shikha/Documents/ASR/model/etc//home/shikha/Documents/ASR/model/am/etc/am.lm.DMP";
$CFG_WORDPENALTY = "0.2";
Lattice pruning variables
$CFG_ABEAM = "1e-50";
$CFG_NBEAM = "1e-10";
$CFG_PRUNED_DENLAT_DIR = "$CFG_BASE_DIR/pruned_denlat";
MMIE training related variables
$CFG_MMIE = "no";
$CFG_MMIE_MAX_ITERATIONS = 5;
$CFG_LATTICE_DIR = "$CFG_BASE_DIR/lattice";
$CFG_MMIE_TYPE = "rand"; # Valid values are "rand", "best" or "ci"
$CFG_MMIE_CONSTE = "3.0";
$CFG_NUMLAT_DIR = "$CFG_BASE_DIR/numlat";
$CFG_DENLAT_DIR = "$CFG_BASE_DIR/denlat";
Variables used in main training of models
$CFG_DICTIONARY = "/home/shikha/Documents/ASR/model/etc/sphinx_train.cfg//home/shikha/Documents/ASR/model/am/etc/am.dic";
$CFG_RAWPHONEFILE = "/home/shikha/Documents/ASR/model/etc/sphinx_train.cfg//home/shikha/Documents/ASR/model/am/etc/am.phone";
$CFG_FILLERDICT = "/home/shikha/Documents/ASR/model/etc/sphinx_train.cfg//home/shikha/Documents/ASR/model/am/etc/am.filler";
$CFG_LISTOFFILES = "/home/shikha/Documents/ASR/model/etc/sphinx_train.cfg//home/shikha/Documents/ASR/model/am/etc/am_train.fileids";
$CFG_TRANSCRIPTFILE = "/home/shikha/Documents/ASR/model/etc/sphinx_train.cfg/home/shikha/Documents/ASR/model/am/etc/am_train.transcription";
$CFG_FEATPARAMS = "/home/shikha/Documents/ASR/model/etc/feat.params";
Variables used in characterizing models
$CFG_HMM_TYPE = '.cont.';
$CFG_HMM_TYPE = '.semi.'; # PocketSphinx
$CFG_HMM_TYPE = '.ptm.'; # PocketSphinx (larger data sets)
if (($CFG_HMM_TYPE ne ".semi.")
and ($CFG_HMM_TYPE ne ".ptm.")
and ($CFG_HMM_TYPE ne ".cont.")) {
die "Please choose one CFG_HMM_TYPE out of '.cont.', '.ptm.', or '.semi.', " .
"currently $CFG_HMM_TYPE\n";
}
This configuration is fastest and best for most acoustic models in
PocketSphinx and Sphinx-III. See below for Sphinx-II.
$CFG_STATESPERHMM = 3;
$CFG_SKIPSTATE = 'no';
if ($CFG_HMM_TYPE eq '.semi.') {
$CFG_DIRLABEL = 'semi';
Four stream features for PocketSphinx
$CFG_FEATURE = "s2_4x";
$CFG_NUM_STREAMS = 4;
$CFG_INITIAL_NUM_DENSITIES = 256;
$CFG_FINAL_NUM_DENSITIES = 8;
die "For semi continuous models, the initial and final models have the same density"
if ($CFG_INITIAL_NUM_DENSITIES != $CFG_FINAL_NUM_DENSITIES);
} elsif ($CFG_HMM_TYPE eq '.ptm.') {
$CFG_DIRLABEL = 'ptm';
Four stream features for PocketSphinx
$CFG_FEATURE = "s2_4x";
$CFG_NUM_STREAMS = 4;
$CFG_INITIAL_NUM_DENSITIES = 64;
$CFG_FINAL_NUM_DENSITIES = 8;
die "For phonetically tied models, the initial and final models have the same density"
if ($CFG_INITIAL_NUM_DENSITIES != $CFG_FINAL_NUM_DENSITIES);
} elsif ($CFG_HMM_TYPE eq '.cont.') {
$CFG_DIRLABEL = 'cont';
Single stream features - Sphinx 3
$CFG_FEATURE = "1s_c_d_dd";
$CFG_NUM_STREAMS = 1;
$CFG_INITIAL_NUM_DENSITIES = 1;
$CFG_FINAL_NUM_DENSITIES = 8;
die "The initial has to be less than the final number of densities"
if ($CFG_INITIAL_NUM_DENSITIES > $CFG_FINAL_NUM_DENSITIES);
}
Number of top gaussians to score a frame. A little bit less accurate computations
make training significantly faster. Uncomment to apply this during the training
For good accuracy make sure you are using the same setting in decoder
In theory this can be different for various training stages. For example 4 for
CI stage and 16 for CD stage
$CFG_CI_TOPN = 4;
$CFG_CD_TOPN = 16;
(yes/no) Train multiple-gaussian context-independent models (useful
for alignment, use 'no' otherwise) in the models created
specifically for forced alignment
$CFG_FALIGN_CI_MGAU = 'no';
(yes/no) Train multiple-gaussian context-independent models (useful
for alignment, use 'no' otherwise)
$CFG_CI_MGAU = 'no';
Number of tied states (senones) to create in decision-tree clustering
$CFG_N_TIED_STATES = 200;
How many parts to run Forward-Backward estimatinon in
$CFG_NPART = 1;
(yes/no) Train a single decision tree for all phones (actually one
per state) (useful for grapheme-based models, use 'no' otherwise)
$CFG_CROSS_PHONE_TREES = 'no';
Use force-aligned transcripts (if available) as input to training
$CFG_FORCEDALIGN = 'no';
Use a specific set of models for force alignment. If not defined,
context-independent models for the current experiment will be used.
$CFG_FORCE_ALIGN_MDEF = "$CFG_BASE_DIR/model_architecture/$CFG_EXPTNAME.falign_ci.mdef";
$CFG_FORCE_ALIGN_MODELDIR = "$CFG_MODEL_DIR/$CFG_EXPTNAME.falign_ci_$CFG_DIRLABEL";
Use a specific dictionary and filler dictionary for force alignment.
If these are not defined, a dictionary and filler dictionary will be
created from $CFG_DICTIONARY and $CFG_FILLERDICT, with noise words
removed from the filler dictionary and added to the dictionary (this
is because the force alignment is not very good at inserting them)
$CFG_FORCE_ALIGN_DICTIONARY = "$ST::CFG_BASE_DIR/falignout$ST::CFG_EXPTNAME.falign.dict";;
$CFG_FORCE_ALIGN_FILLERDICT = "$ST::CFG_BASE_DIR/falignout/$ST::CFG_EXPTNAME.falign.fdict";;
Use a particular beam width for force alignment. The wider
(i.e. smaller numerically) the beam, the fewer sentences will be
rejected for bad alignment.
$CFG_FORCE_ALIGN_BEAM = 1e-60;
Calculate an LDA/MLLT transform?
$CFG_LDA_MLLT = 'no';
Dimensionality of LDA/MLLT output
$CFG_LDA_DIMENSION = 29;
This is actually just a difference in log space (it doesn't make
sense otherwise, because different feature parameters have very
different likelihoods)
$CFG_CONVERGENCE_RATIO = 0.1;
Queue::POSIX for multiple CPUs on a local machine
Queue::PBS to use a PBS/TORQUE queue
$CFG_QUEUE_TYPE = "Queue";
Name of queue to use for PBS/TORQUE
$CFG_QUEUE_NAME = "workq";
(yes/no) Build questions for decision tree clustering automatically
$CFG_MAKE_QUESTS = "yes";
If CFG_MAKE_QUESTS is yes, questions are written to this file.
If CFG_MAKE_QUESTS is no, questions are read from this file.
$CFG_QUESTION_SET = "${CFG_BASE_DIR}/model_architecture/${CFG_EXPTNAME}.tree_questions";
$CFG_QUESTION_SET = "${CFG_BASE_DIR}/linguistic_questions";
$CFG_CP_OPERATION = "${CFG_BASE_DIR}/model_architecture/${CFG_EXPTNAME}.cpmeanvar";
Configuration for grapheme-to-phoneme model
$CFG_G2P_MODEL= 'no';
Configuration script for sphinx decoder
Variables starting with $DEC_CFG_ refer to decoder specific
arguments, those starting with $CFG_ refer to trainer arguments,
some of them also used by the decoder.
$DEC_CFG_VERBOSE = 1; # Determines how much goes to the screen.
These are filled in at configuration time
Name of the decoding script to use (psdecode.pl or s3decode.pl, probably)
$DEC_CFG_SCRIPT = 'psdecode.pl';
$DEC_CFG_EXPTNAME = "$CFG_EXPTNAME";
$DEC_CFG_JOBNAME = "$CFG_EXPTNAME"."_job";
Models to use.
$DEC_CFG_MODEL_NAME = "$CFG_EXPTNAME.cd_${CFG_DIRLABEL}_${CFG_N_TIED_STATES}";
$DEC_CFG_FEATFILES_DIR = "$CFG_BASE_DIR/feat";
$DEC_CFG_FEATFILE_EXTENSION = '.mfc';
$DEC_CFG_VECTOR_LENGTH = $CFG_VECTOR_LENGTH;
$DEC_CFG_AGC = $CFG_AGC;
$DEC_CFG_CMN = $CFG_CMN;
$DEC_CFG_VARNORM = $CFG_VARNORM;
$DEC_CFG_QMGR_DIR = "$CFG_BASE_DIR/qmanager";
$DEC_CFG_LOG_DIR = "$CFG_BASE_DIR/logdir";
$DEC_CFG_MODEL_DIR = "$CFG_MODEL_DIR";
$DEC_CFG_DICTIONARY = "$CFG_BASE_DIR/etc//home/shikha/Documents/ASR/model/am/etc/am.dic";
$DEC_CFG_FILLERDICT = "$CFG_BASE_DIR/etc//home/shikha/Documents/ASR/model/am/etc/am.filler";
$DEC_CFG_LISTOFFILES = "$CFG_BASE_DIR/etc//home/shikha/Documents/ASR/model/am/etc/am_test.fileids";
$DEC_CFG_TRANSCRIPTFILE = "$CFG_BASE_DIR/etc//home/shikha/Documents/ASR/model/am/etc/am_test.transcription";
$DEC_CFG_RESULT_DIR = "$CFG_BASE_DIR/result";
This variables, used by the decoder, have to be user defined, and
may affect the decoder output
$DEC_CFG_LANGUAGEMODEL = "$CFG_BASE_DIR/etc//home/shikha/Documents/ASR/model/am/etc/am.ug.lm.DMP";
$DEC_CFG_LANGUAGEWEIGHT = "10";
$DEC_CFG_BEAMWIDTH = "1e-80";
$DEC_CFG_WORDBEAM = "1e-40";
$DEC_CFG_ALIGN = "builtin";
$DEC_CFG_NPART = 1; # Define how many pieces to split decode in
This variable has to be defined, otherwise utils.pl will not load.
$CFG_DONE = 1;
return 1;
make sure that ur config file(etc/sphinxtrain.cfg) is correct.
|$CFG_WAVFILE_TYPE = 'wav'; # one of nist, mswav, raw
use mswav (if ur recorded audio files .wav files)
|$CFG_WAVFILE_SRATE = 8000.0;
YOU NEED TO MAKE SURE THAT YOU RECORDINGS ARE AT A SAMPLING RATE OF 16 KHZ (or 8 kHz if you train a telephone model) IN MONO WITH SINGLE CHANNEL.
|$CFG_HMM_TYPE = '.cont.';
This is for if u work for continuous speech recognition.
|$CFG_HMM_TYPE = '.semi.'; # PocketSphinx
This is for if u work for semi continuous speech recognition. So put asterisk(#) in front of $CFG_HMM_TYPE = '.cont.'; and delete that asterist(#) in front of $CFG_HMM_TYPE = '.semi.';
|Can't open perl script "scripts_pl/": No such file or directory
make sure that ur system has perl
Please do reply..
here is my sphinxtrain.cfg file
Add ur sphinxtrain.cfg file.. Don copy n paste. Add through attachments by clicking "edit".. Also Add ur wave files
here is the sphinx_train.cfg
U working for continuous speech or semi-continuous speech?
I hv edited ur .cfg file, u just go through compare with ur own .cfg file to know what u made mistake. Then u make newer .cfg file or jus replace with edited one. U changed lot of things manually, this is not advisable. U need to change manually only two things those are
#$CFG_HMM_TYPE = '.semi.'; for semi-continuous speech. Here U need decide which1 for ur proj..
No need to change rest of things... Here I hv attached my own .cfg file for ur reference. Am working for semi-continuous speech in Ubuntu.
For more details visit http://cmusphinx.sourceforge.net/wiki/tutorialam
wav files..
Last edit: namrata 2013-08-27
Recording files must be in MS WAV format with specific sample rate - 16 kHz, 16 bit, mono for desktop application, 8kHz, 16bit, mono for telephone applications.
Your 2_HN.wav file is 8kHz sample rate.. Are u working for telephone applications?
This is not a problem with his actual configuration file yet. The problem is most likely that SphinxTrain cannot locate the file in the filesystem. Please post your file hierarchy (where is sphinxtrain, sphinxbase, contents of local directory)
Hi.
What is your file structure? Can you list your file tree? (What is your current directory, where is sphinxtrain/sphinxbase, what subdirectories, etc.) Also give the output of ls.
hi,
file structure--
/usr/local/libexec/sphinxtrain/
-accumdir -cmn inc_comp map_adapt mk_ts2cb prunetree
-agc cp_parm init_gau -mixwfn mllr_solve tiestate
agg_seg -ctlfn init_mixw mixw_interp mllr_transform
bldtree delint kdtree mk_flat -moddeffn
bw -dictfn kmeans_init mk_mdef_gen norm
cdcn_norm etc -lsnfn mk_mllr_class param_cnt
cdcn_train -feat make_quests mk_s2sendump printp
/usr/local/include/sphinxtrain/
acmod_set.h itree.h mllr_class_io.h s3gau_io.h state_seq.h
best_q.h kdtree.h mllr.h s3.h swap.h
ck_seg.h kmeans.h mllr_io.h s3io.h time.h
common.h lexicon.h model_def.h s3lamb_io.h topo_read.h
corpus.h metric.h model_def_io.h s3map_io.h ts2cb.h
cvt2triphone.h misc.h model_inventory.h s3mixw_io.h vector.h
div.h mk_phone_list.h pset_io.h s3phseg_io.h was_added.h
dtree.h mk_phone_seq.h quest.h s3tmat_io.h
file.h mk_sseq.h remap.h s3ts2cb_io.h
gauden.h mk_trans_seq.h s3acc_io.h segdmp.h
heap.h mk_ts2ci.h s3cb2mllr_io.h state.h
/usr/local/include/sphinxbase/
ad.h err.h huff_code.h profile.h
agc.h f2c.h info.h sbthread.h
bio.h feat.h jsgf.h sphinxbase_export.h
bitvec.h fe.h listelem_alloc.h sphinxbase.pxd
byteorder.h filename.h logmath.h sphinx_config.h
case.h fixpoint.h matrix.h strfuncs.h
ckd_alloc.h fsg_model.h mmio.h unlimit.h
clapack_lite.h genrand.h mulaw.h yin.h
cmd_ln.h glist.h ngram_model.h
cmn.h hash_table.h pio.h
cont_ad.h heap.h prim_type.h
===============================================================
current file--
/home/shikha/Documents/ASR/model
Please reply
yes,i am working for telephone applications..
semi-continuous or continuous?
Hv u seen my .cfg file?