Reconocimiento automático del habla mediante un modelo híbrido basado en modelos ocultos de Markov y Redes Neurales Artificiales : caso de estudio: habla venezolana
Texto completo
(2) Reconocimiento Automático del Habla mediante un modelo hı́brido basado en Modelos Ocultos de Markov y Redes Neuronales Artificiales. Caso de estudio: habla venezolana Br. Marco Antonio Camejo Medina Proyecto de Grado — Investigación de Operaciones, 116 páginas Resumen: En esta investigación se evalúan dos modelos hı́bridos basados en Modelos Ocultos de Markov y Redes Neuronales Artificiales en el Reconocimiento Automático del Habla. El propósito fundamental es comparar el desempeño de los modelos hı́bridos frente al enfoque tradicional basado en Modelos Ocultos de Markov puros. En el primero de los modelos hı́bridos, la RNA cumple el papel de estimador de las probabilidades de las observaciones para los MOM, mientras que en el segundo modelo, la RNA es empleada como clasificador de la señal de voz, en base a las probabilidades arrojadas por los MOM. Los resultados obtenidos indican que mediante el primer modelo, utilizando Redes Perceptrónicas Multicapa, se logra una mejorı́a de 2,3% respecto al modelo basado en MOM puros, mientras que con el segundo enfoque, utilizando Redes de Funciones de Base Radial, se logra una mejorı́a de 4,7% con respecto al mismo clasificador puro. Palabras clave: Reconocimiento Automático del Habla, Reconocimiento de Patrones, Modelos Ocultos de Markov, Redes Neuronales Artificiales.
(3) A mi madre..
(4) Índice Índice de Tablas. ix. Índice de Figuras. xi. Agradecimientos. xiii. 1 Introducción. 1. 1.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. 1.2. Definición y delimitación del problema . . . . . . . . . . . . . . . . . .. 3. 1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4. 1.3.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . .. 4. 1.3.2. Objetivos especı́ficos . . . . . . . . . . . . . . . . . . . . . . . .. 4. Estructura de la monografı́a . . . . . . . . . . . . . . . . . . . . . . . .. 4. 1.4. 2 Reconocimiento Automático del Habla 2.1. 2.2. 2.3. 6. Arquitectura de los Sistemas de RAH . . . . . . . . . . . . . . . . . . .. 7. 2.1.1. Adquisición de los datos . . . . . . . . . . . . . . . . . . . . . .. 8. 2.1.2. Subsistema de decodificación acústico . . . . . . . . . . . . . . .. 9. 2.1.3. Subsistema de decodificación lingüı́stico . . . . . . . . . . . . . .. 11. Clasificación de los Sistemas de RAH . . . . . . . . . . . . . . . . . . .. 12. 2.2.1. De acuerdo al tamaño del vocabulario . . . . . . . . . . . . . . .. 12. 2.2.2. De acuerdo a la dependencia del hablante . . . . . . . . . . . .. 13. 2.2.3. De acuerdo al tipo de reconocimiento . . . . . . . . . . . . . . .. 13. 2.2.4. De acuerdo a la inclusión de módulos de gramática . . . . . . .. 13. RAH: Enfoque de reconocimiento de patrones . . . . . . . . . . . . . .. 14. iv.
(5) 3 Modelos Ocultos de Markov. 16. 3.1. Procesos estocásticos y cadenas de Markov . . . . . . . . . . . . . . . .. 16. 3.2. Los Modelos Ocultos de Markov . . . . . . . . . . . . . . . . . . . . . .. 18. 3.3. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 18. 3.4. Elementos de un Modelo Oculto de Markov. 19. 3.5. Tipos de Modelos Ocultos de Markov de acuerdo al número de sı́mbolos. . . . . . . . . . . . . . . .. observables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 20. Arquitecturas de los Modelos Ocultos de Markov. . . . . . . . . . . . .. 21. 3.6.1. Modelos Ergódicos . . . . . . . . . . . . . . . . . . . . . . . . .. 21. 3.6.2. Modelos Izquierda-Derecha . . . . . . . . . . . . . . . . . . . . .. 22. 3.7. Los Modelos Ocultos de Markov y la Clasificación Estadı́stica . . . . .. 22. 3.8. Evaluación de la probabilidad de una secuencia de observaciones . . . .. 24. 3.8.1. Algoritmo de Avance-Retroceso . . . . . . . . . . . . . . . . . .. 24. Decodificación de una secuencia de observaciones . . . . . . . . . . . .. 26. 3.9.1. Algoritmo Viterbi . . . . . . . . . . . . . . . . . . . . . . . . . .. 26. 3.10 Entrenamiento de un Modelo Oculto de Markov . . . . . . . . . . . . .. 27. 3.10.1 Algoritmo de Reestimación Baum-Welch . . . . . . . . . . . . .. 28. 3.10.2 Algoritmo de Reestimación Viterbi . . . . . . . . . . . . . . . .. 31. 3.11 Modelos ocultos de Markov de observaciones continuas . . . . . . . . .. 33. 3.11.1 Evaluación y decodificación de MOM de observaciones continuas. 34. 3.11.2 Reestimación Baum-Welch de MOM de observaciones continuas. 34. 3.11.3 Reestimación Viterbi de MOM de observaciones continuas . . .. 35. 3.12 Los MOM y el Reconocimiento Automático del Habla . . . . . . . . . .. 36. 3.6. 3.9. 4 Redes Neuronales Artificiales. 38. 4.1. La Neurona Biológica . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 39. 4.2. La Neurona Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 39. 4.3. Funciones de transferencia o activación . . . . . . . . . . . . . . . . . .. 40. 4.4. Capas de una RNA . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 42. 4.5. Topologı́a de una RNA . . . . . . . . . . . . . . . . . . . . . . . . . . .. 42. 4.5.1. Redes de conexión hacia adelante . . . . . . . . . . . . . . . . .. 42. 4.5.2. Redes de conexión hacia atrás . . . . . . . . . . . . . . . . . . .. 42.
(6) 4.6. Arquitectura de una RNA . . . . . . . . . . . . . . . . . . . . . . . . .. 43. 4.7. Aprendizaje o Entrenamiento . . . . . . . . . . . . . . . . . . . . . . .. 43. 4.7.1. Aprendizaje supervisado . . . . . . . . . . . . . . . . . . . . . .. 44. 4.7.2. Aprendizaje no supervisado . . . . . . . . . . . . . . . . . . . .. 44. 4.8. Generalización y Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 44. 4.9. Redes Perceptrónicas Multicapa . . . . . . . . . . . . . . . . . . . . . .. 44. 4.9.1. Algoritmo de retropropagación del error . . . . . . . . . . . . .. 45. 4.10 Redes de Funciones de Base Radial . . . . . . . . . . . . . . . . . . . .. 48. 4.10.1 Funciones de Base Radial . . . . . . . . . . . . . . . . . . . . .. 48. 4.10.2 Interpolación mediante funciones de base radial . . . . . . . . .. 49. 4.10.3 Red de Funciones de Base Radial . . . . . . . . . . . . . . . . .. 51. 4.10.4 Funcionamiento de las Redes RBF . . . . . . . . . . . . . . . .. 52. 4.10.5 Entrenamiento de redes RBF . . . . . . . . . . . . . . . . . . .. 53. 4.11 Redes Neuronales Artificiales en el RAH . . . . . . . . . . . . . . . . .. 54. 5 Enfoques hı́bridos MOM/RNA. 57. 5.1. Arquitecturas hı́bridas MOM/RNA . . . . . . . . . . . . . . . . . . . .. 57. 5.2. Enfoque hı́brido 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 58. 5.2.1. Arquitectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 59. 5.2.2. Entrenamiento . . . . . . . . . . . . . . . . . . . . . . . . . . .. 60. Enfoque hı́brido 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 62. 5.3.1. Arquitectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 63. 5.3.2. Entrenamiento . . . . . . . . . . . . . . . . . . . . . . . . . . .. 63. 5.3. 6 Tratamiento de las señales de voz 6.1. 65. Base de datos SpeechDat Venezolana . . . . . . . . . . . . . . . . . . .. 65. 6.1.1. Caracterı́sticas técnicas de los archivos de voz . . . . . . . . . .. 66. 6.1.2. Nomenclatura de los archivos de voz . . . . . . . . . . . . . . .. 66. 6.2. Selección de los archivos de voz . . . . . . . . . . . . . . . . . . . . . .. 67. 6.3. Preparación de los datos . . . . . . . . . . . . . . . . . . . . . . . . . .. 68. 6.3.1. Fonos del español venezolano . . . . . . . . . . . . . . . . . . .. 68. 6.3.2. Etiquetado de los archivos de voz . . . . . . . . . . . . . . . . .. 68.
(7) 6.3.3. Parametrización de los datos . . . . . . . . . . . . . . . . . . . .. 7 Experimentos y Resultados. 70 72. 7.1. Herramientas de Software Utilizadas . . . . . . . . . . . . . . . . . . .. 72. 7.2. Criterios de evaluación de los modelos . . . . . . . . . . . . . . . . . . .. 72. 7.3. Pruebas de reconocimiento: enfoque clásico . . . . . . . . . . . . . . . .. 73. 7.3.1. Selección del mejor modelo . . . . . . . . . . . . . . . . . . . . .. 74. Pruebas de reconocimiento: enfoque hı́brido . . . . . . . . . . . . . . .. 76. 7.4.1. Primera Prueba . . . . . . . . . . . . . . . . . . . . . . . . . . .. 76. 7.4.2. Segunda Prueba . . . . . . . . . . . . . . . . . . . . . . . . . . .. 78. 7.4. 8 Conclusiones y Recomendaciones. 83. 8.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 83. 8.2. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 84. Bibliografı́a. 86. A Resultados de Reconocimiento. 89. A.1 Resultados Entrenamiento Baum-Welch . . . . . . . . . . . . . . . . . .. 89. A.2 Resultados Entrenamiento Viterbi . . . . . . . . . . . . . . . . . . . . .. 91. A.3 Resultados para el modelo hı́brido 1 . . . . . . . . . . . . . . . . . . . .. 93. A.4 Resultados para el modelo hı́brido 2 . . . . . . . . . . . . . . . . . . . .. 95. A.5 Resultados para el modelo hı́brido 3 . . . . . . . . . . . . . . . . . . . .. 97. A.6 Resultados para el modelo hı́brido 4 . . . . . . . . . . . . . . . . . . . .. 98. B Pruebas Modelos Hı́bridos B.1 Modelo hı́brido 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 99 99. B.2 Modelo hı́brido 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 B.3 Modelo hı́brido 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 B.4 Modelo hı́brido 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 C Porcentajes de Reconocimiento por fonos C.1 Modelo Puro. 109. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109. C.2 Modelo hı́brido 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.
(8) C.3 Modelo hı́brido 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 C.4 Modelo hı́brido 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 C.5 Modelo hı́brido 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116.
(9) Índice de Tablas 5.1. Resumen de los enfoques hı́bridos . . . . . . . . . . . . . . . . . . . . .. 64. 6.1. Distribución de los archivos de voz por género y región dialectal . . . .. 67. 6.2. Fonos del español venezolano de fechas . . . . . . . . . . . . . . . . . .. 69. 6.3. Corpus de entrenamiento y validación por fonos . . . . . . . . . . . . .. 71. 7.1. Resultados de reconocimiento, entrenamiento Viterbi, 2 estados . . . .. 74. 7.2. Resultados de reconocimiento, entrenamiento Baum-Welch, 2 estados .. 75. 7.3. Mejores Modelos entrenados mediante el algoritmo Viterbi . . . . . . .. 75. 7.4. Mejores Modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 79. 7.5. Mejores Modelos. Porcentaje de reconocimiento por fonos . . . . . . . .. 80. A.1 Resultados de reconocimiento, entrenamiento Baum-Welch. MOM de 3 estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 89. A.2 Resultados de reconocimiento, entrenamiento Baum-Welch. MOM de 4 estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 90. A.3 Resultados de reconocimiento, entrenamiento Viterbi. MOM de 3 estados 91 A.4 Resultados de reconocimiento, entrenamiento Viterbi. MOM de 4 estados 92 A.5 Hı́brido 1 (α = 0, 25, prueba exploratoria) . . . . . . . . . . . . . . . .. 93. A.6 Hı́brido 1 (α = 0, 50, prueba exploratoria) . . . . . . . . . . . . . . . .. 93. A.7 Hı́brido 1 (α = 0, 75, prueba exploratoria) . . . . . . . . . . . . . . . .. 94. A.8 Hı́brido 1. Promedio de las 3 réplicas (prueba exploratoria) . . . . . . .. 94. A.9 Hı́brido 2 (α = 0, 25, prueba exploratoria) . . . . . . . . . . . . . . . .. 95. A.10 Hı́brido 2 (α = 0, 50, prueba exploratoria) . . . . . . . . . . . . . . . .. 95. A.11 Hı́brido 2 (α = 0, 75, prueba exploratoria) . . . . . . . . . . . . . . . .. 96. ix.
(10) A.12 Hı́brido 2. Promedio de las 3 réplicas (prueba exploratoria) . . . . . . .. 96. A.13 Hı́brido 3 (prueba exploratoria) . . . . . . . . . . . . . . . . . . . . . .. 97. A.14 Hı́brido 3 (prueba exploratoria). Promedio de las 3 réplicas . . . . . . .. 97. A.15 Hı́brido 4 (prueba exploratoria) . . . . . . . . . . . . . . . . . . . . . .. 98. A.16 Hı́brido 4 (prueba exploratoria). Promedio de las 3 réplicas . . . . . . .. 98. B.1 Hı́brido 1. Porcentaje de reconocimiento global, α = 0, 50 . . . . . . . .. 99. B.2 Hı́brido 1. Porcentaje de reconocimiento global, α = 0, 75 . . . . . . . . 100 B.3 Hı́brido 1. Mejores modelos . . . . . . . . . . . . . . . . . . . . . . . . 101 B.4 Hı́brido 2. Porcentaje de reconocimiento global, α = 0, 50 . . . . . . . . 102 B.5 Hı́brido 2. Porcentaje de reconocimiento global, α = 0, 75 . . . . . . . . 102 B.6 Hı́brido 2. Mejores modelos . . . . . . . . . . . . . . . . . . . . . . . . 103 B.7 Hı́brido 3. Porcentaje de reconocimiento global . . . . . . . . . . . . . 104 B.8 Hı́brido 3. Mejores modelos . . . . . . . . . . . . . . . . . . . . . . . . 105 B.9 Hı́brido 4. Porcentaje de reconocimiento global . . . . . . . . . . . . . 106 B.10 Hı́brido 4. Mejores modelos . . . . . . . . . . . . . . . . . . . . . . . . 107 C.1 Porcentaje de reconocimiento por fonos, mejores modelos . . . . . . . . 110 C.2 Hı́brido 1. Porcentaje de reconocimiento por fonos . . . . . . . . . . . . 112 C.3 Hı́brido 2. Porcentaje de reconocimiento por fonos . . . . . . . . . . . . 114 C.4 Hı́brido 3. Porcentaje de reconocimiento por fonos . . . . . . . . . . . . 115 C.5 Hı́brido 4. Porcentaje de reconocimiento por fonos . . . . . . . . . . . . 116.
(11) Índice de Figuras 2.1. El Reconocimiento Automático del Habla . . . . . . . . . . . . . . . . .. 6. 2.2. Discretización de una señal . . . . . . . . . . . . . . . . . . . . . . . . .. 8. 2.3. Subsistema de decodificación acústico . . . . . . . . . . . . . . . . . . .. 11. 2.4. Subsistema de decodificación lingüı́stico . . . . . . . . . . . . . . . . . .. 11. 3.1. Proceso Markoviano de 3 estados . . . . . . . . . . . . . . . . . . . . .. 17. 3.2. Evolución en el tiempo de un Modelo Oculto de Markov . . . . . . . .. 19. 3.3. MOM Ergódico de 3 estados y 2 observaciones . . . . . . . . . . . . . .. 21. 3.4. MOM Bakis de 3 estados y 2 observaciones . . . . . . . . . . . . . . . .. 22. 3.5. Distribución de probabilidad de las observaciones . . . . . . . . . . . .. 33. 3.6. Entrenamiento de un Reconocedor de dı́gitos . . . . . . . . . . . . . . .. 37. 3.7. Reconocimiento de dı́gitos . . . . . . . . . . . . . . . . . . . . . . . . .. 37. 4.1. Neurona Biológica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 39. 4.2. Neurona Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 40. 4.3. Funciones de transferencia . . . . . . . . . . . . . . . . . . . . . . . . .. 41. 4.4. Red Perceptrónica Multicapa . . . . . . . . . . . . . . . . . . . . . . .. 45. 4.5. Función Gaussiana . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 49. 4.6. Interpolación con funciones de base radial . . . . . . . . . . . . . . . .. 51. 4.7. Red de Funciones de Base Radial . . . . . . . . . . . . . . . . . . . . .. 51. 5.1. Arquitectura hı́brida 1 . . . . . . . . . . . . . . . . . . . . . . . . . . .. 59. 5.2. Decodificación Viterbi de las secuencias asociadas al i-ésimo MOM . . .. 61. 5.3. Transformación de las etiquetas arrojadas por la decodificación Viterbi a clases globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi. 61.
(12) 5.4. Arquitectura hı́brida 2 . . . . . . . . . . . . . . . . . . . . . . . . . . .. 63. 6.1. Etiquetado de los archivos de voz con Colea . . . . . . . . . . . . . . .. 70. 7.1. Mejores Modelos. Porcentaje de reconocimiento por fonos . . . . . . . .. 82. B.1 Hı́brido 1. Porcentaje de Reconocimiento . . . . . . . . . . . . . . . . . 100 B.2 Hı́brido 2, RFBR. Porcentaje de Reconocimiento . . . . . . . . . . . . . 103 B.3 Hı́brido 3. Porcentaje de reconocimiento global . . . . . . . . . . . . . 104 B.4 Hı́brido 4. Porcentaje de reconocimiento global . . . . . . . . . . . . . 106 B.5 Hı́brido 4. Porcentaje de reconocimiento por fonos, dos mejores modelos 108.
(13) Agradecimientos A mis tutores, los profesores Georges Jabbour y Luciano Maldonado, por su apoyo incondicional en todo momento, su confianza, su orientación y motivación en cada etapa de este proyecto. Al profesor Sebastián Medina, por su gran apoyo y sus sabios consejos. A Marı́a Laura, por haber estado a mi lado y darme su apoyo en los momentos difı́ciles.. xiii.
(14) Capı́tulo 1 Introducción El habla es el método de comunicación natural y más intuitivo entre los seres humanos. Lograr interfaces hombre-máquina capaces de interactuar a través de voz ha sido uno de los campos de investigación más importantes entre ingenieros y cientı́ficos en las últimas décadas (Zue y Cole, 1997). Las tecnologı́as orientadas a facilitar la interacción oral entre hombres y máquinas, se denominan Tecnologı́as del Habla, dentro de las cuales, el Reconocimiento Automático del Habla (RAH), ha sido uno de los temas que mayor interés ha despertado (Trentin y Gori, 2001). En esencia, consiste en convertir una señal de voz al conjunto de palabras que representa, y sus aplicaciones hoy en dı́a abarcan desde el control de procesos industriales hasta sistemas de dictado, resultando particularmente útiles para personas discapacitadas.. 1.1. Antecedentes. Los primeros intentos por desarrollar sistemas para RAH surgieron a partir de la teorı́a de la fonética acústica, la cual describe los elementos acústicos del habla (los sonidos básicos del lenguaje hablado) (Juang y Rabiner, 2005). Utilizando esta teorı́a, se publicó en 1952 el primer reporte técnico sobre Reconocimiento Automático del Habla: un reconocedor de dı́gitos hablados denominado Audrey, que fue desarrollado en los.
(15) 1.1 Antecedentes. 2. laboratorios Bell (Furui, 2000). Durante esta década fueron implementados otros reconocedores de dı́gitos y reconocedores de vocales en los laboratorios RCA, el MIT y algunos laboratorios japoneses, basados también en las propiedades fonético-acústicas de los sonidos del habla (Juang y Rabiner, 2005). Un concepto importante en el campo del RAH fue introducido por Atal e Itaka de manera independiente en la década de 1960: la codificación por predicción lineal (LPC, por su nombre en inglés), una herramienta para representar las señales de voz de manera comprimida, que fue aplicada por primera vez de manera exitosa a principios de la década de 1970 junto con la teorı́a de reconocimiento de patrones, en el reconocimiento automático de voz de vocabularios de tamaño medio (de 100 a 1000 palabras) (Juang y Rabiner, 2005). A finales de la década de 1960 y principios de la década de 1970 Leonard Baum introdujo la teorı́a de los Modelos Ocultos de Markov (MOM), y a mediados de la década de 1970 estos conceptos fueron aplicados por primera vez al Reconocimiento Automático del Habla por Fred Jelinek de IBM (Rabiner, 1989). Sin embargo, fue durante la década de 1980, cuando los laboratorios Bell introducen las mezclas gaussianas a los MOM, que se comienza a explotar la potencialidad de éstos en el RAH, permitiendo trabajar con diccionarios de más de 1000 palabras, en reconocimiento de voz continua (Juang y Rabiner, 2005). Hoy en dı́a, los MOM constituyen la técnica más utilizada a nivel mundial para Reconocimiento Automático del Habla. Su uso intensivo durante las últimas décadas ha demostrado su capacidad para modelar adecuadamente la mayor parte de las fuentes de variabilidad presentes en el habla (Rabiner y Juang, 1993). En la Universidad de Los Andes, se han realizado pocas investigaciones en el campo del RAH. El primer trabajo en el que se aplicaron los Modelos Ocultos de Markov para el RAH en la ULA fue el de Cumana (2001), quien realizó pruebas de reconocimiento de voz, aplicado a dı́gitos conectados. Maldonado (2003) en su tesis doctoral “Tratamiento y reconocimiento automático de señales de la voz venezolana”, realiza pruebas de reconocimiento de señales de voz a través de lı́neas telefónicas e introduce formalmente la teorı́a de los Modelos Ocultos de Markov para modelado del habla venezolana en la Universidad de Los Andes..
(16) 1.2 Definición y delimitación del problema. 3. Otras investigaciones destacadas en este campo, fueron realizadas por: • Paredes (1998), quien realizó pruebas de reconocimiento automático del habla a través de redes neuronales perceptrónicas multicapa. • Barrios (2004), quien desarrolló un sistema de reconocimiento automático de palabras aisladas, utilizando Modelos Ocultos de Markov. • Carrillo (2005), quien realizó una revisión de diferentes técnicas para la Clasificación Automática por formantes de los Sonidos Vocálicos del Español Venezolano. • Contreras (2005), quien desarrolló un sistema automático para el control y ejecución de encuestas a través de lı́neas telefónicas.. 1.2. Definición y delimitación del problema. A pesar de que los Modelos Ocultos de Markov han dado buenos resultados en la mayorı́a de los sistemas de reconocimiento automático del habla, con ellos no se ha logrado un 100% de efectividad en la mayorı́a de las aplicaciones existentes. Por lo tanto, sigue latente la necesidad de investigar el desempeño de nuevos métodos relacionados con esta área. Es por ello que, en años recientes, las investigaciones se han enfocado en el estudio de la conexión entre los Modelos Ocultos de Markov con otras técnicas de reconocimiento de patrones, en lo que se denominan sistemas de reconocimiento hı́bridos. En este sentido, en esta investigación se evaluará el desempeño de un modelo hı́brido que integre los Modelos Ocultos de Markov y las Redes Neuronales Artificiales en el reconocimiento automático del habla venezolana..
(17) 1.3 Objetivos. 1.3. 4. Objetivos. 1.3.1. Objetivo general. Evaluar el desempeño del modelo hı́brido Modelos Ocultos de Markov/Redes Neuronales Artificiales en el reconocimiento automático del habla venezolana.. 1.3.2. Objetivos especı́ficos. • Realizar una revisión bibliográfica de la literatura concerniente a: Reconocimiento Automático del Habla, Modelos Ocultos de Markov, Redes Neuronales Artificiales y métodos hı́bridos MOM/RNA para RAH. • Preparar y preprocesar las señales provenientes del habla venezolana. • Construir un reconocedor de voz basado en modelos ocultos de Markov de observaciones continuas. • Seleccionar el modelo de RNA a utilizar en el modelo hı́brido. • Construir el reconocedor de voz basado en un modelo hı́brido MOM/RNA. • Realizar pruebas de Reconocimiento Automático del habla venezolana utilizando los reconocedores de voz construidos. • Comparar los resultados obtenidos a través de las dos metodologı́as.. 1.4. Estructura de la monografı́a. Este documento está estructurado de la siguiente manera: Los capı́tulos 2, 3 y 4 corresponden a una revisión teórica de los diferentes temas y herramientas matemáticas tratadas en esta investigación. Ası́, en el capı́tulo 2, se introducen los conceptos asociados al Reconocimiento Automático del Habla, sus diferentes etapas y los procesos que involucra..
(18) 1.4 Estructura de la monografı́a. 5. El capı́tulo 3 corresponde a la teorı́a y fundamentos de los Modelos Ocultos de Markov, que constituye la herramienta base para la construcción de los sistemas de Reconocimiento Automático del Habla. El capı́tulo 4 corresponde a los fundamentos de las Redes Neuronales Artificiales. Posteriormente, en el capı́tulo 5 se presenta el diseño de dos arquitecturas hı́bridas MOM/RNA propuestas para el reconocimiento automático del habla. El capı́tulo 6 corresponde al proceso de obtención y preparación de los datos, previo al proceso de reconocimiento, y el capı́tulo 7 corresponde a los experimentos realizados y al análisis de los resultados obtenidos. Finalmente, en el capı́tulo 8 se presentan las conclusiones a las que se llegó luego de finalizado el trabajo experimental, y las recomendaciones planteadas para trabajos futuros..
(19) Capı́tulo 2 Reconocimiento Automático del Habla El Reconocimiento Automático del Habla (RAH) es el proceso de detectar o identificar las palabras presentes en una señal de voz, obtenida a través de una lı́nea telefónica o micrófono. Observe la figura 2.1.. Figura 2.1: El Reconocimiento Automático del Habla Para expresar una idea de manera verbal, el ser humano activa su sistema fonético articulatorio, originando una serie de sonidos que constituyen las palabras que forman su mensaje (Maldonado, 2003). Estos sonidos viajan por el aire, en forma de ondas y son capturados a través de elementos transductores (micrófonos o sistemas de telefonı́a), los cuales los transmiten al computador o máquina reconocedora (Maldonado, 2003). Una vez obtenida la señal en la máquina, el problema puede ser estudiado dentro del ámbito del Reconocimiento de Patrones, en el cual el objetivo es tomar un patrón.
(20) 2.1 Arquitectura de los Sistemas de RAH. 7. (la señal de voz) e identificar en él palabras o sonidos previamente aprendidos. La identificación de los sonidos se realiza en base a comparaciones de las propiedades acústicas por trozos de la señal con modelos acústicos (obtenidos previamente) de cada palabra o sonido que el reconocedor deba identificar. Por cada trozo de señal se identificará por tanto un sonido, y el resultado será una secuencia de sonidos, o en el caso de que los modelos acústicos correspondan a palabras, una secuencia de palabras. Posteriormente, algunos reconocedores realizan un análisis lingüı́stico de la secuencia de sonidos obtenidos, a fin de validarlos, restringirlos o darles algún significado dentro del ámbito de la aplicación (Maldonado, 2003). La construcción de un Sistema de Reconocimiento Automático del Habla involucra diversos conceptos, técnicas y herramientas a lo largo de todo este proceso: procesamiento de señales, fisiologı́a, fonética, reconocimiento de patrones, teorı́a de la información y lingüı́stica, entre otras. Por ello, para facilitar su comprensión y estudio, se suele dividir en etapas. En la siguiente sección se describe cada una de estas etapas.. 2.1. Arquitectura de los Sistemas de RAH. Un sistema de reconocimiento automático del habla involucra 3 etapas generales (Rabiner y Juang, 1993): 1. Adquisición de los datos: consiste en obtener la representación digital de la señal de voz, es decir, la conversión de la señal analógica a una señal digital. 2. Decodificación acústica: en esta etapa se realiza el reconocimiento de las palabras contenidas en la señal, en base a sus caracterı́sticas o propiedades acústicas. 3. Decodificación lingüı́stica: consiste en restringir la secuencia de palabras obtenidas en la etapa anterior a un conjunto de palabras válidas dentro del ámbito de la aplicación, y cuya estructura sea sintáctica y gramaticalmente correcta. A continuación se detallan los procesos involucrados en cada etapa..
(21) 2.1 Arquitectura de los Sistemas de RAH. 2.1.1. 8. Adquisición de los datos. La primera tarea que debe realizar un Sistema de RAH es la conversión de la señal analógica a una señal digital, capaz de ser tratada por computadores. Este proceso de conversión analógico-digital, denominado digitalización, consiste en discretizar las señales sonoras continuas, tanto en tiempo como en amplitud, para obtener una secuencia de números. Furui (2000) describe las tres etapas que involucra: 1. Muestreo:. Es el proceso de discretización de la señal en el tiempo. Consiste. en convertir la señal analógica continua x(t) a una secuencia de valores {xi } = {x(iT )}, con i entero y T el perı́odo de muestreo. 2. Cuantización: Consiste en representar de manera aproximada la amplitud de la señal (un valor continuo), a través de un valor tomado de un conjunto finito de valores. 3. Codificación:. Este proceso consiste en la traducción de los valores ya cuan-. tificados a un sistema de numeración (el sistema binario, para ser tratados por computadores digitales). En la figura 2.2 se muestra gráficamente el proceso de muestreo (discretización temporal) y el proceso de cuantización (discretización de la amplitud) de una señal. Los cuadros blancos corresponden al muestreo (a intervalos regulares de la señal), mientras que los cı́rculos negros corresponden a los valores muestreados y cuantificados de la señal original.. Figura 2.2: Discretización de una señal Una vez digitalizada, las caracterı́sticas fundamentales de la señal son dos:.
(22) 2.1 Arquitectura de los Sistemas de RAH. 9. • la tasa de muestreo (sample rate) que tiene que ver con la discretización temporal, se mide en Hertz e indica cuantas muestras de la señal fueron tomadas por cada segundo. Por ejemplo, una tasa de muestreo de 8kHz indica que se tomaron 8000 muestras por segundo. • la cantidad de bits por muestra (bits per sample) que tiene que ver con la discretización de la amplitud y la codificación, se mide en bits e indica la cantidad de dı́gitos binarios utilizados para codificar las amplitudes de la señal. Por ejemplo, un valor de 8 bits por muestra, indica que existen 28 = 256 posibles valores de amplitud. Como se comentó en el capı́tulo anterior, en esta investigación se utilizarán datos provenientes de la base de datos SpeechDat Venezolana (Maldonado, 2003), es decir, se trabajará con registros de voz que ya han sido digitalizados, y cuyas caracterı́sticas se describen más adelante.. 2.1.2. Subsistema de decodificación acústico. El susbistema de decodificación acústico recibe la señal de voz digitalizada y produce como salida una palabra o secuencia de palabras (ver figura 2.3). Las tareas realizadas por el subsistema son las siguientes: 1. Parametrización de la señal: Para poder realizar el reconocimiento, el sistema debe extraer de la señal digital caracterı́sticas relevantes que permitan distinguir una palabra de otra. Estas caracterı́sticas de la señal son denominadas parámetros, y por ello se denomina parametrización de la señal al análisis temporal y/o espectral que permite obtener dichas caracterı́sticas. Este análisis se realiza por tramos cortos de tiempo, es decir, desplazando una ventana de tamaño regular a lo largo de la señal (generalmente se toma una ventana de 20 ó 25 milisegundos, con un desplazamiento de 10 milisegundos). Los dos métodos de parametrización más utilizados son: el análisis LPC (Linear Predictive Coding) y el análisis Cepstral (Rabiner y Juang, 1993)..
(23) 2.1 Arquitectura de los Sistemas de RAH. 10. El análisis LPC se basa en un modelo autoregresivo de la señal, es decir, en cada instante de tiempo la señal es aproximada por una combinación de las muestras anteriores. Este método ha probado ser capaz de representar adecuadamente una señal de voz, utilizando un número pequeño de datos (Furui, 2000). El análisis Cepstral se basa en el estudio de las variaciones en la amplitud de la señal. Diferentes autores han mostrado que al igual que el análisis LPC, el análisis Cepstral es apropiado para representar las caracterı́sticas esenciales de las señales de voz. La técnica más empleada de análisis cepstral de señales de voz es la parametrización en Coeficientes Cepstrales en Frecuencia Mel (Mel Frecuency Cepstrum Coeficients, MFCC ). Una descripción detallada sobre ambos métodos puede ser encontrada en Furui (2000) y Maldonado (2003). El resultado de este proceso es una secuencia de vectores de parámetros, que cumplen dos objetivos simultáneamente: representar las caracterı́sticas esenciales de la señal de voz, facilitando su reconocimiento, y reducir la cantidad de información, lo cual es importante para obtener un buen desempeño en tiempo de cómputo (Maldonado, 2003). 2. Identificación:. En este paso se realiza el reconocimiento de las palabras o. sonidos contenidos en la pronunciación en base a sus propiedades acústicas. La secuencia de vectores de parámetros obtenidos en el paso anterior es dividida en secuencias más pequeñas y se compara cada una de éstas con todos los modelos acústicos que posee el reconocedor, y en base a su similitud se realiza la identificación o reconocimiento. Previamente, se debe escoger las unidades de lenguaje sobre la cual se construirán los modelos acústicos. Existen diversas posibilidades: palabras, grupos de palabras, sı́labas, grupos de sı́labas o fonos (las unidades más pequeñas en que puede ser dividido el lenguaje hablado). La escogencia de una u otra unidad depende principalmente del tipo de reconocimiento para el cual se construye la aplicación (más adelante en este capı́tulo se comentará al respecto)..
(24) 2.1 Arquitectura de los Sistemas de RAH. 11. El resultado obtenido consiste en una secuencia de palabras que en el mejor de los casos corresponderá a la secuencia de palabras contenidas en la señal, pero que en general puede contener palabras erróneamente identificadas, palabras insertadas o palabras suprimidas.. Figura 2.3: Subsistema de decodificación acústico. 2.1.3. Subsistema de decodificación lingüı́stico. El subsistema de decodificación lingüı́stico recibe la secuencia de palabras (o aquellas unidades de lenguaje con que trabaje el reconocedor) del subsistema de decodificación acústico, e impone restricciones para obtener una secuencia de palabras que se encuentren dentro del vocabulario de la aplicación, y cuya estructura sea sintáctica y gramaticalmente correcta (Rabiner, 1989). El subsistema de decodificación lingüı́stico se muestra en la figura 2.4. Los procesos que involucra se detallan a continuación:. Figura 2.4: Subsistema de decodificación lingüı́stico. 1. Decodificación de léxico: Este proceso consiste en restringir la secuencia de palabras obtenidas del módulo de decodificación acústico a un conjunto de palabras válidas, es decir, palabras que estén dentro del vocabulario de la aplicación (Rabiner, 1989)..
(25) 2.2 Clasificación de los Sistemas de RAH. 12. 2. Análisis sintáctico: Este proceso consiste en restringir la secuencia de palabras válidas a una expresión correcta según la gramática con la cual se ha dotado el reconocedor (Rabiner, 1989). Esta gramática no se corresponde necesariamente con la gramática de algún idioma en particular, puede ser desarrollada de manera especı́fica para el reconocedor, dependiendo de la aplicación de reconocimiento. 3. Análisis semántico: Este proceso consiste en restringir la expresión gramaticalmente válida a una expresión que posea un significado dentro del campo de la aplicación (Rabiner, 1989). Dependiendo de la aplicación, el módulo de decodificación lingüı́stica (o alguno de sus procesos) puede no ser incluido en el reconocedor. Por ejemplo, en el reconocimiento de dı́gitos, cuando el subsistema de decodificación acústico modela pronunciaciones de dı́gitos (palabras completas), no es necesario realizar un análisis de léxico, pues toda secuencia generada por el decodificador acústico será una secuencia válida de palabras (dı́gitos); en cambio, aún cuando en una secuencia de dı́gitos, en principio cualquier dı́gito puede seguir a otro, si se trata de reconocimiento de números de tarjetas de crédito, se deberı́a realizar un análisis sintáctico para garantizar que el número corresponda a un número válido de tarjeta.. 2.2. Clasificación de los Sistemas de RAH. Existen diversas maneras de clasificar a los Sistemas de Reconocimiento Automático del Habla, dependiendo de la aplicación para la cual se desarrollan. A continuación se presentan los criterios más importantes.. 2.2.1. De acuerdo al tamaño del vocabulario. De acuerdo a la cantidad de palabras que pueden manejar, los sistemas de RAH se clasifican como de vocabularios pequeños, medianos y grandes. Juang y Rabiner (2005) definen a los reconocedores de vocabularios pequeños como aquellos que manejan entre 1 y 100 palabras, los reconocedores de vocabularios medianos como aquellos que.
(26) 2.2 Clasificación de los Sistemas de RAH. 13. manejan entre 100 y 1000 palabras, y los reconocedores de vocabularios grandes como aquellos que manejan más de 1000 palabras.. 2.2.2. De acuerdo a la dependencia del hablante. Los Sistemas de RAH que son entrenados con la voz de un único hablante o usuario, se dice que son dependientes del hablante, en cambio, aquellos entrenados con patrones de voz de un grupo considerable de personas, son denominados independientes del hablante.. 2.2.3. De acuerdo al tipo de reconocimiento. Los Sistemas de RAH en los cuales las señales a reconocer están constituidas por una única palabra se conocen como reconocedores de palabras aisladas. En este tipo de reconocedores, la unidad básica del habla es naturalmente la palabra. (Maldonado, 2003) Cuando la unidad básica del habla sigue siendo la palabra, pero la tarea es reconocer una pronunciación continua de palabras de un diccionario restringido, se dice que se trata de un reconocedor de palabras conectadas, ya que la señal de voz es reconocida como una secuencia concatenada de modelos de palabras (Rabiner, 1989). Cuando el usuario habla de manera fluida, utilizando palabras de un diccionario grande, se trata de un reconocedor de voz continua. En este tipo de reconocimiento, puede resultar muy difı́cil utilizar como unidad básica la palabra, pues generalmente es difı́cil reunir un conjunto de realizaciones por cada palabra del vocabulario, debido a su frecuencia natural de aparición en el habla. Es por ello que en reconocedores de voz continua se suele utilizar como unidad del habla el fono (Rabiner y Juang, 1993).. 2.2.4. De acuerdo a la inclusión de módulos de gramática. En problemas de reconocimiento en los que no es necesario determinar si una secuencia de unidades del lenguaje constituyen una palabra u oración válida, no se incluye el subsistema de decodificación lingüı́stico. Este tipo de sistemas se conocen como reconocedores sin gramática..
(27) 2.3 RAH: Enfoque de reconocimiento de patrones. 14. Aquellos sistemas de RAH que incluyen el subsistema de decodificación lingüı́stico se conocen como reconocedores con gramática o reconocedores dotados de gramática.. 2.3. RAH: Enfoque de reconocimiento de patrones. Rabiner y Juang (1993) describen algunos criterios a través de los cuales se ha estudiado el problema del Reconocimiento Automático del Habla, dentro de los cuales, el de Reconocimiento de Patrones es el enfoque que mejores resultados ha dado y es por tanto el utilizado en casi todos los sistemas de reconocimiento del habla en la actualidad. El reconocimiento de patrones busca clasificar datos (patrones) en base a comparaciones con otros patrones, de los cuales se posee un conocimiento a priori. El enfoque posee dos pasos: el entrenamiento de los patrones (obtención del conocimiento) y el reconocimiento de nuevos patrones a través de comparaciones. En el Reconocimiento Automático del Habla, el primer paso consiste en la creación de modelos acústicos de cada palabra del vocabulario (o como se estudió en la sección anterior, sub-unidades de palabra, como sı́labas o fonos), y el segundo paso, consiste en utilizar los modelos creados para clasificar nuevas pronunciaciones en base a su similitud con los modelos acústicos (Rabiner y Juang, 1993). Las técnicas de reconocimiento de patrones más utilizadas en RAH son el Alineamiento Dinámico del Tiempo (Dynamic Time Warping) y los Modelos Ocultos de Markov (Hidden Markov Models). El Alineamiento Dinámico del Tiempo es un algoritmo de programación dinámica para medir el grado de similitud entre dos secuencias de valores, que pueden variar en tiempo o velocidad. El objetivo es comparar la secuencia de entrada (correspondiente a la pronunciación desconocida) con otras secuencias (de palabras conocidas) denominadas plantillas, y en base al grado de similitud se realiza el reconocimiento (Rabiner y Juang, 1993). Uno de los problemas principales de esta técnica, es el requerimiento de varias plantillas por cada palabra del vocabulario, para poder realizar reconocimiento independiente del hablante. Esto trae como consecuencia un alto costo computacional en el proceso de reconocimiento, por lo que la técnica es hoy en dı́a poco utilizada, y en.
(28) 2.3 RAH: Enfoque de reconocimiento de patrones. 15. su lugar se emplean los Modelos Ocultos de Markov, cuya aplicación al reconocimiento de patrones se basa en la teorı́a de clasificación estadı́stica, y que han probado ser una herramienta confiable en el Reconocimiento Automático del Habla (Plannerer, 2005)..
(29) Capı́tulo 3 Modelos Ocultos de Markov Los Modelos Ocultos de Markov son una herramienta de modelado estadı́stico de procesos estocásticos, es decir, fenómenos que evolucionan con el tiempo. Gracias a su capacidad descriptiva de este tipo de procesos, constituyen una poderosa técnica de reconocimiento de patrones temporales. Este capı́tulo comienza con una breve descripción sobre los procesos estocásticos markovianos, los cuales son la base sobre la cual se fundamentan los Modelos Ocultos de Markov. Luego se presenta la estructura de los Modelos Ocultos de Markov y su aplicación en la clasificación estadı́stica. Posteriormente se describen los algoritmos necesarios para su manejo, y finalmente se describe su uso en el Reconocimiento Automático del Habla.. 3.1. Procesos estocásticos y cadenas de Markov. Un proceso estocástico se define como una colección ordenada de variables aleatorias {qt } = {q1 , q2 , .., qT }, en donde qt representa una categorı́a en la que se puede encontrar una variable de interés de un fenómeno o proceso bajo estudio, en el instante t. Estas categorı́as son mutuamente excluyentes, y se les denomina estados (Hoel et al., 1987). En cada instante de tiempo, el sistema puede encontrarse en uno de N estados. Los estados son denotados por S1 , S2 , .., SN . La variable aleatoria qt , representa el estado del sistema en el instante t, de manera que sus valores posibles son S1 , S2 , .., SN . Si.
(30) 3.1 Procesos estocásticos y cadenas de Markov. 17. Figura 3.1: Proceso Markoviano de 3 estados el sistema es observado en instantes de tiempo particulares etiquetados t=1,2,3,..,T, el proceso estocástico {qt } = {q1 , q2 , q3 , ..., qT } representa una descripción matemática de la evolución del estado del sistema en el tiempo (Hoel et al., 1987). Considere por ejemplo el estudio del estado del clima, tomando cada instante de tiempo como un dı́a, y considerando 3 posibles estados: lluvioso, nublado y soleado. El proceso estocástico {qt } = {q1 , q2 , q3 , .., qT }, en donde la variable aleatoria qt pertenece al conjunto S = {S1 = lluvioso, S2 = nublado, S3 = soleado}, representa una descripción de la evolución diaria del estado del clima. Por otro lado, una cadena de Markov es un proceso estocástico con la propiedad de que el estado en que se encuentre el sistema en el instante t+1 sólo depende de lo ocurrido en el instante t y no de lo ocurrido en instantes anteriores. A esta propiedad se le conoce como la Propiedad de Markov (Furui, 2000). En la figura 3.1 se muestra una cadena de Markov o proceso markoviano de 3 estados S1 , S2 y S3 , donde aij es la probabilidad de transitar del estado i al estado j (en un paso). Volviendo al ejemplo del estado del clima, con los estados S1 = lluvioso, S2 = nublado y S3 = soleado, a21 representa la probabilidad de que un dı́a sea lluvioso dado que el anterior fue nublado. Al conjunto de todos los posibles valores aij , ordenados matricialmente, se le denomina matriz de transición de estados. Para el modelo markoviano de la figura 3.1, la.
(31) 3.2 Los Modelos Ocultos de Markov. 18. matriz de transición de estados es: . a11 a12 a13. . A= a a a 21 22 23 a31 a32 a33 Este tipo de procesos pueden ser denominados modelos observables de Markov, ya que la salida del proceso es el conjunto de estados en cada instante de tiempo, y cada estado corresponde a un evento fı́sico observable (Rabiner, 1989).. 3.2. Los Modelos Ocultos de Markov. Los Modelos Ocultos de Markov (MOM) constituyen una extensión a las cadenas de Markov, en donde la salida es una función probabilı́stica del estado en que se encuentra el sistema. Un MOM es por tanto un proceso doblemente estocástico, en el que el proceso asociado a la secuencia de estados no es directamente observable, sólo es observable el proceso estocástico correspondiente a las salidas (Rabiner, 1989). En un Modelo Oculto de Markov se supone (Furui, 2000): • La propiedad de Markov: al igual que en las cadenas de Markov, en el instante t + 1, el estado del sistema depende solamente del estado en el instante t. • La independencia de las salidas: la probabilidad de una observación Ot depende sólo del estado qt que genera dicha observación, y no de otros estados u otras observaciones. En la figura 3.2 se muestra la evolución temporal de un MOM: en el instante t, el proceso se encuentra en el estado qt , y la observación Ot . Un observador externo al proceso sólo puede ver la secuencia de observaciones, y no la secuencia de estados.. 3.3. Ejemplo. Suponga que en cierta ciudad, la compañı́a eléctrica dispone de 2 generadores hidroeléctricos. El clima en dicha ciudad puede ser lluvioso, nublado o soleado, y se.
(32) 3.4 Elementos de un Modelo Oculto de Markov. 19. Figura 3.2: Evolución en el tiempo de un Modelo Oculto de Markov espera que de acuerdo a las condiciones climáticas de cada dı́a el consumo de energı́a eléctrica varı́e, y por tanto sea necesario encender un número distinto de generadores. Un ingeniero de la compañı́a eléctrica, alejado de la ciudad, desconoce cual es el estado del tiempo en dicha ciudad, pero puede observar a través de un sistema de monitoreo, el número de generadores encendidos cada dı́a. Como existen dos generadores, el consumo de energı́a puede ser catalogado como “bajo” (en el caso de que haya que encender sólo uno de los generadores) y “alto” (en el caso de que sea necesario encender ambos generadores). Para el ingeniero existe claramente un proceso estocástico observable: el número de generadores encendidos, o equivalente a este, el consumo de energı́a (alto o bajo). Si el ingeniero anota por varios dı́as consecutivos como fue el consumo de energı́a, tendrá una secuencia de observaciones de este proceso. Por ejemplo {“alto”, “bajo”, “bajo”, “bajo”} es una posible secuencia de tamaño t = 4 dı́as. Sin embargo, por cada secuencia de observaciones que el ingeniero pueda obtener, existirá también una secuencia de estados (del clima) que desconocerá. Esta secuencia corresponde al proceso estocástico oculto que generó la secuencia de observaciones.. 3.4. Elementos de un Modelo Oculto de Markov. Un Modelo Oculto de Markov está constituido por los siguientes elementos (Rabiner y Juang, 1993): • El conjunto de N posibles estados que puede alcanzar el proceso estocástico oculto: S = {S1 , S2 , ..., SN }.
(33) 3.5 Tipos de Modelos Ocultos de Markov de acuerdo al número de sı́mbolos observables. 20. siendo qt el estado del sistema en el instante t (t = 1, .., T ). • El conjunto de M sı́mbolos distintos que pueden ser observados: V = {v1 , v2 , ..., vM } siendo Ot la observación en el instante t (t = 1, .., T ). • La matriz de probabilidades de transición de estados: A = {aij } en donde aij = P [qt+1 = Sj |qt = Si ], i, j = 1, .., N • La matriz de probabilidades de las observaciones: B = {bj (k)} en donde bj (k) = P [Ot = Vk ], j = 1, .., N ; k = 1, .., M • La distribución de probabilidad del estado inicial: π = {πi } en donde πi = P [qt = Si ], i = 1, .., N Para especificar completamente un Modelo Oculto de Markov, se deben definir los cinco elementos descritos. En este sentido, en la literatura se suele utilizar la notación λ = (A, B, π) para indicar de manera abreviada un MOM (Rabiner, 1989).. 3.5. Tipos de Modelos Ocultos de Markov de acuerdo al número de sı́mbolos observables. A medida que aumenta el número de sı́mbolos observables de un MOM, se hace difı́cil trabajar con una matriz B de valores puntuales de probabilidad. Por eso, cuando el número de observaciones es grande se sustituye esta distribución de probabilidad discreta por una función de densidad de probabilidad continua. Maldonado (2003) propone como lı́mite para comenzar a utilizar una función de densidad de probabilidad continua, 256 sı́mbolos. Por tanto, los Modelos Ocultos de Markov se pueden clasificar de acuerdo al número de observaciones como: MOM.
(34) 3.6 Arquitecturas de los Modelos Ocultos de Markov. 21. Figura 3.3: MOM Ergódico de 3 estados y 2 observaciones de observaciones discretas (número de sı́mbolos menor o igual a 256, función de probabilidad discreta) y MOM de observaciones continuas (número de sı́mbolos mayor a 256, función de densidad continua). En las siguientes secciones se presentarán los algoritmos de entrenamiento y uso de los Modelos Ocultos de Markov de observaciones discretas, y posteriormente se hará la extensión a los MOM de observaciones continuas.. 3.6. Arquitecturas de los Modelos Ocultos de Markov. 3.6.1. Modelos Ergódicos. Los Modelos Ocultos de Markov Ergódicos o completamente conectados son aquellos en los que cada estado puede ser alcanzado a partir de cualquiera de los otros estados. Matemáticamente esto significa que en la matriz de transición de estados, aij 6= 0 para todo i,j. Un Modelo Oculto de Markov ergódico de tres estados y dos observaciones se muestra en la figura 3.3..
(35) 3.7 Los Modelos Ocultos de Markov y la Clasificación Estadı́stica. 22. Figura 3.4: MOM Bakis de 3 estados y 2 observaciones. 3.6.2. Modelos Izquierda-Derecha. Los Modelos Ocultos de Markov Izquierda-Derecha o Bakis son aquellos en los que a medida que avanza el tiempo, el ı́ndice de estados también avanza (nunca retrocede), es decir, de un estado con ı́ndice i, se puede transitar solamente a un estado con ı́ndice j ≥ i. Un Modelo Oculto de Markov Bakis de tres estados y dos observaciones se muestra en la figura 3.4. Este tipo de arquitectura es útil en el modelado de señales cuyas propiedades cambian o evolucionan con el tiempo, tal como las señales de voz (Rabiner, 1989).. 3.7. Los Modelos Ocultos de Markov y la Clasificación Estadı́stica. El problema general de la clasificación de patrones puede enunciarse como: dado un conjunto de datos de entrenamiento {(x1 , y 1 ), .., (xn , y n )}, en donde xi es la entrada (vector de entrada) y yi la salida correspondiente, la cual pertenece a una de k clases, el objetivo es construir una función f que transforme una entrada desconocida x ∈ X en una etiqueta y ∈ Y . Desde el punto de vista estadı́stico, el problema puede plantearse como la construcción de un conjunto de k funciones de probabilidad de la forma P (clasei |x), es decir, cada función estima la probabilidad de una clase dada la entrada x (Plannerer, 2005). Una entrada desconocida que se desee clasificar, se evalúa en cada una de las funciones y se le asigna como etiqueta aquella clase con el mayor valor de P (clasei |x),.
(36) 3.7 Los Modelos Ocultos de Markov y la Clasificación Estadı́stica. 23. es decir: y = arg max[P (clasei |x)] ∀i. La entrada x puede tomar diversas formas dependiendo del fenómeno bajo estudio. En la clasificación de patrones temporales, la entrada corresponde a una secuencia de observaciones O = {o1 , o2 , .., oT }, y es el reconocimiento de este tipo de patrones una de las principales aplicaciones que se le ha dado a los Modelos Ocultos de Markov (Plannerer, 2005). El problema de clasificación estadı́stica de patrones en forma temporal, a través de MOM puede ser visto de la siguiente manera: Supongamos un conjunto de k Modelos Ocultos de Markov, cada uno modelando un determinado proceso estocástico. El objetivo es encontrar el modelo que mejor explique una secuencia de observaciones O = {o1 , o2 , .., oT }, es decir, encontrar el MOM para el cual P (λi |O) sea mayor: λ∗ = arg max[P (λi |O)] ∀i. (3.1). Diversos autores han demostrado lo complejo del cálculo de las probabilidades P (λ|O), y en su lugar, haciendo uso del teorema de Bayes, han encontrado como alternativa el uso de las probabilidades condicionales P (O|λ), por lo que el problema se puede reformular como (Furui, 2000; Plannerer, 2005): λ∗ = arg max[P (O|λi )] ∀i. (3.2). La secuencia de observaciones puede corresponder por ejemplo, a los valores muestreados a intervalos regulares de la temperatura en algún proceso industrial, y el objetivo es buscar de un conjunto de modelos λi , el que mejor explique dicha secuencia de observaciones. Para lograr este objetivo, es necesario contar con un método eficiente para calcular P (O|λ), e implicitamente un método para entrenar los modelos, de manera de que cada uno maximice la probabilidad de un determinado fenómeno. Estos dos problemas, junto con el problema de la determinación de la secuencia óptima de estados (la secuencia de estados que hace máxima P (O|λ)) constituyen lo que Rabiner (1989) considera los 3 problemas fundamentales de los Modelos Ocultos de Markov:.
(37) 3.8 Evaluación de la probabilidad de una secuencia de observaciones. 24. 1. Calcular la probabilidad de una secuencia de observaciones O dado un modelo λ = (A, B, π), es decir, P (O|λ). 2. Encontrar la secuencia de estados más probable Q, dados un modelo λ = (A, B, π) y una secuencia de observaciones O. 3. Dada una secuencia de observaciones O, ajustar los parámetros del modelo λ para maximizar P (O|λ). Afortunadamente existen algoritmos eficientes para resolver estos problemas, los cuales se detallan a continuación.. 3.8. Evaluación de la probabilidad de una secuencia de observaciones. El problema de evaluación se refiere a calcular la probabilidad de que una secuencia de observaciones O haya sido generada por el modelo λ: P (O|λ). Como ya se explicó, una solución eficiente a este problema es esencial para el proceso de reconocimiento: dado un conjunto de modelos que intentan explicar una secuencia de observaciones, el modelo ganador será aquel que mejor explique la secuencia de observaciones, es decir, aquel cuyo valor de P (O|λ) sea mayor. Un algoritmo eficiente para el cálculo de P (O|λ), basado en estrategias de programación dinámica es el algoritmo de Avance-Retroceso, el cual se presenta a continuación.. 3.8.1. Algoritmo de Avance-Retroceso. Se define la variable de avance αt (i) como la probabilidad de la secuencia parcial de observación O1 O2 ...Ot y el estado Si en el instante t, dado el modelo λ: αt (i) = P (O1 O2 ...Ot , qt = Si |λ). (3.3).
(38) 3.8 Evaluación de la probabilidad de una secuencia de observaciones. 25. De manera inductiva se pueden calcular las variables α para toda la secuencia de observaciones, y finalmente expresar P (O|λ) como la combinación de las variables α en el instante T. En resumen, el algoritmo se puede enunciar en los siguientes pasos. 1. Inicialización: α1 (i) =πi bi (O1 ), i = 1, .., N. (3.4). 2. Inducción: αt+1 (j) =. N P i=1. αt (i)aij bj (Ot+1 ), t = 1, .., T − 1. (3.5). j =1, .., N 3. Terminación: P (O|λ) =. N X. αT (j). (3.6). i=1. Se puede definir la variable de retroceso βt (i) como la probabilidad de la secuencia parcial de observación Ot+1 Ot+2 ...OT dado el estado Si en el instante t y el modelo λ: βt (i) = P (Ot+1 Ot+2 ...OT |qt = Si , λ). (3.7). Al igual que con las variables α se puede obtener de manera inductiva las variables β para calcular P (O|λ): 1. Inicialización:. βT (i) = 1, i = 1, .., N. (3.8). 2. Inducción: βt (i) =. N P. aij bj (Ot+1 )βt+1 (j), t = T − 1, T − 2, .., 1. j=1. (3.9). i =1, .., N 3. Terminación: P (O|λ) =. N X i=1. πi bi (O1 )β1 (i). (3.10).
(39) 3.9 Decodificación de una secuencia de observaciones. 26. Observe que el cálculo de P (O|λ) se puede realizar solamente con el algoritmo de avance, sin embargo, en esta sección se presentaron ambos algoritmos, pues tanto las variables α como las variables β son empleadas en la solución del problema de entrenamiento.. 3.9. Decodificación de una secuencia de observaciones. Como cada elemento de una secuencia de observaciones es producto de un proceso estocástico dependiente del estado, una secuencia de observaciones pudo haber sido generada por muchas secuencias de estados. La decodificación de una secuencia de observaciones consiste en encontrar la secuencia de estados que mejor explique dichas observaciones, en base a algún criterio de optimalidad. El criterio más utilizado es el de encontrar la secuencia de estados que sean individualmente más probables, lo cual maximiza el número esperado de estados correctos (Rabiner, 1989).. 3.9.1. Algoritmo Viterbi. Un algoritmo eficiente para la solución de este problema es el algoritmo Viterbi, cuyo objetivo es conseguir P (O|λ), buscando la mejor secuencia de estados posible (Rabiner, 1989). Para la solución del problema, se define la variable δt (i): δt (i) = max P (q1 q2 ...qt = i, O1 O2 ...Ot |λ). (3.11). δt (i) es la probabilidad del mejor camino hasta el estado i, conocidas las primeras t observaciones. Por inducción, se tiene que: δt+1 (j) = max[δt (j)aij ]bj (Ot+1 ) i. (3.12). Como el objetivo es obtener la secuencia de estados más probable, es necesario almacenar el argumento que maximiza la ecuación anterior en cada instante de tiempo.
(40) 3.10 Entrenamiento de un Modelo Oculto de Markov. 27. t y para cada estado j, para lo cual se define la variable ψt (i). En definitiva, los pasos del algoritmo Viterbi son los siguientes: 1) Inicialización: δ1 (i) = πi bi (O1 ), i = 1, .., N. (3.13). ψ1 (i) = 0 2) Recursión: δt (j) = max [δt−1 (i)aij ]bj (Ot ), t = 2, .., T i=1,..,N. (3.14). j = 1, .., N ψt (j) = arg max[δt−1 (i)aij ], t = 2, .., T (3.15). i=1,..,N. j = 1, .., N 3) Terminación: p∗ = max [δT (i)]. (3.16). qT∗ = arg max[δT (i)]. (3.17). ∗ qt∗ = ψt+1 (qt+1 ), t = T − 1, T − 2, ..., 1. (3.18). i=1,..,N. i=1,..,N. 4) Secuencia de estados:. 3.10. Entrenamiento de un Modelo Oculto de Markov. El entrenamiento de un MOM consiste en ajustar los parámetros del modelo para maximizar la probabilidad de una secuencia de observaciones. No existe un método analı́tico para resolver este problema: dada una secuencia de observaciones como datos de entrenamiento, lo más que se puede lograr es obtener un modelo λ = (A, B, π), tal que se maximice P (O|λ) localmente (Jurafsky y Martin, 2006)..
(41) 3.10 Entrenamiento de un Modelo Oculto de Markov. 28. Existen diversos métodos para realizar esta tarea, entre los cuales se encuentran las técnicas de superficie de respuesta, el método Expectación-Modificación y los algoritmos genéticos. Entre éstos, destacan el algoritmo de Reestimación Baum-Welch y el algoritmo de Reestimación Viterbi, que se detallarán a continuación.. 3.10.1. Algoritmo de Reestimación Baum-Welch. Uno de los métodos de entrenamiento más utilizados, basado en el algoritmo de avanceretroceso, e introducido por Baum, es conocido como el Algoritmo de Reestimación Baum-Welch, para el cual se ha demostrado que luego de cada iteración de la aplicación del algoritmo se puede llegar a los siguientes dos casos (Rabiner, 1989): b = λ. 1. El modelo inicial λ define un punto crı́tico (gradiente nulo), y entonces λ b > P (O|λ) y por lo tanto se ha encontrado un mejor modelo. 2. P (O|λ) De esto se concluye que el modelo inicial λ puede ser mejorado tanto como se desee hasta llegar a cierto lı́mite (un máximo local), utilizando las siguientes fórmulas de reestimación de los parámetros del modelo:. aij =. π i = frecuencia esperada en estado Si en t = 1. (3.19). número esperado de transiciones desde el estado Si hasta el estado Sj número esperado de transiciones desde el estado Si. (3.20). bj (k) =. número esperado de veces en el estado Sj y sı́mbolo Vk número esperado de veces en el estado Sj. (3.21). Se define la variable γt (i), como la probabilidad de estar en el estado Si en el instante t, dada la secuencia de observaciones O y el modelo λ: γt (i) = P (qt = Si |O, λ). (3.22).
(42) 3.10 Entrenamiento de un Modelo Oculto de Markov. 29. y la variable ξt (i, j) como la probabilidad de estar en el estado Si en el instante t y en el estado Sj en el instante t+1: ξt (i, j) = P (qt = Si , qt+1 = Sj |O, λ). (3.23). Las variables ξt (i, j) y γt (i) pueden ser expresadas en función de las variables α y β descritas anteriormente como: γt (i) =. αt (i)βt (i) N P αt (i)βt (i) i=1. ξt (i, j) =. αt (i)aij bj (Ot+1 )βt+1 (j) N N PP. αt (i)aij bj (Ot+1 )βt+1 (j). i=1 j=1. Entonces, se pueden escribir las fórmulas de reestimación en función de estas variables: π i = γ 1 (i) TP −1. aij =. (3.24). ξt (i, j). t=1 TP −1. (3.25) γt (i). t=1 T P. bj (k) =. γt (j). t=1 s.a.Ot =Vk T P. (3.26). γt (j). t=1. El algoritmo puede resumirse en los siguientes pasos: 1) Inicialización: Generar un modelo aleatorio λ = (A, B, π) 2) Recursión (hasta criterio de convergencia): π i = γ 1 (i). (3.27).
(43) 3.10 Entrenamiento de un Modelo Oculto de Markov. TP −1. aij =. 30. ξt (i, j). t=1 TP −1. (3.28) γt (i). t=1 T P. bj (k) =. γt (j). t=1 s.a.Ot =Vk T P. (3.29). γt (j). t=1. Entrenamiento con Múltiples Secuencias de Observaciones El algoritmo que se acaba de introducir, reestima los parámetros del MOM de manera de maximizar la probabilidad de una secuencia de observaciones. Sin embargo, en general un conjunto de entrenamiento está formado por múltiples secuencias de observaciones. A continuación se detalla el procedimiento de entrenamiento en este caso. El conjunto de L secuencias de observaciones se denota como:. donde O(l). O = O(1) , O(2) , · · · , O(L) h i (l) (l) (l) = O1 , O2 , · · · , OTl es la l-ésima secuencia de observación.. (3.30). Se asume que cada secuencia de observaciones es independiente de las demás, de manera que se busca ajustar los parámetros del modelo λ para maximizar (Rabiner, 1989):. P (O |λ ) =. L Y i=1. P O. (l). . |λ =. L Y. Pl. (3.31). i=1. Las formulas de reestimación son similares a las descritas para el caso de una única secuencia (L = 1), pero ahora se toma en cuenta la contribución de todas las secuencias de observaciones:.
(44) 3.10 Entrenamiento de un Modelo Oculto de Markov. L P. āij =. l=1. TP l −1. 1 Pl. t=1 L P. L P l=1. b̄j (k) =. l l βt+1 (j) αtl (i) aij bj Ot+1 1 Pl. l=1. 31. 1 Pl. L P l=1. TP l −1. , αtl. l (i) βt+1. (3.32). (j). t=1 TP l −1. l αtl (i) βt+1 (i). t=1 s.aOt =Vk 1 Pl. TP l −1. αtl. (3.33) l (i) βt+1. (j). t=1. y L P. π̄i =. α1l (i)β1l (i). l=1 L P. . P. (Ol. (3.34). |λ ). l=1. 3.10.2. Algoritmo de Reestimación Viterbi. Otro enfoque para reestimar los parámetros del modelo, es hacer uso de la secuencia de estados óptima obtenida a través del algoritmo de decodificación Viterbi, y no de todas las secuencias posibles a través del modelo, como en el algoritmo Baum-Welch. A este enfoque se le conoce como reestimación Viterbi. Durante la decodificación Viterbi, se deben almacenar las siguientes cantidades: nij : número de transiciones desde el estado Si al estado Sj . ni : número de transiciones desde el estado Si . nj : número de veces que se visita el estado Sj . ni,0 : número de transiciones desde el estado Si en la primera observación de una secuencia. ni,k : número de veces que la observación Vk es generada por el estado Si . Con estas cantidades, los parámetros del modelo se pueden reestimar de manera similar a como se hizo en el algoritmo Baum-Welch, haciendo uso de las siguientes fórmulas: aij =. nij ni. (3.35).
(45) 3.10 Entrenamiento de un Modelo Oculto de Markov. πi =. ni,0 N. bj (k) =. ni,k nj. 32. (3.36). (3.37). Se puede comprobar de hecho, que estas ecuaciones son equivalentes a las ecuaciones (3.19), (3.20) y (3.21) de reestimación Baum-Welch, sólo que en este caso, para calcularlas, se tomarán los valores de la secuencia óptima de estados solamente (Maldonado, 2003). El algoritmo puede resumirse en los siguientes pasos: 1) Inicialización: Generar un modelo aleatorio λ = (A, B, π) 2) Recursión (hasta criterio de convergencia): 2.1) Encontrar la mejor secuencia de estados mediante el algoritmo Viterbi 2.2) Agrupar todos las observaciones de acuerdo al estado correspondiente 3) Reestimar los parámetros del modelo, haciendo uso de (3.35), (3.36), (3.37) Entrenamiento con Múltiples Secuencias de Observaciones Para el entrenamiento del MOM con un conjunto de L secuencias de observaciones: i h (l) (l) (l) O = O(1) , O(2) , · · · , O(L) , siendo O(l) = O1 , O2 , · · · , OTl la l-ésima secuencia de observación, se sustituyen las fórmulas (3.35), (3.36) y (3.37) por: L P. aij =. nlij. l=1 L P. (3.38) nli. l=1 L P. πi =. l=1 L P l=1. nli,0 (3.39) Nl.
(46) 3.11 Modelos ocultos de Markov de observaciones continuas. L P. bj (k) =. 33. nli,k. l=1 L P. (3.40) nj. l=1. 3.11. Modelos ocultos de Markov de observaciones continuas. Al principio de este capı́tulo se clasificaron a los MOM de acuerdo al número de observaciones posibles como MOM de observaciones discretas y MOM de observaciones continuas. Todo el desarrollo teórico presentado hasta este punto se basa en MOM de observaciones discretas, en los que las observaciones toman valores de un conjunto reducido de sı́mbolos, y por tanto se puede utilizar una distribución de probabilidad discreta para modelar la probabilidad de ocurrencia de las observaciones (a través de la matriz B).. Figura 3.5: Distribución de probabilidad de las observaciones. a) MOM de observaciones discretas. b) MOM de observaciones continuas En el reconocimiento automático del habla, por la naturaleza de las observaciones, ha resultado provechoso utilizar MOM de observaciones continuas, en los que B no es descrita como una matriz de valores puntuales de probabilidades sino como una función de densidad de probabilidad sobre el espacio continuo de observaciones (figura 3.5). Para modelar esta función de densidad, el método más empleado es el de los Modelos de Mezclas Gaussianas (Gaussian Mixture Models), es decir mezclas ponderadas de funciones gaussianas (Jurafsky y Martin, 2006), de la forma:.
(47) 3.11 Modelos ocultos de Markov de observaciones continuas. bj (O) =. M X. cjm <[O, µjm , Ujm ], j = 1, .., N. 34. (3.41). m=1. En donde O es el vector que está siendo modelado, cjm es el coeficiente de mezcla para la m-ésima mezcla en el estado j, y < es una función de densidad cóncava con vector de medias µjm y matriz de covarianzas Ujm (Rabiner, 1989). Los coeficientes de mezcla cij deben satisfacer las siguientes restricciones: M P. cjm = 1, j = 1, .., N. m=1. cjm ≥ 0,. 3.11.1. (3.42). j = 1, .., N; m = 1, .., M. Evaluación y decodificación de MOM de observaciones continuas. El único cambio respecto a los algoritmos de evaluación y decodificación descritos para el caso discreto, consiste en sustituir bj (k), por la mezcla de funciones gaussianas:. bj (O) =. M X. cjm <[O, µjm , Ujm ], j = 1, .., N. (3.43). m=1. 3.11.2. Reestimación Baum-Welch de MOM de observaciones continuas. En el caso del entrenamiento de MOM de observaciones continuas, se deben encontrar fórmulas de reestimación para los coeficientes cjk , µjk y Ujk de las mezclas gaussianas. Estas fórmulas son las siguientes (Rabiner, 1989): T P. cjk =. γt (j, k). t=1 T P M P. (3.44) γt (j, k). t=1 k=1 T P. µjk =. γt (j, k)Ot. t=1 T P t=1. (3.45) γt (j, k).
(48) 3.11 Modelos ocultos de Markov de observaciones continuas. T P. U jk =. 35. γt (j, k)(Ot − µjk )(Ot − µjk )0. t=1 T P. (3.46) γt (j, k). t=1. en donde γt (j, k) generaliza a γt (j) y es la probabilidad de estar en el estado j en el instante t con el k-ésimo componente de mezcla para Ot : α (j)β (j) cjk<(O, µ , U ) t jm jm t γt (j, k) = N M P P αt (j)βt (j) cjk<(O, µjm , Ujm ) m=1. j=1. 3.11.3. (3.47). Reestimación Viterbi de MOM de observaciones continuas. La reestimación de la matriz de transición de estados y la matriz de distribución de probabilidades inicial queda tal como en el caso discreto, pero al igual que en la reestimación Baum-Welch, se deben buscar fórmulas para el cálculo de los parámetros de las mezclas gaussianas de cada estado. Si existe una única gaussiana por estado, su media y varianza pueden ser fácilmente estimadas a partir de las Ni observaciones que en la decodifación Viterbi fueron asignados al estado i: Ni 1 X µi = On Ni n=1. (3.48). Ni 1 X σi = (On − µi ) (On − µi )T Ni n=1. (3.49). Cuando existen M > 1 gaussianas por estado, se deben dividir las Ni observaciones asignadas al estado, en M grupos, y en cada grupo calcular las medias y varianzas según las fórmulas anteriores. Generalmente para realizar esta división en grupos se.
(49) 3.12 Los MOM y el Reconocimiento Automático del Habla. 36. recurre a técnicas de agrupamiento como el algoritmo k-medias o el algoritmo c-medias difuso (Maldonado, 2003). También (en el caso de M > 1), se debe reestimar el coeficiente de mezcla de cada gaussiana, el cual se obtiene a partir de la siguiente fórmula: C i,m =. Ni,m Ni. (3.50). Entendiéndose Ni,m como el coeficiente de mezcla de la m-ésima gaussiana del iésimo estado.. 3.12. Los MOM y el Reconocimiento Automático del Habla. Hasta este punto se han descrito los métodos y algoritmos que permiten utilizar la estructura de los Modelos Ocultos de Markov para el modelado de procesos estocásticos en general, haciendo especial énfasis en su aplicación a la clasificación estadı́stica de patrones temporales. En esta sección se abordará el problema del Reconocimiento Automático del Habla (como se dijo en el capı́tulo anterior, un problema de reconocimiento de patrones temporales), desde el punto de vista de los MOM. Concretamente, se presentará un ejemplo de reconocimiento automático de palabras aisladas. Supongamos que se desea construir un reconocedor de voz para pronunciaciones de dı́gitos (0-9). En este caso, se asume que se cuenta con un conjunto de K ocurrencias distintas para cada dı́gito, pronunciada por uno o más hablantes. Este conjunto de pronunciaciones pasan por el proceso de parametrización descrito en el capı́tulo anterior, para obtener una secuencia de vectores de observación O = {o1 , o2 , .., oT } por cada una de las K pronuncaciones de cada dı́gito. En la etapa de entrenamiento, se debe crear un Modelo Oculto de Markov por cada palabra (en este caso, un MOM por cada dı́gito) (figura 3.6). El objetivo es que cada modelo maximice la probabilidad del conjunto de vectores de entrenamiento. Se podrı́a decir que cada MOM estarı́a aprendiendo la variabilidad temporal del dı́gito.
(50) 3.12 Los MOM y el Reconocimiento Automático del Habla. 37. que representa.. Figura 3.6: Entrenamiento de un Reconocedor de dı́gitos En la etapa de reconocimiento, una pronunciación nueva o desconocida, luego de parametrizada se le presenta a cada uno de los MOM de manera de calcular el correspondiente valor de P (O|λ), y se selecciona como salida aquel dı́gito cuyo modelo obtiene la probabilidad más alta (figura 3.7).. Figura 3.7: Reconocimiento de dı́gitos.
(51) Capı́tulo 4 Redes Neuronales Artificiales Las Redes Neuronales Artificiales (RNA) son modelos matemáticos inspirados en la estructura y funcionamiento del cerebro biológico, en el que la neurona es el elemento básico. Los primeros estudios sobre RNA datan de la década de los años 40, en los trabajos de McCulloch y Pitts (Freeman y Skapura, 1991). A partir de ese momento, el tema despertó gran interés en otros investigadores como Rosenblatt, Widrow y Kohonen, quienes contribuyeron notablemente a su desarrollo. Pero fue en la década de los años 80 cuando se logró un mayor avance en el campo de las RNA, impulsado por los progresos logrados en el campo de la computación digital (Fausett, 1994). Hoy en dı́a, las RNA son aplicadas a una gran cantidad de problemas que abarcan, entre otros campos: el procesamiento de señales, el control de procesos, la medicina y el reconocimiento de patrones. En este capı́tulo se introducirán las RNA, los conceptos relacionados con su estructura, entrenamiento y uso. Además se dedicará un espacio al estudio de las Redes Perceptrónicas Multicapa y las Redes de Funciones de Base Radial, dos tipos de RNA de conexión hacia adelante que han sido empleadas exitosamente al problema de aproximación funcional y clasificación no lineal de patrones..
(52) 4.1 La Neurona Biológica. 39. Figura 4.1: Neurona Biológica. 4.1. La Neurona Biológica. Una neurona biológica está formada por tres componentes principales: dendritas, cuerpo celular (o soma) y axón. La neurona recibe mediante sus dendritas señales (eléctricas) de otras neuronas a través de conexiones sinápticas. El cuerpo celular suma las señales entrantes y cuando esta suma sobrepasa un umbral, transmite una señal a otras neuronas por medio del axón. En la figura 4.1 se muestra una representación gráfica de una neurona biológica (Fausett, 1994). El cerebro humano posee alrededor de 100.000 millones de neuronas, y por lo general, cada neurona recibe información (en forma de señales) de miles de neuronas simultáneamente, y de igual forma transmite señales a otras miles más (Fausett, 1994; Freeman y Skapura, 1991).. 4.2. La Neurona Artificial. Las Redes Neuronales Artificiales buscan emular el comportamiento del cerebro, interconectando decenas, cientos o inclusive miles de unidades de procesamiento simples, denominadas neuronas artificiales, las cuales funcionan de manera análoga a las neuronas biológicas: reciben señales de otras neuronas, realizan transformaciones matemáticas sobre éstas y las envı́an a otras neuronas (Gupta et al., 2003). En la figura 4.2 se muestra un modelo de neurona artificial, cuyos componentes son los siguientes:.
Documento similar
El modelo de WS fue propuesto como una forma de extender los modelos de redes aleatorias para explicar dos observaciones que se habían descrito en las redes reales: a) la propiedad
[r]
[r]
Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en
por unidad de tiempo (throughput) en estado estacionario de las transiciones.. de una red de Petri
Esta información resulta útil para el diseñador de la interfaz, que puede decidir modificar el modelo CUI (en el caso del proceso “1” de la Figura 3), o bien modelos de más
¸ Ca peut nous aider ` a traiter le son st´ er´ eo, ` a d´ ecider quelles sont les algorithmes qu’on peut utiliser pour les diff´ erentes cas qu’on peut se trouver et a
Una vez visto la estructura de cada tabla, de ambas bases de datos, y explicado el contenido de cada campo vemos que la aplicación interactuará con las bases de datos no solo