2.3 Reconocimiento de Voz con HMM
2.3.4 Clasificación de los Modelos de Markov
Hasta el momento todo lo referido a modelos de Markov ha sido independiente de si éstos se utilizan para modelar características subfonéticas o frases enteras. A continuación, se establece una clasificación del tipo de modelados que pueden ser utilizados:
• Modelos de palabras. • Modelos de sílabas.
• Modelos de semi-sílabas (demisyllables).
• Modelos fonéticos. • Modelos subfonéticos.
2.3.4.1 Modelos de Palabras.
En este caso, los HMM modelan palabras completas. Este modelado es el que tradicionalmente ha sido utilizado en reconocedores de voz de palabras aisladas, como en el reconocimiento de dígitos.
Un reconocedor basado en este tipo de modelos es difícil de generalizar para cualquier vocabulario porque el número de modelos crece de forma lineal con el tamaño del vocabulario y, además, es necesario disponer de una base de datos con un número suficiente de repeticiones para cada nueva palabra que se quiera añadir. Por tanto, la flexibilidad que proporciona es nula.
2.3.4.2 Modelos de Sílabas.
Los modelos de sílabas proporcionan una cierta flexibilidad, ya que la concatenación de las mismas forma palabras, evitando la necesidad de obtener bases de datos nuevas si se desea aumentar el tamaño del vocabulario. Sin embargo, esto no implica que no se requieran grandes bases de datos que presenten las diferentes posibilidades de combinación entre consonantes y vocales para formar sílabas (CV, VC, CCV, CVC, CVV, etc.). Aunque parezca que no es un gran inconveniente, supone un
número tan elevado de modelos, que el entrenamiento de los mismos resulta prácticamente de la misma magnitud que el de modelos de palabras completas.
2.3.4.3 Modelos de Semi-Sílabas.
Los modelos de semi-sílabas están formados por un grupo de consonantes (que pueden no existir) y la parte inicial de una vocal, o bien, por la parte final de una vocal y un grupo de consonantes.
Al modelar las sílabas en dos partes, el número total de modelos a entrenar se reduce de forma importante.
2.3.4.4 Modelos de Unidades Fonéticas.
Los fonemas representan un nivel superior de fragmentación de palabras. La modificación de un fonema, que es la unidad mínima dentro de una palabra, puede cambiarle el sentido a la misma. Hay que distinguirlo de alófono, que es cada una de las pronunciaciones reales del modelo ideal que representa el fonema. El número de fonemas que existe en cualquier lengua no tonal está bastante limitado, aún cuando el número de alófonos puede resultar muy elevado. Así, por ejemplo, para el castellano existen unos 30 fonemas diferentes, pero se pueden distinguir hasta 5.000 alófonos, como se especifica en [Pro92], que es el documento de definición de la base de datos de frases del proyecto Albayzín.
En función del grado de resolución que se quiera que presenten las unidades fonéticas1 se pueden obtener modelos más o menos específicos. La manera en que se hace la división en unidades fonéticas depende del contexto donde el alófono se localice:
• Monofonemas: Son unidades totalmente libres de contexto. Un monofonema tiene en cuenta todas las posibles realizaciones de un fonema independientemente de sus vecinos.
• Bifonemas: Son unidades que dependen sólo de uno de sus contextos, ya sea éste el derecho (bifonema derecho) o el izquierdo (bifonema izquierdo). • Trifonemas: Son unidades que dependen de ambos contextos a la vez. • Trifonemas generalizados: Dado que el número de unidades va aumentando
al ir considerando más detenidamente la posición de los fonemas en su contexto, puede llegar a ser tan elevado que su entrenamiento no fuera posible. Surge el trifonema generalizado como un primer nivel de compartición, en el que varios trifonemas cercanos se agrupan para reducir el número de modelos y que el entrenamiento de éstos sea mejor.
1 Se utiliza unidad fonética en lugar de fonema o alófono, porque es mucho más general. Una unidad
fonética puede corresponderse con todos los alófonos que puede presentar un fonema, o modelar a un único alófono. En general, representa un subconjunto de alófonos de un fonema.
En el caso del castellano existen unos 30 monofonemas, unos 30*30 = 900 bifonemas derechos o izquierdos (un número menor, pues no todas las combinaciones son posibles) y unos 30*30*30 = 27.000 trifonemas (muchos menos, porque al igual que en el caso anterior, tampoco todas las combinaciones son posibles). En función de la aplicación, hay que analizar hasta qué nivel de resolución se desea trabajar, dependiendo del tamaño de las bases de datos accesibles.
Evidentemente, como en el caso del modelado de sílabas, si se aumenta la resolución de modelos, se requerirían bases de datos cada vez mayores, con un número suficiente de repeticiones para entrenar cada uno de ellos. Si, además, se tiene en cuenta que el número de estados de cada modelo varía entre uno y cinco estados, el problema del entrenamiento aumenta de forma significativa. Es aquí donde surge la necesidad de la reducción del número de parámetros. Si los trifonemas generalizados permiten cierta reducción, esto es a costa de que muchas veces los modelos generados pueden no resultar tan buenos al sumarse modelos de forma completa que no tienen por qué ser totalmente coincidentes. El paso siguiente, por tanto, es trabajar a nivel subfonético.
2.3.4.5 Modelos de Unidades Subfonéticas.
En los sistemas actuales de reconocimiento continuo de grandes vocabularios se realiza compartición de estados entre los diferentes HMM, con el fin de encontrar un buen compromiso entre la resolución de los modelos y la robustez.
Los trabajos más significativos sobre modelado subfonético son, por orden de aparición, los tres siguientes: el fenón de IBM [Bah88], el senón de CMU (Carnegie Mellon University)[Hwa92][Hwa93a] [Hwa93b] y el genón de SRI (Speech Technology and Research Laboratory, International) [Dig96].
En todos estos casos, la metodología es muy similar, y consiste en buscar un punto donde sea posible realizar una atadura (tying), normalmente al nivel de estado de HMM, de manera que se reduzca el número de parámetros a entrenar. Se pueden distinguir tres fases:
• Estimación inicial: Se diseñan unos modelos con un bajo nivel de entrenamiento, normalmente con HMM discretos, para obtener una primera estimación de unos modelos que pueden ser fonéticos.
• Clustering (agrupamiento): Se agrupan los estados entre los modelos que sean similares, utilizando una determinada distancia (medida de distorsión). • Reestimación: Con las reglas de agrupación obtenidas, se realiza otro
entrenamiento para conseguir unos modelos nuevos mucho más refinados y precisos.
En el agrupamiento se pueden imponer restricciones, como en el caso de los senones:
• Restricción de dependencia de fonema: En estas unidades no se permite agrupar estados que correspondan a unidades fonéticas diferentes, evitando que puedan llegar a confundirse.
• Restricción de dependencia de estado: Se impone la condición de no agrupar estados que no se correspondan con la misma posición dentro del modelo.
Estas restricciones proporcionan una disminución en el número de posibilidades de agrupamiento, facilitando la obtención de los parámetros. En [Hua95] se hace una descripción del cómputo eficiente de distancias a los senones dentro del sistema WHISPERTMde Microsoft.
En [Luo99] se propone la utilización de un conjunto de clases compartidas por todos los modelos de estado. Cada uno de ellos se define como una combinación probabilística de dichas clases.