1 Hidden Markov Models

The “Fair Bet Casino”
Hidden Markov Models
The game is to flip coins, which results in only
two possible outcomes: Head or Tail
Dealer uses both Fair and Biased coins
Fair coin: Heads and Tails with same prob. ½
Biased coin: Heads with prob. ¾
2
The “Fair Bet Casino” (cont’d)
The Fair Bet Casino Problem
Thus, we define the probabilities:
P(H|F) = P(T|F) = ½
P(H|B) = ¾, P(T|B) = ¼
The crooked dealer changes between Fair
and Biased coins with probability 10%
Input: A sequence x = x1 x2 x3 … xn of coin
tosses made by two possible coins (F or B)
Output: A sequence π = π1 π2 π3 … πn, with
each πi being either F or B indicating that xi
is the result of tossing the Fair or Biased
coin respectively
3
Problem…
4
Problem…
Fair Bet Casino
Problem
Any observed
outcome of coin
tosses could
have been
generated by
any sequence of
states!
FFFBBB?
FFFFFF?
BBBBBB?
FBFBFB?
... ?
5
Need to incorporate a
way to grade different
sequences differently
Decoding Problem
6
1
Simplification
P(x | fair coin) vs. P(x | biased coin)
Suppose first that dealer never changes
coins. Some definitions:
P(x | fair coin): prob. of the dealer using
the F coin and generating the outcome x
P(x | biased coin): prob. of the dealer
using the B coin and generating outcome x
k: number of Heads in x
P(x | fair coin)=
P(x | biased coin)=
7
P(x | fair coin) vs. P(x | biased
coin)
8
Log-odds Ratio
P(x | fair coin) = P(x | biased coin)
when k ~ 0.67n
We define log-odds ratio as follows:
9
Computing Log-odds Ratio in
Sliding Windows
10
Hidden Markov Model (HMM)
x1x2x3x4x5x6x7x8…xn
Consider a sliding window of the outcome
sequence. Find the log-odds for this short window
0
Log-odds value
Biased coin most likely
Fair coin most likely
used
used
But: Dealer changes coins anytime!
11
Can be viewed as an abstract machine with k
hidden states that emits symbols from alphabet Σ
Each state has its own probability distribution, and
the machine switches between states according
to this probability distribution
While in a certain state, the machine makes 2
decisions:
What state should I move to next?
What symbol - from the alphabet Σ - should I
emit?
12
2
Why “Hidden”?
HMM Parameters
Observers can see the emitted symbols of an
HMM but have no ability to know which state
the HMM is currently in
Thus, the goal is to infer the most likely
hidden states of an HMM based on the given
sequence of emitted symbols
Σ: set of emission characters
Ex.: Σ = {H, T} for coin tossing
Σ = {1, 2, 3, 4, 5, 6} for dice tossing
Q: set of hidden states, each emitting symbols
from Σ
Q={F, B} for coin tossing
13
HMM Parameters (cont’d)
14
HMM for Fair Bet Casino
A = (akl): a |Q| x |Q| matrix of probability of
changing from state k to state l
The Fair Bet Casino in HMM terms:
Σ = {0, 1} (0 for Tails and 1 Heads)
Q = {F, B} - F for Fair & B for Biased coin
Transition Probabilities A
E = (ek(b)): a |Q| x |Σ| matrix of probability of
emitting symbol b while being in state k
Emission Probabilities E
Tails(0)
Heads(1)
Fair
Biased
Fair
aFF = 0.9
aFB = 0.1
Fair
eF(0) = ½ eF(1) = ½
Biased
aBF = 0.1
aBB = 0.9
Biased
eB(0) = ¼ eB(1) = ¾
15
HMM for Fair Bet Casino (cont’d)
16
Hidden Paths
A path π = π1… πn in the HMM is defined as a
sequence of states
Consider path π = FFFBBBBBFFF and sequence
x = 01011101001
Probability that xi was emitted from state πi
x
π
0
=
0
1
1
1
0
1
0
0
1
F F F B B B B B F F F
P(xi | πi)
½ ½
P(πi-1 πi)
HMM model for the Fair Bet Casino Problem
1
½
9/
10
½
9/
10
¾ ¾
1/
10
9/
10
¾
9/
10
¼ ¾
9/
10
9/
10
½ ½ ½
1/
10
9/
10
9/
10
Transition probability from state πi-1 to state πi
17
18
3
P(x | π) Calculation
Decoding Problem
P(x | π): Probability that sequence x was
generated by the path π:
Goal: Find an optimal hidden path of states
given observations
Input: Sequence of observations x = x1…xn
generated by an HMM M(Σ, Q, A, E)
Output: A path that maximizes P(x | π) over
all possible paths π
19
Graph for Decoding Problem
Manhattan for Decoding Problem
Andrew Viterbi used the Manhattan grid
model to solve the Decoding Problem
Every choice of π = π1… πn corresponds to a
path in the graph
The only valid direction in the graph is
eastward
This graph has |Q|2(n-1) edges
20
21
Decoding Problem as Finding
a Longest Path
22
Decoding Problem (cont’d)
The Decoding Problem is reduced to finding
a longest path in the directed acyclic graph
Note: The length of the path is defined as the
product of its edges’ weights, not the sum
23
Every path π in the graph has the probability
P(x | π)
The Viterbi algorithm finds the path that
maximizes P(x | π) among all possible paths
The Viterbi algorithm runs in O(n|Q|2) time
24
4
Decoding Problem (cont’d)
We come from state k
in which the symbol i
was emmited…
w
Decoding Problem (cont’d)
… and go to state l
where we emmit the
i+1th symbol
Consider the probability of a path ending in
vertex (l, i+1):
The weight w is given by:
25
Decoding Problem (cont’d)
26
Decoding Problem (cont’d)
Initialization:
Let π* be the optimal path
27
Viterbi Algorithm
HMM Parameter Estimation
Problems with multiplication
28
So far, we have assumed that the transition
and emission probabilities are known
However, in most HMM applications, the
probabilities are not known
It’s very hard to estimate the probabilities
Which algorithm solves this reccurence?
Extremly small values → overflowing
Solution: use logarithms:
→ longest path problem
29
30
5
HMM Parameter Estimation
Given
Maximize the Likelihood
The training sequences are assumed independent,
therefore the likelihood of the model is
The parameter estimation problem seeks
In practice the log likelihood is computed to avoid
underflow errors
HMM with states and alphabet (emission
characters)
Independent training sequences X1, …, Xm
Find HMM parameters Θ = (A, E) that
maximize
P(X1, …, Xm | Θ)
the joint probability of the training sequences
31
Two situations
Known paths
Akl = # of transitions k → l in the training
sequences
Ek(b) = # of times symbol b is emitted from state k
in the training sequences
Compute akl and ek(b) as maximum likelihood
estimators:
Known paths for training sequences
One evening the casino dealer allows us to see
when he changes coin
Unknown paths
32
Do not see when the casino dealer changes coin
33
Unknown Paths
Example: Speech Recognition
We don’t know the state sequence
Create an HMM of the words in a language
Each word is a hidden state in Q
Each of the basic sounds in the language is
a symbol in Σ
Input: use speech as the input sequence
Goal: find the most probable sequence of
states
start with wild guess for π
compute empirical estimates for A and E
solve decoding problem to get hopefully better
estimate for π
⇒ Difficult optimization problem in multidimensional parameter space Θ
34
(Meta-)heuristics with local improvement
strategies
35
36
6
Building the Model
Building the Model (cont’d)
Analyze some large source of sentences
(e.g. database of newspaper articles) to form
probability matrices
Analyze speakers to determine what sounds
are emitted with what words
A0i: the chance that word i begins a
sentence
Ek(b): the chance that sound b is spoken in
word k
Allows for alternate pronunciation of words
Aij: the chance that word j follows word i
37
Using the Model
Using the Model (cont’d)
Use the same dynamic programming
algorithm as before
Weave the spoken sounds through the
model the same way we wove the toss of
coins through the casino model
π represents the most likely set of words
38
How well does it work?
Common words, such as ‘the’, ‘a’, ‘of’ make
prediction less accurate, since there are so
many words that follow normally
We can add more states to incorporate a
little context into the decision
39
Improving Speech Recognition
40
Summary
Initially, we were using a ‘bigram’, a graph
connecting every two words
Expand that to a ‘trigram’
Each state represents two words spoken in
succession
Each edge joins those two words (A B) to another
state representing (B C)
Requires n3 vertices and edges, where n is the
number of words in the language
Much better, but still limited context
41
Hidden Markov Model for analyzing the
“Fair Bet Casino” scenario
Decoding algorithm for most probable
guess when the dealer used fair /
biased coin
Difficult when HMM Parameters
unknown
42
7
Thannk you for your attention!
References
Pevzner and Jones. An Introduction of
Bioinformatics Algorithms. MIT Press 2004
www.bioalgorithms.info
43
8