EECS E6870: Lecture 4: Hidden Markov Models

Similar documents
Statistical Methods for NLP

Statistical Sequence Recognition and Training: An Introduction to HMMs

Lecture 4. Hidden Markov Models. Michael Picheny, Bhuvana Ramabhadran, Stanley F. Chen, Markus Nussbaum-Thom

Hidden Markov Models and Gaussian Mixture Models

Lecture 3. Gaussian Mixture Models and Introduction to HMM s. Michael Picheny, Bhuvana Ramabhadran, Stanley F. Chen, Markus Nussbaum-Thom

HIDDEN MARKOV MODELS IN SPEECH RECOGNITION

Automatic Speech Recognition (CS753)

Hidden Markov Models and Gaussian Mixture Models

STA 4273H: Statistical Machine Learning

STA 414/2104: Machine Learning

A Gentle Tutorial of the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models

Design and Implementation of Speech Recognition Systems

Hidden Markov Models

Hidden Markov Modelling

Weighted Finite-State Transducers in Computational Biology

Hidden Markov Models

CS 136a Lecture 7 Speech Recognition Architecture: Training models with the Forward backward algorithm

L23: hidden Markov models

Cheng Soon Ong & Christian Walder. Canberra February June 2018

Machine Learning CMPT 726 Simon Fraser University. Binomial Parameter Estimation

Hidden Markov Models. Aarti Singh Slides courtesy: Eric Xing. Machine Learning / Nov 8, 2010

Statistical NLP: Hidden Markov Models. Updated 12/15

order is number of previous outputs

Lecture 4: Hidden Markov Models: An Introduction to Dynamic Decision Making. November 11, 2010

Parametric Unsupervised Learning Expectation Maximization (EM) Lecture 20.a

Expectation-Maximization (EM) algorithm

Basic Text Analysis. Hidden Markov Models. Joakim Nivre. Uppsala University Department of Linguistics and Philology

Hidden Markov Models in Language Processing

Dept. of Linguistics, Indiana University Fall 2009

Parametric Models Part III: Hidden Markov Models

Lecture 11: Hidden Markov Models

Temporal Modeling and Basic Speech Recognition

Robert Collins CSE586 CSE 586, Spring 2015 Computer Vision II

Hidden Markov Models. By Parisa Abedi. Slides courtesy: Eric Xing

Statistical Pattern Recognition

Machine Learning & Data Mining Caltech CS/CNS/EE 155 Hidden Markov Models Last Updated: Feb 7th, 2017

University of Cambridge. MPhil in Computer Speech Text & Internet Technology. Module: Speech Processing II. Lecture 2: Hidden Markov Models I

Hidden Markov Models

Speech Recognition Lecture 8: Expectation-Maximization Algorithm, Hidden Markov Models.

CS838-1 Advanced NLP: Hidden Markov Models

Dynamic Approaches: The Hidden Markov Model

CMSC 723: Computational Linguistics I Session #5 Hidden Markov Models. The ischool University of Maryland. Wednesday, September 30, 2009

Multiple Sequence Alignment using Profile HMM

10. Hidden Markov Models (HMM) for Speech Processing. (some slides taken from Glass and Zue course)

p(d θ ) l(θ ) 1.2 x x x

Directed Probabilistic Graphical Models CMSC 678 UMBC

Brief Introduction of Machine Learning Techniques for Content Analysis

Lecture 3: ASR: HMMs, Forward, Viterbi

Design and Implementation of Speech Recognition Systems

Introduction to Machine Learning CMU-10701

Linear Dynamical Systems

Page 1. References. Hidden Markov models and multiple sequence alignment. Markov chains. Probability review. Example. Markovian sequence

CS 188: Artificial Intelligence Fall 2011

Midterm sample questions

Recall: Modeling Time Series. CSE 586, Spring 2015 Computer Vision II. Hidden Markov Model and Kalman Filter. Modeling Time Series

An Introduction to Bioinformatics Algorithms Hidden Markov Models

Lecture 12: Algorithms for HMMs

A gentle introduction to Hidden Markov Models

A brief introduction to Conditional Random Fields

We Live in Exciting Times. CSCI-567: Machine Learning (Spring 2019) Outline. Outline. ACM (an international computing research society) has named

CSCI-567: Machine Learning (Spring 2019)

Note Set 5: Hidden Markov Models

Lecture 12: Algorithms for HMMs

Hidden Markov Models

Expectation Maximization (EM)

Lecture 15. Probabilistic Models on Graph

Data-Intensive Computing with MapReduce

1. Markov models. 1.1 Markov-chain

6.864: Lecture 5 (September 22nd, 2005) The EM Algorithm

Hidden Markov models

Shankar Shivappa University of California, San Diego April 26, CSE 254 Seminar in learning algorithms

Recap: HMM. ANLP Lecture 9: Algorithms for HMMs. More general notation. Recap: HMM. Elements of HMM: Sharon Goldwater 4 Oct 2018.

Lecture 9. Intro to Hidden Markov Models (finish up)

Introduction: MLE, MAP, Bayesian reasoning (28/8/13)

Machine Learning for natural language processing

Lecture 4: Probabilistic Learning

Statistical Methods for NLP

Hidden Markov Models. x 1 x 2 x 3 x K

Hidden Markov Model. Ying Wu. Electrical Engineering and Computer Science Northwestern University Evanston, IL 60208

HMM: Parameter Estimation

Parametric Models. Dr. Shuang LIANG. School of Software Engineering TongJi University Fall, 2012

Speech Recognition HMM

Lecture 4: Probabilistic Learning. Estimation Theory. Classification with Probability Distributions

Today s Lecture: HMMs

Math 350: An exploration of HMMs through doodles.

Part of Speech Tagging: Viterbi, Forward, Backward, Forward- Backward, Baum-Welch. COMP-599 Oct 1, 2015

Sequence labeling. Taking collective a set of interrelated instances x 1,, x T and jointly labeling them

Clustering K-means. Clustering images. Machine Learning CSE546 Carlos Guestrin University of Washington. November 4, 2014.

Bayesian Networks: Construction, Inference, Learning and Causal Interpretation. Volker Tresp Summer 2016

Statistical NLP Spring Digitizing Speech

Digitizing Speech. Statistical NLP Spring Frame Extraction. Gaussian Emissions. Vector Quantization. HMMs for Continuous Observations? ...

Bayesian Networks: Construction, Inference, Learning and Causal Interpretation. Volker Tresp Summer 2014

Conditional Random Field

Natural Language Processing Prof. Pushpak Bhattacharyya Department of Computer Science & Engineering, Indian Institute of Technology, Bombay

Hidden Markov Models

STATS 306B: Unsupervised Learning Spring Lecture 5 April 14

O 3 O 4 O 5. q 3. q 4. Transition

Human-Oriented Robotics. Temporal Reasoning. Kai Arras Social Robotics Lab, University of Freiburg

CS 343: Artificial Intelligence

The Noisy Channel Model. Statistical NLP Spring Mel Freq. Cepstral Coefficients. Frame Extraction ... Lecture 10: Acoustic Models

Transcription:

EECS E6870: Lecture 4: Hidden Markov Models Stanley F. Chen, Michael A. Picheny and Bhuvana Ramabhadran IBM T. J. Watson Research Center Yorktown Heights, NY 10549 stanchen@us.ibm.com, picheny@us.ibm.com, bhuvana@us.ibm.com September 29, 2009 EECS E6870: Speech Recognition

Administrivia Main feedback from Lecture 3: -Pace good -Some of you are familiar with the material -Muddiest topics: C(i,j) (x1), BIC (x1), E-M (x1), GMM (x1) (We will be repeating some of this again in this lecture) Lab 1 is due Sept. 30 (that is tomorrow!) Speech Recognition Lecture 4: Hidden Markov Models 2

Recap Can model distributions of feature vectors using mixtures of Gaussians. Maximum Likelihood estimation can be used to estimate the parameters of Gaussian distributions. An iterative algorithm was developed to estimate parameters of mixtures of Gaussian distributions. Generalized the idea of Dynamic Time Warping to a probabilistic framework the Hidden Markov Model. Introduced the three main operations that need to be addressed with Hidden Markov Models Computing the probability of a sequence of feature vectors Finding the best sequence of states that produced the sequence of feature vectors Estimating the parameters of a Hidden Markov Model from data Speech Recognition Lecture 4: Hidden Markov Models 3

Goals for Today Introduce a general probabilistic framework for speech recognition Explain how Hidden Markov Models fit in this overall framework. Review some of the concepts of ML estimation in the context of an HMM framework. Describe how the three basic HMM operations are computed. Speech Recognition Lecture 4: Hidden Markov Models 4

The Probabilistic Model for Speech Recognition W * = arg max W P( W X, Θ) = arg max W P( X W, Θ) P( W P( X ) Θ) Bayes' rule = arg max W P( X W, Θ) P( W Θ) P(X) doesn' t depend on W W is a sequence of words, W* is the best sequence. X is a sequence of acoustic features Θ is a set of model parameters A.K.A. The Fundamental Equation of Speech Recognition Speech Recognition Lecture 4: Hidden Markov Models 5

Automatic speech recognition Architecture audio feature extraction search words acoustic model language model W * arg max = P( X W, Θ) P( W W Θ) Today s Subject Speech Recognition Lecture 4: Hidden Markov Models 6

Acoustic Modeling from 30000 feet Goal is to model sequences (i.e., compute probabilities) of feature vectors Assume a word is made up from a sequence of speech sounds Cat: K AE T Dog: D AO G Fish: F IH SH When a speech sound is uttered, a sequence of feature vectors is produced according to a GMM associated with each sound But the distributions overlap: you can t uniquely identify which speech sound produced the feature vector so how can you compute the likelihood if you don t know which speech sound generated the feature vector? If you did, you could just use the techniques we discussed last week. Solution is the HMM For simplicity, build up HMM concepts by using the outcome of a coin flip as our observation (rather than a feature vector) Speech Recognition Lecture 4: Hidden Markov Models 7

Models without Memory: Probability Sequence Computation A coin has probability of heads = p, probability of tails = 1-p Flip the coin 10 times. Assume I.I.D. random sequence. There are 2 10 possible sequences. Sequence: 1 0 1 0 0 0 1 0 0 1 Probability: p(1-p)p(1-p)(1-p)(1-p) p(1-p)(1-p)p = p 4 (1-p) 6 Models without memory: Observations are Independent. Probability is the same for all sequences with 4 heads & 6 tails. Order of heads & tails does not matter in assigning a probability to the sequence, only the number of heads & number of tails Probability of 0 heads (1-p) 10 1 head p(1-p) 9 10 heads p 10 Speech Recognition Lecture 4: Hidden Markov Models 8

Models without Memory: Learning Model Parameters If p is known, then it is easy to compute the probability of the sequence. Now suppose p is unknown. We toss the coin N times, obtaining H heads and T tails, where H+T=N We want to estimate p A reasonable estimate is p=h/n. Is this actually the best choice for p? What is best? Consider the probability of the observed sequence. Prob(seq)=p H (1-p) T Prob(seq) p mle p The value of p for which Prob(seq) is maximized is the Maximum Likelihood Estimate (MLE) of p. (Denote p mle ) Speech Recognition Lecture 4: Hidden Markov Models 9

Models without Memory: Example, cont d Assertion: p mle = H/N Proof: Prob(seq)=p H (1-p) T Maximizing Prob is equivalent to maximizing log(prob) L=log(Prob(seq)) = H log p + T log (1-p) L = Η/p + Τ/(1 p) p L L maximized when = 0 p H/p mle -T/(1-p mle ) = 0 H H p mle = T p mle H = T p mle + H p mle = p mle (T + H) = p mle N p mle = H/N Speech Recognition Lecture 4: Hidden Markov Models 10

Models without Memory Example, cont d We showed that in this case MLE = Relative Frequency = H/N We will use this idea many times. Often, parameter estimation reduces to counting and normalizing. Speech Recognition Lecture 4: Hidden Markov Models 11

Models with Memory: Markov Models Flipping a coin was memory-less. The outcome of each flip did not depend on the outcome of the other flips. Adding memory to a memory-less model gives us a Markov Model. Useful for modeling sequences of events. Speech Recognition Lecture 4: Hidden Markov Models 12

Markov Model Example Consider 2 coins. Coin 1: p H = 0.9, p T = 0.1 Coin 2: p H = 0.2, p T = 0.8 Experiment: Flip Coin 1. for J = 2 ; J<=4; J++ if (previous flip == H ) flip Coin 1; else flip Coin 2; Consider the following 2 sequences: H H T T prob = 0.9 x 0.9 x 0.1 x 0.8 =.0648 H T H T prob = 0.9 x 0.1 x 0.2 x 0.1 =.0018 Sequences with consecutive heads or tails are more likely. The sequence has memory - order matters. Order matters for speech too. The sequence of feature vectors for rat are different from the sequence of vectors for tar. Speech Recognition Lecture 4: Hidden Markov Models 13

Markov Models State Space Representation Consider 2 coins. Coin 1: p H = 0.9, p T = 0.1 Coin 2: p H = 0.2, p T = 0.8 State-space representation of previous example H 0.9 T 0.1 T 0.8 1 2 H 0.2 Speech Recognition Lecture 4: Hidden Markov Models 14

Markov Models State Space Representation (Con t) State sequence can be uniquely determined from the outcome sequence, given the initial state. Output probability is easy to compute. It is the product of the transition probs for state sequence. H 0.9 T 0.1 T 0.8 1 2 H 0.2 Example: O: H T T T S: 1(given) 1 2 2 Prob: 0.9 x 0.1 x 0.8 x 0.8 Speech Recognition Lecture 4: Hidden Markov Models 15

Back to Memory-Less Models: Hidden Information Let s return to the memory-less coin flip model Consider 3 coins. Coin 0: p H = 0.7 Coin 1: p H = 0.9 Coin 2 p H = 0.2 Experiment: For J=1..4 Flip coin 0. If outcome == H Flip coin 1 and record. else Flip coin 2 and record. Speech Recognition Lecture 4: Hidden Markov Models 16

Hiding Information (cont.) Coin 0: p H = 0.7 Coin 1: p H = 0.9 Coin 2: p H = 0.2 We cannot uniquely determine the output of the Coin 0 flips. This is hidden. Consider the sequence H T T T. What is the probability of the sequence? Order doesn t matter (memory-less) p(head)=p(head coin0=h)p(coin0=h)+ p(head coin0=t)p(coin0=t)= 0.9x0.7 + 0.2x0.3 = 0.69 p(tail) = 0.1 x 0.7 + 0.8 x 0.3 = 0.31 P(HTTT) =.69 x.31 3 Speech Recognition Lecture 4: Hidden Markov Models 17

Hidden Markov Model The state sequence is hidden. Unlike Markov Models, the state sequence cannot be uniquely deduced from the output sequence. Experiment: Flip the same two coins. This time, flip each coin twice. The first flip gets recorded as the output sequence. The second flip determines which coin gets flipped next. Now, consider output sequence H T T T. No way to know the results of the even numbered flips, so no way to know which coin is flipped each time. Unlike previous example, order now matters (start with coin 1, p H = 0.9) H H T T T H T =.9 x.9 x.1 x.1 x.8 x.2 x.1 =.0001296 T T T H T T H =.1 x.1 x.8 x.2 x.1 x.1 x.2 =.0000032 Even worse, same output sequence corresponds to multiple probabilities! H T T H T T T =.9 x.1 x.8 x.2 x.1 x.1 x.8 =.0001152 Speech Recognition Lecture 4: Hidden Markov Models 18

Hidden Markov Model The state sequence is hidden. Unlike Markov Models, the state sequence cannot be uniquely deduced from the output sequence. 0.9 0.1 0.9 0.1 0.2 0.8 0.9 0.1 0.8 1 2 0.2 0.8 In speech, the underlying states can be, say the positions of the articulators. These are hidden they are not uniquely deduced from the output features. We already mentioned that speech has memory. A process which has memory and hidden states suggests using an HMM. 0.2 Speech Recognition Lecture 4: Hidden Markov Models 19

Is a Markov Model Hidden or Not? A necessary and sufficient condition for being state-observable is that all transitions from each state produce different outputs a, b a, b c b d State-observable d Hidden Speech Recognition Lecture 4: Hidden Markov Models 20

Three problems of general interest for an HMM 3 problems need to be solved before we can use HMM s: 1. Given an observed output sequence X=x 1 x 2..x T, compute P θ (X) for a given model θ (scoring) 2. Given X, find the most likely state sequence (Viterbi algorithm) 3. Estimate the parameters of the model (training) These problems are easy to solve for a state-observable Markov model. More complicated for an HMM because we need to consider all possible state sequences. Must develop a generalization. Speech Recognition Lecture 4: Hidden Markov Models 21

Problem 1 1. Given an observed output sequence X=x 1 x 2..x T, compute Pθ(X) for a given model θ Recall the state-observable case H 0.9 T 0.1 T 0.8 1 2 H 0.2 Example: O: H T T T S: 1(given) 1 2 2 Prob: 0.9 x 0.1 x 0.8 x 0.8 Speech Recognition Lecture 4: Hidden Markov Models 22

Problem 1 1. Given an observed output sequence X=x 1 x 2..x T, compute Pθ(X) for a given model θ Sum over all possible state sequences: Pθ(X)=Σ S Pθ(X,S) The obvious way of calculating Pθ(X) is to enumerate all state sequences that produce X Unfortunately, this calculation is exponential in the length of the sequence Speech Recognition Lecture 4: Hidden Markov Models 23

Example for Problem 1 0.5 0.8 0.2 a b 0.4 0.5 0.5 0.7 0.3 0.3 0.7 0.3 0.5 1 2 3 0.2 0.1 Compute Pθ(X) for X=aabb, assuming we start in state 1 Speech Recognition Lecture 4: Hidden Markov Models 24

0.5 Example for Problem 1,cont d Let s enumerate all possible ways of producing x 1 =a, assuming we start in state 1. 1 0.4 0.8 0.2 0.7 0.3 0.3 0.5 1 2 3 0.2 a b 0.4 0.5 0.5 0.1 0.3 0.7 1 0.2 0.2 0.5 x 0.8 0.5 x 0.8 2 0.3 x 0.7 0.3 x 0.7 2 0.5 x 0.8 0.4 x 0.5 1 1 2 0.21 2 0.2 0.2 2 0.08 2 2 0.1 3 0.021 0.4 x 0.5 2 0.04 0.1 3 0.004 0.1 3 0.008 0.2 2 0.5 x 0.3 3 0.03 Speech Recognition Lecture 4: Hidden Markov Models 25

Example for Problem 1, cont d Now let s think about ways of generating x1x2=aa, for all paths from state 2 after the first observation 2 1 1 2 0.21 2 0.08 2 3 3 2 2 3 2 2 0.04 3 2 2 3 3 Speech Recognition Lecture 4: Hidden Markov Models 26

Example for Problem 1,cont d We can save computations by combining paths. This is a result of the Markov property, that the future doesn t depend on the past if we know the current state 1 2 1 2 0.33 0.4 x 0.5 0.4 x 0.5 0.5 x 0.3 2 2 3 0.1 3 Speech Recognition Lecture 4: Hidden Markov Models 27

Problem 1: Trellis Diagram Expand the state-transition diagram in time. Create a 2-D lattice indexed by state and time. Each state transition sequence is represented exactly once. State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a aa aab aabb.5x.8.5x.8.5x.2.5x.2.3x.7.2.2.2.2.2.4x.5.4x.5.4x.5.4x.5.5x.3.3x.7.5x.3.1.1.1.3x.3.5x.7.3x.3.5x.7.1.1 Speech Recognition Lecture 4: Hidden Markov Models 28

Problem 1: Trellis Diagram, cont d Now let s accumulate the scores. Note that the inputs to a node are from the left and top, so if we work to the right and down all necessary input scores will be available. State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a aa aab aabb.5x.8.5x.8.5x.2.5x.2 1 0.4.16.2.02.3x.7.3x.7.2.2.2.2.2.4x.5.4x.5.4x.5.4x.5.21+.04+.08=.33.5x.3.5x.3.1.1.1.3x.3.084+.066+.32=.182.5x.7.033+.03=.063.0495+.0182=.0677.3x.3.5x.7.1.1 Speech Recognition Lecture 4: Hidden Markov Models 29

Problem 1: Trellis Diagram, cont d Boundary condition: Score of (state 1, φ) = 1. Basic recursion: Score of node i = 0 For the set of predecessor nodes j: Score of node i += score of predecessor node j x the transition probability from j to i x observation probability along that transition if the transition is not null. Speech Recognition Lecture 4: Hidden Markov Models 30

Problem 1: Forward Pass Algorithm Let α t (s) for t ε {1..T} be the probability of being in state s at time t and having produced output x 1t =x 1..x t α t (s) = Σ s α t-1 (s ) P θ (s s ) P θ (x t s ->s) + Σ s α t (s ) P θ (s s ) 1 st term: sum over all output producing arcs 2 nd term: all null arcs This is called the Forward Pass algorithm. Important: The computational complexity of the forward algorithm is linear in time (or in the length of the observation sequence) This calculation allows us to solve Problem 1: P θ (X) = Σ s α T (s) Note that in many cases you may wish to compute P θ (X,s f ) Speech Recognition Lecture 4: Hidden Markov Models 31

Problem 2 Given the observations X, find the most likely state sequence This is solved using the Viterbi algorithm Preview: The computation is similar to the forward algorithm, except we use max( ) instead of + Also, we need to remember which partial path led to the max Speech Recognition Lecture 4: Hidden Markov Models 32

Problem 2: Viterbi algorithm Returning to our example, let s find the most likely path for producing aabb. At each node, remember the max of predecessor score x transition probability. Also store the best predecessor for each node. State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a aa aab aabb.5x.8.5x.8.5x.2.5x.2 1 0.4.16.016.0016.3x.7.3x.7.2.2.2.2.2.4x.5.4x.5.4x.5.4x.5 max(.08.21.04).5x.3.5x.3.1.1.1.3x.3 max(.084.042.032).5x.7.0168.3x.3.5x.7.00336.1.1.00588 max(.03.021) Max(.0084.0315).0294 Speech Recognition Lecture 4: Hidden Markov Models 33

Problem 2: Viterbi algorithm, cont d Starting at the end, find the node with the highest score. Trace back the path to the beginning, following best arc leading into each node along the best path. State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a aa aab aabb.5x.8.5x.8.5x.2.5x.2 1 0.4 0.2.3x.7.3x.7.2.2.2.2.2.4x.5.4x.5.4x.5.4x.5.5x.3.21.5x.3.1.1.1.16.016.084.3x.3.5x.7.0168.3x.3.5x.7.1.1.0016.00336 0.02.00588.03.0315.0294 Speech Recognition Lecture 4: Hidden Markov Models 34

Problem 3 Estimate the parameters of the model. (training) Given a model topology and an output sequence, find the transition and output probabilities such that the probability of the output sequence is maximized. Recall in the state-observable case, we simply followed the unique path, giving a count to each transition. Speech Recognition Lecture 4: Hidden Markov Models 35

Problem 3 State Observable Example Assume the output sequence X=abbab, and we start in state 1. a b a b b a Observed counts along transitions: 1 0 2 1 0 1 Speech Recognition Lecture 4: Hidden Markov Models 36

Problem 3 State Observable Example Observed counts along transitions: 1 0 2 1 0 Estimated transition probabilities. (this is of course too little data to estimate these well.) 1 0.33 0 0.67 1 0 1 Speech Recognition Lecture 4: Hidden Markov Models 37

Generalization to Hidden MM case State-observable Unique path Give a count of 1 to each transition along the path Hidden states Many paths Assign a fractional count to each path For each transition on a given path, give the fractional count for that path Sum of the fractional counts =1 How to assign the fractional counts?? Speech Recognition Lecture 4: Hidden Markov Models 38

How to assign the fractional counts to the paths Guess some values for the parameters Compute the probability for each path using these parameter values Assign path counts in proportion to these probabilities Re-estimate parameter values Iterate until parameters converge Speech Recognition Lecture 4: Hidden Markov Models 39

Problem 3: Enumerative Example Assigning fractional counts For the following model, estimate the transition probabilities and the output probabilities for the sequence X=abaa a 1 a 4 a 2 a 5 a 3 Speech Recognition Lecture 4: Hidden Markov Models 40

Problem 3: Enumerative Example - Assigning fractional counts Initial guess: equiprobable ½ ½ 1/3 1/3 ½ ½ 1/2 ½ ½ 1/3 1/2 ½ ½ Speech Recognition Lecture 4: Hidden Markov Models 41

Problem 3: Enumerative Example cont d ½ ½ 1/3 7 paths corresponding to an output of abaa 1/3 ½ ½ 1/3 1/2 ½ ½ 1/2 1. pr(x,path1)=1/3x1/2x1/3x1/2x1/3x1/2x1/3x1/2x1/2=.000385 ½ ½ 2. pr(x,path2)=1/3x1/2x1/3x1/2x1/3x1/2x1/2x1/2x1/2=.000578 3. pr(x,path3)=1/3x1/2x1/3x1/2x1/3x1/2x1/2x1/2=.001157 4. pr(x,path4)=1/3x1/2x1/3x1/2x1/2x1/2x1/2x1/2x1/2=.000868 Speech Recognition Lecture 4: Hidden Markov Models 42

Problem 3: Enumerative Example cont d 7 paths: 5. pr(x,path5)=1/3x1/2x1/3x1/2x1/2x1/2x1/2x1/2=.001736 ½ ½ 1/3 1/3 ½ ½ 1/3 1/2 ½ ½ 1/2 ½ ½ 6. pr(x,path6)=1/3x1/2x1/2x1/2x1/2x1/2x1/2x1/2x1/2=.001302 7. pr(x,path7)=1/3x1/2x1/2x1/2x1/2x1/2x1/2x1/2=.002604 Pr(X) = Σ i pr(x,path i ) =.008632 Speech Recognition Lecture 4: Hidden Markov Models 43

Problem 3: Enumerative Example cont d a 1 a2 a 4 a5 Let C i be the a posteriori probability of path i C i = pr(x,path i )/pr(x) a 3 C 1 =.045 C 2 =.067 C 3 =.134 C 4 =.100 C 5 =.201 C 6 =.150 C 7 =.301 Count(a 1 )= 3C 1 +2C 2 +2C 3 +C 4 +C 5 =.838 Count(a 2 )=C 3 +C 5 +C 7 =.637 Count(a 3 )=C 1 +C 2 +C 4 +C 6 =.363 New estimates: a 1 =.46 a 2 =.34 a 3 =.20 Count(a 1, a ) = 2C 1 +C 2 +C 3 +C 4 +C 5 =.592 Count(a 1, b )=C 1 +C 2 +C 3 =.246 New estimates: p(a 1, a )=.71 p(a 1, b )=.29 Speech Recognition Lecture 4: Hidden Markov Models 44

Problem 3: Enumerative Example cont d a 1 a2 a 4 a5 Count(a 2, a ) = C 3 +C 7 =.436 Count(a 2, b )=C 5 =.201 a 3 New estimates: p(a 2, a )=.68 p(a 2, b )=.32 Count(a 4 )=C 2 +2C 4 +C 5 +3C 6 +2C 7 = 1.52 Count(a 5 )=C 1 +C 2 +C 3 +C 4 +C 5 +C 6 +C 7 = 1.00 New estimates: a 4 =.60 a 5 =.40 Count(a 4, a ) = C 2 +C 4 +C 5 +2C 6 +C 7 =.972 Count(a 4, b )=C 4 +C 6 +C 7 =.553 New estimates: p(a 4, a )=.64 p(a 4, b )=.36 Count(a 5, a ) = C 1 +C 2 +C 3 +C 4 +C 5 +2C 6 +C 7 = 1.0 Count(a 5, b )=0 New estimates: p(a 5, a )= 1.0 p(a 5, b )= 0 Speech Recognition Lecture 4: Hidden Markov Models 45

Problem 3: Enumerative Example cont d New parameters.46.71.29.68.32.34.20.60.64.36.40 1 0 Recompute Pr(X) =.02438 >.008632 Keep on repeating.. Speech Recognition Lecture 4: Hidden Markov Models 46

Problem 3: Enumerative Example cont d Step Pr(X) 1 0.008632 2 0.02438 3 0.02508 100 0.03125004 600 0.037037037 converged 0 1 1 0 2/3 1/2 1/2 0 Speech Recognition Lecture 4: Hidden Markov Models 47 1/3 1 0

Problem 3: Enumerative Example cont d Let s try a different initial parameter set Only change 1/3.6.4 ½ ½ 1/3 1/3 1/2 ½ ½ 1/2 ½ ½ Speech Recognition Lecture 4: Hidden Markov Models 48

Problem 3: Enumerative Example cont d Step Pr(X) 1 0.00914 2 0.02437 3 0.02507 10 0.04341 16 0.0625 converged 1 0 1/2 1/2 0 1 1/2 1 0 0 Speech Recognition Lecture 4: Hidden Markov Models 49 1/2 1 0

Problem 3: Parameter Estimation Performance The above re-estimation algorithm converges to a local maximum. The final solution depends on the starting point. The speed of convergence depends on the starting point. Speech Recognition Lecture 4: Hidden Markov Models 50

Problem 3: Forward-Backward Algorithm The forward-backward algorithm improves on the enumerative algorithm by using the trellis Instead of computing counts for each path, we compute counts for each transition at each time in the trellis. This results in the reduction from exponential computation to linear computation. Speech Recognition Lecture 4: Hidden Markov Models 51

Problem 3: Forward-Backward Algorithm Consider transition from state i to j, tr ij Let p t (tr ij,x) be the probability that tr ij is taken at time t, and the complete output is X. x t S i S j α t-1 (i) β t (j) p t (tr ij,x) = α t-1 (i) a ij b ij (x t ) β t (j) Speech Recognition Lecture 4: Hidden Markov Models 52

Problem 3: F-B algorithm cont d p t (tr ij,x) = α t-1 (i) a ij b ij (x t ) β t (j) where: α t-1 (i) = Pr(state=i, x 1 x t-1 ) = probability of being in state i and having produced x 1 x t-1 a ij = transition probability from state i to j b ij (x t ) = probability of output symbol x t along transition ij β t (j) = Pr(x t+1 x T state= j) = probability of producing x t+1 x T given you are in state j Speech Recognition Lecture 4: Hidden Markov Models 53

Problem 3: F-B algorithm cont d Transition count c t (tr ij X) = p t (tr ij,x) / Pr(X) The β s are computed recursively in a backward pass (analogous to the forward pass for the α s) β t (j) = Σ k β t+1 (k) a jk b jk (x t+1 ) (for all output producing arcs) + Σ k β t (k) a jk (for all null arcs) Speech Recognition Lecture 4: Hidden Markov Models 54

Problem 3: F-B algorithm cont d Let s return to our previous example, and work out the trellis calculations ½ ½ 1/3 1/3 ½ ½ 1/2 ½ ½ 1/3 1/2 ½ ½ Speech Recognition Lecture 4: Hidden Markov Models 55

Problem 3: F-B algorithm, cont d State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a ab aba abaa 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3 1/3 1/3 1/3 1/3 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 Speech Recognition Lecture 4: Hidden Markov Models 56

Problem 3: F-B algorithm, cont d Compute α s. since forced to end at state 3, α T =.008632=Pr(X) State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a ab aba abaa 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1.167.027.0046.00077.33 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3 1/3 1/3 1/3 1/3 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2.306.113.035.0097 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2 0.083.076.028.008632 Speech Recognition Lecture 4: Hidden Markov Models 57

Problem 3: F-B algorithm, cont d Compute β s. State: 1 2 3 Time: 0 1 2 3 4 Obs: φ a ab aba abaa 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2.0086.0039 1/3x1/2 1/3x1/2 1/3x1/2 1/3x1/2 1/3 1/3 1/3 1/3 1/3 1/2x1/2 1/2x1/2 1/2x1/2 1/2x1/2.016.0625.25 0 1/2x1/2.028 1/2x1/2.076 1/2x1/2.083 1/2x1/2 0 0 0 0 1 0 Speech Recognition Lecture 4: Hidden Markov Models 58

Problem 3: F-B algorithm, cont d Compute counts. (a posteriori probability of each transition) c t (tr ij X) = α t-1 (i) a ij b ij (x t ) β t (j)/ Pr(X) State: 1 2 3.167x.0625x.333x.5/.008632 Time: 0 1 2 3 4 Obs: φ a ab aba abaa.547.246.045 0.302.201.134.151.101.067.045 0.151.553.821 0 0 0 0 0 0 Speech Recognition Lecture 4: Hidden Markov Models 59

Problem 3: F-B algorithm cont d a 1 a 4 C(a 1 )=.547+.246+.045 C(a 2 )=.302+.201+.134 C(a 3 )=.151+.101+.067+.045 C(a 4 )=.151+.553+.821 C(a 5 )=1 C(a1, a )=.547+.045, C(a1, b )=.246 C(a2, a )=.302+.134, C(a2, b )=.201 C(a4, a )=.151+.821, C(a4, b )=.553 C(a5, a )=1, C(a5, b )=0 a2 a 3 a5 Speech Recognition Lecture 4: Hidden Markov Models 60

Problem 3: F-B algorithm cont d Normalize counts to get new parameter values..46.71.29.68.32.34.20.60.64.36.40 1 0 Result is the same as from the enumerative algorithm!! Speech Recognition Lecture 4: Hidden Markov Models 61

Continuous Hidden Markov models Parameterization Continuous Hidden Markov models (HMMs) replace the discrete observation probabilities by a continuous pdf and have 3 sets of parameters. 1. A prior distribution over the states π = P(s 0 = j); j= 1 N b 2. Transition probabilities between the states, a ij = P(s = j s = i); i, j = 1 N 3. A set of transition-conditioned observation probabilities, b ij (x t )=P(x t s= j,s =i) Let s use the mixture of Gaussians we discussed in the previous lecture: ij ( x t ) = M ij m= 1 b ijm ( x t ) = M ij m= 1 (2π ) p ijm n / 2 Σ ijm 1/ 2 e 1 ( x 2 t µ ijm ) T Σ 1 ijm ( x µ t ijm ) Speech Recognition Lecture 4: Hidden Markov Models 62

Continuous Hidden Markov Models The Three Problems The forward pass and Viterbi algorithm can be treated as before: α t (s) = Σ s α t-1 (s ) P θ (s s ) P θ (x t s ->s) + Σ s α t (s ) P θ (s s ) 1st term: sum over all output producing arcs 2nd term: all null arcs The forward-backward algorithm is still computed as before, where the posteriori probability of each transition: c t (tr ij X) = α t-1 (i) a ij b ij (x t ) β t (j) / Pr(X) and b ij (x t ) is the Gaussian mixture likelihood. The count for the m th Gaussian on transition tr ij can be computed as c t (ijm X) = α t-1 (i) a ij b ijm (x t ) β t (j) / Pr(X) So the mean of the m th Gaussian on transition t ij would be µ ijm = c t t t ( ijm c ( ijm t X ) x X ) and similarly for the variance/covariance matrix t Speech Recognition Lecture 4: Hidden Markov Models 63

Parameter Tying Represent word as sequence of speech sounds: cat: K AE T bat: B AE T nap: N AE P Forward pass/viterbi is easy: a 1 a 1 a 2 a 2 Forward-backward algorithm: Map transition ij to index k, where k is a unique identifier (e.g., number of the speech sound) Establish set of accumulators on k rather than transition ij Speech Recognition Lecture 4: Hidden Markov Models 64

Practical Matters Dynamic Range Issues Typical Gaussian likelihood for 13-dimensional Gaussian Forward pass calculation: α t (s) = Σ s α t-1 (s ) P θ (s s ) P θ (x t s ->s) + Σ s α t (s ) P θ (s s ) so likelihood of 100 frame utterance on the order of 10-600 Clear issue if calculations done in linear likelihood/probability domain Speech Recognition Lecture 4: Hidden Markov Models 65

Practical Matters Dynamic Range Issues Solution: Do calculation in log domain Let L 1, L 2 and L 3 be likelihoods and let x = ln b L 1, y = log b L 2, z = log b L 3 For the case when we need to compute L 3 = L 1 L 2 z = x + y. Wonderful! But what about L 3 = L 1 + L 2? Assume L 1 > L 2 L 1 + L 2 = b x + b y = b x (1+b y-x ) z = x + log b (1 + b y-x ) If L 1 >> L 2 (say 5 orders of magnitude) then set z = x If we choose b = 1.001, then (y-x) ~ 1000 log (L 2 / L 1 ), so a difference of five orders of magnitude can be stored in a table of size roughly 10000 with direct lookup of entries of round (x-y) So for addition: If x > y Else if x > y + 11000 return x else return x + table [x-y] if y > x + 11000 return y else return y + table[y-x] Speech Recognition Lecture 4: Hidden Markov Models 66

Practical Matters: Thresholding The large fraction of the counts are in an ellipse along the trellis diagonal Can therefore threshold the αs in the forward pass. Let T =sum of the live αs in each timeslice. Do not extend α to next timeslice if α < k T. Speech Recognition Lecture 4: Hidden Markov Models 67

Other Practical Matters Since you only need to save the αs in a narrow band, you don t need to keep an N (number of states) x M (time) trellis in memory. You just need to store two timeslices of N states and keep swapping them, and save the αs (in the F-B algorithm). Much less storage. Keep track of the total logprob of the data. It MUST increase after each iteration or you did not program the algorithm correctly a nice property of the F-B algorithm. Speech Recognition Lecture 4: Hidden Markov Models 68

Sketch of Proof of Convergence of F-B Algorithm Goal is to find set of parameters θ that maximize P θ (X). If we knew the actual transition sequence t ij this would be easy, as discussed earlier. What we do instead is to assume a θ, estimate P θ (t ij X) and use this to compute a new θ Why does this converge? Speech Recognition Lecture 4: Hidden Markov Models 69

Sketch of Proof Jensen s Inequality Say we have two probability distributions, p(x) and q(x) Definition: Expectation of a convex transformation of a random variable (q(x)/p(x) ) is less than equal to the convex transformation of the expectation of the random variable Σ x p(x) log (q(x) / p(x)) <= log Σ x p(x) q(x) / p(x) <= 0 Σ x p(x) log q(x) - Σ x p(x) log p(x)) <= 0 The inequality known as Jensen s Inequality -Σ x p(x) log q(x) >= -Σ x p(x) log p(x) [= H(p(x))] is Speech Recognition Lecture 4: Hidden Markov Models 70

Sketch of Proof Start with set of parameters θ, want to find a θ that increases the likelihood of the data log P θ (X) = log P θ (X,T) log P θ (T X) (Bayes Law) T a set of transitions (i.e., a path) through the lattice Multiply by P θ (T X) and sum over all paths T: Σ T P θ (T X) log P θ (X) = Σ T P θ (T X) log P θ (X,T) Σ T P θ (T X) log P θ (T X) log P θ (X) = Q(θ,θ ) - H(θ,θ ) If we can find a θ such that Q(θ,θ ) > Q(θ,θ) then by Jensen s inequality, H(θ,θ ) will also decrease. But what is Q(θ,θ )? It is just the weighted sum of the path likelihoods with respect to the new parameters θ. We can therefore collect terms and maximize as in ordinary ML estimation. Note the likelihood of the data is guaranteed to increase after each iteration. The two steps the Estimation of the Q function, and its Maximization is called the E-M algorithm and the proof can be generalized to a wide variety of cases in which there is a set of hidden variables whose values, if known, would simplify ML estimation. Speech Recognition Lecture 4: Hidden Markov Models 71

The EM algorithm An expectation-maximization (EM) algorithm is used in statistics for finding maximum likelihood estimates of parameters in probabilistic models, where the model depends on unobserved hidden variables. EM alternates between performing an expectation (E) step, which computes an expectation of the likelihood by including the latent variables as if they were observed, and a maximization (M) step, which computes the maximum likelihood estimates of the parameters by maximizing the expected likelihood found on the E step. The parameters found on the M step are then used to begin another E step, and the process is repeated. The EM algorithm was explained and given its name in a classic 1977 paper by A. Dempster and D. Rubin in the Journal of the Royal Statistical Society. Speech Recognition Lecture 4: Hidden Markov Models 72

The Baum-Welch algorithm The Baum-Welch algorithm is a generalized expectationmaximization algorithm for computing maximum likelihood estimates for the parameters of a Hidden Markov Model when given only observations as training data. It is a special case of the EM algorithm for HMMs. Speech Recognition Lecture 4: Hidden Markov Models 73

HMMs in Speech Recognition Each phoneme represented by its own context-independent HMM Training requires grouping data from each subword unit followed by parameter estimation For a 5-state HMM: Segment data from each instance of sub-word unit into 5 parts Aggregate all data from corresponding parts Estimate parameters for each of the aggregates Repeat Speech Recognition Lecture 4: Hidden Markov Models 74

Summary of Markov Modeling Basics Key idea 1: States for modeling sequences Markov introduced the idea of state to capture the dependence on the past (time evolution). A state embodies all the relevant information about the past. Each state represents an equivalence class of pasts that influence the future in the same manner. Key idea 2: Marginal probabilities To compute Pr(X), sum up over all of the state sequences than can produce X Pr(X) = Σ s Pr(X,S) For a given S, it is easy to compute Pr(X,S) Key idea 3: Trellis The trellis representation is a clever way to enumerate all sequences. It uses the Markov property to reduce exponential-time enumeration algorithms to linear-time trellis algorithms. Speech Recognition Lecture 4: Hidden Markov Models 75

Summary ( contd.) We introduced the Forward-Backward algorithm for the maximum likelihood estimation of model parameters Discussed it from an intuitive point (counting) of view and informationtheoretic (Q-function) point of view Speech Recognition Lecture 4: Hidden Markov Models 76