La investigación en
tecnologías de la lengua*
Research in language technology
Marsal Gavaldà
Reconocimiento
del habla, procesamiento del lenguaje natural, traducción automática y síntesis
de voz, son probablemente las cuatro áreas de mayor impulso en el conjunto de
las tecnologías de la lengua y la lingüística computacional. El autor,
investigador senior de Interactive Systems Laboratories y director del curso «Tecnologías de la lengua: traducción
automática y tratamiento del habla», nos introduce progresivamente en el
conocimiento de estas tecnologías: sus retos, el estado de investigación y sus
aplicaciones.
Speech recognition, natural language
processing, automatic translation and speech synthesis are probably the four
areas currently receiving the most impulse in the Language Technologies and
Computerized Linguistics. The author, senior researcher at Interactive Systems
Laboratories and director of the Seminar on Language Technology: Automatic
translation and speech processing, introduces us to this technology: its
challenges and state-of-the-art research and applications.
Las tecnologías de la lengua se pueden definir como el conjunto de conocimientos que permiten programar ordenadores de manera que se comporten como si entendiesen la lengua humana. Esta definición, pragmática y conductista como el test de Turing, se cumple cuando no se puede distinguir si una persona está conversando con un ordenador o con otra persona, y evita la cuestión puramente filosófica de si un ordenador puede «realmente entender» la lengua humana.
Un ejemplo sencillo sería crear un histograma de letras, a partir de un corpus o conjunto de textos, para responder a la pregunta de cuáles son las letras más frecuentes en una lengua determinada. En el caso del inglés, las letras más frecuentes son la «e» seguida de la «t». En este programa típico para contar letras de un curso de introducción a la programación, el conocimiento necesario ocupa unas pocas líneas del código. En el otro extremo se situaría un sistema de conversación. Con este sistema se puede llamar por teléfono y mantener un diálogo para obtener información. Por ejemplo, conocer horarios de aviones o trenes, encontrar un alojamiento en una ciudad e incluso hacer las reservas correspondientes. Para el último supuesto se precisa una tecnología mucho más compleja que debe incluir el reconocimiento de la voz, la comprensión del lenguaje natural, el acceso a bases de datos, la síntesis de voz y un procesador de diálogo que sea el encargado de unir fluidamente todos los componentes. Estos apartados constituyen las áreas fundamentales de las tecnologías de la lengua.
También denominada reconocimiento del habla es una de las tecnologías más espectaculares. Parece mágico que un ordenador sea capaz de transcribir lo que dice una persona, es decir, de transformar la señal acústica de la voz en una secuencia de palabras que forman un texto escrito.
La secuencia comienza con la conversión de las ondas sonoras (variaciones de presión del aire) a variaciones de voltaje a través de un micrófono, seguido del muestreo de este voltaje para obtener, por ejemplo, 8000 muestras por segundo y después cada muestra es codificada en 8 bits, unidades mínimas de información. Este es el mismo proceso que se utiliza para registrar música en un compact disc, aunque para obtener más fidelidad la frecuencia de sampling es de 44 100 Hz y cada muestra es codificada en 16 bits.
A partir de ese momento, por medio del denominado procesamiento digital de la señal, se analiza este torrente de datos para extraer la información relevante e identificar las palabras. Por ejemplo, la entonación de una frase no contribuye mientras que la periodicidad de la señal durante un fonema sí que es información fundamental, ya que indica si el fonema es sonoro (por ejemplo, en catalán [s], la ‘s’ sorda de caça vs. [z], la ‘s’ sonora de casa). Una vez reducido el número de parámetros que caracterizan la señal, se inicia el proceso de búsqueda donde se ve qué palabra de los listados de un diccionario se parece más a la palabra que estamos intentando identificar. En realidad, en caso de reconocimiento de habla continua, es decir sin pausas artificiales entre la mayoría de palabras, el problema todavía es más complicado porque durante el proceso de búsqueda se pueden establecer también los límites de dónde comienza y dónde acaba cada palabra. En esta búsqueda se cuenta con la ayuda de conocimientos externos de dos tipos: los denominados modelos acústicos y los modelos del lenguaje. Los primeros establecen la distribución de los parámetros acústicos de cada fonema (por ejemplo, el hecho de que la [f] es labiodental fricativa sorda). Mientras que los modelos del lenguaje establecen la distribución usual de las palabras en una lengua; por ejemplo, el hecho de que la secuencia «pescado fresco» es más probable que «pescado estrafalario». Así, dada la evidencia de la señal de entrada y las expectativas de los modelos acústicos y del lenguaje, se llega a construir la hipótesis de aquello que se ha dicho.
Si la tarea es sólo la transcripción, como es el caso de dictar una carta, una vez se ha obtenido la secuencia de palabras del reconocedor de la voz la única tarea restante es relativamente sencilla y se trata de presentar el texto correctamente. Por ejemplo, «estimada maría coma» se presentaría como «Estimada María, ». Pero si se quiere que el ordenador entienda y ejecute alguna acción, como por ejemplo subrayar el último párrafo, entonces se requiere toda una maquinaria adicional: el denominado procesamiento y compresión del lenguaje natural.
Por compresión del lenguaje natural se entiende la transformación del texto en una representación semántica apta para el razonamiento y la ejecución de las órdenes. Esta representación se consigue a través del proceso de parsing o construcción de un árbol de análisis a partir de una gramática. Si la gramática es sintáctica, el árbol de análisis ofrece una información sobre las categorías gramaticales de las palabras y su función sintáctica, como la identificación del sujeto, verbo, predicado, complementos, etc. Mientras que si la gramática es semántica, el árbol de análisis ya es bastante próximo a la representación lógica que permite el razonamiento y la ejecución.
Por ejemplo, la frase «El niño come pescado» se puede representar por el predicado lógico come (niño, pescado). Mientras que la pregunta: «¿Qué come el niño?» se representa: come (niño, X); y dado que el hecho come (niño, pescado) es conocido, el sistema puede unificar X con pescado y responde, a través del proceso inverso al del parsing denominado generación, que «Lo que el niño come es pescado». De forma similar se puede representar «¿Quién come pescado?» como come (X, pescado) o incluso «¿Quién come qué?» es come (X,Y) y de esta manera se generarán las respuestas correspondientes.
La traducción automática es uno de los sueños más antiguos de la inteligencia artificial. De hecho, desde el mítico castigo divino impuesto a la torre de Babel, se anhela el «retorno» a una lengua común de todos los humanos, así lo explica Umberto Eco en La ricerca della lingua perfetta nella cultura europea.
La idea de la traducción automática es bien simple: la transformación de un texto de una lengua a otra manteniendo el significado. El modelo más sencillo sería la traducción a nivel léxico: la sustitución de cada palabra del texto de entrada por la correspondiente en la lengua a traducir. Éste es el intento, pero no funciona por dos razones principales. La primera razón es que la correspondencia entre dos lenguas nunca es biyectiva. Por otro lado, la palabra inglesa box, en catalán se aplica tanto para denotar «caixa» como «capsa». Y la segunda razón, todavía más problemática, es el hecho que la sintaxis o el orden de los constituyentes gramaticales es diferente en ambas lenguas. Por ejemplo, en japonés el verbo principal se coloca al final de la frase. Aun así, algunos sistemas de traducción léxica, ayudados por las correlaciones estadísticas de palabras y construcciones entre las dos lenguas, son capaces de producir traducciones comprensibles.
El modelo más complejo es el denominado traducción por interlingua donde primero se construye una interpretación semántica y después se genera una versión de la interpretación semántica en la lengua de salida. Así, siguiendo con el ejemplo anterior, en primer lugar se construye la interpretación semántica: come (niño, pescado) para representar «El niño come pescado»; y la versión de la interpretación semántica en la lengua de salida a través de una gramática de generación sería «The boy eats fish». La gran ventaja de utilizar una interlingua es que para traducir entre n lenguas distintas son necesarios n módulos de parsing (transformación de secuencia de palabras en representación semántica), es decir, 2·n módulos en total. En cambio, con el método de traducción léxica se requiere un módulo para cada pareja de lenguas y en cada sentido, es decir, n·(n-1) módulos. Con las aproximadamente 6000 lenguas que se hablan en la Tierra, la diferencia es monumental: 12 000 vs. 35 994 000 módulos. Pero el problema principal de la traducción por interlingua reside precisamente en la definición de la interlingua. De momento, sólo se han conseguido resultados satisfactorios para dominios muy restringidos.
La síntesis de la voz es la lectura automatizada en voz alta de un texto. Es decir, la transformación de una secuencia de palabras en una señal acústica suficientemente comprensible como para que un hablante de una lengua en cuestión sea capaz de recuperar el texto original. En primer lugar existe un procesamiento del texto donde se desarrollan los números y contracciones; por ejemplo «Dr.» quiere decir «doctor», y posteriormente se realiza la transformación de cada palabra en la secuencia de fonemas correspondientes (por ejemplo, la palabra , èxit en catalán se convierte en [e][g][z][i][t]). Una vez obtenidos todos los fonemas se genera el sonido correspondiente bien de una manera totalmente sintética en el caso de síntesis por formato; o bien, a partir del encadenamiento de los registros de los fonemas emitidos por una persona en el caso de síntesis por concatenación.
Ya que nos encontramos en la denominada era de la información y que la lengua humana es la manera más natural que tenemos de comunicarnos, las tecnologías de la lengua adquieren una importancia relevante. En efecto, todo el campo del reconocimiento de la voz y la lingüística computacional se encuentra en un momento de efervescencia, con un gran crecimiento tanto en la investigación universitaria y en la industrial, como en la presencia de productos comerciales. El incremento exponencial sostenido de la capacidad de computación, memoria y comunicación de los ordenadores permite que antiguos sueños como el traductor universal o el de un reloj secretario, que entienden y ejecutan órdenes habladas, comiencen a ser realidad.
Asimismo, el poder computacional por sí solo no es suficiente, es necesario saberlo dirigir a partir de la base de conocimientos teóricos y empíricos obtenidos tanto por medio del estudio paciente de los procesos cognitivos humanos desde todos las vertientes científicas (desde la biología molecular del cerebro a los modelos abstractos de cálculo), como por medio de la experiencia de construir sistemas útiles de procesamiento del habla y comprensión del lenguaje natural.
Marsal Gavaldà i Camps
Doctor
en Tecnologías de la lengua por la Carnegie Mellon University (Pittsburg, EUA),
y máster de Ciencia en lingüística computacional por la misma universidad. Es
ingeniero superior en informática por la Universitat Politècnica de Catalunya
(UPC). Actualmente trabaja en Interactive Systems como senior research scientist en la construcción de sistemas
automáticos de reconocimiento, comprensión y traducción de lenguas humanas. Ha
publicado una veintena de trabajos, desde artículos técnicos en revistas
especializadas internacionales a un cuento infantil en la revista Cavall Fort. En su tiempo libre realiza
largas travesías en moto, lee artículos de Nature, Science, Wired
y The New Yorker, y practica caligrafía china.
Figura 1 La rueda de las tecnologías de la lengua: en un sistema de traducción del habla, el primer paso es el reconocimiento de la voz (transformación en una secuencia de palabras de la señal acústica de la frase hablada en la lengua de entrada), seguida del procesamiento del lenguaje natural (análisis sintáctico y semántico de la frase), la traducción automática (construcción de una representación intermedia y generación de la frase en la lengua de salida) y finalmente, la síntesis de voz (lectura en voz alta de la frase en la lengua de salida) [Dentro del círculo, las correspondientes siglas en inglés.]