SlideShare uma empresa Scribd logo
1 de 38
Hidden Markov Model
Sistemas de Reconhecimento de Fala
Gabriel F. Araujo
Departamento de Computa¸c˜ao
Universidade Federal de Sergipe
gabrielfa@dcomp.ufs.br
15 de dezembro, 2012
Hidden Markov Model
Modelos Escondidos de Markov (HMM)
Observable Markov Model (OMM)
Ω = {1, 2, . . . , N} - Um
conjunto de estados
A = {aij } - Uma matriz de
probabilidades de transi¸c˜ao
π = {πi } - Um vetor de
probabilidades do estado inicial
Hidden Markov Model (HMM)
Ω = {1, 2, . . . , N} - Um
conjunto de estados
A = {aij } - Uma matriz de
probabilidades de transi¸c˜ao
π = {πi } - Um vetor de
probabilidades do estado inicial
O = {o1, o2, . . . , oM} - Alfabeto
de sa´ıda
B = {bi (k)} - Uma matriz de
probabilidades de sa´ıda
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 2 / 27
Hidden Markov Model
Exemplo - Markov Chain ou OMM
Dow Jones Industrial average
Ω = {up, down, unchanged} - Um conjunto de estados
A =



0.6 0.2 0.2
0.5 0.3 0.2
0.4 0.1 0.5


 - Uma matriz de probabilidades de transi¸c˜ao
π =



0.5
0.2
0.3


 - Um vetor de probabilidades do estado inicial
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 3 / 27
Hidden Markov Model
Exemplo - Markov Chain ou OMM
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 4 / 27
Hidden Markov Model
Exemplo - Hidden Markov Model ou HMM
Dow Jones Industrial average
Ω = {1, 2, 3} - Um conjunto de estados
A =



0.6 0.2 0.2
0.5 0.3 0.2
0.4 0.1 0.5


 - Uma matriz de probabilidades de transi¸c˜ao
π =



0.5
0.2
0.3


 - Um vetor de probabilidades do estado inicial
O = {up, down, unchanged} - Alfabeto de sa´ıda
B =



0.7 0.1 0.3
0.1 0.6 0.3
0.2 0.3 0.4


 - Uma matriz de probabilidades de sa´ıda
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 5 / 27
Hidden Markov Model
Exemplo - Hidden Markov Model ou HMM
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 6 / 27
Hidden Markov Model
Quest˜oes
Avalia¸c˜ao
Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ),
qual a probabilidade P(X|Φ) ?
The Forward Algorithm
Decodifica¸c˜ao
Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ),
qual a sequˆencia de estados S = (S1, S2, . . . , ST ) mais prov´avel?
The Virtebi Algorithm
Treinamento
Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ),
como podemos ajustar os parˆametros Φ do modelo, para maximizar a
probabilidade do conjunto?
The Baum-Welch Algorithm
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 7 / 27
Processamento de Fala
Sistemas de Processamento de Fala
A fala ´e a forma predominante de
comunica¸c˜ao entre os seres humanos.
Reconhecimento de Fala
(Automatic Speech Recognition)
Sintese de Fala
(Text-to-Speech Conversion)
Compreens˜ao de Fala
(Spoken Language Understanding)
Reconhecimento de fala:
“... identificar uma sequˆencia de
palavras articuladas por um
falante, dado o sinal ac´ustico.”
[Norvig and Russell, 2003]
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 8 / 27
Processamento de Fala
Framework Estat´ıstico
palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas
sinal - sequˆencia de sinais ac´usticos observada
P(palavras|sinal) (1)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
Processamento de Fala
Framework Estat´ıstico
palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas
sinal - sequˆencia de sinais ac´usticos observada
P(palavras|sinal) (1)
Pela regra de Bayes:
P(palavras|sinal) =
P(sinal|palavras)P(palavras)
P(sinal)
= αP(sinal|palavras)P(palavras)
(2)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
Processamento de Fala
Framework Estat´ıstico
palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas
sinal - sequˆencia de sinais ac´usticos observada
P(palavras|sinal) (1)
Pela regra de Bayes:
P(palavras|sinal) =
P(sinal|palavras)P(palavras)
P(sinal)
= αP(sinal|palavras)P(palavras)
(2)
Objetivo do reconhecedor:
ˆW = arg max
W ∈ω
P(X|W )P(W ) (3)
P(X|W ) - modelagem ac´ustica
P(W ) - modelagem lingu´ıstica
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
Processamento de Fala
Arquitetura B´asica
Arquitetura padr˜ao de sistemas de reconhecimento de fala (ASR’s)
[Huang, Acero and Hon, 2001]
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 10 / 27
Processamento do Sinal
Aquisi¸c˜ao do sinal
taxa de amostragem: discretiza¸c˜ao do sinal cont´ınuo
Ex: 8 ∼ 16kHz — 8 a 16 mil vezes por segundo
fator de quantiza¸c˜ao: precis˜ao da medi¸c˜ao de cada amostra
Ex: 8 ∼ 12bits — quantidades de bits para representar cada amostra
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 11 / 27
Processamento do Sinal
Aquisi¸c˜ao do sinal
taxa de amostragem: discretiza¸c˜ao do sinal cont´ınuo
Ex: 8 ∼ 16kHz — 8 a 16 mil vezes por segundo
fator de quantiza¸c˜ao: precis˜ao da medi¸c˜ao de cada amostra
Ex: 8 ∼ 12bits — quantidades de bits para representar cada amostra
Ex: 1 minuto de fala,
8kHz e 8bits
8000 × 60 ≈ 480kbytes
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 11 / 27
Processamento do Sinal
Representa¸c˜ao do sinal
o sinal ´e analisado em quadros
um segmento de sinal curto o suficiente, pode ser considerado
estacion´ario
mudan¸cas de conte´udo do sinal ocorrem em baixa frequˆencia
tamanho do quadro ´e de 10 ∼ 20ms – sobreposi¸c˜ao (overlapping)
extra¸c˜ao das caracter´ısticas importantes
o que caracteriza o sinal naquele momento
informa¸c˜oes sˆem importˆancia s˜ao eliminadas
Sinal de fala
Segmenta¸c˜ao
em quadros
Caracter´ısticas
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 12 / 27
Processamento do Sinal
Extra¸c˜ao de Caracter´ısticas
Jean Baptiste Joseph
Fourier
Espectro de frequˆencia
Transformada de Fourier
LPC (Linear Predictive Coding)
PLP (Perceptual Linear Predictive)
MFCC (Mel-Frequency Cepstral
Coefficients)
modelar a sensibilidade do ouvido
humano
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 13 / 27
Modelo Ac´ustico
Modelo de Fone (Modelo de sensor)
Descreve como um fone ´e mapeado sobre uma sequˆencia de quadros
P(caracteristicas|fone) = ?
caracter´ıstica: valor discreto, 0 ∼ 255
n caracter´ısticas ⇒ 256n
probabilidades a serem estimadas
Adimitir valor cont´ınuo. Distribui¸c˜ao Gaussiana!!!
P(x) =
1
(2π)d/2|Σ|1/2
exp −
1
2
(x − µ)t
Σ−1
(x − µ) (4)
Na pr´atica, somente uma gaussiana para cada fone n˜ao funciona bem
Solu¸c˜ao: mistura de gaussianas (GMM - Gaussian Mixture Models)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 14 / 27
Modelo Ac´ustico
Modelo de Pron´uncia (Modelo de transi¸c˜ao)
Descreve como uma palavra ´e mapeada sobre uma sequˆencia de fones
A probabilidade de um caminho ´e o produto das probabilidades dos
arcos que constiutem o caminho
cada palavra tem seu modelo
permite varia¸c˜oes de dialetos
Ex: “tomato” ⇒ [t ow m ey t ow] , [t ow m aa t ow]
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 15 / 27
Modelo Ac´ustico
Modelo de Pron´uncia (Modelo de transi¸c˜ao)
Descreve como uma palavra ´e mapeada sobre uma sequˆencia de fones
A probabilidade de um caminho ´e o produto das probabilidades dos
arcos que constiutem o caminho
cada palavra tem seu modelo
permite varia¸c˜oes de dialetos
Ex: “tomato” ⇒ [t ow m ey t ow] , [t ow m aa t ow]
P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.5
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 15 / 27
Modelo Ac´ustico
Considera¸c˜oes
co-articula¸c˜ao
a ac´ustica de um fone ´e afetada por aqueles que o circundam
no modelo de fone
modelos bifone e trifone
Ex: um GMM para cada tupla de fones
(fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...}
no modelo de pron´uncia
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
Modelo Ac´ustico
Considera¸c˜oes
co-articula¸c˜ao
a ac´ustica de um fone ´e afetada por aqueles que o circundam
no modelo de fone
modelos bifone e trifone
Ex: um GMM para cada tupla de fones
(fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...}
no modelo de pron´uncia
P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.1
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
Modelo Ac´ustico
Considera¸c˜oes
co-articula¸c˜ao
a ac´ustica de um fone ´e afetada por aqueles que o circundam
no modelo de fone
modelos bifone e trifone
Ex: um GMM para cada tupla de fones
(fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...}
no modelo de pron´uncia
P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.1
P([t ah m ey t ow]|“tomato”) = P([t ah m aa t ow]|“tomato”) = 0.4
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
Modelo Ac´ustico
Considera¸c˜oes
fones de trˆes estados
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 17 / 27
Modelo Ac´ustico
Exemplo de HMM da palavra “c´eu”[s E w]
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 18 / 27
Modelo Lingu´ıstico
P(palavras) = ?
modelar a sintaxe da linguagem
P(w1 · · · wn) = P(w1)P(w2|w1)P(w3|w1w2) · · · P(wn|w1 · · · wn−1)
=
n
i=1
P(wi |w1, w2, · · · , wi−1)
(5)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 19 / 27
Modelo Lingu´ıstico
P(palavras) = ?
modelar a sintaxe da linguagem
P(w1 · · · wn) = P(w1)P(w2|w1)P(w3|w1w2) · · · P(wn|w1 · · · wn−1)
=
n
i=1
P(wi |w1, w2, · · · , wi−1)
(5)
Modelo N-Grams
Suposi¸c˜ao de Markov: Considera-se apenas N − 1 palavras anteriores
Da´ı o nome N-gram: uni-gram, bi-gram, tri-gram, . . .
P(w1, w2, · · · , wm) =
m
i=1
P(wi |w1, w2, · · · , wi−1)
≈
m
i=1
P(wi |wi−N+1, wi−N+2 · · · , wi−1)
(6)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 19 / 27
Modelo Lingu´ıstico
N-gram
probabilidades representadas em escala logar´ıtimica
P(Eu,tenho, uma, rea¸c˜ao) =
= P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rea¸c˜ao|tenho, uma)
= 10(−3.052994)+(−1.578986)+(−0.9324666)+(−2.410228)
= 10−7.9746746
≈ 1.1 × 10−8
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 20 / 27
Modelo Lingu´ıstico
N-gram
probabilidades representadas em escala logar´ıtimica
P(Eu,tenho, uma, rea¸c˜ao) =
= P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rea¸c˜ao|tenho, uma)
= 10(−3.052994)+(−1.578986)+(−0.9324666)+(−2.410228)
= 10−7.9746746
≈ 1.1 × 10−8
P(Eu,tenho, uma, rela¸c˜ao) =
= P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rela¸c˜ao|tenho, uma)
= 10(−3.052994)+(−1.578986)+(−0.9324666)+(−1.638537)
= 10−7.2029836
≈ 6.3 × 10−8
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 20 / 27
Modelo Lingu´ıstico
Smoothing
Problema: escassez de dados
N-grams que n˜ao ocorrem nos dados de treinamento
t´ecnicas de smoothing
Modelos de backoff
Psmooth(wi |wi−N+1 · · · wi−1)
=
α(wi |wi−N+1 · · · wi−1), se C > 0
γ(wi−N+1 · · · wi−1)Psmooth(wi |wi−N+2 . . . wi−1), se C = 0
Modelos de interpola¸c˜ao
Psmooth(wi |wi−N+1 · · · wi−1)
= λPML(wi |wi−N+1 · · · wi−1) + (1 − λ)Psmooth(wi |wi−N+2 · · · wi−1)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 21 / 27
Modelo Lingu´ıstico
Gram´aticas Probabil´ısticas
gram´aticas livre de contexto (CFGs)
probabilidades associadas a cada regra de produ¸c˜ao
P(A → αj |G) = C(A → αj )/
m
i=1
C(A → αi )
probabilidade de uma senten¸ca
P(S ⇒ W|G)
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 22 / 27
Decodificador
Como encontrar a sente¸ca ˆW ?
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
Decodificador
Como encontrar a sente¸ca ˆW ?
´Unico HMM combinando todos os modelos de palavras
estados
fone
estado atual do fone
palavra
Ex: [w]tomato
in´ıcio
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
Decodificador
Como encontrar a sente¸ca ˆW ?
´Unico HMM combinando todos os modelos de palavras
estados
fone
estado atual do fone
palavra
Ex: [w]tomato
in´ıcio
transi¸c˜oes
entre estados de fone
entre fones de uma palavras
entre o estado final de uma palavra e o estado inicial de outra
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
Decodificador
Como encontrar a sente¸ca ˆW ?
´Unico HMM combinando todos os modelos de palavras
estados
fone
estado atual do fone
palavra
Ex: [w]tomato
in´ıcio
transi¸c˜oes
entre estados de fone
entre fones de uma palavras
entre o estado final de uma palavra e o estado inicial de outra
Problema de busca!
Algoritmo Virtebi (Programa¸c˜ao Dinˆamica)
Algoritmo A*
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
Decodificador
[aa n iy dh ax] I need the
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 24 / 27
Decodificador
[aa n iy dh ax] I need the
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 25 / 27
Divers˜ao
Hands on!
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 26 / 27
Referˆencias
Referˆencias
Russell, S. J., and P. Norvig. Artificial Intelligence: A Modern
Approach. Upper Saddle River, NJ: Prentice Hall/PearsonEducation.,
2003.
Huang, X., Acero, A., and Hon, H.W. Spoken Language Processing:
A Guide to Theory, Algorithm, and System Development. Upper
Saddle River, NJ: Prentice Hall PTR, 2001.
Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 27 / 27

Mais conteúdo relacionado

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Sistemas de Reconhecimento de Fala

  • 1. Hidden Markov Model Sistemas de Reconhecimento de Fala Gabriel F. Araujo Departamento de Computa¸c˜ao Universidade Federal de Sergipe gabrielfa@dcomp.ufs.br 15 de dezembro, 2012
  • 2. Hidden Markov Model Modelos Escondidos de Markov (HMM) Observable Markov Model (OMM) Ω = {1, 2, . . . , N} - Um conjunto de estados A = {aij } - Uma matriz de probabilidades de transi¸c˜ao π = {πi } - Um vetor de probabilidades do estado inicial Hidden Markov Model (HMM) Ω = {1, 2, . . . , N} - Um conjunto de estados A = {aij } - Uma matriz de probabilidades de transi¸c˜ao π = {πi } - Um vetor de probabilidades do estado inicial O = {o1, o2, . . . , oM} - Alfabeto de sa´ıda B = {bi (k)} - Uma matriz de probabilidades de sa´ıda Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 2 / 27
  • 3. Hidden Markov Model Exemplo - Markov Chain ou OMM Dow Jones Industrial average Ω = {up, down, unchanged} - Um conjunto de estados A =    0.6 0.2 0.2 0.5 0.3 0.2 0.4 0.1 0.5    - Uma matriz de probabilidades de transi¸c˜ao π =    0.5 0.2 0.3    - Um vetor de probabilidades do estado inicial Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 3 / 27
  • 4. Hidden Markov Model Exemplo - Markov Chain ou OMM Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 4 / 27
  • 5. Hidden Markov Model Exemplo - Hidden Markov Model ou HMM Dow Jones Industrial average Ω = {1, 2, 3} - Um conjunto de estados A =    0.6 0.2 0.2 0.5 0.3 0.2 0.4 0.1 0.5    - Uma matriz de probabilidades de transi¸c˜ao π =    0.5 0.2 0.3    - Um vetor de probabilidades do estado inicial O = {up, down, unchanged} - Alfabeto de sa´ıda B =    0.7 0.1 0.3 0.1 0.6 0.3 0.2 0.3 0.4    - Uma matriz de probabilidades de sa´ıda Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 5 / 27
  • 6. Hidden Markov Model Exemplo - Hidden Markov Model ou HMM Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 6 / 27
  • 7. Hidden Markov Model Quest˜oes Avalia¸c˜ao Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ), qual a probabilidade P(X|Φ) ? The Forward Algorithm Decodifica¸c˜ao Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ), qual a sequˆencia de estados S = (S1, S2, . . . , ST ) mais prov´avel? The Virtebi Algorithm Treinamento Dado um HMM Φ e a sequˆencia de observa¸c˜oes X = (X1, X2, . . . , XT ), como podemos ajustar os parˆametros Φ do modelo, para maximizar a probabilidade do conjunto? The Baum-Welch Algorithm Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 7 / 27
  • 8. Processamento de Fala Sistemas de Processamento de Fala A fala ´e a forma predominante de comunica¸c˜ao entre os seres humanos. Reconhecimento de Fala (Automatic Speech Recognition) Sintese de Fala (Text-to-Speech Conversion) Compreens˜ao de Fala (Spoken Language Understanding) Reconhecimento de fala: “... identificar uma sequˆencia de palavras articuladas por um falante, dado o sinal ac´ustico.” [Norvig and Russell, 2003] Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 8 / 27
  • 9. Processamento de Fala Framework Estat´ıstico palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas sinal - sequˆencia de sinais ac´usticos observada P(palavras|sinal) (1) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
  • 10. Processamento de Fala Framework Estat´ıstico palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas sinal - sequˆencia de sinais ac´usticos observada P(palavras|sinal) (1) Pela regra de Bayes: P(palavras|sinal) = P(sinal|palavras)P(palavras) P(sinal) = αP(sinal|palavras)P(palavras) (2) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
  • 11. Processamento de Fala Framework Estat´ıstico palavras - sequˆencias poss´ıveis de palavras que podem ser articuladas sinal - sequˆencia de sinais ac´usticos observada P(palavras|sinal) (1) Pela regra de Bayes: P(palavras|sinal) = P(sinal|palavras)P(palavras) P(sinal) = αP(sinal|palavras)P(palavras) (2) Objetivo do reconhecedor: ˆW = arg max W ∈ω P(X|W )P(W ) (3) P(X|W ) - modelagem ac´ustica P(W ) - modelagem lingu´ıstica Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 9 / 27
  • 12. Processamento de Fala Arquitetura B´asica Arquitetura padr˜ao de sistemas de reconhecimento de fala (ASR’s) [Huang, Acero and Hon, 2001] Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 10 / 27
  • 13. Processamento do Sinal Aquisi¸c˜ao do sinal taxa de amostragem: discretiza¸c˜ao do sinal cont´ınuo Ex: 8 ∼ 16kHz — 8 a 16 mil vezes por segundo fator de quantiza¸c˜ao: precis˜ao da medi¸c˜ao de cada amostra Ex: 8 ∼ 12bits — quantidades de bits para representar cada amostra Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 11 / 27
  • 14. Processamento do Sinal Aquisi¸c˜ao do sinal taxa de amostragem: discretiza¸c˜ao do sinal cont´ınuo Ex: 8 ∼ 16kHz — 8 a 16 mil vezes por segundo fator de quantiza¸c˜ao: precis˜ao da medi¸c˜ao de cada amostra Ex: 8 ∼ 12bits — quantidades de bits para representar cada amostra Ex: 1 minuto de fala, 8kHz e 8bits 8000 × 60 ≈ 480kbytes Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 11 / 27
  • 15. Processamento do Sinal Representa¸c˜ao do sinal o sinal ´e analisado em quadros um segmento de sinal curto o suficiente, pode ser considerado estacion´ario mudan¸cas de conte´udo do sinal ocorrem em baixa frequˆencia tamanho do quadro ´e de 10 ∼ 20ms – sobreposi¸c˜ao (overlapping) extra¸c˜ao das caracter´ısticas importantes o que caracteriza o sinal naquele momento informa¸c˜oes sˆem importˆancia s˜ao eliminadas Sinal de fala Segmenta¸c˜ao em quadros Caracter´ısticas Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 12 / 27
  • 16. Processamento do Sinal Extra¸c˜ao de Caracter´ısticas Jean Baptiste Joseph Fourier Espectro de frequˆencia Transformada de Fourier LPC (Linear Predictive Coding) PLP (Perceptual Linear Predictive) MFCC (Mel-Frequency Cepstral Coefficients) modelar a sensibilidade do ouvido humano Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 13 / 27
  • 17. Modelo Ac´ustico Modelo de Fone (Modelo de sensor) Descreve como um fone ´e mapeado sobre uma sequˆencia de quadros P(caracteristicas|fone) = ? caracter´ıstica: valor discreto, 0 ∼ 255 n caracter´ısticas ⇒ 256n probabilidades a serem estimadas Adimitir valor cont´ınuo. Distribui¸c˜ao Gaussiana!!! P(x) = 1 (2π)d/2|Σ|1/2 exp − 1 2 (x − µ)t Σ−1 (x − µ) (4) Na pr´atica, somente uma gaussiana para cada fone n˜ao funciona bem Solu¸c˜ao: mistura de gaussianas (GMM - Gaussian Mixture Models) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 14 / 27
  • 18. Modelo Ac´ustico Modelo de Pron´uncia (Modelo de transi¸c˜ao) Descreve como uma palavra ´e mapeada sobre uma sequˆencia de fones A probabilidade de um caminho ´e o produto das probabilidades dos arcos que constiutem o caminho cada palavra tem seu modelo permite varia¸c˜oes de dialetos Ex: “tomato” ⇒ [t ow m ey t ow] , [t ow m aa t ow] Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 15 / 27
  • 19. Modelo Ac´ustico Modelo de Pron´uncia (Modelo de transi¸c˜ao) Descreve como uma palavra ´e mapeada sobre uma sequˆencia de fones A probabilidade de um caminho ´e o produto das probabilidades dos arcos que constiutem o caminho cada palavra tem seu modelo permite varia¸c˜oes de dialetos Ex: “tomato” ⇒ [t ow m ey t ow] , [t ow m aa t ow] P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.5 Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 15 / 27
  • 20. Modelo Ac´ustico Considera¸c˜oes co-articula¸c˜ao a ac´ustica de um fone ´e afetada por aqueles que o circundam no modelo de fone modelos bifone e trifone Ex: um GMM para cada tupla de fones (fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...} no modelo de pron´uncia Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
  • 21. Modelo Ac´ustico Considera¸c˜oes co-articula¸c˜ao a ac´ustica de um fone ´e afetada por aqueles que o circundam no modelo de fone modelos bifone e trifone Ex: um GMM para cada tupla de fones (fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...} no modelo de pron´uncia P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.1 Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
  • 22. Modelo Ac´ustico Considera¸c˜oes co-articula¸c˜ao a ac´ustica de um fone ´e afetada por aqueles que o circundam no modelo de fone modelos bifone e trifone Ex: um GMM para cada tupla de fones (fi , fi−1, fi+1) ⇒ {[m, ow, ey], [m, ow, aa], ...} no modelo de pron´uncia P([t ow m ey t ow]|“tomato”) = P([t ow m aa t ow]|“tomato”) = 0.1 P([t ah m ey t ow]|“tomato”) = P([t ah m aa t ow]|“tomato”) = 0.4 Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 16 / 27
  • 23. Modelo Ac´ustico Considera¸c˜oes fones de trˆes estados Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 17 / 27
  • 24. Modelo Ac´ustico Exemplo de HMM da palavra “c´eu”[s E w] Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 18 / 27
  • 25. Modelo Lingu´ıstico P(palavras) = ? modelar a sintaxe da linguagem P(w1 · · · wn) = P(w1)P(w2|w1)P(w3|w1w2) · · · P(wn|w1 · · · wn−1) = n i=1 P(wi |w1, w2, · · · , wi−1) (5) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 19 / 27
  • 26. Modelo Lingu´ıstico P(palavras) = ? modelar a sintaxe da linguagem P(w1 · · · wn) = P(w1)P(w2|w1)P(w3|w1w2) · · · P(wn|w1 · · · wn−1) = n i=1 P(wi |w1, w2, · · · , wi−1) (5) Modelo N-Grams Suposi¸c˜ao de Markov: Considera-se apenas N − 1 palavras anteriores Da´ı o nome N-gram: uni-gram, bi-gram, tri-gram, . . . P(w1, w2, · · · , wm) = m i=1 P(wi |w1, w2, · · · , wi−1) ≈ m i=1 P(wi |wi−N+1, wi−N+2 · · · , wi−1) (6) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 19 / 27
  • 27. Modelo Lingu´ıstico N-gram probabilidades representadas em escala logar´ıtimica P(Eu,tenho, uma, rea¸c˜ao) = = P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rea¸c˜ao|tenho, uma) = 10(−3.052994)+(−1.578986)+(−0.9324666)+(−2.410228) = 10−7.9746746 ≈ 1.1 × 10−8 Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 20 / 27
  • 28. Modelo Lingu´ıstico N-gram probabilidades representadas em escala logar´ıtimica P(Eu,tenho, uma, rea¸c˜ao) = = P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rea¸c˜ao|tenho, uma) = 10(−3.052994)+(−1.578986)+(−0.9324666)+(−2.410228) = 10−7.9746746 ≈ 1.1 × 10−8 P(Eu,tenho, uma, rela¸c˜ao) = = P(Eu)P(tenho|Eu)P(uma|Eu, tenho)P(rela¸c˜ao|tenho, uma) = 10(−3.052994)+(−1.578986)+(−0.9324666)+(−1.638537) = 10−7.2029836 ≈ 6.3 × 10−8 Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 20 / 27
  • 29. Modelo Lingu´ıstico Smoothing Problema: escassez de dados N-grams que n˜ao ocorrem nos dados de treinamento t´ecnicas de smoothing Modelos de backoff Psmooth(wi |wi−N+1 · · · wi−1) = α(wi |wi−N+1 · · · wi−1), se C > 0 γ(wi−N+1 · · · wi−1)Psmooth(wi |wi−N+2 . . . wi−1), se C = 0 Modelos de interpola¸c˜ao Psmooth(wi |wi−N+1 · · · wi−1) = λPML(wi |wi−N+1 · · · wi−1) + (1 − λ)Psmooth(wi |wi−N+2 · · · wi−1) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 21 / 27
  • 30. Modelo Lingu´ıstico Gram´aticas Probabil´ısticas gram´aticas livre de contexto (CFGs) probabilidades associadas a cada regra de produ¸c˜ao P(A → αj |G) = C(A → αj )/ m i=1 C(A → αi ) probabilidade de uma senten¸ca P(S ⇒ W|G) Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 22 / 27
  • 31. Decodificador Como encontrar a sente¸ca ˆW ? Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
  • 32. Decodificador Como encontrar a sente¸ca ˆW ? ´Unico HMM combinando todos os modelos de palavras estados fone estado atual do fone palavra Ex: [w]tomato in´ıcio Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
  • 33. Decodificador Como encontrar a sente¸ca ˆW ? ´Unico HMM combinando todos os modelos de palavras estados fone estado atual do fone palavra Ex: [w]tomato in´ıcio transi¸c˜oes entre estados de fone entre fones de uma palavras entre o estado final de uma palavra e o estado inicial de outra Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
  • 34. Decodificador Como encontrar a sente¸ca ˆW ? ´Unico HMM combinando todos os modelos de palavras estados fone estado atual do fone palavra Ex: [w]tomato in´ıcio transi¸c˜oes entre estados de fone entre fones de uma palavras entre o estado final de uma palavra e o estado inicial de outra Problema de busca! Algoritmo Virtebi (Programa¸c˜ao Dinˆamica) Algoritmo A* Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 23 / 27
  • 35. Decodificador [aa n iy dh ax] I need the Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 24 / 27
  • 36. Decodificador [aa n iy dh ax] I need the Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 25 / 27
  • 37. Divers˜ao Hands on! Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 26 / 27
  • 38. Referˆencias Referˆencias Russell, S. J., and P. Norvig. Artificial Intelligence: A Modern Approach. Upper Saddle River, NJ: Prentice Hall/PearsonEducation., 2003. Huang, X., Acero, A., and Hon, H.W. Spoken Language Processing: A Guide to Theory, Algorithm, and System Development. Upper Saddle River, NJ: Prentice Hall PTR, 2001. Gabriel F. Araujo (UFS) HMM 15 de dezembro, 2012 27 / 27