C# Class Accord.Statistics.Models.Markov.Hybrid.HybridMarkovModel

Hybrid Markov model for arbitrary state-observation functions.
This class can be used to implement HMM hybrids such as ANN-HMM or SVM-HMMs through the specification of a custom GeneralMarkovFunction.
Show file Open project: accord-net/framework

Public Methods

Method Description
Decode ( double observations, double &logLikelihood ) : int[]

Calculates the most likely sequence of hidden states that produced the given observation sequence.

Decoding problem. Given the HMM M = (A, B, pi) and the observation sequence O = {o1,o2, ..., oK}, calculate the most likely sequence of hidden states Si that produced this observation sequence O. This can be computed efficiently using the Viterbi algorithm.

Evaluate ( double observations ) : double

Calculates the probability that this model has generated the given sequence.

Evaluation problem. Given the HMM M = (A, B, pi) and the observation sequence O = {o1, o2, ..., oK}, calculate the probability that model M has generated sequence O. This can be computed efficiently using the Forward algorithm.

HybridMarkovModel ( GeneralMarkovFunction function, int states, int dimension ) : System

Initializes a new instance of the HybridMarkovModel class.

Method Details

Decode() public method

Calculates the most likely sequence of hidden states that produced the given observation sequence.
Decoding problem. Given the HMM M = (A, B, pi) and the observation sequence O = {o1,o2, ..., oK}, calculate the most likely sequence of hidden states Si that produced this observation sequence O. This can be computed efficiently using the Viterbi algorithm.
public Decode ( double observations, double &logLikelihood ) : int[]
observations double /// A sequence of observations.
logLikelihood double /// The state optimized probability.
return int[]

Evaluate() public method

Calculates the probability that this model has generated the given sequence.
Evaluation problem. Given the HMM M = (A, B, pi) and the observation sequence O = {o1, o2, ..., oK}, calculate the probability that model M has generated sequence O. This can be computed efficiently using the Forward algorithm.
public Evaluate ( double observations ) : double
observations double /// A sequence of observations.
return double

HybridMarkovModel() public method

Initializes a new instance of the HybridMarkovModel class.
public HybridMarkovModel ( GeneralMarkovFunction function, int states, int dimension ) : System
function GeneralMarkovFunction A function specifying a probability for a transition-emission pair.
states int The number of states in the model.
dimension int The number of dimensions in the model.
return System