The perl script that come with SphinxTrain use wave2feat as the feature
extraction tool. It seems to me, however, that you cannot tell wave2feat which
features to extract, i.e. 1s_c_d_dd or others. The -feat options does not
appear to accept anything other than "sphinx", whatever that is supposed to
mean. On the other hand, the feature stream can be specified in
sphinx_train.cfg. How does wave2feat know which features to extract, i.e. what
feature stream the user specified in the config file?
Aside from wave2feat, there are at least two other tools for feature
extraction: sphinx_fe and agg_seg. sphinx_fe takes very similar arguments as
wave2feat, but not exactly the same. It doesn't seem to allow telling which
features to extract either. This is in contrast to the (deprecated?) agg_seg,
which appears to work rather differently.
All this leaves me with the question: What tool should I use for feature
extraction, if I want to train with, and decode, MS WAV files with SphinxTrain
and the Sphinx 3 decoder according to some user-defined feature set? And why
are there so many?
Advice is appreciated!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It seems to me, however, that you cannot tell wave2feat which features to
extract, i.e. 1s_c_d_dd or others.
In CMUSphinx features with derivatives are computed by all applications on the
fly. In file only cepstral vector is stored which is wave2feat task. There is
no need to specify 1s_c_d_dd to wave2feat. 1s_c_d_dd feature format is
specified to training programs and decoder.
This is in contrast to the (deprecated?) agg_seg,
agg_seg i snot for feature extraction. agg_seg accumulate feature vectors and
use the accumulated values to quantize the vector space. This functionality is
useful in semi-continuous training initialization.
What tool should I use for feature extraction, if I want to train with, and
decode, MS WAV files with SphinxTrain and the Sphinx 3 decoder according to
some user-defined feature set?
Extract cepstral feature vector with wave2feat or write your own code to
extract feature vectors and store them into CMUSPhinx binary feat file.
Specify lengh of feature vector in sphinx_train.cfg. After that specify
feature format (1s_c, 1s_c_d_dd or some other) in sphinx_train.cfg to be used
across training and decoding code.
And why are there so many?
There is only tool in Sphinxtrain to extract features - wave2feat.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi!
The perl script that come with SphinxTrain use wave2feat as the feature
extraction tool. It seems to me, however, that you cannot tell wave2feat which
features to extract, i.e. 1s_c_d_dd or others. The -feat options does not
appear to accept anything other than "sphinx", whatever that is supposed to
mean. On the other hand, the feature stream can be specified in
sphinx_train.cfg. How does wave2feat know which features to extract, i.e. what
feature stream the user specified in the config file?
Aside from wave2feat, there are at least two other tools for feature
extraction: sphinx_fe and agg_seg. sphinx_fe takes very similar arguments as
wave2feat, but not exactly the same. It doesn't seem to allow telling which
features to extract either. This is in contrast to the (deprecated?) agg_seg,
which appears to work rather differently.
All this leaves me with the question: What tool should I use for feature
extraction, if I want to train with, and decode, MS WAV files with SphinxTrain
and the Sphinx 3 decoder according to some user-defined feature set? And why
are there so many?
Advice is appreciated!
In CMUSphinx features with derivatives are computed by all applications on the
fly. In file only cepstral vector is stored which is wave2feat task. There is
no need to specify 1s_c_d_dd to wave2feat. 1s_c_d_dd feature format is
specified to training programs and decoder.
agg_seg i snot for feature extraction. agg_seg accumulate feature vectors and
use the accumulated values to quantize the vector space. This functionality is
useful in semi-continuous training initialization.
Extract cepstral feature vector with wave2feat or write your own code to
extract feature vectors and store them into CMUSPhinx binary feat file.
Specify lengh of feature vector in sphinx_train.cfg. After that specify
feature format (1s_c, 1s_c_d_dd or some other) in sphinx_train.cfg to be used
across training and decoding code.
There is only tool in Sphinxtrain to extract features - wave2feat.
Thanks for clarifying, this makes sense.