PUERTA (programa)

Arquitectura general para ingeniería de texto (GATE)

Ventana principal del desarrollador GATE
Tipo de Minería de datos, extracción de información
Desarrolladores Universidad de Sheffield
Escrito en Java
Interfaz API gráficas GATE
Sistema operativo Windows Vista, Windows XP, Mac OS X, Linux, Mac OS X, Solaris, etc.
Idiomas de la interfaz inglés
Primera edición 1995
plataforma de hardware máquina virtual de Java
ultima versión
Licencia LGPL
Sitio web gate.ac.uk
 Archivos multimedia en Wikimedia Commons

General Architecture for Text Engineering (GATE, programa)  es un sistema de procesamiento de lenguaje natural de código abierto que utiliza conjuntos de componentes en el lenguaje Java [1] . El sistema fue desarrollado originalmente en la Universidad de Sheffield y ha sido desarrollado desde 1995.

Con la ayuda de GATE, se implementan tareas donde se requiere identificar el contenido semántico del texto y codificarlo de forma estructurada agregando anotaciones a los segmentos de texto. GATE se usa junto con NLTK , R y RapidMiner [2] . El sistema se utiliza para extracción de información , anotación semántica manual y automática, análisis de correferencias , trabajo con ontologías (por ejemplo, WordNet), aprendizaje automático (Weka, RASP, MAXENT, SVM Light), análisis de flujo de publicaciones de blog (por ejemplo, Twitter) [3] .

La familia de herramientas GATE incluye: GATE Developer, GATE Mímir, GATE Cloud (para trabajar con proyectos lingüísticos a gran escala), GATE Teamware (optimización de servidor para anotación de texto colaborativa), GATE Embedded (biblioteca de objetos) [4] .

GATE está respaldado por una gran comunidad de desarrolladores, usuarios, educadores, estudiantes y científicos. Utilizado en proyectos comerciales y de investigación por grandes corporaciones, laboratorios de investigación y universidades, pequeñas y medianas empresas comerciales de todo el mundo. GATE se aplica en una amplia variedad de campos científicos relacionados con la Lingüística Computacional , el Procesamiento del Lenguaje Natural , el Modelado de Procesos del Lenguaje, la Biología Computacional y la Medicina [5] . Proyectos que utilizan GATE: ForgetIT (Reino Unido), The National Archives (Reino Unido), EMILLE (Reino Unido), myGRID Archivado el 29 de septiembre de 2013 en Wayback Machine (Reino Unido), AKT (Reino Unido), KIT Semantic Platform , Ontotext (Bulgaria), MeManage  (enlace no disponible) (Alemania), Med Dictate (Canadá), IE Denso (Japón) [6] .

Arquitectura y operaciones básicas

La arquitectura GATE consta de componentes interrelacionados: "piezas" de software con interfaces bien definidas que se pueden implementar en una variedad de contextos. GATE implementa soluciones listas para usar para tokenización, etiquetado, división de texto en declaraciones (divisor), extracción de entidades nombradas , aprendizaje automático . Los componentes se dividen en tres categorías según su función:

Se admiten los siguientes formatos de documentos: texto sin formato, HTML, SGML, XML, RTF, correo electrónico, PDF (algunos documentos), Microsoft Office (algunos formatos), OpenOffice (algunos formatos), UIMA CAS, CoNLL/IOB. Trabajar con formatos de documentos en GATE tiene una serie de características específicas [7] . GATE ha incorporado varias herramientas para trabajar con Unicode. Idiomas admitidos: inglés (predeterminado), español, chino, árabe, búlgaro, francés, alemán, hindi, italiano, cebuano, rumano, ruso.

Cuando se inicia el programa, su ventana principal contiene cuatro elementos de menú principales: Aplicaciones, Recursos de idioma, Recursos de procesamiento, Almacenes de datos.

Aplicaciones

El controlador, junto con sus programas de procesamiento de texto asociados (Recursos de procesamiento). Los procesos de procesamiento de texto definidos y almacenados se pueden volver a aplicar a un solo documento o cuerpo de texto. Esto garantiza un procesamiento de texto fiable y ahorra tiempo.

Recursos lingüísticos (LR)

Contiene tres tipos de datos: documentos, corpus y gráficos de anotaciones.

Recursos de Procesamiento (PR)

Programas para el procesamiento de textos. En GATE, los recursos se utilizan para crear y administrar anotaciones automáticamente. Con PR, puede agregar o cambiar el marcado del documento. Se crea un nuevo PR de la misma manera que LR. Al crear un PR, se establecen parámetros, que son de dos tipos: parámetros de inicialización y parámetros de inicio. El primero debe configurarse cuando se crea el recurso, el último justo antes de que se inicie desde el controlador. Los controladores controlan la operación del PR. Son responsables del orden en que se aplica el PR y la interacción del PR con el LR. Los principales tipos de controladores:

Los principios para trabajar con Pipeline y Corpus Pipeline son similares: se crea un nuevo controlador (haga clic con el botón derecho en Aplicaciones > Nuevo > nombre del controlador), los PR se seleccionan de la lista de la izquierda y se instalan en el orden especificado por el usuario. Especifique el documento de destino en el caso de Pipeline, el corpus de destino en el caso de Corpus Pipeline, se definen los parámetros para PR. Después de iniciar Ejecutar, el controlador comenzará a lanzar PR de forma secuencial en los documentos seleccionados en el orden especificado por el usuario.

Las configuraciones del controlador (PR + ajustes) se pueden guardar en Aplicaciones (Guardar estado de la aplicación), preferiblemente usando la extensión .gapp.

paquete de recursos CRIOLLO

El conjunto de recursos integrados con GATE se conoce como CREOLE  - Reusable Objects for Language Engineering. Los recursos se almacenan en repositorios CREOLE, que contienen archivos XML, códigos de archivo Java y bibliotecas necesarias para los recursos. Los recursos utilizados se agrupan en complementos [8] que se almacenan en una dirección específica (URL o archivo:/URL). Los complementos pueden ser básicos (cargados durante la instalación de GATE) y personalizados, pueden ubicarse en una unidad local o en un servidor remoto. Cuando el archivo se carga en GATE, parece un archivo de configuración creole.xml. Los complementos CREOLE se administran a través de la interfaz mediante el comando Archivo > Administrar complementos CREOLE > Agregar nuevo repositorio criollo. GATE se representa como un conjunto de configuraciones (funciones) donde el usuario conecta componentes CRIOLLOS: el usuario especifica una lista de direcciones, GATE extrae los recursos correspondientes (PR) de ellos. Cuando se selecciona un complemento, su lista de configuraciones aparece en el campo de la derecha.

almacenes de datos

Almacén de datos. Necesario para almacenar documentos/casos y procesos para su uso posterior. De todos los tipos de almacenamiento, el Serial DataStore se usa a menudo. lata de almacenamiento

  • crear (Almacén de datos > Crear almacén de datos > Almacén de datos en serie > especificar una carpeta vacía sin caracteres cirílicos ni espacios en la ruta),
  • abrir previamente creado (Open datastore),
  • guarde documentos y casos en él (Abrir almacén de datos> haga doble clic en un documento/caso),
  • guardar los cambios realizados en el documento o corpus (Guardar en su almacén de datos).

Se puede ejecutar una secuencia de procesos de procesamiento de textos desde Aplicaciones desde el DataStore. Debe abrir DataStore, abrir el caso y luego, en Aplicaciones, seleccionar este caso. Al ejecutar la aplicación en un cuerpo desde DataStore, cada documento se cargará, procesará, guardará y cerrará. Es decir, solo se procesa un documento a la vez. Esto no sobrecarga la memoria, pero el proceso es más lento que si todos los documentos se procesaran al mismo tiempo.

Marcado de documentos en GATE Developer

Marcar documentos de acuerdo con reglas uniformes le permite buscar y extraer datos de un documento, crear ontologías .

En GATE, después de abrir el editor de documentos, aparecen las pestañas Conjuntos de anotaciones y Lista de anotaciones (o Anotaciones según la versión de Gate), donde en la lista de la derecha puede verificar los tipos de anotaciones que desea mostrar o crear anotaciones. . Se proporciona la función Cambiar color. Cuando se selecciona un fragmento de texto al que se va a asignar una anotación, aparece la ventana Editor de anotaciones, que contiene los siguientes campos y controles:

  1. Tipo de anotación (si ya se han agregado algunos tipos, puede elegir entre los existentes)
  2. Nombre del atributo (los campos en blanco para el siguiente atributo aparecen automáticamente)
  3. Valor de atributo
  4. Botón Eliminar anotación

Las anotaciones se agrupan en AnnotationSets. Esta es una característica útil que le permite almacenar varias opciones de marcado para un documento, por ejemplo, experto y automático. El marcado experto generalmente se almacena en un AnnotationSet llamado Key. El marcado automático generalmente se escribe en un AnnotationSet vacío, que está presente en todos los documentos de forma predeterminada. No hay una clave AnnotationSet en los documentos, debe crearla, ingresar la palabra Clave en el campo debajo de los tipos de anotación y hacer clic en Nuevo.

Sistema ANNIE

GATE tiene un sistema de inteligencia artificial llamado ANNIE (un sistema de extracción de información casi nuevo), que incluye un conjunto de recursos que proporcionan tokenización (ANNIE English Tokenizer), etiquetado POS (ANNIE POS-Tagger), división en oraciones (ANNIE Sentence Splitter) , extracción de entidades nombradas (ANNIE Gazetteer y ANNIE NE Transducer) y análisis de correferencia (ANNIE OrthoMatcher). Desarrolladores: Hamish Cunningham, Valentin Tablan, Diana Maynard, Kalina Bontcheva, Marin Dimitrov y otros. Los desarrolladores de ANNIE utilizan algoritmos de autómatas finitos y expresiones regulares JAPE [9] .

Los componentes de ANNIE están integrados en la aplicación, por lo que para la inicialización, simplemente haga clic en el icono verde correspondiente en la barra de herramientas de GATE y seleccione con los valores predeterminados. Después de que todos los recursos aparezcan en la lista de Recursos de procesamiento, haga doble clic para abrir la aplicación ANNIE, que se encuentra en la lista de Aplicaciones. La interfaz de la aplicación ANNIE es la misma que la del resto de aplicaciones. En el lado derecho hay una lista ordenada de recursos que se llamarán en el documento exactamente en la secuencia especificada en la lista. La aplicación ANNIE pertenece a la clase Corpus Pipeline, es decir, debe ejecutarse sobre un corpus de textos. Como resultado de la operación del sistema ANNIE, se agregan varias anotaciones al AnnotationSet predeterminado, que incluyen Token (tokens), Oración (oraciones), Búsqueda (entradas de diccionario), Persona, Ubicación, Organización. Si el corpus y los documentos estaban en el DataStore antes de ejecutar ANNIE, ANNIE recuperará los documentos uno por uno, los procesará y los volverá a colocar.

Lista de componentes:

  1. La lista de PR tiene un recurso de PR de restablecimiento de documento que elimina el marcado del documento antes de procesarlo. El recurso tiene un parámetro setsToKeep, que enumera los nombres de AnnotationSets que no necesitan borrarse. Si hay un marcado manual en el documento, debe asegurarse de que el AnnotationSet que contiene este marcado se incluye en esta lista; de lo contrario, se eliminará. De forma predeterminada, el conjunto de claves se especifica allí.
  2. Tokenizador . Divide el texto en tokens, a saber, números, puntuación, palabras, símbolos, espacios. A cada token se le asigna su tipo, respectivamente, Palabra (atributo orth con parámetros: upperInitial, allCaps, lowerCase, mixedCaps), Number, Symbol, Punctuation, SpaceToken.
  3. Diccionario geográfico Define entidades nombradas de acuerdo con la lista, es decir, un archivo de texto (texto plano) con una lista de entidades nombradas línea por línea. Cada lista contiene un conjunto diferente de entidades nombradas: ciudades, organizaciones, días de la semana, etc. para solo uno de los idiomas dados. El archivo Lists.def proporciona acceso a una lista de entidades nombradas. Puede establecer el tipo de anotación para una lista individual de entidades nombradas. Cada lista debe estar en el mismo directorio que el archivo de índice Lists.def.
  4. Separador de oraciones . Divide el texto en oraciones. El separador usa la lista de abreviaturas del Diccionario geográfico para distinguir el final de una oración de otros tipos de puntuación. A cada enunciado se le asigna la anotación 'Sentence', dentro de la cual se encuentra la anotación 'Split' con el valor 'internal' y 'external' para distinguir oraciones interrogativas, exclamativas y afirmativas.
  5. Separador de oraciones RegEx . Una forma alternativa de dividir texto en oraciones usando expresiones regulares JAPE.
  6. Etiquetador de parte del discurso . Anota cada palabra y carácter. Hay una lista de etiquetas usadas. Utiliza vocabulario y muchas reglas basadas en el corpus del Wall Street Journal. Las reglas y el vocabulario se pueden cambiar manualmente.
  7. Etiquetador semántico . La anotación semántica se realiza mediante reglas de resolución JAPE (expresiones regulares) que utilizan las etiquetas obtenidas en los pasos de anotación anteriores.
  8. Correferencia ortográfica (OrthoMatcher o 'NameMatcher'). Agrega un tipo de relación entre las etiquetas de entidad con nombre y las etiquetas semánticas. No encuentra nuevas entidades con nombre, pero puede asignar un tipo inclasificable a un nombre propio basado en coincidencias de palabras.
  9. Correferencia pronominal . Conectado a PR como un recurso adicional del complemento ANNIE. Puede encontrar texto citado, estilo directo, pronombres (sustitución de sustantivos, anáforas ), repeticiones. Requiere anotación preliminar por etiquetas: Token (Tokenizer en inglés), Oración (Sentence Splitter), Split (Sentence Splitter), Ubicación (NE Transducer, OrthoMatcher), Persona (NE Transducer, OrthoMatcher), Organización (NE Transducer, OrthoMatcher). El análisis se realiza utilizando las reglas del conversor JAPE (expresiones regulares), se construye una máquina de estados para buscar signos de estilo directo y citas (comillas simples, dobles, etc.), buscar los pronombres "it, its, sí mismo" y "yo, mí, mi, mí mismo".

Probando los resultados del procesamiento de texto

GATE tiene herramientas integradas para probar los resultados del procesamiento de texto:

  • La herramienta AnnotationDiff realiza una comparación en el mismo documento (botón de comparación en el panel GATE).

Parámetros: Conjunto de claves (nombre de AnnotationSet con marca #1), Conjunto de respuestas (nombre de AnnotationSet con marca #2), Tipo (solo se puede probar un tipo a la vez), Características (atributos que estamos comparando). Después de iniciar la comparación (Comparar), AnnotationDiff generará pares de anotaciones, marcando el tipo del par con un color. Tipos: Correcto (coincidencia completa), Falta (no se encuentra la anotación correcta), Espurio/Falso positivo (se encuentra una anotación adicional), Parcialmente correcto (parcialmente cruzando los límites de la anotación). De acuerdo con el número de pares de diferentes tipos, se calculan las métricas estándar Precisión, Recall y F.

  • Corpus Quality Assurance (CQA) está diseñado para calcular métricas de calidad en un corpus.

La pestaña Garantía de calidad del corpus se abre en la ventana del corpus deseado. CQA recopilará datos sobre conjuntos, anotaciones y sus atributos. Es necesario establecer los parámetros, seleccionar los tipos de evaluaciones (por ejemplo, puntaje F1.0 estricto, indulgente y promedio). Ejecutar comparación. En la pestaña Estadísticas del documento, puede ver las estadísticas de los documentos, así como abrir inmediatamente el documento seleccionado o ver AnnotationDiff para él. Los resultados de las pruebas se pueden exportar a HTML.

PUERTA Mimir

GATE Mímir es un motor de búsqueda de código abierto alojado en SourceForge, distribuido bajo la Licencia Pública General Menor de GNU 3.0. GATE Mímir brinda soporte para la indexación y búsqueda de información lingüística y semántica desde aplicaciones con enormes bases de datos de datos lingüísticos. GATE Mímir brinda la capacidad de buscar información en texto, anotaciones, ontologías semánticas y metadatos semánticos utilizando combinaciones arbitrarias de texto, información estructural y SPARQL. Los desarrolladores no proporcionan un producto empaquetado listo para usar, sino que ofrecen descargar las fuentes y compilar sus propios archivos. El manual de usuario de GATE Mímir [10] , se proporcionan ejemplos de uso [11] , para las últimas versiones de lanzamiento, los archivos de un árbol fuente completo están disponibles [12] .

Véase también

Notas

  1. tao , pág. 5.
  2. Grimes, 2009 .
  3. Twitter, 2013 .
  4. tao , pág. 6.
  5. BiomedicalGate, 2013 .
  6. Proyectos .
  7. Guía del usuario de GATE , pág. 93.
  8. Lista de complementos GATE .
  9. Sección sobre JAPE .
  10. Mimir .
  11. Ejemplos de Mimir .
  12. Fuente Mímir .

Literatura

Enlaces