Ad verba per numeros

Artículos, Desarrollo de corpora comparables
Monday, April 2, 2007, 11:30 PM
Hace un tiempo quedé pendiente de revisar el siguiente artículo:

Rapp, R. 1999. "Automatic identification of word translations from unrelated English and German corpora", en Proc. of ACL-99, pp. 519-526

Y como lo prometido es deuda me pongo a ello.

Rapp (1999) describe una t√©cnica para la obtenci√≥n de l√©xicos biling√ľes a partir de textos no paralelos; esto es, colecciones de documentos que no tienen por qu√© ser traducciones literales. La t√©cnica que propone se basa en la premisa de que existe una correlaci√≥n entre las co-ocurrencias de palabras en distintos lenguajes y alcanza una precisi√≥n pr√≥xima al 72% en un experimento con los idiomas ingl√©s y alem√°n.

La t√©cnica de Rapp parte de un l√©xico biling√ľe inicial que ser√° expandido al aplicarla. Hoy en d√≠a no resulta excesivamente dif√≠cil disponer de tal l√©xico, incluso ajustado a la tem√°tica de las colecciones con las que se vaya a trabajar; para ello puede emplearse la informaci√≥n disponible en la Wikipedia, utilizando los t√≠tulos de art√≠culos en distintos idiomas. De hecho, esto es precisamente lo que ha hecho Jaime para obtener dos l√©xicos biling√ľes: ingl√©s-espa√Īol e ingl√©s-√°rabe.

Una vez se dispone de dicho l√©xico biling√ľe se debe calcular una "matriz de co-ocurrencia" para el idioma destino. Las filas de dicha matriz corresponden a palabras extra√≠das del corpus destino y las columnas son palabras del mismo idioma tomadas del "l√©xico semilla". Por ejemplo, si dese√°semos expandir el l√©xico ingl√©s-√°rabe las filas ser√≠an palabras en √°rabe tomadas de la colecci√≥n de documentos y las columnas ser√≠an las palabras en √°rabe existentes en el l√©xico ingl√©s-√°rabe original.

Las celdas de esta matriz contendr√°n un valor num√©rico que indicar√° cu√°ntas veces aparecen ambas palabras de manera "simult√°nea"; simultaneidad que debe darse en una ventana de tama√Īo fijo, seg√ļn Rapp 3 es el tama√Īo √≥ptimo. Un ejemplo aclarar√° este concepto; supongamos que queremos determinar la co-ocurrencia del t√©rmino Rapp en este texto con ventanas de tama√Īo 3; as√≠, tendr√≠amos:

Rapp R 1999
Rapp 1999 describe
técnica de Rapp
de Rapp parte
Rapp parte de
Rapp no entra
fijo seg√ļn Rapp
seg√ļn Rapp 3
Rapp 3 es
...

Suponiendo que el orden de las palabras es irrelevante podrían calcularse, entre otros, los siguientes valores de co-ocurrencia:

(Rapp, R) = 1
(Rapp, 1999) = 2
(Rapp, describe) = 1
(Rapp, técnica) = 1
(Rapp, de) = 3
(Rapp, parte) = 2
(Rapp, no) = 1
(Rapp, entra) = 1
...

Es preciso se√Īalar que Rapp describe otro m√©todo ligeramente m√°s complejo para el c√°lculo de las co-ocurrencias que tiene en cuenta el orden de las palabras; la premisa de la que parte para introducir la ordenaci√≥n de las palabras es que "it has been empirically observed that word order of content words is often similar between languages". No obstante, los idiomas con los que prueba su t√©cnica son ingl√©s y alem√°n que est√°n muy relacionados mientras que nosotros vamos a trabajar con parejas de idiomas muy diferentes (p.ej. √°rabe e ingl√©s) y el l√©xico semilla puede contener palabras vac√≠as. Por esa raz√≥n, sugiero optar por la "versi√≥n" m√°s sencilla de co-ocurrencia.

Recapitulando, para el idioma destino se construye una matriz de co-ocurrencias donde las filas contienen palabras del corpus, las columnas palabras del léxico y cada celda contiene un "contador de co-ocurrencias" para las palabras de la fila y la columna correspondientes calculado tal y como se ha descrito.

Por otro lado, Rapp se√Īala que la correlaci√≥n entre palabras puede "apreciarse" mejor si en lugar de utilizar simplemente los contadores de co-ocurrencia se emplea un estad√≠stico que muestre la asociaci√≥n entre las palabras. De entre los distintos estad√≠sticos disponibles Rapp opta por emplear una versi√≥n "r√°pida" del log-likelihood ratio (v√©ase, ecuaci√≥n en p√°gina 522). Dicha versi√≥n requiere el c√°lculo de los siguientes valores: el contador de co-ocurrencias de las palabras A y B, el n√ļmero de apariciones de la palabra A en el corpus, el n√ļmero de apariciones de la palabra B en el corpus y el n√ļmero total de palabras en el corpus.

(Continuar√°...)

Es f√°cil apreciar que el art√≠culo de Rapp tiene bastante enjundia as√≠ que vamos a dejarlo aqu√≠ puesto que creo que ya hay material suficiente para comenzar a implementar; el objetivo ser√≠a desarrollar c√≥digo que trabajando sobre un l√©xico biling√ľe y la colecci√≥n de documentos escritos en el idioma destino sea capaz de generar la matriz de co-ocurrencias en base a los conceptos aqu√≠ vistos. A tener en cuenta: (1) puesto que el robot nunca deja de descargar documentos puede ser interesante que el nuevo software disponga de un directorio en el que se encontrar√° una copia de la colecci√≥n disponible, (2) el software a desarrollar deber√≠a ser capaz de almacenar y recuperar de disco matrices de co-ocurrencias.



Back Next