Next: A Change-point Detection Algorithm
Up: Segmental Semi-Markov Models for
Previous: Introduction
A Viterbi-like Algorithm to Compute the Most Likely
State Sequence (MLSS)
To find the most likely state (i.e., segment label)
sequence
for a data sequence
,
we have the following recursive Viterbi-like algorithm
based on dynamic programming.
At each time
, this algorithm calculates the quantity
for each for each state
,
, where
is defined as
 |
(2) |
In other words,
is the likelihood of the most
likely state sequence that ends with state
(i.e.,
is the last point
of segment
).
The recursive function for calculating
is
 |
(3) |
In the above equation, the outer maximization (
) is
over all possible values
of the duration
of state
. Recall that
is now fixed to be the last
point of segment
, the last point of the previous segment will be
.
For a given
, the inner maximization (
) is over all possible previous
states
that transitions to state
at time
.
The state
and the time
for the maximum value
are
recorded in a table denoted as
.
Obviously, the overall most likely state sequence for the data sequence
will be the state sequence with the likelihood
, and can be found by tracing back using the table
.
Next: A Change-point Detection Algorithm
Up: Segmental Semi-Markov Models for
Previous: Introduction
Xianping Ge
2000-05-16