sábado, 6 de abril de 2013

Gate developer


GATE Developer es un entorno de desarrollo que proporciona un completo conjunto de herramientas gráficas interactivas para la creación, medición y mantenimiento de componentes de software para el procesamiento del lenguaje humano. GATE es desarrollador de software de código abierto, disponible bajo la Licencia GNU General Public Licence 3.0.

Para la descargar la aplicación para el sistema operativo Windows es:
Aqui (367MB)

Es una herramienta utilizada actualmente para la minería de texto, uno de los retos mas grandes que he visto es poderlo ser compatible a español, he realizado este foro para crear una comunidad con quien compartir la información que he aprendido y poder solucionar problemas en equipo.

Tree Tagger

El TreeTagger es un lenguaje independiente part-of-speech, que es compatible con varios idiomas diferentes a través de los archivos de parámetros, incluyendo Inglés, francés, alemán, español, italiano y búlgaro. Originalmente disponible en GATE a través de un contenedor dedicado, es ahora totalmente compatible a través del Marco Tagger. Debe instalar el TreeTagger por separado de:
Aqui (117MB)

Lo que me pareció difícil es la configuración para que Gate developer me reconociera el treetagger de español, pero al final se pudo :)

El Gate posee un Treetagger en sus plugins pero no pude colocarlo a trabajar, la explicación que dan en la guía de usuario considero que falta mucha mas explicación por lo que espero con esto pueda darles a los interesados mas detalle.

Bueno comencemos.
Al descargar el Gate developer deben de cerciorarse de haberlo instalado en la unidad:  C:/Gate/ es recomendable para problemas de accesos a los archivos.
Cuando descarguen el Treetagger tambien deben de cerciorarse de haberlo instalado en la unidad: C:/Treetagger/

Despues necesitaremos el diccionario en español del treetagger (spanish.par) lo podremos descargar AQUI este archivo se debe de llamar spanish.par, por si llega con otro nombre u otra extención la cambiamos para que funcione. Despues guardamos el spanish.par en la carpeta siguiente: C:\TreeTagger\lib\

Como ultimo debemos instalar un interprete para perl o scripts de python aconsejo instalar el Activeperl

Ya después de todo esto, vamos a la carpeta Gate e iniciamos el Gate.exe, recuerden, esta es una aplicación java, por lo que es necesario tener instalada la versión 6 o superior.

Al iniciarlo nos debe de aparecer algo como esto.



Les enseñare específicamente como configurar gate con treetagger a español, si desean aprender mucho mas sobre éste, recomiendo leer la guia de usuario suministrada por ellos y debatir alguna inquietud en este foro, estaré lo mas pendiente posible.

Bueno, dentro de gate, daremos click contrario a Applications y seleccionaremos Restore Applications from file...
seleccionaremos este archivo:
C:\gate\plugins\Tagger_Framework\resources\TreeTagger\TreeTagger-ES-No_Tokenization.gapp
nos deberá aparecer algo como esto:

Les explicare para que sirve cada elemento que nos aparecio
Tokeniser: El tokeniser divide el texto en tokens muy simples, tales como números, puntuacion y las palabras de diferentes tipos. Por ejemplo, podemos distinguir entre las palabras en mayúsculas y minúsculas, y entre ciertos tipos de puntuación  El objetivo es limitar el trabajo del tokeniser para maximizar la eficiencia, y permitir una mayor flexibilidad mediante la colocación de la carga sobre las reglas de la gramática, que son más adaptables.

TreeTagger-ES-No_Tokenization: Este es donde buscaremos el diccionario con las palabras en español, aqui tambien estan los tags que identifican cada token por ejemplo:



ACRNM siglas (ISO, CEI)
ADJ (Adjetivos Mayores, el alcalde)
ADV adverbios (muy, Demasiado, Como)
ALFP Plural letra del alfabeto (As / Aes, bes)
ALFS Singular letra del alfabeto (A, b)
Artículos ARTE (un, las, la, UNAS)

......
y muchos mas

Reset: El recurso Restablecer documento, permite que el documento se restablezca a su estado original, mediante la eliminación de todos los conjuntos de anotación y su contenido, además contiene el análisis para el formato del documento (Original Markups).

Splitter: El divisor de frase es una cascada de transductores de estados finitos que segmenta el texto en frases. Este módulo es necesario para el etiquetador. El divisor utiliza un diccionario geográfico lista de abreviaturas para ayudar a distinguir oraciones marcando paradas completas de otros tipos.

NOTA: Este splitter, su configuración esta en ingles por lo en nuestro caso no es necesario lo podemos quitar.

continuaremos con agregar los documentos.
Daremos click contrario donde dice Lenguage Resources y agregaremos un corpus, este nos sirve para que nos pueda correr varios documentos a la vez. le daremos un nombre al corpus, por lo recular yo le coloco como nombre "corpus" y le doy ok.
Despues volveremos a darle click contrario a Lenguage Resources y agregaremos un documento en donde dice Source Url le damos en el icono y buscamos el documento que queremos agregar.
por ultimo le damos un nombre y ok.

ahora debemos agregar el documento al corpus, debemos de darle doble click al corpus, despues le damos en el icono "+" que se encuentre en la parte superior y agregamos el documento y listo.

NOTA: si queremos agregar mas documentos, recuerda siempre agregarlo al corpus para que pueda ser analizado.

Nos debe quedar algo como esto:

Continuemos, daremos doble click a la aplicación TreeTagger-ES-No_Tokenization (recuerden la aplicacion es la que esta debajo del que dice Application para que no se confundan con el que esta en processing).