The Viterbi-algorithm computes the most probable path of states for a sequence of observations for a given Hidden Markov Model.
viterbi(hmm, observation)
A Hidden Markov Model.
A sequence of observations.
Return Value:
A vector of strings, containing the most probable path of states.
Dimension and Format of the Arguments.
A valid Hidden Markov Model, for example instantiated by initHMM
.
A vector of observations.
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.
# NOT RUN {
# Initialise HMM
hmm = initHMM(c("A","B"), c("L","R"), transProbs=matrix(c(.6,.4,.4,.6),2),
emissionProbs=matrix(c(.6,.4,.4,.6),2))
print(hmm)
# Sequence of observations
observations = c("L","L","R","R")
# Calculate Viterbi path
viterbi = viterbi(hmm,observations)
print(viterbi)
# }
Run the code above in your browser using DataLab