Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Modelos Probabilísticos:
Aplicación al Reconocimiento
Automático del Habla
José Andrés González
CITIC-UGR
Universidad de G...
Reconocimiento de
Patrones
E.P.S. Linares, 8 abril 2013 1
Reconocimiento de
Patrones
• En todos los casos nos encontramos ante un
problema de clasificación
o Binarios
• Caras: Sí/N...
Ejemplo
E.P.S. Linares, 8 abril 2013 3
Extracción
características
Clasificación ¿Madura?
Forma, color,
tamaño…
• Reconocimiento automático del habla (RAH): tarea
de reconocimiento de patrones.
o Entrada: señal de voz.
o Salida: texto...
Particularidades del RAH
• Dependiente del tiempo: una misma palabra
puede tener distinta duración.
• Variabilidad: debida...
Estructura
• Estructura de un sistema de RAH
E.P.S. Linares, 8 abril 2013 6
Front-end Back-end TEXTO
Características
Front-end
• Objetivo: extraer una serie de parámetros
(características) útiles para reconocer la voz.
• Realiza un análisi...
Back-end
• Léxico: lista de palabras con sus pronunciaciones
fonéticas.
• Modelo lenguaje: ¿qué palabras son más frecuente...
Back-end
E.P.S. Linares, 8 abril 2013 9
Modelo acústico
Señal de voz
Lista de fonemas
Lista de palabras
Frase reconocida
L...
Palabras Aisladas
• Simplificamos el problema: suponemos únicamente
un reconocedor de palabras aisladas.
E.P.S. Linares, 8...
Reconocedor de Palabras
Aisladas
• Múltiples enfoques para diseñar el clasificador:
o K-vecinos más cercanos.
o Árboles de...
Notación
• Espectro de voz: 𝑿
• Índice en frecuencia:
𝑖 ∈ 1, 𝑛
• Índice temporal:
𝑡 ∈ [1, 𝑇]
• 𝒙 𝑡: vector columna 𝑡.
• 𝑥𝑡...
Clasificación
• La palabra reconocida es aquella cuya
pronunciación “se parece más” a 𝑿.
• Matemáticamente:
𝑑𝑖𝑔𝑖𝑡𝑜 = argma...
Clasificación
• 𝑝 𝑿 𝑤 nos da el parecido de 𝑿 con el modelo de
la palabra 𝑤.
• 𝑝(𝑤) es la probabilidad a priori de cada pa...
Cómputo de 𝑝(𝑿|𝑤)
• La duración temporal de 𝑿 puede ser arbitraria:
esto dificulta el cómputo de 𝑝(𝑿|𝑤).
• Solución 1: fij...
Modelado Acústico
• Nuestro problema ahora es el de modelar
matemáticamente 𝑝(𝒙 𝑡|𝑤).
• Primera aproximación: cada palabra...
Distribución Normal
𝝁 = 𝜇 𝑥1
, 𝜇 𝑥2
= 5,2 𝚺 =
𝜎𝑥1
2
𝜎 𝑥1,𝑥2
𝜎 𝑥2,𝑥1 𝜎 𝑥2
2 =
1 0.5
0.5 3
E.P.S. Linares, 8 abril 2013 17
Entrenamiento
• Problema: estimar los parámetros 𝝁 𝑤, 𝚺 𝑤 para
cada palabra 𝑤.
• Conjunto de entrenamiento
𝑿1, 𝑒1 , ⋯ , 𝑿 ...
Limitaciones
• Raramente los datos se
distribuyen según una
normal.
• Esto limita la precisión
del reconocedor.
• Solución...
GMM
• GMM: modelo de mezcla de Gaussianas (Gaussian
Mixture Model).
• La idea es utilizar 𝐾 ≫ 1 distribuciones normales
pa...
GMM
𝑝 𝒙 𝑤 = 𝜋 𝑤
𝑘 N 𝒙; 𝝁 𝑤
𝑘 , 𝚺 𝑤
𝑘
𝐾
𝑘=1
• 𝜋 𝑤
𝑘 : probabilidad a priori de cada componente.
E.P.S. Linares, 8 abril 201...
Ejemplo
E.P.S. Linares, 8 abril 2013 22
𝜋 = 0.57
𝜋 = 0.13
𝜋 = 0.30
Entrenamiento del GMM
• Problema: estimar los parámetros del GMM
𝜋 𝑘, 𝝁 𝑘, 𝚺 𝑘 , 𝑘 = 1, … , 𝐾, que mejor se ajustan a los
...
k-medias
• Simplificación del algoritmo EM.
E.P.S. Linares, 8 abril 2013 24
k-medias
E.P.S. Linares, 8 abril 2013 25
𝑘 = 2 𝑘 = 3 𝑘 = 10 Original
Algoritmo EM
• Entrada: datos de entrenamiento 𝒙1, … , 𝒙 𝑇 y valor 𝐾.
• Salida: parámetros 𝜋 𝑘, 𝝁 𝑘, 𝚺 𝑘 para 𝑘 = 1, … , 𝐾...
Demo Matlab
E.P.S. Linares, 8 abril 2013 27
Limitaciones
• En el cómputo 𝑝(𝑿|𝑤) hemos supuesto
independencia estadística entre los vectores 𝒙 𝑡.
• Limitaciones de est...
HMM
• 𝑠1, 𝑠2, 𝑠3 son los estados del HMM.
• Cada estado modela un segmento estacionario de
señal (p.ej. fonema o parte de ...
HMM
• Aparecen dos probabilidades
o 𝑝 𝑠𝑖 𝑠𝑗 es la probabilidad de transición entre los estados 𝑠𝑖 y 𝑠𝑗. Modela
la evolució...
HMM: algoritmos
• Entrenamiento: algoritmo de Baum-Welch.
o Estima los parámetros del HMM dados un conjunto de señales de ...
Herramientas
• GMM
o Toolboxes de Matlab: Voicebox, Netlab, etc.
• HMM
o HTK: Cambridge University.
o CMUSphinx: Carnegie ...
Próxima SlideShare
Cargando en…5
×

Modelos Probabilísticos: Aplicación al Reconocimiento Automático del Habla

1.476 visualizaciones

Publicado el

La presentación se centra en el uso de modelos estadísticos generativos en el reconocimiento automático del habla. En particular, se describen los modelos de mezcla de distribuciones normales multivariadas (GMM; del inglés Gaussian Mixture Model) y los modelos ocultos de Markov (HMM, del inglés Hidden Markov Model).

Publicado en: Tecnología
  • Sé el primero en comentar

Modelos Probabilísticos: Aplicación al Reconocimiento Automático del Habla

  1. 1. Modelos Probabilísticos: Aplicación al Reconocimiento Automático del Habla José Andrés González CITIC-UGR Universidad de Granada joseangl@ugr.es
  2. 2. Reconocimiento de Patrones E.P.S. Linares, 8 abril 2013 1
  3. 3. Reconocimiento de Patrones • En todos los casos nos encontramos ante un problema de clasificación o Binarios • Caras: Sí/No. • Fresas: Madura/Verde. o N-arios • OCR: identificar las letras del alfabeto. • Pasos comunes para abordar el problema 1. Extracción de características: formas, píxeles, color, espectro, etc. 2. Diseño de un clasificador. 3. Ajuste del clasificador (opcional). E.P.S. Linares, 8 abril 2013 2
  4. 4. Ejemplo E.P.S. Linares, 8 abril 2013 3 Extracción características Clasificación ¿Madura? Forma, color, tamaño…
  5. 5. • Reconocimiento automático del habla (RAH): tarea de reconocimiento de patrones. o Entrada: señal de voz. o Salida: texto. • Aplicaciones: Voice Search (Android), Siri (iPhone), Dragon Naturally Speaking, etc. Reconocimiento Automático del Habla E.P.S. Linares, 8 abril 2013 4 RAH TEXTO
  6. 6. Particularidades del RAH • Dependiente del tiempo: una misma palabra puede tener distinta duración. • Variabilidad: debida a varios factores o Locutor: genero, edad, acento, estado de ánimo, etc. o Ambiente acústico: ruido, acústica de la dala y canal. o Aspectos relacionados con el lenguaje: complejidad, tipo de tarea, pausas, dudas, etc. • Los factores anteriores afectan al rendimiento del RAH: menor número de palabras reconocidas. E.P.S. Linares, 8 abril 2013 5
  7. 7. Estructura • Estructura de un sistema de RAH E.P.S. Linares, 8 abril 2013 6 Front-end Back-end TEXTO Características
  8. 8. Front-end • Objetivo: extraer una serie de parámetros (características) útiles para reconocer la voz. • Realiza un análisis espectral de la señal de voz (transformada de Fourier). E.P.S. Linares, 8 abril 2013 7 three three four
  9. 9. Back-end • Léxico: lista de palabras con sus pronunciaciones fonéticas. • Modelo lenguaje: ¿qué palabras son más frecuentes en una lengua dada? • Modelo acústico: modela cada fonema acústicamente. E.P.S. Linares, 8 abril 2013 8 ReconocedorVOZ TEXTO Modelo lenguaje Léxico Modelo acústico
  10. 10. Back-end E.P.S. Linares, 8 abril 2013 9 Modelo acústico Señal de voz Lista de fonemas Lista de palabras Frase reconocida Léxico Modelo de lenguaje
  11. 11. Palabras Aisladas • Simplificamos el problema: suponemos únicamente un reconocedor de palabras aisladas. E.P.S. Linares, 8 abril 2013 10 Reconocedor Modelo acústico two
  12. 12. Reconocedor de Palabras Aisladas • Múltiples enfoques para diseñar el clasificador: o K-vecinos más cercanos. o Árboles de clasificación. o Basados en reglas. o … • Métodos probabilísticos: basados en la teoría de decisión bayesiana. • Aquí estudiaremos la clasificación utilizando modelos de mezcla de Gaussianas (GMM). E.P.S. Linares, 8 abril 2013 11
  13. 13. Notación • Espectro de voz: 𝑿 • Índice en frecuencia: 𝑖 ∈ 1, 𝑛 • Índice temporal: 𝑡 ∈ [1, 𝑇] • 𝒙 𝑡: vector columna 𝑡. • 𝑥𝑡(𝑖): elemento 𝑖 de 𝒙 𝑡. E.P.S. Linares, 8 abril 2013 12 𝑿 𝑇 𝑛 ⋱
  14. 14. Clasificación • La palabra reconocida es aquella cuya pronunciación “se parece más” a 𝑿. • Matemáticamente: 𝑑𝑖𝑔𝑖𝑡𝑜 = argmax 𝑤 𝑝 𝑤 𝑿 , 𝑤 ∈ {𝑜𝑛𝑒, 𝑡𝑤𝑜, … , 𝑧𝑒𝑟𝑜} • Aplicando la regla de Bayes: 𝑑𝑖𝑔𝑖𝑡𝑜 = argmax 𝑤 𝑝 𝑿 𝑤 𝑝(𝑤) 𝑝(𝑿) = argmax 𝑤 𝑝 𝑿 𝑤 𝑝(𝑤) E.P.S. Linares, 8 abril 2013 13
  15. 15. Clasificación • 𝑝 𝑿 𝑤 nos da el parecido de 𝑿 con el modelo de la palabra 𝑤. • 𝑝(𝑤) es la probabilidad a priori de cada palabra. P.ej. “de” vs. “té”. • Suponiendo 𝑝(𝑤) equiprobable E.P.S. Linares, 8 abril 2013 14 ⋮ 𝑝(𝑿|𝑜𝑛𝑒) 𝑝(𝑿|𝑡𝑤𝑜) 𝑝(𝑿|𝑧𝑒𝑟𝑜) max two
  16. 16. Cómputo de 𝑝(𝑿|𝑤) • La duración temporal de 𝑿 puede ser arbitraria: esto dificulta el cómputo de 𝑝(𝑿|𝑤). • Solución 1: fijar una duración 𝜏 fija y redimensionar 𝑿 en consecuencia. o Funciona para palabras aisladas pero difícil de aplicar en habla continua. • Solución 2: asumimos independencia estadística entre los vectores de características. Luego 𝑝 𝑿 𝑤 = 𝑝(𝒙 𝑡|𝑤) 𝑇 𝑡=1 E.P.S. Linares, 8 abril 2013 15
  17. 17. Modelado Acústico • Nuestro problema ahora es el de modelar matemáticamente 𝑝(𝒙 𝑡|𝑤). • Primera aproximación: cada palabra 𝑤 se modela como una distribución normal multivariante. • Luego, 𝑝 𝒙 𝑡 𝑤 = N 𝒙 𝑡; 𝝁 𝑤,𝚺 𝑤 donde N 𝒙; 𝝁,𝚺 = 1 2𝜋 𝑛 𝚺 exp − 1 2 𝒙 − 𝝁 ⊺ 𝚺−1 𝒙 − 𝝁 E.P.S. Linares, 8 abril 2013 16
  18. 18. Distribución Normal 𝝁 = 𝜇 𝑥1 , 𝜇 𝑥2 = 5,2 𝚺 = 𝜎𝑥1 2 𝜎 𝑥1,𝑥2 𝜎 𝑥2,𝑥1 𝜎 𝑥2 2 = 1 0.5 0.5 3 E.P.S. Linares, 8 abril 2013 17
  19. 19. Entrenamiento • Problema: estimar los parámetros 𝝁 𝑤, 𝚺 𝑤 para cada palabra 𝑤. • Conjunto de entrenamiento 𝑿1, 𝑒1 , ⋯ , 𝑿 𝑚, 𝑒 𝑚 o 𝑿𝑖 espectrograma de la palabra 𝑖-ésima. o 𝑒𝑖 etiqueta que identifica a la palabra 𝑿𝑖. P.ej. 𝑒𝑖=“five”. • Sean 𝒙1, 𝒙2, … , 𝒙 𝑇 𝑤 los vectores de características cuya etiqueta es 𝑤. Entonces 𝝁 𝑤 = 1 𝑇 𝑤 𝒙 𝑡 𝑇 𝑤 𝑡=1 𝚺 𝑤 = 1 𝑇 𝑤 − 1 𝒙 𝑡 − 𝝁 𝑤 𝒙 𝑡 − 𝝁 𝑤 ⊺ 𝑇 𝑤 𝑡=1 E.P.S. Linares, 8 abril 2013 18
  20. 20. Limitaciones • Raramente los datos se distribuyen según una normal. • Esto limita la precisión del reconocedor. • Solución: usar un GMM para modelar 𝑝(𝒙|𝑤). E.P.S. Linares, 8 abril 2013 19 𝑝(𝒙|𝑠𝑖𝑥)
  21. 21. GMM • GMM: modelo de mezcla de Gaussianas (Gaussian Mixture Model). • La idea es utilizar 𝐾 ≫ 1 distribuciones normales para modelar cada palabra 𝑤. • Aproximador universal: un GMM puede aproximar cualquier distribución de probabilidad. • Amplio uso en tecnologías del habla: reconocimiento y síntesis de voz, identificación/verificación locutor, etc. E.P.S. Linares, 8 abril 2013 20
  22. 22. GMM 𝑝 𝒙 𝑤 = 𝜋 𝑤 𝑘 N 𝒙; 𝝁 𝑤 𝑘 , 𝚺 𝑤 𝑘 𝐾 𝑘=1 • 𝜋 𝑤 𝑘 : probabilidad a priori de cada componente. E.P.S. Linares, 8 abril 2013 21
  23. 23. Ejemplo E.P.S. Linares, 8 abril 2013 22 𝜋 = 0.57 𝜋 = 0.13 𝜋 = 0.30
  24. 24. Entrenamiento del GMM • Problema: estimar los parámetros del GMM 𝜋 𝑘, 𝝁 𝑘, 𝚺 𝑘 , 𝑘 = 1, … , 𝐾, que mejor se ajustan a los datos. • El número de componentes, 𝐾, se elige a priori. • Optimización directa inviable ⇒ se recurre a un algoritmo iterativo. • Algoritmo empleado: algoritmo EM (esperanza- maximización). E.P.S. Linares, 8 abril 2013 23
  25. 25. k-medias • Simplificación del algoritmo EM. E.P.S. Linares, 8 abril 2013 24
  26. 26. k-medias E.P.S. Linares, 8 abril 2013 25 𝑘 = 2 𝑘 = 3 𝑘 = 10 Original
  27. 27. Algoritmo EM • Entrada: datos de entrenamiento 𝒙1, … , 𝒙 𝑇 y valor 𝐾. • Salida: parámetros 𝜋 𝑘, 𝝁 𝑘, 𝚺 𝑘 para 𝑘 = 1, … , 𝐾. 1. Inicializar los parámetros del GMM (p.ej. k-medias). 2. Repetir hasta que el algoritmo no converja a. Paso E. 𝛾 𝑧𝑡𝑘 = 𝜋 𝑘 N 𝒙 𝑡; 𝝁 𝑘 , 𝚺 𝑘 𝜋 𝑗N 𝒙 𝑡; 𝝁 𝑗, 𝚺 𝑗𝐾 𝑗=1 b. Paso M. 𝝁new 𝑘 = 1 𝑁𝑘 𝛾 𝑧𝑡𝑘 𝒙 𝒕 𝑇 𝑡=1 , 𝚺new 𝑘 = 1 𝑁𝑘 𝛾 𝑧𝑡𝑘 𝒙 𝒕 − 𝝁new 𝑘 𝑇 𝑡=1 𝒙 𝒕 − 𝝁new 𝑘 ⊺ , 𝜋new 𝑘 = 𝑁𝑘 𝑇 donde 𝑁𝑘 = 𝛾 𝑧𝑡𝑘 𝑇 𝑡=1 E.P.S. Linares, 8 abril 2013 26
  28. 28. Demo Matlab E.P.S. Linares, 8 abril 2013 27
  29. 29. Limitaciones • En el cómputo 𝑝(𝑿|𝑤) hemos supuesto independencia estadística entre los vectores 𝒙 𝑡. • Limitaciones de este enfoque: o Ejemplo 1: clasificación de “aro” vs. “hora”. o Ejemplo 2: cualquier permutación de los vectores en 𝑿 produce la misma probabilidad de observación. • Parece necesario imponer restricciones temporales durante el reconocimiento. • Solución: modelo oculto de Markov (HMM). E.P.S. Linares, 8 abril 2013 28
  30. 30. HMM • 𝑠1, 𝑠2, 𝑠3 son los estados del HMM. • Cada estado modela un segmento estacionario de señal (p.ej. fonema o parte de un fonema). E.P.S. Linares, 8 abril 2013 29 s1 s2 s3 𝑝(𝑠2|𝑠1) 𝑝(𝑠3|𝑠2) 𝑝(𝑠1|𝑠1) 𝑝(𝑠2|𝑠2) 𝑝(𝑠3|𝑠3) 𝑝(𝒙|𝑠1) 𝑝(𝒙|𝑠2) 𝑝(𝒙|𝑠3)
  31. 31. HMM • Aparecen dos probabilidades o 𝑝 𝑠𝑖 𝑠𝑗 es la probabilidad de transición entre los estados 𝑠𝑖 y 𝑠𝑗. Modela la evolución temporal de la voz. o 𝑝 𝒙 𝑠𝑗 define la probabilidad de observación de los vectores de características para cada estado. Se usan GMMs para calcularla. • RAH basado en HMMs: o Tareas de pequeño vocabulario: cada HMM modela una única palabra. Nº de estados ≈ nº de fonemas de la palabra. o Tareas de gran vocabulario • Cada HMM modela una unidad de subpalabra (p.ej. fonema, trifonema o sílaba). • Los HMMs se concatenan para formar palabras ⇒ información léxica. • Las palabras se ponderan de acuerdo a sus probabilidades ⇒ modelo de lenguaje. E.P.S. Linares, 8 abril 2013 30
  32. 32. HMM: algoritmos • Entrenamiento: algoritmo de Baum-Welch. o Estima los parámetros del HMM dados un conjunto de señales de voz y sus transcripciones asociadas. o Se trata de una versión del algoritmo EM. • Reconocimiento: algoritmo de Viterbi. o Es un algoritmo de búsqueda en grafos con pesos. o Encuentra la secuencia de palabras más probable dada la señal observada. E.P.S. Linares, 8 abril 2013 31
  33. 33. Herramientas • GMM o Toolboxes de Matlab: Voicebox, Netlab, etc. • HMM o HTK: Cambridge University. o CMUSphinx: Carnegie Mellon University. o Kaldi. E.P.S. Linares, 8 abril 2013 32

×