La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Reconocimiento Automático del Habla

Presentaciones similares


Presentación del tema: "Reconocimiento Automático del Habla"— Transcripción de la presentación:

1 Reconocimiento Automático del Habla
Eduardo Lleida Solano Dpt. de Ingeniería Electrónica y Comunicaciones Universidad de Zaragoza

2 Reconocimiento Automático del Habla
una historia reciente Dificultades en el RAH ¿Cómo funciona? , las bases ¿Dónde estamos?, ¿a dónde vamos? Consejos: ¿Dónde utilizar RAH?

3 Algunas Referencias Interesantes
Libros genéricos: John R. Deller, John G. Proakis, John H.L. Hansen “Discrete-Time Processing of Speech Signals” Macmillan Publishing Company, 1993 Douglas O’Shaughnessy “Speech Communications, Human and Machine” IEEE Press, 2000 Libros avanzados: Frederick Jelinek “Statistical Methods for Speech Recognition” MIT Press, 1997 Steve Young, Gerrit Bloothooft “Corpus-Based Methods in Language and Speech Processing” Kluwer Academic Publishers,1997 Internet: Socrates/Erasmus Thematic Network: Speech Communication Sciences

4 Reconocimiento Automático del Habla: una historia reciente
Los inicios: años 50 Bell Labs .... Reconocimiento de dígitos aislados monolocutor RCA Labs .... Reconocimiento de 10 sílabas monolocutor University College in England .... Reconocedor fonético MIT Lincoln Lab .... Reconocedor de vocales independiente del hablante Los fundamentos: años 60 Comienzo en Japón (NEC labs) Dynamic time warping .... Vintsyuk (Soviet Union) CMU ... Reconocimiento del Habla Continua .... HAL 9000 Las primeras soluciones: años 70, el mundo probabilístico Reconocimiento de palabras aisladas LPC, programación dinámica IBM: inicio proyecto reconocimiento de grandes vocabularios Gran inversión en los USA: proyectos DARPA Sistema HARPY (CMU) primer sistema con exito

5 una historia reciente Reconocimiento del Habla Continua: años 80, expansión Algoritmos para el habla continua y grandes vocabularios Explosión de los métodos estadísticos: Modelos Ocultos de Markov utilizados inicialmente por IBM y Dragon Systems popularizados por Bell Labs Introducción de las Redes Neuronales en el reconocimiento de voz Sistema SPHINX Empieza el negocio: años 90, primeras aplicaciones Ordenadores y procesadores baratos y rápidos Sistemas de dictado Integración entre reconocimiento de voz y procesado del lenguaje natural. ¿Una realidad?: años 00, integración en el S.O. Integración teléfono y Voice Web browsers VoiceXML estandard

6 Algunas impresiones recientes:

7 Dificultades: 1. ¿El sistema de RAH tiene que reconocer la voz de una persona o varias personas (incluyendo, quizas, cualquier persona)? 2. ¿Cual es el tamaño del vocabulario a reconocer? 3. Sobre el modo de dirigirse al sistema de RAH, ¿nos dirigiremos con palabras incluyendo pausas entre ellas o hablaremos de forma continua? 4. Variabilidad acústica y confusión acústica del vocabulario 5. Entorno acústico en el que se utilizará el sistema de RAH 6. ¿Cómo activar o se activa el sistema de RAH? 7. ¿Qué conocimientos lingüísticos son necesarios incorporar en el sistema de RAH?

8 Mono vs. Independiente del locutor
Monolocutor el sistema aprende utilizando la voz de una única persona resultados altos en tasas de reconocimiento modalidad necesaria para personas con problemas de dicción Independiente del locutor aprendizaje con grandes bases de datos de voz de muchas personas se reduce la tasa de reconocimiento necesario para aplicaciones telefónicas Adaptación al locutor aprendizaje inicial con multiples locutores aprendizaje posterior con el uso de una persona después de la adaptación comportamiento como monolocutor volver

9 Tamaño del Vocabulario
Incremento de la dificultad de reconocimiento con el tamaño del vocabulario: p.e. El usuario no conoce todas las palabras que el sistema es capaz de reconocer Incremento en la complejidad con el tamaño del vocabulario: memoria, cálculo y algoritmos de búsqueda. Clasificación: pequeño vocabulario (1-99) vocabulario medio ( ) grandes vocabularios (> 1000) volver

10 Palabras Aisladas vs. Habla Continua
Reconocimiento de palabras aisladas las frases se pronuncian con pausas entre palabras pausas suficientemente largas facilidad en la localización del inicio y final de palabra se simplifican los algoritmos de reconocimiento modo no natural de comunicación Reconocimiento de habla continua las frases se pronuncian sin ningún tipo de restricción presencia de coarticulación entre palabras no hay conocimiento a priori de las fronteras entre palabras modo natural de comunicación fenómenos de habla espontanea volver

11 Variabilidad y Confusión Acústica
Variabilidad acústica Diferencias en las pronunciaciones de sonidos una misma persona, entre personas coarticulación Unidad básica de reconocimiento fonemas, difonemas, trifonemas, semisílabas, sílabas, palabras Confusión acústica similitud acústica entre palabras del vocabulario estalagmita, estalagtita volver

12 Entorno Acústico volver
Condiciones de laboratorio: voz de alta calidad sin ruidos, sin reverberación o ecos Condiciones reales ruido ambiental otras personas, equipos de sonido, aire acondicionado, ... Distorsiones del canal variaciones en los micrófonos, canal telefónico, salas, ... Ruidos de respiración, toses, labios, .... volver

13 Activación del Sistema de RAH
Activación manual El usuario indica mediante, p.e. un pulsador, cuando debe reconocer Sistema fiable y robusto Sistema poco versátil Activación automática En sistemas de diálogo: Sistemas actuales: por turnos En el futuro: por turnos con interrupción Palabra de activación, tipo Start Trek En el futuro: por comprensión del diálogo Volver

14 Restricciones Lingüísticas
Léxico: ¿Cómo se construyen las palabras a partir de las unidades de reconocimiento? fonemas, difonemas, trifonemas Sintáctico: ¿Cómo están relacionadas unas palabras con otras para formar una frase? Nivel de reconocimiento automático del habla Semántico: ¿Cúal es el significado de las palabras?, Necesario para mantener un diálogo Nivel de comprensión Pragmático Relaciones entre las palabras y sus usos a lo largo del diálogo “Me gusta” ---> hace referencia a algo ocurrido en el diálogo Nivel de diálogo

15 Reconocimiento Diálogo Comprensión volver

16 ¿Cómo funciona?, Las bases
Formulación matemática simple: teoría probabilística Sea O una secuencia de T medidas acústicas de la voz Sea W una secuencia of N palabras pertenecientes a un vocabulario fijo y conocido. P(W|O) es la probabilidad de que la secuencia de palabras W haya sido pronunciada, dado que la secuencia O de medidas acústicas ha sido observada El reconocedor decidirá a favor de la secuencia de palabras W que satisfaga W = arg maxW P(W|O) Es decir, el reconocedor dará como resultado la secuencia mas probable de palabras dadas la medidas acústicas obtenidas.

17 Fórmula del Reconocedor
Las Bases Utilizando la fórmula de Bayes P(W) ... Probabilidad de que la secuencia de palabras W sea pronunciada P(O|W) ... Probabilidad de que cuando una persona pronuncia la secuencia de palabras W obtengamos la secuencia de medidas acústicas O P(O) ... Probabilidad de la secuencia de medidas acústicas O Fórmula del Reconocedor Modelo Acústico Modelo de Lenguaje

18 Componentes de un sistema de Reconocimiento
voz texto Procesado Acústico Análisis Gramatical transcripción Análisis Léxico Hz Aprendizaje modelos acústicos Entrenamiento Modelado Acústico P(O|W) Modelado Lenguaje P(W) Reconocimiento Algoritmo de Reconocimiento Secuencia de Palabras Procesado Acústico Voz

19 Componentes de un sistema de Reconocimiento
voz texto Procesado Acústico Análisis Gramatical transcripción Análisis Léxico Aprendizaje modelos acústicos Entrenamiento P(O|W) P(W) Modelado Acústico Modelado Lenguaje Reconocimiento Algoritmo de Reconocimiento Secuencia de Palabras Procesado Acústico voz

20 Modelado Acústico: ¿Qué y Cómo?
¿Qué queremos modelar? Unidades básicas de reconocimiento Modelos de palabras Modelos independientes del contexto: fonemas Modelos contextuales: modelan coarticulación fonemas en contextos concretos trifonema A-B+C difonema A-B or B+C ¿Cómo modelamos las unidades? Modelos Ocultos de Markov probabilidades de transición aij------> la parte oculta distribución de probabilidades de observación bj(ot) -----> la parte visible

21 Modelos Ocultos de Markov
Reconocimiento Dado un Modelo Oculto de Markov (HMM) l Calcular la probabilidad de que dicho modelo genere la secuencia de medidas acústicas O={O1, O2, O3,.... OT}

22 Hidden Markov Models transition probabilities
satisfy the stochastic constraint N number of states HMM state duration: exponential distribution, weak point because: Speech: gamma distribution Output probability distribution The acoustic measurements take values from a finite set Discrete probability densities Continuos probability densities Mixture of Gaussian probability density function

23 Hidden Markov Models Mixture Gaussian Output Distributions

24 Hidden Markov Models Speech modeling: Basic speech units Word models
context independent models: phone models context dependent models: model coarticulation phones in a particular context triphone A-B+C biphones A-B or B+C

25 Forward-Backward Algorithm

26 Forward-Backward Algorithm

27 Modelos Ocultos de Markov
Aproximación: secuencia más probable de estados Algoritmo de Viterbi Estado observación 1 2 3 T Inicialización d1(i) = pi bi(O1) y1(i) = 0 1  i  N

28 Algoritmo de Viterbi Estado 3 aij dt(j) 2 1 1 2 dt-1(i) T observación
Recursión dt(j) = max [dt-1(i) aij] bj(Ot) 2  t  T 1  i  N yt(j) = arg max [dt-1(i) aij] 1  j  N

29 Algoritmo de Viterbi Estado observación 1 2 3 T
Backtraking P* = max [dT(i)] 1  i  N qT*=arg max [dT(i)] qt* = yt+1( qt+1*) t = T-1, T-2, ...1

30 Estimacion de los Parámetros de un HMM
Modos Entrenamiento: Aislado Continuo volver

31 Modelado de Lenguaje Controla la actividad de un reconocedor
Restringe el proceso de reconocimiento, solo se buscan aquellas combinaciones de palabras permitidas por la gramática Tipos básicos de gramáticas: 1. Gramáticas de reglas o de estados finitos 2. Gramáticas de dictado o estocásticas

32 Modelado de Lenguaje: Gramáticas de Reglas
La gramática le indica al reconocedor mediante reglas que es lo que espera que el usuario diga Reconocimiento rápido y bastante exacto Es necesario un diseño cuidadoso de las reglas para permitir una libertad de expresión razonable Ejemplo (Java Speech Grammar format) #JSFG v1.0 // Define the grammar name grammar SimpleCommands; // Define the rules public <Command>=[<Polite>]<Action><Object>(and <Object>)*; <Action> = open| close | delete; <Object> = the window | the file; <Polite> = please;

33 Modelado de Lenguaje: Gramáticas de Dictado
Punto de vista probabilístico p( W ) = p( w1 w2 ...wN ) = p( w1 ) p( w2 / w1 ) ... p( wN / w1 w2 ...wN-1 ) n-gramas generalmente: n = 2 : bigramas n = 3 : trigramas p( wi / w1 w2 ...wi-1 ) = p( wi / wi-n+1 ...wi-1 ) Clases de palabras p( wi / w1 w2 ...wi-1 ) = p( wi / C(wi) ) p( C(wi) / C(wi-n+1) ...C (wi-1) ) Dificultad de una tarea: número promedio de transiciones desde una palabra: Perplejidad volver

34 Algoritmo de Reconocimiento
voz Secuencia de palabras Algoritmo de Reconocimiento O W = w1 w2 ... wN Regla de búsqueda W = argmax { p( W/O ) } = argmax { p( O / W ) p( W ) } W Modelo de Lenguaje Modelo Acústico

35 Word String Search Maximization function
W = argmax { p( W /O ) } = argmax { p( O / W ) p( W ) } W p( O / W) = Σ p( O , s / W) = Σ Π p( Ois / wi)  s i Acoustic model p( W ) = p( w1 w2 ...wN ) = p( w1) Π p( wi / wi-1) i Language model i W= argmax { p( w1) p( O1s / w1) Π p( Ois / wi) p( wi / wi-1) } W

36 Word String Search: Isolated Word Recognition
GRAMMAR COMPUTATION

37 Word String Search: CSR
Search Network o states Linear lexicon been B IH N seen S IY N a b c d e Word Acoustic models time word acoustic model

38 Word String Search : CSR
intra-word transitions time a b c d e o states o Acoustic models

39 Word String Search : CSR
inter-word transitions time a b c d e o states Acoustic models o Language model

40 Word String Search : CSR
inter-word transitions time a b c d e o states Acoustic models o Write the predecessor from where the transition (d) is done and the initial time (i) i

41 Word String Search : CSR
Backtraking time a b c d e o states Acoustic models o o o o o deb

42 Algoritmo de Reconocimiento
Problemas Carga computacional no se pueden propagar todos los caminos Búsqueda en Haz Activar o desactivar caminos según su probabilidad caiga o no por debajo de un umbral dependiente del camino más probable. Gestión de Memoria Partial traceback cuando una palabra está reconocida, todos los caminos activos pasan por ella.

43 Partial Traceback e d c b a back Word “d” is recognized states
time a b c d e o states Acoustic models o o o o o back

44 Current Error Rates for High-Performance Speech Recognition
Corpus Type Vocabulary, # of words Word error rate Connected digits Read < 0.3 % Airline travel system Spontaneous % Wall Street Journal Read % Broadcast news Read/Spontaneous % Call home Conversational %

45 ¿Dónde estamos? Sistemas de Dictado Adaptado al locutor
Gran vocabulario y ampliable Habla continua Servicios Telefónicos Acceso a información Encuestas Transacciones comerciales Centralitas manos libres

46 ¿A dónde vamos?

47 Consejos: ¿Dónde y cuando utilizar RAH?
Y para ir terminando .... Consejos: ¿Dónde y cuando utilizar RAH? Premisa: Las aplicaciones con RAH tienen éxito cuando el usuario está motivado en su uso Limitaciones: 1. Los sistemas de RAH no transcriben voz sin restricciones 2. Los sistema de RAH comenten muchos errores Necesidad: Verificar el resultado del reconocedor: confianza acústica

48 ¿Dónde y cuando utilizar la voz?
Utilizar cuando ... Evitar cuando ... La tarea requiera que el usuario hable con otras personas mientras utiliza la aplicación No se dispone de un teclado,p.e, sobre la red telefónica Tareas que requieran la utilización de las manos del usuario, p.e. editores gráficos El usuario trabaja en condiciones malas de ruido ambiental Usuarios que no pueden teclear o no están acostrumbrados al uso de un teclado Las tareas se pueden realizar de una forma mas sencilla y eficiente con un ratón y teclado Usuarios con discapacidades físicas que limitan el uso de las manos

49 tipos de errores Rechazos: el usuario habla pero el RAH no entiende lo que dice Sustituciones: el RAH reconoce palabras que son distintas a las que el usuario pronuncia Falsas Alarmas: el usuario no dice nada y el RAH devuelve una palabra reconocida

50 Causas problema causa Rechazo o Sustituciones Falsas Alarmas
El usuario pronuncia una o mas palabras no contenidas en el vocabulario La frase pronunciada no se adapta a ninguna gramática activa El usuario habla antes de que el sistema esté listo para reconocer Palabras muy parecidas que producen confusión Pausas muy largas en el medio de frases El usuario habla con disfluencias (falsos comienzos,”umm”,”ehh”) El usuario tiene un acento muy marcado o está resfriado La voz del usuario difiere considerablemente del aprendizaje El micrófono no está bien ajustado Rechazo o Sustituciones Sonidos como risas, toses, etc. Voces lejanas El usuario está hablando con otra persona Falsas Alarmas


Descargar ppt "Reconocimiento Automático del Habla"

Presentaciones similares


Anuncios Google