Modelos Probabilísticos:
Aplicación al Reconocimiento
Automático del Habla
José Andrés González
CITIC-UGR
Universidad de Granada
joseangl@ugr.es
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í/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
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.
• 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
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
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álisis espectral de la señal de voz
(transformada de Fourier).
E.P.S. Linares, 8 abril 2013 7
three three four
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
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
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
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
Notación
• Espectro de voz: 𝑿
• Índice en frecuencia:
𝑖 ∈ 1, 𝑛
• Índice temporal:
𝑡 ∈ [1, 𝑇]
• 𝒙 𝑡: vector columna 𝑡.
• 𝑥𝑡(𝑖): elemento 𝑖 de 𝒙 𝑡.
E.P.S. Linares, 8 abril 2013 12
𝑿
𝑇
𝑛
⋱
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
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
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
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
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 , ⋯ , 𝑿 𝑚, 𝑒 𝑚
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
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
𝑝(𝒙|𝑠𝑖𝑥)
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
GMM
𝑝 𝒙 𝑤 = 𝜋 𝑤
𝑘 N 𝒙; 𝝁 𝑤
𝑘 , 𝚺 𝑤
𝑘
𝐾
𝑘=1
• 𝜋 𝑤
𝑘 : probabilidad a priori de cada componente.
E.P.S. Linares, 8 abril 2013 21
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
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
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, … , 𝐾.
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
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 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
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)
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
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
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

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

  • 1.
    Modelos Probabilísticos: Aplicación alReconocimiento Automático del Habla José Andrés González CITIC-UGR Universidad de Granada joseangl@ugr.es
  • 2.
  • 3.
    Reconocimiento de Patrones • Entodos 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.
    Ejemplo E.P.S. Linares, 8abril 2013 3 Extracción características Clasificación ¿Madura? Forma, color, tamaño…
  • 5.
    • Reconocimiento automáticodel 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.
    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.
    Estructura • Estructura deun sistema de RAH E.P.S. Linares, 8 abril 2013 6 Front-end Back-end TEXTO Características
  • 8.
    Front-end • Objetivo: extraeruna 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.
    Back-end • Léxico: listade 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.
    Back-end E.P.S. Linares, 8abril 2013 9 Modelo acústico Señal de voz Lista de fonemas Lista de palabras Frase reconocida Léxico Modelo de lenguaje
  • 11.
    Palabras Aisladas • Simplificamosel problema: suponemos únicamente un reconocedor de palabras aisladas. E.P.S. Linares, 8 abril 2013 10 Reconocedor Modelo acústico two
  • 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.
    Notación • Espectro devoz: 𝑿 • Índice en frecuencia: 𝑖 ∈ 1, 𝑛 • Índice temporal: 𝑡 ∈ [1, 𝑇] • 𝒙 𝑡: vector columna 𝑡. • 𝑥𝑡(𝑖): elemento 𝑖 de 𝒙 𝑡. E.P.S. Linares, 8 abril 2013 12 𝑿 𝑇 𝑛 ⋱
  • 14.
    Clasificación • La palabrareconocida 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.
    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.
    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.
    Modelado Acústico • Nuestroproblema 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.
    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.
    Entrenamiento • Problema: estimarlos 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.
    Limitaciones • Raramente losdatos 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.
    GMM • GMM: modelode 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.
    GMM 𝑝 𝒙 𝑤= 𝜋 𝑤 𝑘 N 𝒙; 𝝁 𝑤 𝑘 , 𝚺 𝑤 𝑘 𝐾 𝑘=1 • 𝜋 𝑤 𝑘 : probabilidad a priori de cada componente. E.P.S. Linares, 8 abril 2013 21
  • 23.
    Ejemplo E.P.S. Linares, 8abril 2013 22 𝜋 = 0.57 𝜋 = 0.13 𝜋 = 0.30
  • 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.
    k-medias • Simplificación delalgoritmo EM. E.P.S. Linares, 8 abril 2013 24
  • 26.
    k-medias E.P.S. Linares, 8abril 2013 25 𝑘 = 2 𝑘 = 3 𝑘 = 10 Original
  • 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.
  • 29.
    Limitaciones • En elcó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.
    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.
    HMM • Aparecen dosprobabilidades 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.
    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.
    Herramientas • GMM o Toolboxesde Matlab: Voicebox, Netlab, etc. • HMM o HTK: Cambridge University. o CMUSphinx: Carnegie Mellon University. o Kaldi. E.P.S. Linares, 8 abril 2013 32