C# Class Accord.Statistics.Models.Markov.Learning.MaximumLikelihoodLearning

Maximum Likelihood learning algorithm for discrete-density Hidden Markov Models.

The maximum likelihood estimate is a supervised learning algorithm. It considers both the sequence of observations as well as the sequence of states in the Markov model are visible and thus during training.

Often, the Maximum Likelihood Estimate can be used to give a starting point to a unsupervised algorithm, making possible to use semi-supervised techniques with HMMs. It is possible, for example, to use MLE to guess initial values for an HMM given a small set of manually labeled labels, and then further estimate this model using the Viterbi learning algorithm.

Inheritance: ISupervisedLearning
Show file Open project: accord-net/framework Class Usage Examples

Public Methods

Method Description
MaximumLikelihoodLearning ( HiddenMarkovModel model ) : System

Creates a new instance of the Maximum Likelihood learning algorithm.

Run ( int observations, int paths ) : double

Runs the Maximum Likelihood learning algorithm for hidden Markov models.

Supervised learning problem. Given some training observation sequences O = {o1, o2, ..., oK}, known training state paths H = {h1, h2, ..., hK} and general structure of HMM (numbers of hidden and visible states), determine HMM parameters M = (A, B, pi) that best fit training data.

Private Methods

Method Description
ISupervisedLearning ( Array observations, int paths ) : double

Runs the Maximum Likelihood learning algorithm for hidden Markov models.

Supervised learning problem. Given some training observation sequences O = {o1, o2, ..., oK}, known training state paths H = {h1, h2, ..., hK} and general structure of HMM (numbers of hidden and visible states), determine HMM parameters M = (A, B, pi) that best fit training data.

Method Details

MaximumLikelihoodLearning() public method

Creates a new instance of the Maximum Likelihood learning algorithm.
public MaximumLikelihoodLearning ( HiddenMarkovModel model ) : System
model HiddenMarkovModel
return System

Run() public method

Runs the Maximum Likelihood learning algorithm for hidden Markov models.
Supervised learning problem. Given some training observation sequences O = {o1, o2, ..., oK}, known training state paths H = {h1, h2, ..., hK} and general structure of HMM (numbers of hidden and visible states), determine HMM parameters M = (A, B, pi) that best fit training data.
public Run ( int observations, int paths ) : double
observations int An array of observation sequences to be used to train the model.
paths int An array of state labels associated to each observation sequence.
return double