OPENTRAD. Ainhoa Bengoetxea Iriondo Universidad Carlos III de Madrid Inteligencia en Redes de Comunicaciones

OPENTRAD Ainhoa Bengoetxea Iriondo Universidad Carlos III de Madrid Inteligencia en Redes de Comunicaciones [email protected] Resumen En este

0 downloads 106 Views 181KB Size

Recommend Stories


UNIVERSIDAD CARLOS III DE MADRID
UNIVERSIDAD CARLOS III DE MADRID Instituto de Derechos Humanos: Bartolomé de las Casas TESINA “¿Son los derechos sociales derechos colectivos?: los d

UNIVERSIDAD CARLOS III DE MADRID
UNIVERSIDAD CARLOS III DE MADRID Departamento de Economía Tema 1: Matrices y sistemas de ecuaciones lineales. Empezaremos por recordar conceptos ya

Universidad Carlos III Madrid
Universidad Carlos III Madrid Proyecto fin de grado Grado en Ingeniería Informática Happy Grow: Videojuego desarrollado con Unity3D para apoyo en la

Story Transcript

OPENTRAD Ainhoa Bengoetxea Iriondo Universidad Carlos III de Madrid Inteligencia en Redes de Comunicaciones [email protected]

Resumen En este trabajo se describe el traductor automático Opentrad, primer traductor entre el castellano y todas las lenguas oficiales del estado español (catalán, gallego y euskera) de código abierto y gratuito. Este proyecto ha sido realizado por cuatro universidades (Universitat d’Alacant, Euskal Herriko Unibertsitatea, Universidade de Vigo y Universitat Politécnica de Catalunya) y las empresas Eleka Ingenieritza Liguistikoa S. L., Elhuyar Fundazioa e Imaxin Software.

Keywords Traducción Automática (TA), RBMT, EBMT, SMT, compilación, corpus/corpora, token, tokenización, chunk (una parte de una oración), POS tagger, formas superficiales, HMM, DTD, FST (Finite State Transducen/transductor de estados finitos), EDBL, XML,...

1. Introducción Este trabajo es un breve estudio de una aplicación concreta de la traducción automática, uno de los campos más interesantes de la Ingeniería Lingüística. Se trata de la descripción del funcionamiento del traductor automático Opentrad, el primero capaz de hacer traducciones entre el castellano y el resto de lenguas oficiales del estado español. El Estado Español es plurilingüe por lo que coexisten distintas lenguas. Esto implica el hecho de que a los cuidadanos/as de distintas comunidades se nos reconocen ciertos derechos lingüísticos. A nivel gubernamental, estos derechos tienen que ser respetados y se debe promover la utilización de las lenguas minoritarias. Para ello, un traductor desde el castellano a las demás lenguas oficiales es un herramienta muy interesante. Por otro lado, las personas demandan cada vez más información en distintas lenguas lo cual hace que este traductor sea útil, tanto para la ciudadanía en general como para el mundo empresarial para producir información en distintas lenguas. Cabe destacar la gran apuesta de los desarrolladores hacia la filosofía del código abierto, haciendo posible que cualquiera pueda usarlo y adaptarlo a sus propias necesidades. Opentrad es un proyecto de gran escala en el cual formaron parte cuatro universidades estatales (Universitat d’Alacant, Euskal Herriko Unibertsitatea, Universidade de Vigo, Universitat Politécnica de Catalunya) y pequeñas empresas (Eleka Ingenieritza Liguistikoa S. L. , Elhuyar Fundazioa e Imaxin Software). Opentrad está formado por dos motores independientes, uno para las lenguas románicas y otro para las no románicas (euskara). En el caso de las lenguas románicas la traducción es bidireccional, (ga↔es, ca↔es) y en el del euskera unidireccional (esÆ eu).

Antes de analizar a fondo el traductor en sí, se hará un acercamiento al mundo de la traducción automática, un pequeño estado del arte y una breve descripción de las características del euskara ya que en el estudio se ha hecho especial hincapié en la esta parte. Este documento está organizado de la siguiente manera. Para empezar, se hará una introducción a la traducción automática en el apartado 2. A continuación, en el apartado 3, se dará una breve descripción del euskera. Luego, se hablará de trabajos previos relacionados con la traducción automática en estos idiomas. Después, se estudiará en profundidad el traductor Opentrad en el apartado 5. Finalmente, se incluirá algunas conclusiones y notas sobre el futuro del proyecto.

2. Traducción automática Existen diferentes estrategias para llevar a cabo una traducción automática. Estas estrategias se agrupan en dos ramas principales: las que se basan en reglas lingüísticas (RBMT, Rule Based Machine Translation) y las que se basan en corpus (Corpus Based Machine Translation). Dentro de estas últimas se diferencian dos acercamientos muy distintos que son: los basados en estadísticos (Statistical Machine Translation, SMT) y los basados en ejemplos (Example Based Machine Translation, EBMT). Entre las estrategias que utilizan corpus, las dominantes son aquellas que se basan en las estadísticas. A continuación, una breve descripción de todas ellas.

2.1 RBMT Dentro de los traductores por reglas se distinguen dos tipos, los directos y los indirectos. Se denominan métodos indirectos aquellos que utilizan una representación intermedia. Los directos, por tanto, son los que no utilizan representaciones intermedias y la traducción la hacen en un solo paso: se consultan las palabras en el idioma origen y se crean las correspondencias en la lengua destino aplicando solamente algunas reglas de flexión, concordancia y reordenación. Es decir, se trata de una traducción palabra por palabra aplicando algunas reglas. Puesto que se trata de una técnica demasiado sencilla, no se utiliza porque se considera inviable incluso en pares de lenguas emparentadas. Entre los métodos indirectos se distinguen dos tipos, el de interlingua y el de transferencia. El método interlingua utiliza una única representación intermedia, común a las lenguas origen y destino, permitiendo así que la traducción se haga en dos fases: análisis y generación. La información semántica suele estar almacenada en una base de conocimientos accesible durante el proceso de la traducción. El método de transferencia, por otro lado, plantea la traducción mediante dos representaciones intermedias, una por cada lengua (origen y destino). En este caso, la traducción se realiza en tres fases: análisis, transferencia y generación. El nivel de la

transferencia varía en función del sistema utilizado. La transferencia puede hacerse a nivel léxico, sintáctico o semántico. La transferencia léxica realiza la búsqueda del término equivalente en la lengua destino en base a la información que contiene el diccionario. La transferencia sintáctica trasforma el árbol del análisis de la oración en un árbol de generación equivalente para la oración en lengua destino. Por último, la transferencia semántica trasforma representaciones profundas tales como patrones de casos, redes semánticas o estructuras lógicas.

2.2 SMT Mediante estas estrategias, las traducciones se generan en base a teorías estadísticas y modelos de Teoría de la Información de Shannon, cuyos parámetros vienen del análisis de corpora de textos bilingües. Las primeras ideas de la traducción automática estadística fueron introducidas por Warren Weaver en 1949 incluyendo ideas de aplicación de la Teoría de Información de Shannon. Es por mucho el paradigma de traducción automática más utilizado. Los beneficios más destacables de la traducción automática estadística frente a la RBMT son: -Un uso mejor de los recursos. -El hecho de que normalmente los sistemas SMT no estén unidos a ningún par de lenguas específico. -Los RBMT requieren que las reglas lingüísticas se desarrollen manualmente, lo cual puede ser costoso y a veces imposibilita la aplicación en otras lenguas. -Los SMT pueden sacar provecho de la abundante cantidad de información en lenguaje natural en formatos legibles para los ordenadores. -Se obtienen traducciones más naturales.

2.3 EBMT Las técnicas EBMT hacen uso de un corpus o base de datos de traducciones anteriores. La entrada se compara con la base de datos para quedarnos con los ejemplos adecuados. Posteriormente, se unen por analogía para elegir la traducción correcta. Esta estrategia se relaciona a menudo con las Memorias de Traducción (Translation Memory, TM). Aunque la idea de ambas se basa en reutilizar traducciones anteriores, las TMs son una herramienta interactiva para el traductor humano.* Uno de los mayores problemas a los que se enfrenta la traducción automática es la desambiguación semántica.

3. Descripción euskera En este apartado se hará un pequeño acercamiento al euskara, describiendo brevemente sus características más importantes.

3.1 Introducción euskera El euskara es una lengua Pre-Indo-Europea minoritaria que se habla en la CAV, Navarra y País Vasco-Francés (Lapurdi, Baja Navarra y Zuberoa). Aunque hay muchas teorías al respecto, su origen se desconoce y se parece muy poco a las lenguas europeas que la rodean. Aunque el euskera se centra en un territorio muy limitado muestra variedad de registros llamados “Euskalkiak” tales como Gipuzkera, Nafar-Lapurtera y Bizkaiera. Por ello, desde el 1968 la Academia Vasca de la Lengua (Euskaltzaindia) está llevando a cabo el proceso de estandarización hacia lo que se denomina el Euskara Batua (“Euskara Unido”) definiendo sus normas a todos los niveles. Este

*En la actualidad, en el caso del euskera, más de 10 instituciones oficiales y compañías privadas utilizan memorias de traducción.

es el registro que debe utilizarse en los medios de comunicación, administración, enseñanza y demás ámbitos.

3.2 Características principales -La estructura de las frases no es fija, es decir, hay muchas posibilidades de ordenar una misma frase. -Es una lengua aglutinativa: el determinante, el número y el caso de declinación se añaden a la última palabra de la frase y siempre en ese orden. Esta información, será válida para todos los elementos de la frase. Puesto que es aglutinativa, no hay una división clara entre morfología y sintaxis. Como consecuencia, los morfemas pueden ser utilizados como la unidad básica de análisis en vez de las palabras. -Tiene una sola tabla de declinación que contiene 15 casos que se aplican independientemente del tipo de palabra precedente. -Las funciones preposicionales se marcan con sufijos de caso dentro de las palabras. -Se trata de un idioma altamente flexivo en cuanto a morfología por lo que es muy rico en derivación y composición. -Hay concordancia en género y número tanto entre el verbo y el sujeto como entre el objeto directo e indirecto. -Los verbos están formados frecuentemente por más de una palabra (por el uso de perífrasis verbales y por la inflexión) y debido a que la palabras compuestas son muy comunes, la longitud de las oraciones en euskera es más larga de lo que cabría esperar. -La dificultad de traducir del castellano o inglés al euskera reside mayoritariamente en el hecho de que la estructura de las oraciones y el orden son muy diferentes.

4. Trabajos relacionados La traducción automática es un campo que se está desarrollando mucho. Puesto que vivimos en la sociedad de la información y la información esta en muchos idiomas distintos, este hecho convierte un traductor automático en una herramienta muy útil en general. En este trabajo se ha considerado importante mirar hacia atrás y ver cual era la el punto de partida del proyecto para poder evaluar sus aportaciones. Para ello, se hará una pequeña introducción a trabajos anteriores. El motor de traducción automática para lenguas no emparentadas de Opentrad, es el primer prototipo de traducción entre euskera y castellano. Sin embargo, hay abundante trabajo anterior a la realización de este motor. El grupo IXA1 cuenta con una larga trayectoria dedicándose a la Ingeniería Lingüística estudiando las posibilidades del euskera. A continuación, se comentarán algunos de sus trabajos más destacables. “Adibideetan Oinarritutako Itzulpen Automatikoa (AOIA): azterketa bibliografikoa eta euskararekin lan egiteko proposamenak” [1]. Se trata de un estudio de la traducción automática basada en ejemplos para el euskera. Trata, entre otros, los problemas y ventajas de los EBMT, la hibridación de EBMT y RBMT y un ejemplo de implementación de EBMTs llamado PanEBMT. Incluye propuestas de trabajo de este tipo de traducción automática tales como la trasferencia basada en ejemplos, EBMT para el tratamiento de casos especiales y la creación de un sistema completo EBMT. 1

http://ixa.si.ehu.es/Ixa

“Example-Based Machine Translation of the Basque Language” [2].

A continuación, se muestran algunos trabajos anteriores sobre traductores de lenguas románicas.

Hace una pequeña introducción al euskera aportando datos y características principales. Aborda muchos temas: el sistema MaTrEx (Machine Translation Using Examples), estrategias de chunking, estrategias de alineación (a nivel de palabra y de chunk), cómo hacer correspondencias entre chunks en euskera e inglés y finalmente un experimento para ver los resultados que da un EBMT en euskera. Los resultados demostraron que el empleo de los EBMT chunks contribuyen positivamente a la calidad de la traducción global, posibilitando así que el sistema MaTrEx aborde sistemas sin preproceso (baseline) SMT basados en palabras y chunks. También se concluyó que la precisión de las alineaciones a nivel de chunk era muy alta, por lo menos en el caso de los chunks muy frecuentes.

“An open-source shallow-transfer machine translation toolbox: consequences of its release and availability” [5].

“Reusability of wide coverage linguistic resources in the construction of a multilingual Machine Translation System”[3]. Este artículo presenta el primer prototipo de traducción automática multilingüe basada en la trasferencia para los pares inglés-euskera y español-euskera con la posibilidad de reutilización y adaptación de herramientas y recursos. El sistema traduce sintagmas nominales y sintagmas preposicionales e interactúa directamente con el usuario para resolver ambigüedades. Este sistema no es capaz de traducir oraciones completas todavía. Incluye descripción del euskera, arquitectura del sistema, información sobre bases de datos lingüísticos (diccionario de lenguas origen, EDBL –base de datos léxica de euskera-, léxicos bilingües-español/euskera, inglés/euskera), reglas gramaticales, información detallada sobre las fases de la traducción (análisis del inglés o español, transferencia al euskera y el modúlo de generación en euskera). El proceso de traducción es el mismo que se utiliza en Matxin pero más limitado, pudiendo considerar este último como la continuación y mejora de este primer prototipo. Los resultados fueron muy positivos, el sistema tiene una precisión del 83% traduciendo SNs (Sintagma Nominal) y SPs (Sintagma Preposicional) del inglés al euskera. La arquitectura modular del prototipo facilita la inclusión de nuevos módulos para mejorar el funcionamiento. Con este prototipo pudo comprobarse la capacidad de reutilización y la calidad de los recursos y herramientas previamente desarrolladas. En este punto, se consideraba como objetivo la ampliación del sistema para traducir oraciones completas. Para ello, se subrayaba la necesidad del análisis de terminos multipalabra y resolución de ambigüedades, entre otros. “Uso de información morfológica en el alineamiento españoleuskera” [4]. Se presenta un estudio para el alineamiento de un corpus españoleuskera haciendo uso un alineador token-a-token teniendo en cuenta las opciones de preprocesamiento morfológico para un alineamiento óptimo. Se analiza en profundidad el preprocesamiento del euskera (tokenización, lematización, segmentación) y el español (tokenización, lematización, segmentación). Se presenta también, un marco experimental para evaluar la mejor técnica de preproceso mediante el software de libre distribución GIZA++ , el más utilizado para alinear corpus paralelos, y un análisis de los resultados. 2

www.internostrum.com/

Este artículo es anterior al lanzamiento de Opentrad, incluye información sobre el motor de lengua románicas, la arquitectura del motor, los formatos de los datos lingüísticos, compiladores y los pares de lenguas que pueden resultar beneficiados por esta herramienta. “Open-source Portuguese-Spanish Machine Translation” [6]. Este artículo describe el estado del traductor automático de trasferencia poco profunda OpenTrad para el par de lenguas español-portugués. Describe la arquitectura de Apertium, los formatos de los datos lingüísticos, compiladores e información concreta sobre estos pares de lenguas como una pequeña evaluación final. “El sistema de traducción automática castellano ↔ catalán InterNOSTRUM” [7]. Este artículo trata del sistema InterNOSTRUM2, uno de los que ha servido de base para el motor de lenguas románicas (Apertium) en el proyecto Opentrad. Este artículo se escribió cuando InterNOSTRUM estaba aún e fase de desarrollo por ello incluye el prototipo del momento y posibles versiones futuras, datos sobre la plataforma que emplea, la estrategia de traducción y los módulos que lo forman. Este sistema se desarrolló por el Grupo Transducens, hace traducción bidireccional entre el castellano y el catalán y es de uso gratuito vía Internet. Utiliza trasductores de estados finitos. “FreeLing: An Open-Source Suite of Language Analyzers” [8]. Este trabajo introduce Freeling, un analizador de lenguaje de código abierto desarrollado por la el GPLN (Grupo de Procesamiento del Lenguaje Natural) de la Universitat Politècnica de Catalunya. La versión del momento incluía analizador morfológico y POS tagger (etiquetador morfológico) para el castellano, inglés y catalán. El estudio analiza las catacterísticas principales como la arquitectura, las clases de datos lingüísticos y clases de procesamiento. En una versión posterior se han añadido también el gallego y el italiano y las funcionalidades de reconocimiento de fechas, números y moneda y segmentación del texto en palabras, entre otros.

5. Análisis Opentrad Opentrad es el primer traductor entre el castellano y todas las lenguas oficiales del estado español (catalán, gallego y euskera). Este proyecto ha sido realizado por cuatro universidades, y tres empresas pequeñas durante un período de año y medio. Las universidades participantes son la Universitat d’Alacant (Grupo Transducens, Departament de Llenguatges i Sistemes Informàtics), Euskal Herriko Unibertsitatea (IXA Taldea, Informatika Fakultatea), Universidade de Vigo (Seminario de Lingüística Informatica) y Universitat Politécnica de Catalunya (TALP) y las empresas Eleka Ingenieritza Liguistikoa S. L. , Elhuyar Fundazioa e Imaxin Software. Se presentó en Barcelona el 30 de Mayo de 2006 y está disponible en Internet desde abril3. Está subvencionado por el Ministerio de Industria, Comercio y

Turismo y cabe destacar que es la primera vez que el Gobierno Español subvenciona un proyecto de este tipo. El traductor es bidireccional excepto en el caso del euskara que solo traduce desde el castellano al euskara. Traduce texto, documentos (en los formatos RTF, HTML y texto plano) e incluso páginas durante la navegación sin añadir retardo alguno debido a su rapidez. Es de código abierto por lo que el código está disponible en Internet para todo aquel que quiera adaptarlo a sus propias necesidades, incluso para pares de lenguas distintas. En el área de la traducción, la distancia entre las lenguas es un factor muy importante. El catalán y el gallego por ser lenguas románicas, la distancia de cada una de ellas con el castellano es pequeña y se dice que son lenguas emparentadas (para con el castellano). El euskera, sin embargo, es una lengua no románica y por tanto no emparentada. Esto influye directamente en la forma de hacer la traducción en el sentido de que para las lenguas emparentadas, no es necesario hacer un análisis muy profundo para que la traducción sea buena (la transferencia sintáctica parcial da muy buenos resultados) pero sí en el caso del euskera en la cual hay que hacer trasferencia sintáctica completa. Esto implica que el grado de dificultad en este caso es notablemente mayor. Por ello, Opentrad trabaja con dos motores distintos, uno para lenguas emparentadas4 (Apertium) y otro para lenguas no emparentadas5 (Matxin). Hay que resaltar que el punto de partida era muy distinto para los dos casos ya que existían traductores al gallego y catalán (interNOSTRUM, Traductor Universia) pero en el caso del euskera no existían tales traductores pero sí alguno capaz de traducir un SN o SP. Por consiguiente, los objetivos tampoco eran iguales, para el gallego y catalán se trataba de obtener un traductor comercial y para el euskera realizar el primer prototipo de traducción automática, inexistente hasta la fecha. Una de las novedades tecnológicas del proyecto es, por tanto, la creación de sistemas de traducción para el par castellano-euskera. Por otro lado estan la apertura y estandarización de código y datos lingüísticos para las lenguas oficiales del estado español para conseguir interoperabilidad, modularidad e integrabilidad en los procesos de creación de contenidos en estos idiomas. Otra novedad es que el traductor es de uso gratuito vía web. Los resultados han sido satisfactorios para ambos casos. El factor de error es del 95% para el caso del gallego y el catalán, lo que significa que de cada 100 palabras traducidas, 95 eran correctas y solo 5 incorrectas. Se considera que para poder usar el traductor de forma comercial*, el factor de error tiene que ser mayor o igual que 90%. En el caso del euskera, el porcentaje es menor, 75%, pero teniendo en cuenta el objetivo, el resultado es bueno. Por otro lado, el motor de lenguas emparentadas es muy rápido gracias al uso de transductores de estados finitos (FST). De hecho, es más rápido que la navegación web, permitiendo así poder traducir páginas web sin añadir retardo alguno. OpenTrad tuvo un gran eco mediático y prueba de ello son los videos disponibles en el blog del proyecto5 de las distintas televisiones (ETB, TV3,

TVE) y radios (Euskadi Irratia). Los desarrolladores de la parte del euskera de la aplicación se han puesto en contacto con el Gobierno Vasco para poder mejorar el traductor hasta llegar al umbral del 90%. Además, en un futuro, planean añadir la traducción euskera-castellano e inglés-euskera.

5.1 Apertium Apertium es el motor de traducción automática para la traducción de las lenguas relacionadas ([9]). Para desarrollar este motor, se basaron en otros desarrollados por el grupo Transducens de la Universidad de Alacant como interNOSTRUM (castellanocatalán) y Traductor Universia (castellano-portugués). Sin embargo, cabe destacar que la envergadura de este proyecto ha sido mayor ya que los resultados pueden ser utilizados para aplicarlos a otros pares de lenguas. Los programas de traducción automática anteriores a Opentrad para los pares español-catalán y español-gallego son comerciales o utilizan tecnologías de propiedad. Esto dificulta enormemente su adaptación a usos nuevos y la utilización de tecnologías diferentes pare lenguas diferentes prácticamente imposibilita la tarea de integrarlos en un mismo traductor multilingüe. Las características del empleo del código abierto para el Opentrad y el hecho de que sea gratuito intentan solucionar o al menos aliviar estos problemas. Seguramente, habrá también un cambio de modelo respecto al anterior, desde el modelo empresarial basado en licencias hacia un modelo basado en el servicio que favorecerá el intercambio de datos lingüísticos mediante el empleo de formatos basados en XML. La arquitectura de traductor (MT) emplea transductors de estados finitos para el procesado léxico, modelos Markovianos ocultos (HMM, Hidden, Marcovian Models) para el POS tagging (etiquetado morfológico) y chunking (segmentación) basado en estados finitos para la trasferencia estructural. Está basada en interNOSTRUM.

5.1.1 La arquitectura del TA El motor es un sistema trasformador clásico que consta de 8 módulos, suficientes para obtener una traducción de calidad entre lenguas emparentadas. Estos módulos se comunican entre sí mediante streams. Orientativamente podríamos decir que una traducción palabra a palabra consigue una traducción buena en el 75% de los casos y añadiendo desambiguación homógrafa, gestión de unidades multipalabra contiguas, reordenación local y reglas de concordancia el porcentaje aumenta hasta más del 90%. Esta es la aproximación utilizada. A continuación, se detallarán los módulos de uno en uno.

5.1.1.1 El de-formateador (de-formatter) Separa el texto de la información de formato encapsulando la información de formato. Esta será considerada como espacio en blanco por el resto de los módulos.

3

*El Periódico de Cataluña es un buen ejemplo del uso que se le puede dar a un traductor. Este periódico se edita tanto en castellano como en catalán. Para ello no utilizan el doble de personal sino que lo escriben en castellano, se traduce con un traductor automático, se revisan los fallos y se publica.

www.opentrad.org

4

http://apertium.sourceforge.net

5

http://matxin.sourceforge.net/

6

www.blogari.net/opentrad (en euskera)

7

http://traductor.universia.net/informacion/traductor.jsp

longitud fija que necesitan un procesamiento especial debido a divergencias entre los dos idiomas (reordenación de palabras, cambios léxicos como cambios en preposiciones, cambios en género y número) para garantizar la concordancia en el idioma destino. Este módulo se compila con un fichero de reglas de transferencia.

5.1.1.6 El generador morfológico Devuelve una forma superficial en el idioma destino por cada forma léxica del idioma destino. El módulo lee un fichero binario compilado con un diccionario morfológico del idioma destino. Figura 1: Módulos del motor de lenguas emparentadas

5.1.1.2 Analizador morfológico Primero, separa el texto en formas superficiales (surface forms, unidades léxicas tal y como aparecen en el texto). Esta separación (también llamada tokenización) no es inmediata por la existencia de contracciones y unidades léxicas multipalabra. Después, para cada una de estas unidades, se añade información léxica como el lema, categoría léxica e información de inflexión morfológica. Para las contracciones, el sistema lee una sola forma superficial y devuelve la correspondiente secuencia de formas léxicas. Los módulos leen en un fichero binario compilado por un diccionario de la lengua origen.

5.1.1.3 Etiquetador morfológico (POS tagger) Algunas formas superficiales son homógrafas y el analizador morfológico devuelve varias formas léxicas de una sola forma superficial. Este módulo se encarga de elegir una, analizando las formas léxicas vecinas. En las traducciones de lenguas emparentadas, la ambigüedad de las formas léxicas es una de las mayores fuentes de errores. Este módulo lee un fichero que contiene un HMM que ha sido previamente entrenado con textos representativos del idioma origen. Hay dos tipos de entrenamiento: un texto largo sin etiquetar procesado por el analizador morfológico o un texto corto etiquetado donde la elección entre las homógrafas se hace manualmente. Este último suele dar un resultado ligeramente mejor. El comportamiento de este módulo y el programa de entrenamiento están controlados por un fichero de definición de etiquetado.

5.1.1.4 Módulo de transferencia léxica Se llama desde el módulo de transferencia estructural. Lee cada una de las formas léxicas del idioma origen y proporciona la correspondiente forma léxica en el idioma destino. El módulo lee un fichero binario compilado con un diccionario bilingüe. Este diccionario contiene una única correspondencia por cada entrada en el idioma origen, es decir, no se hace desambiguación semántica. Para algunas palabras, existen entradas multipalabra para intentar elegir la correcta en textos fijos frecuentes. Este acercamiento, ha sido utilizado satisfactoriamente en el Traductor Universia e InterNOSTRUM.

5.1.1.7 El post-generador Hace operaciones ortográficas tales como contracciones y apostrofaciones. El módulo lee un fichero binario compilado con un fichero de reglas expresado como un diccionario. Este módulo normalmente esta dormido (solamente copia la entrada a la salida) hasta que un símbolo de alarma especial en alguna forma superficial del idioma destino le despierta para hacer alguna trasformación. Después, vuelve a dormir.

5.1.1.8 El re-formateador (the re-formatter) Recupera la información de formato encapsulada eliminando las secuencias de encapsulación utilizadas.

5.1.2 Compiladores Los compiladores son los responsables de convertir los datos lingüísticos a las formas utilizadas por los módulos del motor. Actualmente, están todavía en fase de desarrollo. En este proyecto se emplean dos: uno para los cuatro módulos de procesamiento léxico y otro para la transferencia estructural.

5.1.2.1 Procesamiento léxico Los cuatro módulos que forman el procesamiento léxico se implementan como un único programa que leen ficheros binarios que contienen una representación eficiente de una clase de transductores de estados finitos que se denomina “augmented letter trasducen”. Estos ficheros binarios son una versión mejorada de los utilizados en interNOSTRUM y Traductor Universia y se generan mediante diccionarios XML empleando un compilador nuevo. Este nuevo compilador es mucho más rápido y necesita menos recursos de memoria gracias a que el nuevo transductor crea estrategias y a la minimización de trasducens de estados finitos parciales durante su elaboración. De esta manera, los datos lingüísticos se desarrollan más fácilmente ya que el cambio de regla o ítem léxico se actualiza en el sistema prácticamente al instante.

5.1.2.2 Transferencia estructural El formato de las reglas de transferencia estructural está en fase de borrador. Cuando esté terminado, se construirá el compilador para generar un módulo que mediante el uso de tecnología de estados finitos detectará los patrones de las formas léxicas del idioma origen que necesiten ser procesadas y contendrá código para generar las formas léxicas correspondientes rápidamente.

5.1.1.5 Módulo de trasferencia estructural

5.2 Matxin

Utiliza ajuste de patrones (pattern-matching) de estados finitos para detectar patrones de formas léxicas (partes o chunks) de

Se trata de un prototipo de traducción basado en reglas y transferencias ([10]). Esta parte del proyecto Opentrad se basó en trabajos anteriores realizados por el grupo IXA de la Facultad de

Informática de la Universidad del País Vasco, que se adaptaron e integraron después a este proyecto. Como se ha dicho anteriormente, el Opentrad tiene dos motores: Apertium, un motor poco profundo de transferencia automática y Matxin, un motor profundo de transferencia automática. Para hacer Matxin, se pudieron utilizar partes de Apertium. Por ello, uno de los objetivos era saber qué módulos del motor eran reutilizables para hacer el motor de transferencia más profundo correspondiente a las lenguas no emparentadas. Además, para su desarrollo se reutilizaron también recursos y herramientas previamente desarrolladas tales como EDBL, diccionarios bilingües electrónicos, analizadores morfológicos (MORFEUS) y gramática de sintaxis.

5.2.1 Arquitectura de la TA Este motor es un sistema de trasferencia clásico que consta de 3 componentes principales: analizador de castellano, trasferencia del castellano al euskera y generador de salida en euskera. Aunque se basa en trabajos anteriores, tiene una nueva meta: la interoperabilidad con otros recursos lingüísticos y la convergencia con otros motores dentro del proyecto Opentrad. Esta formado por 5 módulos principales: de-formateador, analizador del español, modulo de trasferencia, generador y reformateador.

5.2.1.1 De-formateador Este módulo separa el texto a traducir de la información de formato. Sin embargo, a diferencia del motor de las lenguas románicas, esta información no se puede encapsular en el texto porque puede haber grandes cambios de posición del texto. Por ello, se crean dos ficheros uno con la información del formato y otra con el texto fuente a traducir. En el primero se incluyen links al texto fuente. Después de la fase de análisis, se añaden los atributos ord (orden de palabras en el chunk y de los chunks en las oraciones) y alloc (posición en el texto analizado) para unir el fichero de formato al texto traducido.

5.2.1.2 Analizador de castellano El analizador de español utilizado es un analizador disponible de forma gratuita llamado Freeling. Es un analizador sintáctico poco profundo que ha sido ampliado con un analizador de dependencias. Este módulo une las dependencias entre los tokens en el chunk y entre los chunks en la oración. La salida es un documento basado en XML donde los elementos principales son los chunks en las oraciones y las palabras en los chunks. El resultado incluye información sobre tres elementos principales: nodos o palabras, chunks o partes y oraciones.

5.2.1.3 El módulo de transferencia Este módulo basa el proceso de trasferencia en tres elementos: palabras o nodos, chunks o trozos y oraciones. Para empezar, se efectúa la trasferencia léxica con la ayuda de un diccionario bilingüe compilado con un transducer de estados finitos utilizando el mismo formato y herramienta diseñada para las lenguas románicas. Posteriormente, se aplica la trasferencia estructural a nivel de oración. Puede haber trasferencia de información entre chunks y alguno puede desaparecer. Finalmente, se lleva a cabo la transferencia a nivel de chunk. Este proceso es bastante sencillo en el caso de las cadenas nominales pero puede complicarse para las verbales. Una gramática ha sido desarrollada para ello ([11]). El transducer de estados finitos se obtiene de la herramienta de estados finitos del proyecto Opentrad.

5.2.1.4 Generador La salida del módulo de transferencia se pasa al modulo generador. La generación se hace a dos niveles, primero generación sintáctica y luego la morfológica. En la primera, se decide el orden de las palabras en los chunks. La generación morfológica decide después cuales son las formas superficiales basándose en los lemas y la información morfológica. El generador morfológico se basa en el transducer de estados finitos desarrollado previamente por el grupo IXA ([12]) pero en un formato estándar compatible con la herramienta correspondiente a las lenguas románicas.

5.2.1.5 Re-formateador Une el texto traducido y el fichero que contiene información de formato y obtiene un texto formateado traducido. Puede haber incosistencias en esta parte.

5.2.2 Formatos para una buena interacción Se han diseñado especificaciones DTD (Document Type Definitions) parecidas en los módulos de análisis, transferencia y generador para garantizar la comunicación intermodular mediante el uso de etiquetas XML. El objetivo principal es garantizar la interoperabilidad intermodular para que distintos desarrolladores puedan modificar o construir módulos. Se ha especificado también el formato de la información de formato contenida en los documentos a traducir.

5.2.2.1 El formato después del análisis La salida del modulo de análisis tiene formato XML y contiene información a nivel de oración, chunk y palabra. Las dependencias entre distintos niveles se reflejan en la estructura de forma jerárquica. Los atributos alloc y ref se utilizan para recuperar el formato del texto de entrada, mi es para la información morfológica y si para la sintáctica. El atributo ord se emplea para ordenar los elementos en la oración.

5.2.2.2 El formato después de la transferencia y la generación El DTD de la salida del análisis se emplea también para la salida de la transferencia y la generación pero aparece el atributo opcional ref para recordar la posición de la palabra en la oración inicial. Después de la transferencia, aunque hay pequeños cambios en la estructura, la mayoría de los cambios están producidos por los valores de los atributos que corresponden al Figura 2: Ejemplo de traducción de una oración.

lema y la información morfológica o sintáctica en euskera en vez de la información correspondiente al castellano. El atributo ord desaparece porque el orden se volverá a calcular. El atributo form desaparece también porque aún no se ha hecho la generación morfológica. Después de la generación, se vuelve a añadir la información correspondiente al orden y forma gramatical (wordform) utilizando la misma estructura XML.

5.2.3 Formatos de los datos lingüísticos Una buena documentación de código y ficheros auxiliares son cruciales para el éxito de un software de código abierto. En el caso de un sistema de TA, implica definir un formato sistemático para cada fuente utilizada de datos lingüísticos. Los formatos empleados por el proceso lingüístico han sido trasformados a XML para obtener interoperabilidad, es decir, análisis sintáctico más sencillo, transformación y mantenimiento. Los formatos XML para cada tipo de datos lingüísticos están perfectamente definidos en DTDs de XML. El éxito de una traducción automática (TA) de código abierto depende del grado de aceptación de estos documentos por parte de otros grupos pero al mismo tiempo también del éxito del motor en sí. En el caso del motor de lenguas emparentadas, los formatos utilizados son una versión modificada de los formatos que emplean interNOSTRUM y Traductor Universia. Estos últimos, utilizaban un formato basado en texto mientras que Opentrad hace uso de un formato basado en XML. Hay cuatro tipos de datos lingüísticos y se organizan en dos niveles: -Nivel léxico o morfológico. Se utilizan diccionarios morfológicos y bilingües. -Nivel estructural o sintáctico. Se están desarrollando dos gramáticas, una para transferencia estructural y otra para generación sintáctica.

5.2.3.1 Diccionarios (procesamiento léxico)

Por último, los diccionarios de post-generación se utilizan para establecer correspondencias entre cadenas de entrada y salida pudiendo necesitar que el post-generador haga transformaciones ortográficas a las formas superficiales en el idioma destino. En la TA del motor de lenguas no emparentadas se incluyen un diccionario bilingüe español-euskera para la transformación léxica y un diccionario morfológico en euskera para la generación morfológica. Ambos en los formatos adecuados.

5.2.3.2 Trasferencia estructural El formato propuesto para este tipo de transformación se lleva a cabo en dos pasos que son el nivel de oración y el de chunk. El proceso a nivel de oración es bastante sencillo. Transfiere atributos de unos chunks a otros pudiendo desaparecer alguno. Sin embargo, la trasferencia a nivel de chunk es más compleja cuando se trabaja con cadenas verbales. Se ha escrito una gramática al respecto con muy buenos resultados ([11]). Las reglas gramaticales son declarativas y se utilizan expresiones regulares que se compilan en FSTs. El formato, por el momento, es un documento de texto con expresiones regulares pero otros participantes pueden modificar las reglas o incluso hacer una nueva gramática. Se utilizan tres tipos de reglas: -Reglas de identificación y marcado. Une el chunk con su tipo añadiéndole el patrón correspondiente al idioma destino. Este patrón contiene una serie de atributos generales que se incluyen para ser sustituidos en pasos siguientes. -Reglas de reemplazo de atributos. Mediante estas reglas se reemplazan los atributos con sus formas correspondientes en euskera. -Reglas de limpieza. Estas reglas borran la información innecesaria obteniendo así el resultado esperado. Esta gramática se combina con el proceso de transferencia estructural. En un futuro próximo, se espera que todos estos pasos se controlen con una única gramática.

El formato de los diccionarios morfológicos monolingües y bilingües se consideran una versión basada en XML de los formatos previamente empleados en interNOSTRUM y Traductor Universia. Los DTDs actuales y ejemplos de estos diccionarios pueden encontrarse en http://www.torsimany.ua.es/eamt2005.

5.2.4 Evaluación de la traducción caÆ eu

Los diccionarios morfológicos establecen correspondencias entre formas superficiales (surface forms) y formas léxicas (lexical forms) y contienen lo siguiente: (a) una definición del alfabeto, (b) una parte en la que se definen los símbolos gramáticos utilizados para especificar las formas léxicas, tales como nombre, verbo, plural, presente, etc. (c) una parte en la que se definen los paradigmas (grupos reutilizables de correspondencias entre partes de formas superficiales y partes de formas léxicas) y (d) una o más partes de diccionario etiquetado que contienen listas de correspondencias entre formas superficiales y formas léxicas para formas léxicas enteras (incluyen unidades multipalabra contiguas).

–Ellos ganan esta batalla, pero perderán la guerra.

Los diccionarios bilingües tiene una estructura similar y establecen correspondencias entre formas léxicas del idioma origen y formas léxicas del idioma destino, pero rara vez hacen uso de paradigmas.

Un ciudadano vasco aparece ahogado con los pies atados en aguas del Puerto de Barcelona.

Se evaluarán distintas características como frases simples, artículo periodístico y gestión del análisis sintáctico ambiguo. Ejemplos de traducción correcta de oraciones simples:

Beraiek bataila hau irabazten dute, baina gerra galduko dute. –El traductor que estamos desarrollando. Garatzen ari garen itzultzailea. –Además ahora come manzanas y peras. Gainera orain sagarrak eta udareak jaten ditu. Ejemplo de traducción de un artículo periodístico: SUCESO

Dos personas han aparecido muertas en aguas del Puerto de Barcelona. Uno de ellos, al parecer un ciudadano vasco, tenía los tobillos atados entre sí con una corbata. GERTAERA Euskal hiritar bat azaltzen uretan lotutako oinekin.

da

Bi pertsonak hilak azaldu dira uretan. Beraien bat, euskal hiritar bat, artean lotutako orkatilak hartzen nituen gorbata batekin. Las palabras que aparecen entre los símbolos no han sido reconocidos por el traductor y no los traduce. Además, las traducción de “los pies atados en aguas...” a “uretan lotutako oinekin” es incorrecta y la frase no se entiende. Lo mismo ocurre con “tenía”Æ “-k hartzen nituen”. Por el momento, Matxin traduce las palabras con varios significados al más frecuente, siendo esto una fuente considerable de errores. Como ejemplo: Hemos montado un tomate de narices. Sudurren tomate bat igo dugu. (?) Esta traducción es errónea y la frase en euskera carece totalmente de sentido. En el caso de análisis síntactico ambiguo, el analizador elige una interpretación sin entender la oración y obviammente, esto provoca errores. Por ejemplo, la preposición de puede traducirse a: (a) –ko, (b) –tik, (c) –ren. Ejemplos: Trae el pan de la tarde. Arratsaldeko ogia dakar. √ Trae el pan de la panadería. Okintzako ogia dakar. ? Trae el pan de su madre. Bere amaren ogia dakar. √ Yo voy de casa al campo. Ni etxetik noa mendiari. √Soy de ciudad. Hiritik naiz. ? Ejemplo del tratamiento de unidades léxicas multipalabra. sin embargo hala ere (NO enbargorik gabe)

6. Conclusiones y trabajo futuro El problema principal de la traducción castellano-euskera es que el sistema no tiene en cuenta la ambigüedad semántica. Aunque la utilización de unidades multipalabra en el léxico suaviza este problema, los responsables, basándose en su propia experiencia, están considerando la posibilidad de aplicar desambiguación a nivel de palabra. Como se ha dicho previamente, el motor de transferencia poco profundo es una versión mejorada en código abierto de otros anteriores que son interNOSTRUM y Traductor Universia. A

fecha de hoy Opentrad es utilizado diariamente por miles de personas en la red. Puesto que se trata de motores de traducción automática en código abierto, se pueden adaptar para otros pares de lenguas. En el caso del motor de lenguas emparentadas, podrá adaptarse a otras lenguas románicas (francés, portugués, italiano, occitano, etc. ) e incluso a lenguas emparentadas no románicas (checoeslavo, sueco-danés, etc.) En el caso del motor para lenguas no emparentadas, también podrá permitir que otros idiomas con pocos recursos de traducción automática puedan contar con esta herramienta. Los resultados del proyecto han sido muy satisfactorios para ambos motores, ya que han complido sus objetivos. En el caso del euskera, se plantea la continuación del desarrollo para poder alcanzar al umbral de 90%. Para ello, algunas de las mejoras que se proponen son las siguientes: extractor de terminología automático (ERAUZTERM,...), ayuda avanzada para elección de significados (WordNet, técnicas WSD, ...), utilización de datos sobre subcategorización de verbos, post-edición, etc. Por otro lado, también se sugiere reducir el campo de traducción a un área concreta para mejorar los resultados ya que una solución general es mucho más difícil de conseguir. Adicionalmente, se planea incluir la traducción euskeraÆ español e inglesÆ euskera.

7. Referencias [1] Arantza Diaz de Ilarraza, Aingeru Mayor, Kepa Sarasola. Euskal Herriko Unibertsitatea: “Adibideetan Oinarritutako Itzulpen Automatikoa (AOIA): azterketa bibliografikoa eta euskarekin lan egiteko proposamenak”. [2] Nicolas Stroppa, Ceclan Groves, Andy Way. National Centre for Language Technology. Dublin City University, Ireland. Kepa Sarasola. Euskal Herriko Unibertsitatea. Informatika Fakultatea, Donostia. Nacional Centre for Language Technology at Dublin City University, Spring 2006. “Example-Based Machine Translation of the Basque Language”. [3] Arantxa Diaz de Ilarraza, Aingeru Mayor, Kepa Sarasola. IXA Taldea, Euskal Herriko Unibertsitatea, Informatika Fakultatea, Donostia. “Reusability of wide coverage linguistic resources in the construction of a multilingual Machine Translation System”. [4] E. Agirre, A. Díaz de Ilarraza, G. Labaka, K. Sarasola. Euskal Herriko Unibertsitatea.“Uso de información morfológica en el alineamiento español-euskera. [5] Carme Armetano-Oller, Antonio M. Corbí- Bellot, Mikel L. Forcada, Mireia Ginestí-Rosell, Boyan Bonev, Sergio OrtizRojas, Juan Antonio Pérez-Ortiz, Gema Ramírez-Sánchez, Felipe Sánchez-Martínez. Grupo Transducens, Departament d Llenguatges i Sistemas Informàtics, Universitat d’Alacant. “An open-source shallow-transfer machine translation toolbox: consequences of its release and availability”. [6] Carme Armetano-Oller, Rafael C. Carrasco, Antonio M. Corbí-Bellot, Mikel L. Forcada, Mireia Ginestí-Rosell, Sergio Ortiz-Rojas, Juan Antonio Pérez-Ortiz, Gema Ramírez-Sánchez, Felipe Sánchez-Martínez, Miriam A. Scalco. Grupo Transducens, Departament d Llenguatges i Sistemas Informàtics, Universitat d’Alacant.“Open-source Portuguese-Spanish Machine Translation”

[7] R. Canals-Marote, A. Esteve-Guillén, A. Garrido-Alenda, M.I. Guardiola-Savall, A. Iturraspe-Bellver, S. MontserratBuendia, S. Ortiz-Rojas, H. Pastor-Pina, P.M. Pérez-Antón, M.L. Forcada. Grupo Transducens, Departament d Llenguatges i Sistemas Informàtics, Universitat d’Alacant. “El sistema de traducción automática castellano ↔ catalán InterNOSTRUM”. [8] Xavier Carreras, Isaac Chao, Lluís Padró, Muntsa Padr. Centro de Investigación TALP, Universitat Politécnica de Catalunya, Barcelona.“FreeLing: An Open-Source Suite of Language Analyzers” [9] Antonio M. Corbí-Bellot, Mikel L. Forcada, Sergio OrtizRojas, Juan Antonio Pérez-Ortiz, Gema Ramírez-Sánchez, Felipe Sánchez-Martínez.Grupo Transducens, Departament d Llenguatges i Sistemas Informàtics, Universitat d’Alacant. Iñaki Alegria, Aingeru Mayor, Kepa Sarasola. IXA Taldea, Informatika Fakultatea, Euskal Herriko Unibertsitatea. EAMT 2005 Conference Proceedings. “An Open-Source Shallow-Transfer Machine Translation Engine for the Romance Languages of Spain”

[10] Iñaki Alegria, Arantza Diaz de Ilarraza, Gorka Labaka, Mikel Lersundi, Aingeru Mayor, Kepa Sarasola. IXA Taldea, Informatika Fakultatea, Euskal Herriko Unibertsitatea. Mikel L. Forcada, Sergio Ortiz-Rojas. Transducens group, Department de Llenguatges i Sistemas Informàtics, Universitat d’Alacant. Lluis Padró, TALP group, Department de Llenguatges i Sistemas Informàtics, Universitat Politècnica de Catalunya. “An Open Architecture for Transfer-based Machina Translation between Spanish and Basque”. MT Summit. A workshop at Machine Translation Summit X, Phuket, Thailand 2005 [11] I. Alegria, A. Diaz de Ilarraza, G. Labaka, M. Lersundi, A. Mayor, K. Sarasola. “A FST grammar for verb chain transfer in a Spanish-Basque MT System”. Proc of the Finite State Methods in Natural Language Processing Workshop. Helsinki. [12] I. Alegria X. Artola, K. Sarasola, M. Urkia. “Automatic morphological analysis fo Basque. Literary and Linguistic Computing”.

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.