mlpack_hmm_train - hidden markov model (hmm) training


mlpack_hmm_train -i string [-b bool] [-g int] [-m unknown] [-l string] [-s int] [-n int] [-T double] [-t string] [-V bool] [-M unknown] [-h -v]


This program allows a Hidden Markov Model to be trained on labeled or unlabeled data. It support three types of HMMs: discrete HMMs, Gaussian HMMs, or GMM HMMs.

Either one input sequence can be specified (with --input_file), or, a file containing files in which input sequences can be found (when --input_file and --batch are used together). In addition, labels can be provided in the file specified by --labels_file, and if --batch is used, the file given to --labels_file should contain a list of files of labels corresponding to the sequences in the file given to --input_file.

The HMM is trained with the Baum-Welch algorithm if no labels are provided. The tolerance of the Baum-Welch algorithm can be set with the --tolerance option. By default, the transition matrix is randomly initialized and the emission distributions are initialized to fit the extent of the data.

Optionally, a pre-created HMM model can be used as a guess for the transition matrix and emission probabilities; this is specifiable with --model_file.


--input_file (-i) [string]

File containing input observations.


--batch (-b) [bool]

If true, input_file (and if passed, labels_file) are expected to contain a list of files to use as input observation sequences (and label sequences).

--gaussians (-g) [int]

Number of gaussians in each GMM (necessary when type is ’gmm’). Default value 0.

--help (-h) [bool]

Default help info.

--info [string]

Get help on a specific module or option. Default value ’’.

--input_model_file (-m) [unknown]

Pre-existing HMM model to initialize training with. Default value ’’.

--labels_file (-l) [string]

Optional file of hidden states, used for labeled training. Default value ’’.

--seed (-s) [int]

Random seed. If 0, ’std::time(NULL)’ is used. Default value 0.

--states (-n) [int]

Number of hidden states in HMM (necessary, unless model_file is specified). Default value 0.

--tolerance (-T) [double]

Tolerance of the Baum-Welch algorithm. Default value 1e-05.

--type (-t) [string]

Type of HMM: discrete | gaussian | gmm. Default value ’gaussian’.

--verbose (-v) [bool]

Display informational messages and the full list of parameters and timers at the end of execution.

--version (-V) [bool]

Display the version of mlpack.


--output_model_file (-M) [unknown]

Output for trained HMM. Default value ’’.


For further information, including relevant papers, citations, and theory, consult the documentation found at or included with your distribution of mlpack.