EL GRUPO TAUM

En 1965 la Universidad de Montreal empezó a trabajar en proyectos de LN con la creación del CETADOL (Centre d'études pour le traitement automatique des données linguistiques) con la financiación del Consejo Nacional de Investigación del Canadá y bajo la dirección de Prof. Guy Rondeau.

Entre 1968 y 1971, bajo la dirección de Prof. Alain Colmerauer, el grupo hizo de la TA su principal área de investigación y se rebautizó TAUM (Traduction Automatique, Université de Montréal).

A partir del software Q-SYSTEMS recién desarrollado por Colmerauer, Colmerauer 1971, se creó el prototipo de TA TAUM-71, con una arquitectura típica de segunda generación. El grupo pasó a estar dirigido por Prof. Richard Kittredge hasta 1977, haciendo sistemas experimentales. La opinión generalizada entonces era que la TA era posible si se restringía el tipo de texto.

En 1975 se firmó un contrato para desarrollar un sistema para que tradujera partes metereológicos y al año siguiente se hizo público el sistema TAUM-METEO que ha sido operativo desde mayo de 1977 hasta nuestros días.

El grupo fue encomendado un nuevo proyecto, algo más ambicioso, para construir durante los próximos tres años y bajo la dirección de M. Marcel Paré, un nuevo sistema que tradujera manuales de mantenimiento de aviones.

Durante los primeros dos años aparecieron inconvenientes imprevistos, el sistema estaba empezando a funcionar cuando los plazos se terminaban y llegó el momento de la primera evaluación de TAUM-METEO, Gervais 1980. Los pobres resultados hicieron que el proyecto fuera cancelado (cf. Macklovitch 1984).

El modelo de traducción de TAUM

Los princios básicos de diseño fueron establecidos antes de 1971 y para esto se trabajo en estrecha colaboración con el grupo GETA de la Universidad de Grenoble. Cuenta con los tres ingrediéntes que definen a los sistemas de segunda generación: enfoque indirecto, modelo de transferencia y separción de los datos lingüísticos de los algoritmos de programación.

En los primeros sistemas, las reglas de traducción se aplican directamente sobre la cadena de entrada y no existe intención de caracterizar esta entrada de manera independiente a la lengua destino. Los sistemas TAUM asignan a las frases de entrada un descripción estructural completa antes de comenzar a traducir. Esto se justifica porque generalmente las reglas de traducción deben ser expresadas en términos de correspondencias estructurales y no de cadena a cadena.

La manera más sencilla de realizar el enfoque indirecto hubiera sido mediante una interlingua. Por desgracia, esta idea de un lenguaje semántico universal (cf. la Characteristica Universalis de Leibnitz) adolece de considerables problemas filosóficos y técnicos. Por aquel entonces lo más práctico parecía intentar descripciones estructurales dependientes (ED) de la lengua y aplicar el método de transferencia entre las EDs. La complejidad del componente de transferencia es una función inversa de (a) la profundidad a la que se establecen ls EDs para la lengua origen LO y la lengua destino LD (es decir, la medida en la que son capaces de distanciarse de las restricciones/constraints específicas de cada lengua y (b) la medida de relación que exista entre LO y LD. En la mayor parte de los casos, las ED retienen unidades léxicas de ambas LO y LD y el componente de transferencia usa un diccionario bilingüe.

En los primeros sistemas de TA, cada regla estaba directamente programada, de manera que los datos lingüísticos y los algoritmos estaban tan entremezclados que no existía ningún tipo de modularidad. En los sistemas de segunda generación, los datos lingüísticos se escriben en un metalenguaje especialmente diseñado. Los datos lingísticos se expresan como un conjunto de reglas. Implícitos en estas reglas están los algoritmos que están descritos separadamente a modo de un intérprete. El lingüísta-traductor tiene así un entorno más asequible para desarrollar y modificar el sistema.

Un ejemplo de metalenguaje es el Q-SYSTEMS de Colmerauer 1971. Este formalismo permite escribir la gramática mediante reglas de transformación que proyectan estructúreas arbóreas en otras estructuras del mismo tipo. Estas reglas pueden incorporar variables y por ello establecer correspondencias entre tipos de estructuras:

@@ El formalismo Q-SYSTEMS era un método muy sencillo de expresar reglas. Más abajo mostramos algunas de ellas para satisfacer la curiosidad del lector.

(1) V(I*) NP(J*) == VP((I*),NP(J*)).

(Las letras con asterisco representan variables).

La regla (1) proyecta la secuencia verbo I*, sintagma nominal J* en un sintagma verbal que contiene el verbo I* y el sintagma nominal J*. El tipo de estructura sobre la que operan estas reglas es un chart. La parte izquierda de la regla se contrapone/match con los caminos del chart, momento en el que se instancian las variables. Cuando la contraposición es positiva se añade un nuevo arco al chart con la estructura señalada a la derecha de la regla. Aunque el formalismo es sencillo, permite una capacidad expresiva suficiente para formular las reglas de todo el sistema, incluido el diccionario.

Posteriormente fueron desarrollados otros metalenguajes. Los más recientes son SISIF, REZO y LEXTRA, que renunciaban a algunas de las generalizaciones de Q-SYSTEMS para ser más eficientes en aplicaciones concretas. SISIF, Morin 1978, es un autómata de estados finitos idóneo para la pre- y post-edición automática de los textos. REZO es una adaptación de las redes de transición de Wood (Wood 1970) para el análisis sintáctico y semántico, Stewart 1978. LEXTRA (Gérin-Lajoie 1981) es un sistema transformacional diseñado para realizar la transferencia léxica.

Las reglas de transferencia en TAUM actúan sobre EDs que representan estructuras semánticas de las oraciones de LO y LD. Era bien sabido que para capturar todo el significado de un texto hacía falta considerar diversos tipos de dependencias fuera de los confines de la oración: anáforas, focalización, etc. Se realizaron algunos experimentos (Hofmann 1971) en procesamiento textual (del discurso) y la conclusión fue que todavía se desconocian demasiados factores como para hacer viable este tipo de análisis a gran escala para sistemas de PLN. Se decidió entonces que si se restringía el tipo de texto, la representación por medio de unidades oracionales podía resolver el problema más o menos satisfactoriamente.

El tipo de estructuras semánticas que se diseñaron estaban sujetas a dos condiciones: (a) que fueran tratables computacionalmente dados los conocimietos sobre el lenguaje; (b) que fueran representaciones no ambiguas; y (c) que permitieran la formulación de las reglas de transferencia. Las estructuras diseñadas eran las mismas para el par LO, LD, excepción hecha de los elementos léxicos. La lengua intermedia (IL) es análoga al lenguaje pivot de Vauquois (1975). Esta IL es dependiente de la lengua, mantiene las unidades léxicas de LO y LD y no realiza descomposición léxica, aunque se dan especificaciones parciales del significado por medio de rasgos semánticos.

Las ILs son representaciones sintácticas con anotaciones semánticas: (a) estructura de argumentos de un predicado; (b) rasgos semánticos proyectados desde el léxico e interpretadas por un cálculo semántico.

El módulo de análisis

El módulo de análisis se subdivide en tres componentes: pre-procesador, analizador morfológico y analizador sintáctico-semántico.

La cadena de entrada se convierte primero en un chart. Cada palabra se toma como una etiqueta de arco que enlaza nodos sucesivos del chart. El texto de entrada se segmenta en unidades consecutivas que responden a las oraciones. El preprocesamiento ordena secuencialmente la unidades a analizar mediante el autómata de estados finitos SISIF.

El sistema TAUM convierte mediante este proceso el chart de entrada en un chart cuyos arcos están etiquetados con unidades léxicas además de con sus correspondientes propiedades morfosintácticas, sintácticas y semánticas. Para el análisis morfológico hacen falta un conjunto de reglas morfológicas y un diccionario de la lengua origen. Cuatro tipos de reglas morfológicas:

(1) Morfología flexiva, alternancias sintácticas: número, género, tiempo, etc.

(2) Morfología derivativa, reglas para la formación de nuevas palabras por medio de afijos derivativos (p.e. special/specially).

(3) Morfología composicional, palabras formadas por la concatenación de otras palabras (p.e. engine-driven).

(4) Reglas de categorización, identifican palabras no contenidas en el diccionario (p.e. números).

Un ejemplo de regla morfológica es el chart de entrada en (3) y las reglas en formato Q-SYSTEMS de (4):

(3)

(4)

La variable A* se equipara/match con cualquier etiqueta, en este caso con una palabra; $$ es un operador que relaciona cualquier etiqueta con su correspondiente lista de caracteres gráficos (letras); la variable U* se equipara con cualquier lista de nodos filiales y se estructura en forma de árbol (en este caso, en listas de caracteres).

Las reglas transforman (3) en (5), cada nuevo camino está anotado con la regla que se aplica en cada caso:

(5)

Las reglas Q-SYSTEMS están organizadas como una secuencia de subgramáticas; al final de cada subgramática, todos los caminos recorridos por las reglas (todos los que se han equiparado con la parte izquierda de alguna regla) son recortados, de manera que (5) se convierte en (6):

En la siguiente subgramática, la regla R5 y el recorte consecuente producirán (7), que ya puede ir a mirarse al diccionario:

El diccionario de la LO será consultado desde el chart; por ejemplo las reglas de (8a)

Las reglas del diccionario LO añaden más información al chart que símplemente la de categoría sintáctica. La información léxica puede ser clasificada en dos ejes: sintáctico vs. semántico e inherente vs. contextual:

(a) información sintáctica inherente: categorías sintácticas (N,V,A,ADV,ART,etc.), subclases sintácticas (contable o medible, para sustantivos; preadjetival, para adverbios, etc.).

(b) información sintáctica contextual: marcos de subcategorización estricta: el verbo check tiene como argumentos: <NP,{NP,S},(PP),({out,up})>

(c) información semántica inherente: se establecen subclases semánticas, p.e. "aceite" denota un fluído, "comprobar" una acción, etc.

(d) información semántica contextual: son restricciones selectivas, p.e. el sintagma nominal que es segundo argumento de "instalar" debe denotar un objeto físico.

Toda esta información es codificada por el chart y se pone a disposición del procesamiento subsiguiente.

En el modelo TAUM el análisis sintáctico y semántico están completamente integrados, la semántica queda subordinada a la sintaxis. El análisis es dirigido sintácticamente, la semántica sirve como filtro de análisis anómalos. Mientras se realiza el análisis sintáctico tiene lugar un cálculo semántico que da cuenta de este filtrado. El método es conocido, los rasgos semánticos indicados en el léxico se proyectan sobre las estructuras que se van reconociendo y son comprobadas de una manera composicional segun se construye la representación.

Por ejemplo, si un sintagma nominal tiene como núcleo un nombre que pertenece a la clase partitivo (porción, pedazo) o a la de unidad de medida (litro, gramo) y tiene un complemento gobernado por "de" entonces recibe los rasgos semánticos de su complemento, así el sintagma un pedazo de queso tiene los rasgos de queso. Algunos rasgos semánticos de los adjetivos atributivos son proyectados al nodo superior de sintagma nominal. Así en manuales técnicos, los nombres que denotan "defectos" (fuga,daño) exhiben alguna marca de restricción, la misma que exhiben nombres modificados por adjetivos de "defecto" (propersor defectuoso). En sintagmas nominales coordinados el nodo superior recibe la intersección de los rasgos de los coordinantes.

Los dos analizadores ensayados por TAUM son: (a) Q-SYSTEMS, con un algoritmo ascendente de búsqueda exhaustiva (all paths) y en paralelo (no exluye la simulación de otros algoritmos); y (b) REZO, con un algoritmo descendente en serie (orientado a la expectativa en lugar de a los datos). La perspicuidad relativa de cada uno va por gustos (las gramáticas a gran escala tienden a ser bastante opacas). Su eficiencia comparada depende en gran medida de los datos lingüísticos: los parsers dirigidos por la expectativa son más eficaces donde las expectativas iniciales son claras, por ejemplo donde hay claras preferencias estadísticas, o donde hay una ambiguedad léxica (entre nombres y verbos en el inglés técnico). Los dirigidos por los datos son más eficaces cuando las expectativas son débiles (coordinadas, recursividad a la izquierda, etc.).

El componente de transferencia

El componente de transferencia proyecta una estructura intermedia del LO en otra intermedia del LD. La labor más obvia es la traducción de entradas léxicas, aunque también se deben transferir algunas estructuras.

El lenguaje intermedio se fundamenta en que las lenguas LO y LD pueden tener estructuras profundas por medio de un conjunto de reglas sencillas. A pesar de este enfoque, la transferencia léxica no puede cambiar unidades léxicas simplemente sin afectar a la estructura sintáctica. Esto es porque las correspondencias léxicas pueden pueden variar en sus marcos de subcategorización. Por consiguiente, la transferencia léxica tiene que incorporar unos mecanismos potentes. Para que la transferencia produzca estructuras de LD aceptables, se deben tener en cuenta varios tipos de transformaciones léxicas Labelle 1981, como se ilustra a continuación:

(i) Preposiciones sincategoremáticas:

check x against y <-> comparer x á y (comparar x con y)

x depends on y <-> x dépend de y (x depende de y)

(ii) Argumentos permutados:

supply x with y <-> fournir y à x

bleed <tank> of <air> <-> purger <l'air> du <réservoir> (purgar <el aire> de <el depósito>)

(iii) Incorporación de argumentos o adverbios

reinstall x <-> remettre x en place (reponga x en su sitio)

cantilever x <-> monter x en porte-á-faux (subir x a la viga voladiza)

bond x electrostatically <-> métalliser x (metalizar x)

swim accross x <-> traverser x à la nage

(iv) Incorporación del nucleo argumental

deenergise x <-> couper l'alimentation de x (cortar la alimentacón de x)

service x <-> faire l'entretien de x (hacer el mantenimiento de x)