Automatic Speech Recognition Introduction Readings: Jurafsky & Martin 7.1-2 HLT Survey Chapter 1.

Slides:



Advertisements
Similar presentations
Robust Speech recognition V. Barreaud LORIA. Mismatch Between Training and Testing n mismatch influences scores n causes of mismatch u Speech Variation.
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.
CS 224S / LINGUIST 285 Spoken Language Processing Dan Jurafsky Stanford University Spring 2014 Lecture 3: ASR: HMMs, Forward, Viterbi.
Hidden Markov Models Reading: Russell and Norvig, Chapter 15, Sections
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.
1 Hidden Markov Models (HMMs) Probabilistic Automata Ubiquitous in Speech/Speaker Recognition/Verification Suitable for modelling phenomena which are dynamic.
Hidden Markov Models in NLP
Lecture 15 Hidden Markov Models Dr. Jianjun Hu mleg.cse.sc.edu/edu/csce833 CSCE833 Machine Learning University of South Carolina Department of Computer.
Application of HMMs: Speech recognition “Noisy channel” model of speech.
Learning, Uncertainty, and Information Big Ideas November 8, 2004.
Hidden Markov Models. Hidden Markov Model In some Markov processes, we may not be able to observe the states directly.
Part 6 HMM in Practice CSE717, SPRING 2008 CUBS, Univ at Buffalo.
1 Hidden Markov Model Instructor : Saeed Shiry  CHAPTER 13 ETHEM ALPAYDIN © The MIT Press, 2004.
Why is ASR Hard? Natural speech is continuous
Automatic Speech Recognition Introduction. The Human Dialogue System.
Audio Processing for Ubiquitous Computing Uichin Lee KAIST KSE.
Introduction to Automatic Speech Recognition
1 7-Speech Recognition (Cont’d) HMM Calculating Approaches Neural Components Three Basic HMM Problems Viterbi Algorithm State Duration Modeling Training.
Artificial Intelligence 2004 Speech & Natural Language Processing Natural Language Processing written text as input sentences (well-formed) Speech.
Speech and Language Processing
 Feature extractor  Mel-Frequency Cepstral Coefficients (MFCCs) Feature vectors.
7-Speech Recognition Speech Recognition Concepts
Chapter 5. Probabilistic Models of Pronunciation and Spelling 2007 년 05 월 04 일 부산대학교 인공지능연구실 김민호 Text : Speech and Language Processing Page. 141 ~ 189.
A brief overview of Speech Recognition and Spoken Language Processing Advanced NLP Guest Lecture August 31 Andrew Rosenberg.
Csc Lecture 7 Recognizing speech. Geoffrey Hinton.
Speech recognition and the EM algorithm
IRCS/CCN Summer Workshop June 2003 Speech Recognition.
LML Speech Recognition Speech Recognition Introduction I E.M. Bakker.
22CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 10: Advanced Input.
Artificial Intelligence 2004 Speech & Natural Language Processing Natural Language Processing written text as input sentences (well-formed) Speech.
Automatic Speech Recognition: Conditional Random Fields for ASR Jeremy Morris Eric Fosler-Lussier Ray Slyh 9/19/2008.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition Objectives: Reestimation Equations Continuous Distributions.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition Objectives: Reestimation Equations Continuous Distributions.
Hidden Markov Models & POS Tagging Corpora and Statistical Methods Lecture 9.
Hidden Markov Models: Decoding & Training Natural Language Processing CMSC April 24, 2003.
CS Statistical Machine learning Lecture 24
1 CONTEXT DEPENDENT CLASSIFICATION  Remember: Bayes rule  Here: The class to which a feature vector belongs depends on:  Its own value  The values.
PhD Candidate: Tao Ma Advised by: Dr. Joseph Picone Institute for Signal and Information Processing (ISIP) Mississippi State University Linear Dynamic.
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Supervised Learning Resources: AG: Conditional Maximum Likelihood DP:
1 CRANDEM: Conditional Random Fields for ASR Jeremy Morris 11/21/2008.
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.
ICASSP 2007 Robustness Techniques Survey Presenter: Shih-Hsiang Lin.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition Objectives: Elements of a Discrete Model Evaluation.
Hidden Markov Models (HMMs) –probabilistic models for learning patterns in sequences (e.g. DNA, speech, weather, cards...) (2 nd order model)
Statistical Models for Automatic Speech Recognition Lukáš Burget.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition Objectives: Reestimation Equations Continuous Distributions.
Message Source Linguistic Channel Articulatory Channel Acoustic Channel Observable: MessageWordsSounds Features Bayesian formulation for speech recognition:
1 7-Speech Recognition Speech Recognition Concepts Speech Recognition Approaches Recognition Theories Bayse Rule Simple Language Model P(A|W) Network Types.
Discriminative n-gram language modeling Brian Roark, Murat Saraclar, Michael Collins Presented by Patty Liu.
Hidden Markov Models Wassnaa AL-mawee Western Michigan University Department of Computer Science CS6800 Adv. Theory of Computation Prof. Elise De Doncker.
CS 224S / LINGUIST 285 Spoken Language Processing
Automatic Speech Recognition
Learning, Uncertainty, and Information: Learning Parameters
Automatic Speech Recognition Introduction
Statistical Models for Automatic Speech Recognition
HUMAN LANGUAGE TECHNOLOGY: From Bits to Blogs
Speech Processing Speech Recognition
Automatic Speech Recognition Introduction
Hidden Markov Models Part 2: Algorithms
CRANDEM: Conditional Random Fields for ASR
Statistical Models for Automatic Speech Recognition
CONTEXT DEPENDENT CLASSIFICATION
Lecture 10: Speech Recognition (II) October 28, 2004 Dan Jurafsky
LECTURE 15: REESTIMATION, EM AND MIXTURES
Speech recognition, machine learning
Combination of Feature and Channel Compensation (1/2)
Speech recognition, machine learning
Presentation transcript:

Automatic Speech Recognition Introduction Readings: Jurafsky & Martin HLT Survey Chapter 1

The Human Dialogue System

Computer Dialogue Systems Audition Automatic Speech Recognition Natural Language Understanding Dialogue Management Planning Natural Language Generation Text-to- speech signalwords logical form wordssignal

Computer Dialogue Systems AuditionASRNLU Dialogue Mgmt. Planning NLG Text-to- speech signalwords logical form wordssignal

Parameters of ASR Capabilities Different types of tasks with different difficulties –Speaking mode (isolated words/continuous speech) –Speaking style (read/spontaneous) –Enrollment (speaker-independent/dependent) –Vocabulary (small 20kword) –Language model (finite state/context sensitive) –Perplexity (small 100) –Signal-to-noise ratio (high > 30 dB/low < 10dB) –Transducer (high quality microphone/telephone)

The Noisy Channel Model message noisy channel message MessageChannel + =Signal Decoding model: find Message*= argmax P(Message|Signal) But how do we represent each of these things?

ASR using HMMs Try to solve P(Message|Signal) by breaking the problem up into separate components Most common method: Hidden Markov Models –Assume that a message is composed of words –Assume that words are composed of sub-word parts (phones) –Assume that phones have some sort of acoustic realization –Use probabilistic models for matching acoustics to phones to words

HMMs: The Traditional View gohome gohom x0x0 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 x9x9 Markov model backbone composed of phones (hidden because we don’t know correspondences) Acoustic observations Each line represents a probability estimate (more later)

HMMs: The Traditional View gohome gohom x0x0 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 x9x9 Markov model backbone composed of phones (hidden because we don’t know correspondences) Acoustic observations Even with same word hypothesis, can have different alignments. Also, have to search over all word hypotheses

HMMs as Dynamic Bayesian Networks gohome q 0 =g x0x0 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 x9x9 Markov model backbone composed of phones Acoustic observations q 1 =oq 2 =oq 3 =oq 4 =hq 5 =oq 6 =oq 7 =oq 8 =mq 9 =m

HMMs as Dynamic Bayesian Networks gohome q 0 =g x0x0 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 x9x9 Markov model backbone composed of phones q 1 =oq 2 =oq 3 =oq 4 =hq 5 =oq 6 =oq 7 =oq 8 =mq 9 =m ASR: What is best assignment to q 0 …q 9 given x 0 …x 9 ?

Hidden Markov Models & DBNs DBN representationMarkov Model representation

Parts of an ASR System Feature Calculation Language Modeling Acoustic Modeling Pronunciation Modeling cat: dog: dog mail: mAl the: D&, DE … cat dog: cat the: the cat: the dog: the mail: … The cat chased the dog S E A R C H

Parts of an ASR System Feature Calculation Language Modeling Acoustic Modeling Pronunciation Modeling cat: dog: dog mail: mAl the: D&, DE … cat dog: cat the: the cat: the dog: the mail: … Produces acoustics (x t ) Maps acoustics to phones Maps phones to words Strings words together

Feature calculation

Frequency Time Find energy at each time step in each frequency channel

Feature calculation Frequency Time Take inverse Discrete Fourier Transform to decorrelate frequencies

Feature calculation … … … … … Input: Output:

Robust Speech Recognition Different schemes have been developed for dealing with noise, reverberation –Additive noise: reduce effects of particular frequencies –Convolutional noise: remove effects of linear filters (cepstral mean subtraction)

Now what? … … … … That you … ???

Machine Learning! … … … … That you … Pattern recognition with HMMs

Hidden Markov Models (again!) P(acoustics t |state t ) Acoustic Model P(state t+1 |state t ) Pronunciation/Language models

Acoustic Model … … … … dhaat Assume that you can label each vector with a phonetic label Collect all of the examples of a phone together and build a Gaussian model (or some other statistical model, e.g. neural networks) N a (  ) P(X|state=a)

Building up the Markov Model Start with a model for each phone Typically, we use 3 states per phone to give a minimum duration constraint, but ignore that here… a p 1-p transition probability a p 1-p a p a p

Building up the Markov Model Pronunciation model gives connections between phones and words Multiple pronunciations: ow tm dh p dh 1-p dh a papa 1-p a t ptpt 1-p t ah ow ey ah t

Building up the Markov Model Language model gives connections between words (e.g., bigram grammar) dha t hiyyuw p(he|that) p(you|that)

ASR as Bayesian Inference q1w1q1w1 q2w1q2w1 q3w1q3w1 x1x1 x2x2 x3x3 tha t hiyyuw p(he|that) p(you|that) h iy shuh d argmax W P(W|X) =argmax W P(X|W)P(W)/P(X) =argmax W P(X|W)P(W) =argmax W  Q P(X,Q|W)P(W) ≈argmax W max Q P(X,Q|W)P(W) ≈argmax W max Q P(X|Q) P(Q|W) P(W)

ASR Probability Models Three probability models –P(X|Q): acoustic model –P(Q|W): duration/transition/pronunciation model –P(W): language model language/pronunciation models inferred from prior knowledge Other models learned from data (how?)

Parts of an ASR System Feature Calculation Language Modeling Acoustic Modeling Pronunciation Modeling cat: dog: dog mail: mAl the: D&, DE … cat dog: cat the: the cat: the dog: the mail: … The cat chased the dog S E A R C H P(X|Q)P(Q|W)P(W)

EM for ASR: The Forward- Backward Algorithm Determine “state occupancy” probabilities –I.e. assign each data vector to a state Calculate new transition probabilities, new means & standard deviations (emission probabilities) using assignments

ASR as Bayesian Inference q1w1q1w1 q2w1q2w1 q3w1q3w1 x1x1 x2x2 x3x3 tha t hiyyuw p(he|that) p(you|that) h iy shuh d argmax W P(W|X) =argmax W P(X|W)P(W)/P(X) =argmax W P(X|W)P(W) =argmax W  Q P(X,Q|W)P(W) ≈argmax W max Q P(X,Q|W)P(W) ≈argmax W max Q P(X|Q) P(Q|W) P(W)

Search When trying to find W*=argmax W P(W|X), need to look at (in theory) –All possible word sequences W –All possible segmentations/alignments of W&X Generally, this is done by searching the space of W –Viterbi search: dynamic programming approach that looks for the most likely path –A* search: alternative method that keeps a stack of hypotheses around If |W| is large, pruning becomes important

How to train an ASR system Have a speech corpus at hand –Should have word (and preferrably phone) transcriptions –Divide into training, development, and test sets Develop models of prior knowledge –Pronunciation dictionary –Grammar Train acoustic models –Possibly realigning corpus phonetically

How to train an ASR system Test on your development data (baseline) **Think real hard Figure out some neat new modification Retrain system component Test on your development data Lather, rinse, repeat ** Then, at the end of the project, test on the test data.

Judging the quality of a system Usually, ASR performance is judged by the word error rate ErrorRate = 100*(Subs + Ins + Dels) / Nwords REF: I WANT TO GO HOME *** REC: * WANT TWO GO HOME NOW SC: D C S C C I 100*(1S+1I+1D)/5 = 60%

Judging the quality of a system Usually, ASR performance is judged by the word error rate This assumes that all errors are equal –Also, a bit of a mismatch between optimization criterion and error measurement Other (task specific) measures sometimes used –Task completion –Concept error rate