Arquitectura general para ingeniería de texto (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] .
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.
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.
Contiene tres tipos de datos: documentos, corpus y gráficos de anotaciones.
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 CRIOLLOEl 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.
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
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.
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:
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.
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:
GATE tiene herramientas integradas para probar los resultados del procesamiento de texto:
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.
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.
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] .