CS 416 Artificial Intelligence Lecture 19 Reasoning over Time Chapter 15 Lecture 19 Reasoning over Time Chapter 15.

Slides:



Advertisements
Similar presentations
Presented by Erin Palmer. Speech processing is widely used today Can you think of some examples? Phone dialog systems (bank, Amtrak) Computers dictation.
Advertisements

Building an ASR using HTK CS4706
Speech Recognition Part 3 Back end processing. Speech recognition simplified block diagram Speech Capture Speech Capture Feature Extraction Feature Extraction.
Hidden Markov Models Reading: Russell and Norvig, Chapter 15, Sections
Hidden Markov Models. A Hidden Markov Model consists of 1.A sequence of states {X t |t  T } = {X 1, X 2,..., X T }, and 2.A sequence of observations.
Chapter 15 Probabilistic Reasoning over Time. Chapter 15, Sections 1-5 Outline Time and uncertainty Inference: ltering, prediction, smoothing Hidden Markov.
Hidden Markov Models Bonnie Dorr Christof Monz CMSC 723: Introduction to Computational Linguistics Lecture 5 October 6, 2004.
Hidden Markov Models Dave DeBarr
Hidden Markov Models Theory By Johan Walters (SR 2003)
Sequential Modeling with the Hidden Markov Model Lecture 9 Spoken Language Processing Prof. Andrew Rosenberg.
Natural Language Processing - Speech Processing -
Application of HMMs: Speech recognition “Noisy channel” model of speech.
Speech Recognition. What makes speech recognition hard?
Speech Recognition Training Continuous Density HMMs Lecture Based on:
Hidden Markov Models. Hidden Markov Model In some Markov processes, we may not be able to observe the states directly.
1 Hidden Markov Model Instructor : Saeed Shiry  CHAPTER 13 ETHEM ALPAYDIN © The MIT Press, 2004.
COMP 4060 Natural Language Processing Speech Processing.
Why is ASR Hard? Natural speech is continuous
Natural Language Understanding
ISSUES IN SPEECH RECOGNITION Shraddha Sharma
Automatic Continuous Speech Recognition Database speech text Scoring.
Audio Processing for Ubiquitous Computing Uichin Lee KAIST KSE.
Introduction to Automatic Speech Recognition
Digital Sound and Video Chapter 10, Exploring the Digital Domain.
Isolated-Word Speech Recognition Using Hidden Markov Models
Artificial Intelligence 2004 Speech & Natural Language Processing Natural Language Processing written text as input sentences (well-formed) Speech.
Midterm Review Spoken Language Processing Prof. Andrew Rosenberg.
Supervisor: Dr. Eddie Jones Electronic Engineering Department Final Year Project 2008/09 Development of a Speaker Recognition/Verification System for Security.
1 CSE 552/652 Hidden Markov Models for Speech Recognition Spring, 2006 Oregon Health & Science University OGI School of Science & Engineering John-Paul.
7-Speech Recognition Speech Recognition Concepts
Segmental Hidden Markov Models with Random Effects for Waveform Modeling Author: Seyoung Kim & Padhraic Smyth Presentor: Lu Ren.
Chapter 14 Speaker Recognition 14.1 Introduction to speaker recognition 14.2 The basic problems for speaker recognition 14.3 Approaches and systems 14.4.
A brief overview of Speech Recognition and Spoken Language Processing Advanced NLP Guest Lecture August 31 Andrew Rosenberg.
Speech, Perception, & AI Artificial Intelligence CMSC March 5, 2002.
Machine Translation  Machine translation is of one of the earliest uses of AI  Two approaches:  Traditional approach using grammars, rewrite rules,
Modeling Speech using POMDPs In this work we apply a new model, POMPD, in place of the traditional HMM to acoustically model the speech signal. We use.
Sequence Models With slides by me, Joshua Goodman, Fei Xia.
22CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 10: Advanced Input.
CS774. Markov Random Field : Theory and Application Lecture 19 Kyomin Jung KAIST Nov
Artificial Intelligence 2004 Speech & Natural Language Processing Natural Language Processing written text as input sentences (well-formed) Speech.
Speech, Perception, & AI Artificial Intelligence CMSC February 13, 2003.
Speech Recognition MIT SMA 5508 Spring 2004 Larry Rudolph (MIT)
Artificial Intelligence 2004 Speech & Natural Language Processing Speech Recognition acoustic signal as input conversion into written words Natural.
Hidden Markov Models: Decoding & Training Natural Language Processing CMSC April 24, 2003.
CS 416 Artificial Intelligence Lecture 17 Reasoning over Time Chapter 15 Lecture 17 Reasoning over Time Chapter 15.
1 CSE 552/652 Hidden Markov Models for Speech Recognition Spring, 2005 Oregon Health & Science University OGI School of Science & Engineering John-Paul.
CS Statistical Machine learning Lecture 24
The famous “sprinkler” example (J. Pearl, Probabilistic Reasoning in Intelligent Systems, 1988)
1 CS 552/652 Speech Recognition with Hidden Markov Models Winter 2011 Oregon Health & Science University Center for Spoken Language Understanding John-Paul.
Speech Recognition with CMU Sphinx Srikar Nadipally Hareesh Lingareddy.
Probabilistic reasoning over time Ch. 15, 17. Probabilistic reasoning over time So far, we’ve mostly dealt with episodic environments –Exceptions: games.
1 CSE 552/652 Hidden Markov Models for Speech Recognition Spring, 2006 Oregon Health & Science University OGI School of Science & Engineering John-Paul.
Statistical Models for Automatic Speech Recognition Lukáš Burget.
Automated Speach Recognotion Automated Speach Recognition By: Amichai Painsky.
Phone-Level Pronunciation Scoring and Assessment for Interactive Language Learning Speech Communication, 2000 Authors: S. M. Witt, S. J. Young Presenter:
CS 416 Artificial Intelligence Lecture 18 Reasoning over Time Chapter 15 Lecture 18 Reasoning over Time Chapter 15.
N-Gram Model Formulas Word sequences Chain rule of probability Bigram approximation N-gram approximation.
Other Models for Time Series. The Hidden Markov Model (HMM)
IIS for Speech Processing Michael J. Watts
Automatic Speech Recognition
Speech Recognition
Statistical Models for Automatic Speech Recognition
Speech Processing Speech Recognition
CS 188: Artificial Intelligence Fall 2008
Statistical Models for Automatic Speech Recognition
N-Gram Model Formulas Word sequences Chain rule of probability
Speech Processing Speech Recognition
Speech recognition, machine learning
Artificial Intelligence 2004 Speech & Natural Language Processing
Speech recognition, machine learning
Presentation transcript:

CS 416 Artificial Intelligence Lecture 19 Reasoning over Time Chapter 15 Lecture 19 Reasoning over Time Chapter 15

Hidden Markov Models (HMMs) Represent the state of the world with a single discrete variable If your state has multiple variables, form one variable whose value takes on all possible tuples of multiple variablesIf your state has multiple variables, form one variable whose value takes on all possible tuples of multiple variables –A two-variable system (heads/tails and red/green/blue) becomes  A single-variable system with six values (heads/red, tails/red, …) Represent the state of the world with a single discrete variable If your state has multiple variables, form one variable whose value takes on all possible tuples of multiple variablesIf your state has multiple variables, form one variable whose value takes on all possible tuples of multiple variables –A two-variable system (heads/tails and red/green/blue) becomes  A single-variable system with six values (heads/red, tails/red, …)

HMMs Let number of states be SLet number of states be S –Transition model T is an SxS matrix filled by P( X t | X t-1 )  Probability of transitioning from any state to another –Consider obtaining evidence e t at each timestep  Construct an SxS matrix O consisting of P( e t | X t = i ) along the diagonal and zero elsewhere Let number of states be SLet number of states be S –Transition model T is an SxS matrix filled by P( X t | X t-1 )  Probability of transitioning from any state to another –Consider obtaining evidence e t at each timestep  Construct an SxS matrix O consisting of P( e t | X t = i ) along the diagonal and zero elsewhere

HMMs Rewriting the FORWARD algorithm Constructing the predicted sequence of states from 0  t+1 given e 0  e t+1Constructing the predicted sequence of states from 0  t+1 given e 0  e t+1 –f 1:t+1 =  FORWARD (f 1:t, e t+1 ) Rewriting the FORWARD algorithm Constructing the predicted sequence of states from 0  t+1 given e 0  e t+1Constructing the predicted sequence of states from 0  t+1 given e 0  e t+1 –f 1:t+1 =  FORWARD (f 1:t, e t+1 )

HMMs Optimizations FORWARD and BACKWARD can be written in matrix formFORWARD and BACKWARD can be written in matrix form Matrix forms permit reinspection for speedupsMatrix forms permit reinspection for speedups –Consult book if interested in these for assignment Optimizations FORWARD and BACKWARD can be written in matrix formFORWARD and BACKWARD can be written in matrix form Matrix forms permit reinspection for speedupsMatrix forms permit reinspection for speedups –Consult book if interested in these for assignment

Speech recognition vs. Speech understanding Recognition Convert acoustic signal into wordsConvert acoustic signal into words –P (words | signal) =  P (signal | words) P (words) Understanding Recognizing the context and semantics of the wordsRecognizing the context and semantics of the wordsRecognition Convert acoustic signal into wordsConvert acoustic signal into words –P (words | signal) =  P (signal | words) P (words) Understanding Recognizing the context and semantics of the wordsRecognizing the context and semantics of the words We have a model of this We have a model of this too

Applications NaturallySpeaking (interesting story from Wired), Viavoice…NaturallySpeaking (interesting story from Wired), Viavoice… –90% hit rate is 10% error rate –want 98% or 99% success rate DictationDictation –Cheaper to play doctor’s audio tapes into telephone so someone in India can type the text and it back User-control of devicesUser-control of devices –“Call home” NaturallySpeaking (interesting story from Wired), Viavoice…NaturallySpeaking (interesting story from Wired), Viavoice… –90% hit rate is 10% error rate –want 98% or 99% success rate DictationDictation –Cheaper to play doctor’s audio tapes into telephone so someone in India can type the text and it back User-control of devicesUser-control of devices –“Call home”

Spectrum of choices Constrained Domain Unconstrained Domain Speaker Dependent Voice tags (e.g. cell phone) Trained Dictation (Viavoice) Speaker Independent Customer Service (say “one”) What everyone wants

Waveform to phonemes 40 – 50 phones (sounds) in all human languages40 – 50 phones (sounds) in all human languages 48 phonemes (distinguishable unts) in English (according to ARPAbet)48 phonemes (distinguishable unts) in English (according to ARPAbet) –Ceiling = [s iy l ih ng] [s iy l ix ng] [s iy l en]  Nothing is precise here, so HMM with state variable X t corresponding to the phone uttered at time t P (E t | X t ): given phoneme, what is its waveformP (E t | X t ): given phoneme, what is its waveform –Must have models that adjust for pitch, speed, volume… 40 – 50 phones (sounds) in all human languages40 – 50 phones (sounds) in all human languages 48 phonemes (distinguishable unts) in English (according to ARPAbet)48 phonemes (distinguishable unts) in English (according to ARPAbet) –Ceiling = [s iy l ih ng] [s iy l ix ng] [s iy l en]  Nothing is precise here, so HMM with state variable X t corresponding to the phone uttered at time t P (E t | X t ): given phoneme, what is its waveformP (E t | X t ): given phoneme, what is its waveform –Must have models that adjust for pitch, speed, volume…

Analog to digital (A to D) Diaphragm of microphone is displaced by movement of airDiaphragm of microphone is displaced by movement of air Analog to digital converter samples the signal at discrete time intervals (8 – 16 kHz, 8-bit for speech)Analog to digital converter samples the signal at discrete time intervals (8 – 16 kHz, 8-bit for speech) Diaphragm of microphone is displaced by movement of airDiaphragm of microphone is displaced by movement of air Analog to digital converter samples the signal at discrete time intervals (8 – 16 kHz, 8-bit for speech)Analog to digital converter samples the signal at discrete time intervals (8 – 16 kHz, 8-bit for speech)

Data compression 8kHz at 8 bits is 0.5 MB for one minute of speech8kHz at 8 bits is 0.5 MB for one minute of speech –Too much information for constructing P(X t+1 | X t ) tables –Reduce signal to overlapping frames (10 msecs) –frames have features that are evaluated based on signal 8kHz at 8 bits is 0.5 MB for one minute of speech8kHz at 8 bits is 0.5 MB for one minute of speech –Too much information for constructing P(X t+1 | X t ) tables –Reduce signal to overlapping frames (10 msecs) –frames have features that are evaluated based on signal

More data compression Features are still too big Consider n features with 256 values eachConsider n features with 256 values each –256 n possible frames A table of P (features | phones) would be too largeA table of P (features | phones) would be too large Cluster!Cluster! –Reduce number of options from 256 n to something manageable Features are still too big Consider n features with 256 values eachConsider n features with 256 values each –256 n possible frames A table of P (features | phones) would be too largeA table of P (features | phones) would be too large Cluster!Cluster! –Reduce number of options from 256 n to something manageable

Phone subdivision Phones last 5-10 frames Possible to subdivide a phone into three partsPossible to subdivide a phone into three parts –Onset, mid, end –[t] = [silent beginning, small explosion, hissing end] The sound of a phone changes based on surrounding phonesThe sound of a phone changes based on surrounding phones –Brain coordinates ending of one phone and beginning of upcoming ones (coarticulation) –Sweet vs. stop State space is increased, but improved accuracyState space is increased, but improved accuracy Phones last 5-10 frames Possible to subdivide a phone into three partsPossible to subdivide a phone into three parts –Onset, mid, end –[t] = [silent beginning, small explosion, hissing end] The sound of a phone changes based on surrounding phonesThe sound of a phone changes based on surrounding phones –Brain coordinates ending of one phone and beginning of upcoming ones (coarticulation) –Sweet vs. stop State space is increased, but improved accuracyState space is increased, but improved accuracy

Words You say [t ow m ey t ow] P (t ow m ey t ow | “tomato”)P (t ow m ey t ow | “tomato”) I say [t ow m aa t ow] You say [t ow m ey t ow] P (t ow m ey t ow | “tomato”)P (t ow m ey t ow | “tomato”) I say [t ow m aa t ow]

Words - coarticulation The first syllable changes based on dialect There are four ways to say “tomato” and we would store P( [pronunciation] | “tomato”) for each Remember diagram would have three stages per phoneRemember diagram would have three stages per phone The first syllable changes based on dialect There are four ways to say “tomato” and we would store P( [pronunciation] | “tomato”) for each Remember diagram would have three stages per phoneRemember diagram would have three stages per phone

Words - segmentation “Hearing” words in sentences seems easy to us Waveforms are fuzzyWaveforms are fuzzy There are no clear gaps to designate word boundariesThere are no clear gaps to designate word boundaries One must work the probabilities to decide if current word is continuing with another syllable or if it seems likely that another word is startingOne must work the probabilities to decide if current word is continuing with another syllable or if it seems likely that another word is starting “Hearing” words in sentences seems easy to us Waveforms are fuzzyWaveforms are fuzzy There are no clear gaps to designate word boundariesThere are no clear gaps to designate word boundaries One must work the probabilities to decide if current word is continuing with another syllable or if it seems likely that another word is startingOne must work the probabilities to decide if current word is continuing with another syllable or if it seems likely that another word is starting

Sentences Bigram Model P (w i | w 1:i-1 ) has a lot of values to determineP (w i | w 1:i-1 ) has a lot of values to determine P (w i | w i-1 ) is much more manageableP (w i | w i-1 ) is much more manageable –We make a first-order Markov assumption about word sequences –Easy to train this through text files Much more complicated models are possible that take syntax and semantics into accountMuch more complicated models are possible that take syntax and semantics into account Bigram Model P (w i | w 1:i-1 ) has a lot of values to determineP (w i | w 1:i-1 ) has a lot of values to determine P (w i | w i-1 ) is much more manageableP (w i | w i-1 ) is much more manageable –We make a first-order Markov assumption about word sequences –Easy to train this through text files Much more complicated models are possible that take syntax and semantics into accountMuch more complicated models are possible that take syntax and semantics into account

Bringing it together Each transformation is pretty inaccurate Lots of choicesLots of choices User “error” – stutters, bad grammarUser “error” – stutters, bad grammar Subsequent steps can rule out choices from previous stepsSubsequent steps can rule out choices from previous steps –Disambiguation Each transformation is pretty inaccurate Lots of choicesLots of choices User “error” – stutters, bad grammarUser “error” – stutters, bad grammar Subsequent steps can rule out choices from previous stepsSubsequent steps can rule out choices from previous steps –Disambiguation

Bringing it together Continuous speech Words composed of p 3-state phonesWords composed of p 3-state phones W words in vocabularyW words in vocabulary 3pW states in HMM3pW states in HMM –10 words, 4 phones each, 3 states per phone = 120 states Compute likelihood of all words in sequenceCompute likelihood of all words in sequence –Viterbi algorithm from 15.2 Continuous speech Words composed of p 3-state phonesWords composed of p 3-state phones W words in vocabularyW words in vocabulary 3pW states in HMM3pW states in HMM –10 words, 4 phones each, 3 states per phone = 120 states Compute likelihood of all words in sequenceCompute likelihood of all words in sequence –Viterbi algorithm from 15.2

A final note Where do all the transition tables come from? Word probabilities from text analysisWord probabilities from text analysis Pronunciation models have been manually constructed for many hours of speakingPronunciation models have been manually constructed for many hours of speaking –Some have multiple-state phones identified Because this annotation is so expensive to perform, can we annotate or label the waveforms automatically?Because this annotation is so expensive to perform, can we annotate or label the waveforms automatically? Where do all the transition tables come from? Word probabilities from text analysisWord probabilities from text analysis Pronunciation models have been manually constructed for many hours of speakingPronunciation models have been manually constructed for many hours of speaking –Some have multiple-state phones identified Because this annotation is so expensive to perform, can we annotate or label the waveforms automatically?Because this annotation is so expensive to perform, can we annotate or label the waveforms automatically?

Expectation Maximization (EM) Learn HMM transition and sensor models sans labeled data Initialize models with hand-labeled dataInitialize models with hand-labeled data Use these models to predict states at multiple times tUse these models to predict states at multiple times t Use these predictions as if they were “fact” and update HMM transition table and sensor modelsUse these predictions as if they were “fact” and update HMM transition table and sensor models RepeatRepeat Learn HMM transition and sensor models sans labeled data Initialize models with hand-labeled dataInitialize models with hand-labeled data Use these models to predict states at multiple times tUse these models to predict states at multiple times t Use these predictions as if they were “fact” and update HMM transition table and sensor modelsUse these predictions as if they were “fact” and update HMM transition table and sensor models RepeatRepeat