initHMM {HMM} | R Documentation |
Initialisation of HMMs
Description
This function initialises a general discrete time and discrete space Hidden Markov Model (HMM). A HMM consists of an alphabet of states and emission symbols. A HMM assumes that the states are hidden from the observer, while only the emissions of the states are observable. The HMM is designed to make inference on the states through the observation of emissions. The stochastics of the HMM is fully described by the initial starting probabilities of the states, the transition probabilities between states and the emission probabilities of the states.
Usage
initHMM(States, Symbols, startProbs=NULL, transProbs=NULL, emissionProbs=NULL)
Arguments
States |
Vector with the names of the states. |
Symbols |
Vector with the names of the symbols. |
startProbs |
Vector with the starting probabilities of the states. |
transProbs |
Stochastic matrix containing the transition probabilities between the states. |
emissionProbs |
Stochastic matrix containing the emission probabilities of the states. |
Format
Dimension and Format of the Arguments.
- States
Vector of strings.
- Symbols
Vector of strings.
- startProbs
Vector with the starting probabilities of the states. The entries must sum to 1.
- transProbs
-
transProbs
is a (number of states)x(number of states)-sized matrix, which contains the transition probabilities between states. The entrytransProbs[X,Y]
gives the probability of a transition from stateX
to stateY
. The rows of the matrix must sum to 1. - emissionProbs
-
emissionProbs
is a (number of states)x(number of states)-sized matrix, which contains the emission probabilities of the states. The entryemissionProbs[X,e]
gives the probability of emissione
from stateX
. The rows of the matrix must sum to 1.
Details
In transProbs
and emissionProbs
NA's can be used in order to forbid
specific transitions and emissions. This might be useful for Viterbi training or
the Baum-Welch algorithm when using pseudocounts.
Value
The function initHMM
returns a HMM that consists of a list of 5 elements:
States |
Vector with the names of the states. |
Symbols |
Vector with the names of the symbols. |
startProbs |
Annotated vector with the starting probabilities of the states. |
transProbs |
Annotated matrix containing the transition probabilities between the states. |
emissionProbs |
Annotated matrix containing the emission probabilities of the states. |
Author(s)
Lin Himmelmann <hmm@linhi.com>, Scientific Software Development
References
For an introduction in the HMM-literature see for example:
Lawrence R. Rabiner: A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition. Proceedings of the IEEE 77(2) p.257-286, 1989.
Olivier Cappe, Eric Moulines, Tobias Ryden: Inference in Hidden Markov Models. Springer. ISBN 0-387-40264-0.
Ephraim Y., Merhav N.: Hidden Markov processes. IEEE Trans. Inform. Theory 48 p.1518-1569, 2002.
See Also
See simHMM
to simulate a path of states and observations from a Hidden Markov Model.
Examples
# Initialise HMM nr.1
initHMM(c("X","Y"), c("a","b","c"))
# Initialise HMM nr.2
initHMM(c("X","Y"), c("a","b"), c(.3,.7), matrix(c(.9,.1,.1,.9),2),
matrix(c(.3,.7,.7,.3),2))