Principios Básicos
Arquitectura
Dificultades
Clasificaciones
Aplicaciones

Reconocimiento Automático del Habla
El proceso de reconocimiento automático del habla (RAH) dota a las máquinas de la capacidad de recibir mensajes orales. Tomando con entrada la señal acústica recogida por un micrófono, el proceso de reconocimiento automático del habla tiene como objetivo final descodificar el mensaje contenido en la onda acústica para realizar las acciones pertinentes. Para lograr este fin, un sistema de RAH necesitaría conjugar una gran cantidad de conocimientos acerca del sistema auditivo humano, sobre la estructura del lenguaje, la representación del significado de los mensajes y sobre todo el autoaprendizaje de la experiencia diaria. Actualmente estamos lejos de lograr un sistema completo que pueda comprender cualquier mensaje oral en cualquier contexto tal y como lo podría hacer un ser humano. Sin embargo, la tecnología actual si que permite realizar sistemas de RAH que pueden trabajar, con un error aceptable, en entornos semánticos restringidos.


Título
Principios Básicos
Arquitectura

Básicamente, el reconocimiento del habla es un proceso de clasificación de patrones, cuyo objetivo es clasificar la señal de entrada (onda acústica) en una secuencia de patrones previamente aprendidos y almacenados en unos diccionarios de modelos acústicos y de lenguaje. Este proceso de clasificación supone, en primer lugar que la señal de voz puede ser analizada en segmentos de corta duración y representar cada uno de los segmentos mediante su contenido frecuencial, de forma análoga al funcionamiento del oído, en segundo lugar que mediante un proceso de clasificación podemos asignar a cada segmento o conjuntos consecutivos de segmentos una unidad con significado lingüístico y finalmente , en tercer lugar, que mediante un procesador lingüístico podemos dar significado a las secuencias de unidades. Este último paso del sistema supone incorporar al sistema de RAH conocimiento acerca de la estructura sintáctica, semántica y pragmática del lenguaje. Sin embargo, los sistemas actuales de RAH solo incorporan estas fuentes de conocimiento sobre tareas muy restringidas y controladas, estando la mayoría de ellos en experimentación en condiciones de laboratorio.


Principios Básicos

Arquitectura de un Sistema de RAH
Dificultades

Matemáticamente, el problema del reconocimiento automático del habla se puede formular desde un punto de vista estadístico. Para ello supongamos que O representa una secuencia de T medidas de la señal de voz (datos acústicos) y W es una secuencia de N palabras que pertenecen a un vocabulario conocido. La probabilidad condicional P(W|O) es la probabilidad de que la secuencia de palabras W se haya pronunciado dada la observación de los datos acústicos O.

El sistema de reconocimiento debe decidir en favor de la secuencia de palabras W que maximize la probabilidad P(W|O)

W=argmax P(W|O)
W

Utilizando la fórmula de Bayes podemos reescribir la probabilidad condicionada

donde

P(W) es la probabilidad de la secuencia de palabras W
P(O|W) es la probabilidad de observar la secuencia de datos acústicos O cuando se pronuncia la secuencia de palabras W
P(O) es la probabilidad de la secuencia de datos acústicos O

sin embargo, como la probabilidad de la secuencia de datos acústicos P(O) es la misma independientemente de la secuencia de palabras pronunciada, en el proceso de maximización, esta probabilidad puede ser eliminada (la secuencia de palabras que da el máximo no varía). De esta forma obtenemos la fórmula fundamental del reconocimiento automático del habla

Es decir, la secuencia de palabras reconocida es aquella que maximiza el producto de dos probabilidades, una P(O|W) que relaciona los datos acústicos con la secuencia de palabras y que denominaremos modelo acústico y P(W) que únicamente depende de la secuencia de palabras y que denominaremos modelo de lenguaje.

La figura 1 se muestran los bloques básicos de un sistema de reconocimiento automático del habla basado en la anterior fórmula. En la figura se distinguen dos procesos diferenciados:

Entrenamiento Fase en la que el sistema aprende, a partir de muestras de voz y texto, los modelos acústicos P(O|W) y los modelos de lenguaje P(W)
Reconocimiento Fase propiamente dicha de reconocimiento automático del habla en la que la señal acústica es transcrita en una secuencia de palabras de acuerdo con la fórmula fundamental del RAH.

 

“Para profundizar en cada bloque que compone un sistema de RAH ir poner el ratón sobre el bloque que se desea profundizar y pulsar.

Modelado AcústicoModelado del LenguajeAlgoritmos de BúsquedaProcesado de Señal

Figura 1. Bloques básicos de un sistema de reconocimiento automático del habla (Pulsar sobre los bloques de la figura para profundizar en cada uno de ellos)


Arquitectura
Dificultades
Clasificación

Existen muchos factores que influyen en la dificultad del proceso de RAH y por tanto en su rendimiento, pero entre todos ellos destaca la variabilidad. La variabilidad de la señal de voz depende tanto de factores intrínsecos al fenómeno de producción de voz como a factores externos al mismo. Dentro de los factores intrínsecos destacan los siguientes:

1. Variabilidad de los sonidos, debido fundamentalmente a los distintos acentos o formas de hablar de cada persona. 2. Variabilidad en la producción de los sonidos, debido fundamentalmente a las distintas velocidades de producción, coarticulación, inclusión de ruidos (apertura y cierre de labios, respiración, sonidos de duda, p.e., eh, uuh), condiciones acústicas (hablar en ambientes ruidosos), contexto de la conversación, estado anímico, etc. Entre los factores externos destacan: 1. Variabilidad en la cadena de conversión y transmisión de la señal eléctrica, debido a las diferencias entre las características de los micrófonos, líneas telefónicas, etc.

2. Variabilidad en el ruido captado con la señal de voz, debido a la existencia en las proximidades del micrófono de otras fuentes sonoras (TV, radio, carretera, impresoras, otras conversaciones, etc.)

A estos factores de variabilidad acústica habrá que añadir otros factores de variabilidad lingüística relacionados con las distintas formas dialécticas de hablar un idioma, la utilización de palabras no contempladas en el vocabulario de la aplicación, la construcción de frases no permitidas por la gramática del lenguaje, la utilización de abreviaturas, los escenarios semánticos de las palabras, etc. Todo ello hace que el reconocimiento automático del habla por parte de una máquina no sea un problema tan trivial como a primera vista pueda parecer.


Dificultades
Clasificación de Sistemas de RAH
Aplicaciones

En base a como un sistema de RAH resuelve los problemas de variabilidad, podemos realizar una primera clasificación de los mismos. R. Moore [MOO90] propuso para la descripción y clasificación de un sistema de RAH la utilización de los siguientes descriptores:

Dimensiones de un sistema de reconocimiento automático del habla
1. Usuarios/locutores

Define las características de un sistema RAH frente a la variabilidad de los sonidos pronunciados por diversas personas. Se define una graduación en términos de dificultad entre:

a. dependiente del locutor / adaptado al locutor / multilocutor / independiente del locutor
b. usuarios cooperativos / usuarios no cooperativos
c. nivel de experteza requerida al usuario

2. Estilo de habla

Define las características de un sistema RAH frente a los diversos estilos de habla, clasificados de forma gradual entre:

a. palabras aisladas ............. habla continua
b. habla leída ...................... habla espontanea
c. nivel de rechazo de habla extraña

3. Vocabulario

Define las características de un sistema RAH frente al vocabulario que puede reconocer, clasificados de forma gradual entre:

a. discriminable ..................................... confundible
b. entrenable por el usuario .................... independiente
c. pequeño (< 100 palabras) ................... grande (>1000 palabras)
d. dependiente de la aplicación .............. independiente

4. Estructura de diálogo

Define las características de un sistema RAH frente a la capacidad de procesamiento de lenguaje, clasificados de forma gradual entre:

a. perplejidad (baja /alta)
b. comandos simples .................. lenguaje natural

5. Condiciones de trabajo

Define las características de un sistema RAH frente a la variabilidad en las condiciones de entorno, clasificados de forma gradual entre:

condiciones de laboratorio ............. condiciones de campo

 

Este conjunto de descriptores permite realizar una comparación entre las prestaciones de distintos sistemas de RAH dejando patente como resuelve cada sistema los diversos problemas inherentes al reconocimiento de voz. Las fuentes de variabilidad deben de tenerse muy en cuenta a la hora de plantear una aplicación de un sistema de RAH puesto que la robustez del sistema a las mismas fijará el rendimiento del mismo. En condiciones de laboratorio, muchos factores de variabilidad están controlados y no afectan a las prestaciones del sistema y por tanto las tasas de error son reducidas. Sin embargo, cuando estos mismos sistemas son llevados a una aplicación en condiciones reales, los resultados pueden ser desalentadores, sobre todo cuando las pruebas de laboratorio estaban muy controladas. Por ejemplo, en aplicaciones de reconocimiento de dígitos conectados se puede pasar de tener un 0,3 % de error por dígito en condiciones de laboratorio a más de un 2 % de error por dígito en una aplicación en condiciones reales.


Clasificaciones
Aplicaciones
Título

A la hora de desarrollar aplicaciones con sistemas de RAH hay que tener en mente que con la tecnología actual los sistemas no están exentos de errores, por lo que las primeras aplicaciones en las cuales este tipo de interface comienza a tener éxito son aquellas que se caracterizan por ser simples, en cuanto es sencillo el uso del mismo, supone una evolución de la tecnología ya existente en el sentido de que únicamente realizamos un cambio de interface y sobre todo, la aplicación debe ser tolerante a errores. A estas consideraciones sobre la aplicación en sí, hay que añadir una serie de requerimientos tecnológicos del sistema de RAH. Para trabajar en aplicaciones reales, el sistema de RAH tiene que tener la capacidad de reconocer palabras o comandos de la aplicación en un contexto de habla fluida, mantener un nivel de prestaciones adecuado frente a cambios de usuario, canal de comunicación, ruidos, etc., permitir el rechazo de palabras que no formen el vocabulario de reconocimiento y trabajar en tiempo real entre otros requerimientos. Como muy bien reseñan D. B. Roe y F.G. Wilpon [ROE93], a la hora de considerar una aplicación utilizando un sistema de RAH se deben realizar 3 preguntas:

1. ¿ Cuál es el grado de exactitud del sistema que espera el usuario ?
2. ¿ Es adecuado el grado de exactitud del sistema de RAH a utilizar con relación a las expectativas del usuario?
3. ¿ Es realmente beneficioso, coste y satisfacción del usuario, el uso de un sistema de RAH comparado con otras tecnologías alternativas ?

El campo de aplicaciones de los sistemas de RAH es muy amplio, pero básicamente, con la tecnología actual existen tres áreas en las cuales el volumen de utilización de sistemas de RAH está creciendo de forma exponencial. Estas áreas son:

servicios de telecomunicación,
sistemas de control y
sistemas de entrada de datos y acceso a bases de datos.

Existen varias razones por las cuales estás áreas comienzan a utilizar de forma extensiva sistemas de RAH. Normalmente se utilizan para tareas bien definidas y con un vocabulario y sintaxis bastante restringido lo que permite que:

a. la unidad elemental de reconocimiento suele ser la palabra
b. solamente un grupo reducido de palabras tienen que ser reconocidas en un instante de tiempo
c. normalmente es aceptable el estilo de habla mediante palabras aisladas
d. el compilador de gramáticas de la aplicación se puede definir de forma sencilla a partir de grupos de subvocabularios

Bajo estos supuestos, actualmente pueden encontrarse multitud de sistemas de reconocimiento integrados que trabajan con tasas de reconocimiento superiores al 98 % con palabras aisladas. Sin embargo, en gran número de servicios o productos que potencialmente pueden utilizar tecnologías del habla, el sistema de RAH no es más que el interfaz de entrada a un sistema de diálogo en donde entran en juego otras tecnologías del habla como la síntesis de voz, tal y como se muestra en el diagrama de bloques de un sistema de diálogo en la figura 2. El propósito final de un sistema de este tipo es el control de un sistema mediante órdenes orales provenientes, p.e., de un micrófono, o de línea telefónica o de un sistema de transmisión sin hilos. Las ordenes son procesadas por un sistema experto que interacciona con el sistema bajo control para que realice las acciones pertinentes y genera una contestación al usuario mediante un sistema de conversión texto-voz. Un ejemplo es el sistema Basurde [BAS00] para consulta sobre horarios y precios de trenes regionales y de largo recorrido dentro del proyecto CICYT TIC98-0423-C06.

Figura 2. Sistema de diálogo utilizado en el proyecto Basurde . El sistema trabaja bajo una filosofía cliente/servidor.RAH: sistema reconocimiento automático del habla, CH: sistema de comprensión del habla, GD: sistema de gestión del diálogo, GRO: sistema de generación de la respuesta oral, CTV: sistema de conversión texto-voz. Las letras "c" y "s" hacen referencia a la función del socket. c: cliente, s:servidor.

Las aplicaciones más representativas de los sistemas de RAH que actualmente se pueden encontrar en fase de experimentación o de explotación comercial son:

1. Sistemas de control oral para ayuda a disminuidos físicos
2. Sistemas de entrada de datos y comandos para ordenadores, navegadores Web por voz
3. Sistemas de acceso a bases de datos
4. Sistemas de venta por catálogo
5. Aplicaciones aerospaciales
6. Servicios interactivos de telefonía sin operadora
7. Control oral de teléfonos
8. Validación de ventas con tarjeta de crédito
9. La máquina de escribir oral, Dictado
10. Domótica
11. Autoaprendizaje de idiomas

Una de las aplicaciones más inmediatas de los sistemas de RAH como interfaz entre hombre y máquina es la ayuda a discapacitados físicos. Mediante comandos orales se pueden controlar muchas de las funciones y actividades cotidianas. Ejemplos en fase de experimentación son la silla de ruedas controlada oralmente, camas hospitalarias, control oral de teléfonos (p.e. listín telefónico controlado oralmente) y la activación oral de aparatos y sistemas domésticos. En el caso del teléfono controlado oralmente, el usuario puede almacenar y acceder a una lista de números telefónicos utilizando comandos orales. En este tipo de aplicaciones, el sistema de reconocimiento de voz es dependiente del locutor y trabaja normalmente bajo la configuración de reconocimiento de palabras aisladas con capacidad de localización de los comandos en habla extraña [LLE93]. El sistema tiene que tener la capacidad de ser entrenado por el usuario para de esta forma hacer el acceso a los números telefónicos mediante el nombre de la persona que queremos llamar.

La activación oral de aparatos y sistemas domésticos, incluida dentro del campo de la domótica, tiene como objetivo el controlar a estos mediante comandos orales a través de un sistema de diálogo. Son susceptibles de control oral, aparatos como el televisor (encender/apagar, cambiar de canal, volumen), el equipo de HIFI, abrir y cerrar puertas, abrir y cerrar persianas, control de una cámara de seguridad, activar el teléfono, la calefacción, el horno y encimera, encender y apagar luces, etc. En 1984, la empresa británica Voice Input Systems construyó, demostró y comenzó a comercializar el sistema VADAS [BRI86] para ayudar a dicapacitados físicos a controlar oralmente dispositivos domésticos. Una capacidad interesante de estos sistemas de control oral de dispositivos domésticos es la posibilidad de controlarlos de forma remota a través de la línea telefónica. Los sistemas de reconocimiento utilizados en este tipo de aplicaciones suelen ser de palabras aisladas con la capacidad de rechazar habla o sonidos extraños y dependientes del locutor, de modo que se entrena el sistema con la voz del usuario.

Otra área de aplicación de los sistemas de RAH es la aviación tanto civil como militar. En aplicaciones militares se ha experimentado en la introducción de interfaces orales para interactuar con los sistemas básicos de un avión de guerra. Los sistemas de reconocimiento suelen ser de palabras aisladas y tienen que ser capaces de dar unas prestaciones muy buenas trabajando con relaciones señal a ruido muy pequeñas. En experimentos realizados sobre un Mirage 3R, se han logrado tasas de reconocimiento sobre 95 % con un vocabulario de 30 palabras. En la aviación civil se pueden encontrar aplicaciones en proceso de experimentación para el control aéreo utilizando sistemas de reconocimiento de habla continua.

Una de las área con más aplicaciones potenciales son las telecomunicaciones y servicios añadidos. En ciertos servicios añadidos a la red telefónica, el uso de interfaces orales permite una reducción efectiva del coste del servicio. Ejemplos de estas aplicaciones son la automatización de los servicios de operadora y la validación de compras con tarjetas de crédito. En el primer caso, existen aplicaciones en uso en los EE.UU. por parte de las compañías telefónicas AT&T y Northen Telecom para automatizar el servicio de facturación de llamadas asistidas por operadora. En estos casos, el reconocimiento del mensaje se realiza mediante un sistema de localización de palabras. En el caso de validación de compras con tarjeta de crédito, este servicio es utilizado por comercios que no disponen de modems para validar la venta. Con un sistema de reconocimiento de dígitos conectados puede reconocerse los números de la tarjeta de crédito, la identificación del vendedor y el valor de la venta. Como el número de la tarjeta de crédito y la identificación del vendedor están formados por una secuencia de dígitos con ciertas restricciones, no causan problemas a la hora de reconocerlos. La incorporación de interfaces orales ha permitido también incrementar el número de servicios proporcionados por una red de telecomunicaciones. Ejemplos de estas aplicaciones son los servicios de información y transacciones bancarias, servicios de telefonía interactiva (p.e. el sistema VIP -Voice Interactive Phone- de AT&T que permite acceder a ciertos servicios pronunciando el nombre asignado al mismo en lugar de pulsar un código con el teclado multifrecuencia [SUK92]) y servicios de acceso a información (p.e. sistemas de audiotex).En relación a la telefonía móvil en vehículos, los sistemas de reconocimiento de voz comienzan a ser introducidos para permitir controlar el teléfono (funciones de marcado, respuesta, etc.) mediante comandos orales.

Un sueño que comienza a ser realidad es la máquina de escribir oral, es decir, un sistema de conversión de voz a texto con un vocabulario muy grande ( > 5000 palabras) que puede transcribir habla natural sin restricciones a texto. Este tipo de reconocedores del habla se están desarrollado en la actualidad y ya se pueden encontrar en explotación comercial algunos de ellos. Ejemplos de los mismos son los sistemas comercializados por Dragon Systems e IBM, que permite reconocer un vocabulario de hasta 60000 palabras trabajando sobre un PC, utilizando un sistema de adaptación al usuario de modo que no es necesario un entrenamiento del mismo. El sistema aprende de forma interactiva el estilo de habla del usuario y reconoce palabras aisladas con separaciones entre palabras de un cuarto de segundo. Con este sistema se puede llegar a crear un texto a una velocidad de hasta 120 palabras por minuto. Actualmente se pueden adquirir en el mercado productos como teléfonos, juguetes, radiocassete de coche, teléfonos móviles para coche, grabadores de vídeo, agendas personales que incorporan un sistema sencillo de reconocimiento de voz para controlar las funciones más elementales de dichos productos.

Con el auge de Internet, han aparecido ya navegadores que incorporan tecnologías del habla. En concreto existen navegadores que permiten realizar la navegación por voz, solo hace falta pronunicar los enlaces y permiten igualmente una interacción con el usuario utilizando un conversor texto-voz. Un ejemplo es el navegador WebConversa.

Otro ejemplo de aplicación es el acceso a bases de datos, como puede ser la consulta sobre horarios y precios de trenes regionales y de largo recorrido que se ha desarrollado dentro del proyecto CICYT TIC98-0423-C06 por varios grupos universitarios del país. Estado actual e instrucciones de uso del prototipo.