CS 2750 Machine Learning Hidden Markov Models Prof

  • Slides: 113
Download presentation
CS 2750: Machine Learning Hidden Markov Models Prof. Adriana Kovashka University of Pittsburgh March

CS 2750: Machine Learning Hidden Markov Models Prof. Adriana Kovashka University of Pittsburgh March 21, 2016 All slides are from Ray Mooney

Motivating Example: Part Of Speech Tagging • Annotate each word in a sentence with

Motivating Example: Part Of Speech Tagging • Annotate each word in a sentence with a part-of-speech marker. • Lowest level of syntactic analysis. John saw the saw and decided to take it to the table. NNP VBD DT NN CC VBD TO VB PRP IN DT NN • Useful for subsequent syntactic parsing and word sense disambiguation. 2

English Parts of Speech • Noun (person, place or thing) – – – Singular

English Parts of Speech • Noun (person, place or thing) – – – Singular (NN): dog, fork Plural (NNS): dogs, forks Proper (NNP, NNPS): John, Springfields Personal pronoun (PRP): I, you, he, she, it Wh-pronoun (WP): who, what • Verb (actions and processes) – – – – Base, infinitive (VB): eat Past tense (VBD): ate Gerund (VBG): eating Past participle (VBN): eaten Non 3 rd person singular present tense (VBP): eat 3 rd person singular present tense: (VBZ): eats Modal (MD): should, can To (TO): to (to eat) 3

English Parts of Speech (cont. ) • Adjective (modify nouns) – Basic (JJ): red,

English Parts of Speech (cont. ) • Adjective (modify nouns) – Basic (JJ): red, tall – Comparative (JJR): redder, taller – Superlative (JJS): reddest, tallest • Adverb (modify verbs) – Basic (RB): quickly – Comparative (RBR): quicker – Superlative (RBS): quickest • Preposition (IN): on, in, by, to, with • Determiner: – Basic (DT) a, an, the – WH-determiner (WDT): which, that • Coordinating Conjunction (CC): and, but, or, • Particle (RP): off (took off), up (put up) 4

Ambiguity in POS Tagging • “Like” can be a verb or a preposition –

Ambiguity in POS Tagging • “Like” can be a verb or a preposition – I like/VBP candy. – Time flies like/IN an arrow. • “Around” can be a preposition, particle, or adverb – I bought it at the shop around/IN the corner. – I never got around/RP to getting a car. – A new Prius costs around/RB $25 K. 5

Classification Learning • Typical machine learning addresses the problem of classifying a feature-vector description

Classification Learning • Typical machine learning addresses the problem of classifying a feature-vector description into a fixed number of classes. • There are many standard learning methods for this task: – – – Decision Trees and Rule Learning Naïve Bayes and Bayesian Networks Logistic Regression / Maximum Entropy (Max. Ent) Perceptron and Neural Networks Support Vector Machines (SVMs) Nearest-Neighbor / Instance-Based 6

Beyond Classification Learning • Standard classification problem assumes individual cases are disconnected and independent

Beyond Classification Learning • Standard classification problem assumes individual cases are disconnected and independent (i. i. d. : independently and identically distributed). • Many NLP problems do not satisfy this assumption and involve making many connected decisions, each resolving a different ambiguity, but which are mutually dependent. • More sophisticated learning and inference techniques are needed to handle such situations in general. 7

Sequence Labeling Problem • Many NLP problems can viewed as sequence labeling. • Each

Sequence Labeling Problem • Many NLP problems can viewed as sequence labeling. • Each token in a sequence is assigned a label. • Labels of tokens are dependent on the labels of other tokens in the sequence, particularly their neighbors (not i. i. d). foo bar blam zonk bar blam 8

Information Extraction • Identify phrases in language that refer to specific types of entities

Information Extraction • Identify phrases in language that refer to specific types of entities and relations in text. • Named entity recognition is task of identifying names of people, places, organizations, etc. in text. people organizations places – Michael Dell is the CEO of Dell Computer Corporation and lives in Austin Texas. • Extract pieces of information relevant to a specific application, e. g. used car ads: make model year mileage price – For sale, 2002 Toyota Prius, 20, 000 mi, $15 K or best offer. Available starting July 30, 2006. 9

Semantic Role Labeling • For each clause, determine the semantic role played by each

Semantic Role Labeling • For each clause, determine the semantic role played by each noun phrase that is an argument to the verb. agent patient source destination instrument – John drove Mary from Austin to Dallas in his Toyota Prius. – The hammer broke the window. • Also referred to a “case role analysis, ” “thematic analysis, ” and “shallow semantic parsing” 10

Bioinformatics • Sequence labeling also valuable in labeling genetic sequences in genome analysis. extron

Bioinformatics • Sequence labeling also valuable in labeling genetic sequences in genome analysis. extron intron – AGCTAACGTTCGATACGGATTACAGCCT 11

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier NNP 12

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier VBD 13

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier DT 14

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier NN 15

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier CC 16

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier VBD 17

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier TO 18

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier VB 19

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier PRP 20

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier IN 21

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier DT 22

Sequence Labeling as Classification • Classify each token independently but use as input features,

Sequence Labeling as Classification • Classify each token independently but use as input features, information about the surrounding tokens (sliding window). John saw the saw and decided to take it to the table. classifier NN 23

Sequence Labeling as Classification Using Outputs as Inputs • Better input features are usually

Sequence Labeling as Classification Using Outputs as Inputs • Better input features are usually the categories of the surrounding tokens, but these are not available yet. • Can use category of either the preceding or succeeding tokens by going forward or back and using previous output. 24

Forward Classification John saw the saw and decided to take it to the table.

Forward Classification John saw the saw and decided to take it to the table. classifier NNP 25

Forward Classification NNP John saw the saw and decided to take it to the

Forward Classification NNP John saw the saw and decided to take it to the table. classifier VBD 26

Forward Classification NNP VBD John saw the saw and decided to take it to

Forward Classification NNP VBD John saw the saw and decided to take it to the table. classifier DT 27

Forward Classification NNP VBD DT John saw the saw and decided to take it

Forward Classification NNP VBD DT John saw the saw and decided to take it to the table. classifier NN 28

Forward Classification NNP VBD DT NN John saw the saw and decided to take

Forward Classification NNP VBD DT NN John saw the saw and decided to take it to the table. classifier CC 29

Forward Classification NNP VBD DT NN CC John saw the saw and decided to

Forward Classification NNP VBD DT NN CC John saw the saw and decided to take it to the table. classifier VBD 30

Forward Classification NNP VBD DT NN CC VBD John saw the saw and decided

Forward Classification NNP VBD DT NN CC VBD John saw the saw and decided to take it to the table. classifier TO 31

Forward Classification NNP VBD DT NN CC VBD TO John saw the saw and

Forward Classification NNP VBD DT NN CC VBD TO John saw the saw and decided to take it to the table. classifier VB 32

Forward Classification NNP VBD DT NN CC VBD TO VB John saw the saw

Forward Classification NNP VBD DT NN CC VBD TO VB John saw the saw and decided to take it to the table. classifier PRP 33

Forward Classification NNP VBD DT NN CC VBD TO VB PRP John saw the

Forward Classification NNP VBD DT NN CC VBD TO VB PRP John saw the saw and decided to take it to the table. classifier IN 34

Forward Classification NNP VBD DT NN CC VBD TO VB PRP IN John saw

Forward Classification NNP VBD DT NN CC VBD TO VB PRP IN John saw the saw and decided to take it to the table. classifier DT 35

Forward Classification NNP VBD DT NN CC VBD TO VB PRP IN DT John

Forward Classification NNP VBD DT NN CC VBD TO VB PRP IN DT John saw the saw and decided to take it to the table. classifier NN 36

Backward Classification • Disambiguating “to” in this case would be even easier backward. John

Backward Classification • Disambiguating “to” in this case would be even easier backward. John saw the saw and decided to take it to the table. classifier NN 37

Backward Classification • Disambiguating “to” in this case would be even easier backward. John

Backward Classification • Disambiguating “to” in this case would be even easier backward. John saw the saw and decided to take it NN to the table. classifier DT 38

Backward Classification • Disambiguating “to” in this case would be even easier backward. John

Backward Classification • Disambiguating “to” in this case would be even easier backward. John saw the saw and decided to take it DT NN to the table. classifier IN 39

Backward Classification • Disambiguating “to” in this case would be even easier backward. IN

Backward Classification • Disambiguating “to” in this case would be even easier backward. IN DT NN John saw the saw and decided to take it to the table. classifier PRP 40

Backward Classification • Disambiguating “to” in this case would be even easier backward. PRP

Backward Classification • Disambiguating “to” in this case would be even easier backward. PRP IN DT NN John saw the saw and decided to take it to the table. classifier VB 41

Backward Classification • Disambiguating “to” in this case would be even easier backward. VB

Backward Classification • Disambiguating “to” in this case would be even easier backward. VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier TO 42

Backward Classification • Disambiguating “to” in this case would be even easier backward. TO

Backward Classification • Disambiguating “to” in this case would be even easier backward. TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier VBD 43

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier CC 44

Backward Classification • Disambiguating “to” in this case would be even easier backward. CC

Backward Classification • Disambiguating “to” in this case would be even easier backward. CC VBD TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier NN 45

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD CC VBD TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier DT 46

Backward Classification • Disambiguating “to” in this case would be even easier backward. DT

Backward Classification • Disambiguating “to” in this case would be even easier backward. DT VBD CC VBD TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier VBD 47

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD

Backward Classification • Disambiguating “to” in this case would be even easier backward. VBD DT VBD CC VBD TO VB PRP IN DT NN John saw the saw and decided to take it to the table. classifier NNP 48

Problems with Sequence Labeling as Classification • Not easy to integrate information from category

Problems with Sequence Labeling as Classification • Not easy to integrate information from category of tokens on both sides. • Difficult to propagate uncertainty between decisions and “collectively” determine the most likely joint assignment of categories to all of the tokens in a sequence. 49

Probabilistic Sequence Models • Probabilistic sequence models allow integrating uncertainty over multiple, interdependent classifications

Probabilistic Sequence Models • Probabilistic sequence models allow integrating uncertainty over multiple, interdependent classifications and collectively determine the most likely global assignment. • Two standard models – Hidden Markov Model (HMM) – Conditional Random Field (CRF) 50

Markov Model / Markov Chain • A finite state machine with probabilistic state transitions.

Markov Model / Markov Chain • A finite state machine with probabilistic state transitions. • Makes Markov assumption that next state only depends on the current state and independent of previous history. 51

Sample Markov Model for POS 0. 05 0. 1 Noun Det 0. 5 0.

Sample Markov Model for POS 0. 05 0. 1 Noun Det 0. 5 0. 9 Verb 0. 05 0. 1 0. 4 0. 25 Prop. Noun 0. 8 0. 1 0. 5 start 0. 1 stop 0. 25 52

Sample Markov Model for POS 0. 05 0. 1 Noun Det 0. 5 0.

Sample Markov Model for POS 0. 05 0. 1 Noun Det 0. 5 0. 9 Verb 0. 05 0. 1 0. 4 0. 25 Prop. Noun 0. 8 0. 1 0. 5 start 0. 1 stop 0. 25 P(Prop. Noun Verb Det Noun) = 0. 4*0. 8*0. 25*0. 95*0. 1=0. 0076 53

Hidden Markov Model • Probabilistic generative model for sequences. • Assume an underlying set

Hidden Markov Model • Probabilistic generative model for sequences. • Assume an underlying set of hidden (unobserved) states in which the model can be (e. g. parts of speech). • Assume probabilistic transitions between states over time (e. g. transition from POS to another POS as sequence is generated). • Assume a probabilistic generation of tokens from states (e. g. words generated for each POS). 54

Sample HMM for POS 0. 05 the a the that Det 0. 1 cat

Sample HMM for POS 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 55

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 56

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 Prop. Noun 0. 5 start Tom John Mary Alice Jerry 0. 25 bit ate saw played hit gave stop Verb 0. 8 0. 1 57

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John 58

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John 59

Sample HMM Generation 0. 05 the a the that 0. 1 cat dog car

Sample HMM Generation 0. 05 the a the that 0. 1 cat dog car bed pen apple 0. 95 Det Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit 60

Sample HMM Generation 0. 05 the a the that 0. 1 cat dog car

Sample HMM Generation 0. 05 the a the that 0. 1 cat dog car bed pen apple 0. 95 Det Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit 61

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit the 62

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit the 63

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit the apple 64

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog

Sample HMM Generation 0. 05 the a the that Det 0. 1 cat dog car bed pen apple 0. 95 Noun 0. 5 0. 9 0. 05 0. 1 0. 4 0. 25 0. 1 stop Verb 0. 8 0. 1 Prop. Noun 0. 5 start Tom John Mary Alice Jerry bit ate saw played hit gave 0. 25 John bit the apple 65

Formal Definition of an HMM • A set of N +2 states S={s 0,

Formal Definition of an HMM • A set of N +2 states S={s 0, s 1, s 2, … s. N, s. F} – Distinguished start state: s 0 – Distinguished final state: s. F • A set of M possible observations V={v 1, v 2…v. M} • A state transition probability distribution A={aij} • Observation probability distribution for each state j B={bj(k)} • Total parameter set λ={A, B} 66

HMM Generation Procedure • To generate a sequence of T observations: O = o

HMM Generation Procedure • To generate a sequence of T observations: O = o 1 o 2 … o. T Set initial state q 1=s 0 For t = 1 to T Transit to another state qt+1=sj based on transition distribution aij for state qt Pick an observation ot=vk based on being in state qt using distribution bqt(k) 67

Three Useful HMM Tasks • Observation Likelihood: To classify and order sequences. • Most

Three Useful HMM Tasks • Observation Likelihood: To classify and order sequences. • Most likely state sequence (Decoding): To tag each token in a sequence with a label. • Maximum likelihood training (Learning): To train models to fit empirical training data. 68

HMM: Observation Likelihood • Given a sequence of observations, O, and a model with

HMM: Observation Likelihood • Given a sequence of observations, O, and a model with a set of parameters, λ, what is the probability that this observation was generated by this model: P(O| λ) ? • Allows HMM to be used as a language model: A formal probabilistic model of a language that assigns a probability to each string saying how likely that string was to have been generated by the language. • Useful for two tasks: – Sequence Classification – Most Likely Sequence 69

Sequence Classification • Assume an HMM is available for each category (i. e. language).

Sequence Classification • Assume an HMM is available for each category (i. e. language). • What is the most likely category for a given observation sequence, i. e. which category’s HMM is most likely to have generated it? • Used in speech recognition to find most likely word model to have generate a given sound or phoneme sequence. O ah s t e n ? Austin ? P(O | Austin) > P(O | Boston) ? Boston 70

Most Likely Sequence • Of two or more possible sequences, which one was most

Most Likely Sequence • Of two or more possible sequences, which one was most likely generated by a given model? • Used to score alternative word sequence interpretations in speech recognition. Ordinary English O 1 ? dice precedent core ? vice president Gore O 2 P(O 2 | Ord. English) > P(O 1 | Ord. English) ? 71

HMM: Observation Likelihood Naïve Solution • Consider all possible state sequences, Q, of length

HMM: Observation Likelihood Naïve Solution • Consider all possible state sequences, Q, of length T that the model could have traversed in generating the given observation sequence. • Compute the probability of a given state sequence from A, and multiply it by the probabilities of generating each of given observations in each of the corresponding states in this sequence to get P(O, Q| λ) = P(O| Q, λ) P(Q| λ). • Sum this over all possible state sequences to get P(O| λ). • Computationally complex: O(TNT). 72

HMM: Observation Likelihood Efficient Solution • Due to the Markov assumption, the probability of

HMM: Observation Likelihood Efficient Solution • Due to the Markov assumption, the probability of being in any state at any given time t only relies on the probability of being in each of the possible states at time t− 1. • Forward Algorithm: Uses dynamic programming to exploit this fact to efficiently compute observation likelihood in O(TN 2) time. – Compute a forward trellis that compactly and implicitly encodes information about all possible state paths. 73

Forward Probabilities • Let t(j) be the probability of being in state j after

Forward Probabilities • Let t(j) be the probability of being in state j after seeing the first t observations (by summing over all initial paths leading to j). 74

Forward Step s 1 s 2 a 1 j a 2 j sj a.

Forward Step s 1 s 2 a 1 j a 2 j sj a. Nj s. N t-1(i) t(i) • Consider all possible ways of getting to sj at time t by coming from all possible states si and determine probability of each. • Sum these to get the total probability of being in state sj at time t while accounting for the first t − 1 observations. • Then multiply by the probability of actually observing ot in sj. 75

Forward Trellis s 1 s 2 s 0 s. N t 1 t 2

Forward Trellis s 1 s 2 s 0 s. N t 1 t 2 t 3 t. T-1 t. T s. F • Continue forward in time until reaching final time point and sum probability of ending in final state. 76

Computing the Forward Probabilities • Initialization • Recursion • Termination 77

Computing the Forward Probabilities • Initialization • Recursion • Termination 77

Forward Computational Complexity • Requires only O(TN 2) time to compute the probability of

Forward Computational Complexity • Requires only O(TN 2) time to compute the probability of an observed sequence given a model. • Exploits the fact that all state sequences must merge into one of the N possible states at any point in time and the Markov assumption that only the last state effects the next one. 78

Most Likely State Sequence (Decoding) • Given an observation sequence, O, and a model,

Most Likely State Sequence (Decoding) • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. 79

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 80

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 81

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 82

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 83

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 84

Most Likely State Sequence • Given an observation sequence, O, and a model, λ,

Most Likely State Sequence • Given an observation sequence, O, and a model, λ, what is the most likely state sequence, Q=q 1, q 2, …q. T, that generated this sequence from this model? • Used for sequence labeling, assuming each state corresponds to a tag, it determines the globally best assignment of tags to all tokens in a sequence using a principled approach grounded in probability theory. John gave the dog an apple. Det Noun Prop. Noun Verb 85

HMM: Most Likely State Sequence Efficient Solution • Obviously, could use naïve algorithm based

HMM: Most Likely State Sequence Efficient Solution • Obviously, could use naïve algorithm based on examining every possible state sequence of length T. • Dynamic Programming can also be used to exploit the Markov assumption and efficiently determine the most likely state sequence for a given observation and model. • Standard procedure is called the Viterbi algorithm (Viterbi, 1967) and also has O(N 2 T) time complexity. 86

Viterbi Scores • Recursively compute the probability of the most likely subsequence of states

Viterbi Scores • Recursively compute the probability of the most likely subsequence of states that accounts for the first t observations and ends in state sj. • Also record “backpointers” that subsequently allow backtracing the most probable state sequence. § btt(j) stores the state at time t-1 that maximizes the probability that system was in state sj at time t (given the observed sequence). 87

Computing the Viterbi Scores • Initialization • Recursion • Termination Analogous to Forward algorithm

Computing the Viterbi Scores • Initialization • Recursion • Termination Analogous to Forward algorithm except take max instead of sum 88

Computing the Viterbi Backpointers • Initialization • Recursion • Termination Final state in the

Computing the Viterbi Backpointers • Initialization • Recursion • Termination Final state in the most probable state sequence. Follow backpointers to initial state to construct full sequence. 89

Viterbi Backpointers s 1 s 2 s 0 s. N t 1 t 2

Viterbi Backpointers s 1 s 2 s 0 s. N t 1 t 2 t 3 t. T-1 t. T s. F 90

Viterbi Backtrace s 1 s 2 s 0 s. N t 1 t 2

Viterbi Backtrace s 1 s 2 s 0 s. N t 1 t 2 t 3 t. T-1 t. T s. F Most likely Sequence: s 0 s. N s 1 s 2 …s 2 s. F 91

HMM Learning • Supervised Learning: All training sequences are completely labeled (tagged). • Unsupervised

HMM Learning • Supervised Learning: All training sequences are completely labeled (tagged). • Unsupervised Learning: All training sequences are unlabelled (but generally know the number of tags, i. e. states). • Semisupervised Learning: Some training sequences are labeled, most are unlabeled. 92

Supervised HMM Training • If training sequences are labeled (tagged) with the underlying state

Supervised HMM Training • If training sequences are labeled (tagged) with the underlying state sequences that generated them, then the parameters, λ={A, B} can all be estimated directly. Training Sequences John ate the apple A dog bit Mary hit the dog John gave Mary the cat. . Supervised HMM Training Det Noun Prop. Noun Verb 93

Supervised Parameter Estimation • Estimate state transition probabilities based on tag bigram and unigram

Supervised Parameter Estimation • Estimate state transition probabilities based on tag bigram and unigram statistics in the labeled data. • Estimate the observation probabilities based on tag/word co-occurrence statistics in the labeled data. • Use appropriate smoothing if training data is sparse. 94

Learning and Using HMM Taggers • Use a corpus of labeled sequence data to

Learning and Using HMM Taggers • Use a corpus of labeled sequence data to easily construct an HMM using supervised training. • Given a novel unlabeled test sequence to tag, use the Viterbi algorithm to predict the most likely (globally optimal) tag sequence. 95

Unsupervised Maximum Likelihood Training Sequences ah s t e n a s t i

Unsupervised Maximum Likelihood Training Sequences ah s t e n a s t i n oh s t u n eh z t en . . . HMM Training Austin 96

Maximum Likelihood Training • Given an observation sequence, O, what set of parameters, λ,

Maximum Likelihood Training • Given an observation sequence, O, what set of parameters, λ, for a given model maximizes the probability that this data was generated from this model (P(O| λ))? • Used to train an HMM model and properly induce its parameters from a set of training data. • Only need to have an unannotated observation sequence (or set of sequences) generated from the model. Does not need to know the correct state sequence(s) for the observation sequence(s). In this sense, it is unsupervised. 97

HMM: Maximum Likelihood Training Efficient Solution • There is no known efficient algorithm for

HMM: Maximum Likelihood Training Efficient Solution • There is no known efficient algorithm for finding the parameters, λ, that truly maximizes P(O| λ). • However, using iterative re-estimation, the Baum. Welch algorithm (a. k. a. forward-backward) , a version of a standard statistical procedure called Expectation Maximization (EM), is able to locally maximize P(O| λ). • In practice, EM is able to find a good set of parameters that provide a good fit to the training data in many cases. 99

EM Algorithm • Iterative method for learning probabilistic categorization model from unsupervised data. •

EM Algorithm • Iterative method for learning probabilistic categorization model from unsupervised data. • Initially assume random assignment of examples to categories. • Learn an initial probabilistic model by estimating model parameters from this randomly labeled data. • Iterate following two steps until convergence: – Expectation (E-step): Compute P(ci | E) for each example given the current model, and probabilistically re-label the examples based on these posterior probability estimates. – Maximization (M-step): Re-estimate the model parameters, , from the probabilistically re-labeled data. 100

EM Initialize: Assign random probabilistic labels to unlabeled data Unlabeled Examples + + +

EM Initialize: Assign random probabilistic labels to unlabeled data Unlabeled Examples + + + 101

EM Initialize: Give soft-labeled training data to a probabilistic learner + + Prob. Learner

EM Initialize: Give soft-labeled training data to a probabilistic learner + + Prob. Learner + 102

EM Initialize: Produce a probabilistic classifier + + Prob. Learner Prob. Classifier + 103

EM Initialize: Produce a probabilistic classifier + + Prob. Learner Prob. Classifier + 103

EM E Step: Relabel unlabeled data using the trained classifier + Prob. Learner Prob.

EM E Step: Relabel unlabeled data using the trained classifier + Prob. Learner Prob. Classifier + + 104

EM M step: Retrain classifier on relabeled data + Prob. Learner Prob. Classifier +

EM M step: Retrain classifier on relabeled data + Prob. Learner Prob. Classifier + + Continue EM iterations until probabilistic labels on unlabeled data converge. 105

Sketch of Baum-Welch (EM) Algorithm for Training HMMs Assume an HMM with N states.

Sketch of Baum-Welch (EM) Algorithm for Training HMMs Assume an HMM with N states. Randomly set its parameters λ=(A, B) (making sure they represent legal distributions) Until converge (i. e. λ no longer changes) do: E Step: Use the forward/backward procedure to determine the probability of various possible state sequences for generating the training data M Step: Use these probability estimates to re-estimate values for all of the parameters λ 106

Backward Probabilities • Let t(i) be the probability of observing the final set of

Backward Probabilities • Let t(i) be the probability of observing the final set of observations from time t+1 to T given that one is in state i at time t. 107

Computing the Backward Probabilities • Initialization • Recursion • Termination 108

Computing the Backward Probabilities • Initialization • Recursion • Termination 108

Estimating Probability of State Transitions • Let t(i, j) be the probability of being

Estimating Probability of State Transitions • Let t(i, j) be the probability of being in state i at time t and state j at time t + 1 s 2 a 1 i a 2 i a 3 i si aj 1 aj 2 aj 3 sj a. Ni aj. N s 1 s 2 s. N t-1 t t+1 t+2

Re-estimating A

Re-estimating A

Estimating Observation Probabilities • Let t(i) be the probability of being in state i

Estimating Observation Probabilities • Let t(i) be the probability of being in state i at time t given the observations and the model.

Re-estimating B

Re-estimating B

Pseudocode for Baum-Welch (EM) Algorithm for Training HMMs Assume an HMM with N states.

Pseudocode for Baum-Welch (EM) Algorithm for Training HMMs Assume an HMM with N states. Randomly set its parameters λ=(A, B) (making sure they represent legal distributions) Until converge (i. e. λ no longer changes) do: E Step: Compute values for t(j) and t(i, j) using current values for parameters A and B. M Step: Re-estimate parameters: 113

EM Properties • Each iteration changes the parameters in a way that is guaranteed

EM Properties • Each iteration changes the parameters in a way that is guaranteed to increase the likelihood of the data: P(O| ). • Anytime algorithm: Can stop at any time prior to convergence to get approximate solution. • Converges to a local maximum.