• No se han encontrado resultados

TextLynx Plus: Ampliación de funciones para un analizador avanzado de textos

N/A
N/A
Protected

Academic year: 2020

Share "TextLynx Plus: Ampliación de funciones para un analizador avanzado de textos"

Copied!
77
0
0

Texto completo

(1)TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 1 DE 77. UNIVERSIDAD CENTRAL DE LAS VILLAS FACULTAD DE MATEMÁTICA, FISICA Y COMPUTACIÓN CARRERA DE CIENCIA DE LA COMPUTACIÓN TRABAJO DE DIPLOMA. “TEXTLYNX PLUS : A MPLIACIÓN DE FUNCIONES PARA UN ANALIZADOR AVANZADO DE TEXTOS”. AUTOR: VÍCTOR ANNIER BARRIOS CAÑIZARES TUTOR: LIC. MANUEL LLANES ABEIJÓN CURSO 2006-2007.

(2) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 2 DE 77. Agradecimientos. A, Yisel. El por qué es innombrable. A mi mamá Lourdes y mi abuela Georgelina, que siempre me llevaron por buen camino..

(3) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 3 DE 77. Dedicatoria A Jesucristo, quien me enseña las maravillas de las posibilidades..

(4) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 4 DE 77. RESUMEN El sistema TextLynx Plus realiza el análisis lingüístico de un corpus de textos. Para esto permite realizar el reconocimiento morfológico (tagging) y sintáctico (parsing) de los textos (usando software libre adicional al que provee de una interfaz más amistosa), así como la caracterización y clasificación del léxico por su frecuencia y distribución. Elabora tablas enmarcadas en los siguientes tipos: grafémica, léxicas, textuales descriptivas y textuales relacionales. En la implementación de gran parte de sus algoritmos para procesar los datos textuales se hace uso de la memoria en disco de la máquina para poder manipular corpora de gran tamaño sin recurrir a un uso excesivo de la RAM. Se aplican transformaciones en la representación léxica del corpus que permiten comparar los corpora de forma más efectiva por sus rasgos esenciales, así como la comparación y clasificación de los textos que los componen. El sistema permite representar léxicamente al corpus de forma tal que se superan algunas de las limitaciones del enfoque de ―saco de palabras‖ al considerarse la combinatoria léxica y las relaciones sintácticas en el marco oracional al representar el contenido de los textos. La codificación óptima de representaciones de corpus muy grandes permite usar dichas representaciones en el procesamiento con software de minería de texto como el CorpusMiner..

(5) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 5 DE 77. ABSTRACT The TextLynx Plus system is designed to perform the linguistic analysis of text corpora. The system allows for the POS tagging and parsing of the texts in the corpus (using additional free software for which it provides a user friendly interface) , as well as the characterization and distribution of the lexicon based on its frequency and distribution. The system produces graphemic, lexical, textual (descriptive and relational) tables. In the implementation of many of its algorithms for textual data processing use is made of memory in the disk to make the system capable of manipulating larger corpora without incurring in excessive use of RAM. Transformations in the lexical representation of the corpus allows for corpus comparison of higher efficiency based on essential features, as well as the comparison and classification of texts. The system provides for the lexical representation of the corpus beyond the ―bag of words‖ paradigm by including lexical combinatory and syntactical relations within the sentential framework to represent the contents of the texts. Optimum codification of very large corpus representations enables processing with text mining software such as CorpusMiner..

(6) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 6 DE 77. ÍNDICE. RESUMEN ........................................................................................................................................................ 4 ABSTRACT ...................................................................................................................................................... 5 ÍNDICE .............................................................................................................................................................. 6 INTRODUCCIÓN ............................................................................................................................................. 7 CAPÍTULO 1: LINGÜÍSTICA COMPUTACIONAL, LINGÜÍSTICA DE CORPUS Y MINERÍA DE TEXTOS .......................................................................................................................................................... 12 1.1 LA LINGÜÍSTICA COMPUTACIONAL ................................................................................................. 12 1.2 LA LINGÜÍSTICA DE CORPUS ......................................................................................................... 15 1.3 MINERÍA DE TEXTO ........................................................................................................................ 16 1.3.1 ETAPAS DE LA MINERÍA DE TEXTO ............................................................................................ 17 1.3.2 DESCRIPCIÓN DE LAS ÁREAS QUE SE RELACIONAN CON LA MINERÍA DE TEXTOS:.................. 20 1.4 ANÁLISIS DE TEXTOS ..................................................................................................................... 21 1.4.1 CUBRIMIENTO METODOLÓGICO DEL ANÁLISIS DE TEXTO SIMPLE ............................................ 21 1.4.1.1 1.4.1.2 1.4.1.3 1.4.1.4. 1.4.2. TIPOS DE ANÁLISIS DE TEXTO ............................................................................................................... 21 APLICACIÓN DE ESTAS TÉCNICAS A TEXTOS POCO CONOCIDOS .......................................................... 22 CONOCIMIENTO PREVIO ......................................................................................................................... 23 PASOS EN EL ANÁLISIS ........................................................................................................................... 24. APLICACIONES DEL ANÁLISIS DE TEXTO .................................................................................... 25. 1.4.2.1 1.4.2.2. AYUDA EN PREPARACIÓN DE TEXTOS (ALEXANDER GELBUKH, 2000) ............................................... 25 BÚSQUEDA DE TEXTO............................................................................................................................. 26. CAPÍTULO 2:. DISEÑO E IMPLEMENTACIÓN DEL PROGRAMA................................................... 28. 2.1 HERRAMIENTAS USADAS DURANTE LAS FASES DE DISEÑO E IMPLEMENTACIÓN. ......................... 28 2.2 CONCEPCIÓN Y DESARROLLO DEL SISTEMA TEXTL YNX PLUS. ................................................... 29 2.3 DESCRIPCIÓN DE LOS EJECUTABLES UTILIZADOS EN TEXTLYNX P LUS. ...................................... 30 2.4 USO DE FICHEROS DE DATOS ....................................................................................................... 39 2.5 CREACIÓN DE LOS FICHEROS DE ÍNDICES..................................................................................... 40 2.6 FUNCIONALIDAD DEL SISTEMA ...................................................................................................... 41 2.6.1 OPERACIONES BÁSICAS SOBRE LOS CORPUS.......................................................................... 41 2.6.2 OBTENCIÓN DE TABLAS ............................................................................................................ 43 2.6.3 OBTENCIÓN DE REPORTES ...................................................................................................... 47 CONCLUSIONES .......................................................................................................................................... 49 RECOMENDACIONES................................................................................................................................. 50 REFERENCIA BIBLIOGRÁFICA ............................................................................................................... 51 ANEXO I - DESCRIPCIÓN DE FICHEROS GENERADOS POR TEXTLYNX PLUS. SU EXPLICACIÓN Y UTILIDAD. .................................................................................................................... 53 ANEXO II - DIAGRAMAS UML................................................................................................................... 65.

(7) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 7 DE 77. INTRODUCCIÓN. La utilización de programas de computación para el procesamiento de textos en lenguas naturales ha sido una de las tareas que tempranamente asumió la ciencia de la computación. En primer lugar se vinculó a la actividad bibliotecaria y las ciencias de la información a través del área de investigación que recibió el nombr e de Recuperación de Información (Information Retrieval) en la que se incluyeron todos los problemas relacionados con la búsqueda de información en bases de datos y en texto no estructurado. La recuperación de la información normalmente implica que el que busca la información, el usuario, tiene una idea de la forma en que se expresa esa información, y que una vez obtenida la información este tiene la capacidad de interpretarla adecuadamente según sus fines.. El interés del usuario de estos. sistemas está fundamentalmente en el contenido informativo de los documentos o registros que se procesan.. Más tarde con el surgimiento de la lingüística computacional se trató de resolver el problema de la modelación de las lenguas naturales para su análisis y síntesis automatizada.. El análisis se desarrolló mediante algoritmos que automáticamente permitieran la identificación. y clasificación de las unidades lingüísticas de una lengua natural,. generalmente las unidades léxicas, mediante los llamados identificadores de las partes del habla (POS taggers) y la determinación de unidades sintácticas más complejas como las frases y las cláusulas, y la determinación automática de sus funciones en la oración mediante los analizadores sintácticos (parsers). Para lograr estos objetivos se han utilizado diferentes enfoques, incluyendo el aprendizaje automatizado (machine learning) y los procesamientos estadísticos. Estos también se han utilizado en el reconocimiento del habla, o sea, la conversión de una señal acústica codificada en una lengua natural en una representación gráfica convencional según un sistema ortográfico determinado; y en el proceso inverso de síntesis del.

(8) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 8 DE 77. habla que produce una señal acústica conformada por los fonemas de una lengua natural a partir de una representación ortográfica convencional.. Para la producción del lenguaje natural es necesario tener una representación de la realidad y de las. intenciones comunicativas que luego se transfiere a una. representación convencional ortográfica o fonológica. Esto se conoce como síntesis del habla. En la comprensión se sigue el camino inverso y se alcaza alguna representación abstracta de conocimientos e intenciones a partir de una entrada acústica en una lengua natural. Esta área es la menos desarrollada en la actualidad y es la que más se asocia a la inteligencia artificial y recibe el nombre de procesamiento del lenguaje natural. El procesamiento de textos escritos ( word processing) con la ayuda de revisores ortográficos y de gramática es un caso relativamente simple, en el que se ha avanzado considerablemente. El caso más complejo es el de la traducción automática, este es muy particular, ya que ha recibido históricamente mucha atención y en la actualidad, aunque muy alejada de las enormes e infundadas expectativas de los primeros años, ha alcanzado relevantes avances.. De manera más reciente se han desarrollado dos nuevas disciplinas que vinculan la ciencia de la computación al procesamiento del lenguaje natural, la minería de textos y la lingüística de corpus. Ambas disciplinas están relacionadas fundamentalmente por el hecho de que ambas usan grandes colecciones de textos, llamadas corpora (corpus en plural), para obtener sus resultados pero difieren en que el objetivo de la primera es el descubrimiento de conocimientos acerca de las realidades que están representadas en los textos, mientras que la segunda se interesa en obtener conocimientos acerca de las regularidades de los sistemas lingüísticos que se manifiestan en los textos procesados.. La minería de textos surge de la necesidad objetiva de poder correlacionar y simplificar la información contenida en un número gigantesco y creciente de documentos electrónicos que se vinculan con áreas cruciales de la vida económica,.

(9) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 9 DE 77. política, social, científica e incluso militar de los estados, mientras que la lingüística de corpus surge de la necesidad de describir de forma más detallada las lenguas naturales en sus diferentes usos sociales para facilitar su aprendizaje más completo y eficiente por parte de los seres humanos y eventualmente de las propias computadoras.. Un ejemplo pudiera servir para ilustrar los puntos de convergencia y de divergencia de estas dos disciplinas en las que lingüística y computación confluyen. Supongamos que una empresa de producción de efectos electrodomésticos tiene un servicio, de atención a sus clientes, basado en la recepción de sus quejas y sugerencias para mejorar las prestaciones que ofrece. El conjunto de documentos que recibe semanalmente puede ser bastante amplio, tanto que sería muy costoso pagarle un salario a un grupo de personas para que leyera las cartas de los clientes. Es por tanto más beneficioso instalar un servicio de minería de textos capaz de clasificar los documentos recibidos, resumirlos y enviar los resúmenes a los ejecutivos correspondientes dentro de la empresa para que tomen las decisiones necesarias. Por otra parte, el corpus ya formado pudiera servir de base para un estudio que permitiera caracterizar detalladamente el lenguaje utilizado por los usuarios para expresar sus quejas o sugerencias a la empresa, y de este modo servir para la creación de materiales docentes para enseñar a hablantes nativos o de otra lengua a escribir textos que sirvan dichos propósitos comunicativos.. Debemos notar que la minería de textos tiene su campo de aplicación más natural en la búsqueda de conocimientos nuevos sobre la realidad (en este caso opiniones de los usuarios), mientras que la lingüística de corpus busca conocimientos nuevos, más detallados, acerca de la lengua. Mientras que la minería de textos da resultados que son (en mayor o menor medida) inmediatamente útiles para los que toman las decisiones en la empresa, el conocimiento que aporta la lingüística de corpus requiere de un procesamiento adicional para convertirse en información útil para el usuario final (el estudiante de la lengua), pues requiere que alguien convierta el conocimiento lingüístico alcanzado en actividades para el aprendizaje..

(10) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 10 DE 77. En el Departamento de Ciencias de la Computación de la Facultad de Matemática, Física y Computación de la Universidad Central ―Marta Abreu‖ de las Villas existe un grupo de investigación que estudia e investiga en el campo de la inteligencia artificial y que ha incursionado en el campo de la minería de textos con logros notables. Dentro de este esfuerzo en el curso 2002-2003 se desarrolló un programa, llamado TextLynx, como Trabajo de Diploma de Eddy Saura y que fue tutorado por la Lic. Leticia Arco del Departamento de Ciencias de la Computación, con la consultoría del Lic. Manuel Llanes del Departamento de Lengua Inglesa de la UCLV. El programa TextLynx incorporó un conjunto de facilidades para conformar un corpus, segmentarlo en oraciones, realizar el reconocimiento morfológico (tagging) y sintáctico (parsing) de los textos (incorporando software de uso libre) y contar la frecuencia y el rango del léxico en los diferentes textos que conforman el corpus. Se implementaron funciones para transformar el corpus un extractor de segmentos a partir de combinaciones booleanas. de palabras y un extractor de líneas de. concordancias (KWIC concordancer) Además se crearon funciones para describir los textos a partir de la frecuencia y la distribución del léxico gramatical y lexical (nuclear) y determinar las palabras claves de un texto mediante la comparación de su léxico con el del total del corpus usando el estadígrafo del logaritmo de la probabilidad. Sin embargo, no se pudieron desarrollar herramientas que permitieran el establecimiento de los vínculos entre textos mediante la comparación de corpus, el agrupamiento (clasificación de los textos) y la clasificación del léxico por sus propiedades distributivas en el corpus. Posteriormente en los Trabajos de Diploma de Libernys Valdés y José Manuel Rodríguez en 2005 tutorados por Leticia Arcos, se desarrolló el programa CorpusMiner que representaba el corpus mediante un modelo espacio-vectorial e incorporaba un conjunto de herramientas para reducir la dimensionalidad de la matriz del VSM, clusterizar los textos del corpus aplicando diferentes algoritmos (duros y borrosos) encontrados en la literatura y extraer las palabras claves y las oraciones principales (más informativas) de un conjunto de textos, o sea, crea resúmenes extractos de un conjunto de textos..

(11) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 11 DE 77. El problema científico que se aborda en esta tesis es: ¿Cómo aumentar la funcionalidad de TextLynx para obtener los vínculos entre textos mediante la comparación de corpus, el agrupamiento (clasificación de los textos) y la clasificación del léxico por sus propiedades distributivas en el corpus? Para solucionar este problema nos hemos propuesto como objetivo general aumentar la funcionalidad de TextLynx a través de la implementación de herramientas que permitan un análisis exhaustivo del texto, lo que nos ha permitido planificarnos las siguientes tareas: 1. Revisar la bibliografía actualizada relacionada con la lingüística de corpus, la minería de textos y el procesamiento del lenguaje natural. 2. Estudiar el código de los programas TextLynx y CorpusMiner. 3. Definir las funciones que debe desarrollar cada herramienta. 4. Probar e implementar cada herramienta..

(12) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. CAPÍTULO 1:. LINGÜÍSTICA COMPUTACIONAL, LINGÜÍSTICA. DE. PÁG. 12 DE 77. CORPUS. Y. MINERÍA. DE. TEXTOS. TextLynx Plus ha sido concebido con el propósito de permitir la caracterización lingüística de un corpus de textos que tienen un propósito comunicativo común, para de esta forma. determinar cuáles formas lingüísticas (especialmente léxicas). se. emplean para lograr este propósito. En líneas generales un programa de este tipo es un auxiliar en el tipo de estudio que se realiza dentro de la lingüística de corpus, sin embargo requiere de incursiones en procedimientos y técnicas presentes en la lingüística computacional, la recuperación de la información y la minería de textos.. En este capítulo se ofrecerá una visión general de las características fundamentales de estas disciplinas y su implicación para el desarrollo del programa TextLynx Plus.. 1.1 LA LINGÜÍSTICA COMPUTACIONAL. La lingüística computacional es un campo interdisciplinario dedicado a la modelación computacional de las lenguas naturales ya sea por medios estadísticos o mediante la aplicación de reglas de manipulación simbólica. La Asociación para la Lingüística Computacional define la lingüística computacional como el estudio científico del lenguaje desde una perspectiva c omputacional. Los lingüistas. computacionales. están. interesados. en. proporcionar. modelos. computacionales de varios tipos de fenómenos lingüísticos.. La modelación de las lenguas se realiza a diferentes niveles: modelación de la actividad investigativa del lingüista, modelación de la actividad del habla, y la modelación de la adecuación descriptiva de los modelos lingüísticos del primer y segundo tipos.(Apresian, 1985).

(13) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 13 DE 77. Los modelos de la actividad lingüístico-investigativa (modelos investigativos) buscan obtener una descripción del sistema de la lengua a partir de una muestra de textos de esa lengua. Esto normalmente implica obtener un listado de sus unidades elementales en cada nivel de organización, definir y obtener un conjunto de clases de unidades elementales, y expresar las leyes de asociación de las unidades elementales de cada clase y entre las clases correspondientes.. Los modelos investigativos pueden ser, según los datos que utilizan como punto de partida, modelos investigativos de codificación, que usan sólo los textos y los modelos investigativos experimentales que usan los textos y hacen variaciones en estos para determinar, con la ayuda de un informante si lo que resulta del cambio existe en la lengua o no, o si el resultado de un cambio determinado es igual a algo ya existente o no.. Los modelos de la actividad del habla se dividen en modelos de análisis y modelos de síntesis, los cuales se materializan en todos los niveles lingüísticos: fonológico, morfológico, léxico y sintáctico.. Tradicionalmente la lingüística computacional fue el resultado de la actividad de especialistas en el campo de la computación que se interesaron en la solución de los problemas de análisis y síntesis lingüísticas que surgen en el campo de la traducción automática.. Las investigaciones más recientes han demostrado que las lenguas humanas son mucho más complejas de lo que se había pensado inicialmente por lo que los lingüistas computacionales trabajan a menudo como miembros de equipos interdisciplinarios, que incluyen lingüistas (específicamente preparados en la lingüística), expertos del idioma en cuestión que se analiza (las personas con algún nivel de habilidad en los idiomas pertinentes a un proyecto dado), y especialistas en ciencia de la computación. La lingüística computacional utiliza la.

(14) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 14 DE 77. colaboración de lingüistas, científicos de la computadora, los expertos en inteligencia artificial, psicólogos cognoscitivos, matemáticos, y lógicos, entre otros.. La lingüística computacional como campo es anterior a la inteligencia artificial, un campo en el cual a menudo se incluye. La lingüística computacional se originó en los Estados Unidos en los años cincuenta con los esfuerzos para lograr que las computadoras automáticamente tradujeran los textos de otros idiomas al inglés, particularmente la información científica en ruso.. Como la traducción automática (también conocida como la traducción mecánica) inmediatamente no brindó las traducciones exactas, el proceso automatizado de idiomas humanos se reconoció como más complejo de lo que había sido originalmente supuesto. La lingüística computacional nació como un nuevo campo de estudio consagrado a los algoritmos en vías de desarrollo y software para procesar los datos del idioma inteligentemente.. Para traducir un idioma en otro, fue observado que se tenía que entender la gramática de ambos idiomas. Era necesario entender la morfología (la forma de las palabras) y la sintaxis (combinación de palabras para formar frases). Para entender la sintaxis, también se tenía que entender la semántica y el léxico. Así, lo que empezó como un esfuerzo para traducir entre los idiomas evolucionó en una disciplina entera consagrada a entender cómo representar y procesar idiomas naturales.. Áreas relacionadas con la lingüística computacional.. La lingüística Computacional puede ser dividida en áreas que dependen del medio del idioma a procesarse, si es hablado o textual; y en la tarea a realizarse, si es análisis del idioma o generación del idioma. El reconocimiento del discurso y síntesis del discurso, el análisis y la generación del discurso y la traducción automática son tareas de la lingüística computacional..

(15) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 15 DE 77. Como algunas de las áreas de investigación utilizadas en la lingüística computacional están: -. El uso de parsers para los idiomas naturales.. -. El uso de taggers como POS-taggers.. -. La definición de lógicas especializadas como las lógicas del recurso para NLP.. -. La investigación de la relación entre los idiomas formales y naturales en general.. -. La traducción automática.. 1.2 LA LINGÜÍSTICA DE CORPUS. La lingüística de corpus. es el estudio del idioma como este se manifiesta en los. textos tomados del "mundo real". Las grandes colecciones de textos auténticos son conocidas como corpus. El método de la lingüística basada en corpus representa un enfoque. empírico al problema de la obtención de las reglas. abstractas que describen el funcionamiento de una lengua o un subconjunto de ella. Aunque algunos de los procedimientos que asociamos en la actualidad a la lingüística de corpus fueron utilizados anteriormente de forma manual, es indudable que el despegue y gran auge de esta forma de estudiar la lengua sólo ha sido posible con el advenimiento de las computadoras, e incluso, su popularización ha sido solo posible con la utilización de las computadoras personales con alta capacidad de procesamiento y almacenamiento que comenzaron a hacerse comunes en el último lustro del siglo pasado..

(16) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 16 DE 77. El enfoque de la lingüística basada en corpus es contrario a la concepción de las lenguas y el lenguaje humanos sostenida por el famoso lingüista norteamericano Noam Chomsky, cuya dicotomía de competencia y performancia (ejecución) reduce el objeto de estudio de la lingüística a la primera pues la segunda está plagada de ―errores‖ de diversa índole. Los defensores del enfoque empírico creen que es mucho más conveniente estudiar las muestras reales del lenguaje humano tal y como se usa en los diferentes ámbitos de la interacción social y no mediante ejemplos inventados por los lingüistas para sustentar o criticar una concepción teórica determinada sobre la organización de las lenguas.. 1.3 MINERÍA DE TEXTO. La minería de textos es una tecnología poderosa que facilita la explotación efectiva de grandes cantidades de datos textuales no estructurados (free text) que existen en varias fuentes, tales como la Web y que hasta el momento no se pueden usar eficientemente. Además, la identificación de conocimiento oculto en datos no estructurados disponibles, es un asunto crucial. En la organización y manipulación de ese exceso de información se debe considerar en gran medida la aplicación de las herramientas que automáticamente asistan a los usuarios, pues las herramientas podrían separar la información relevante o interesante de la información no relevante, acorde a los intereses especificados por los usuarios. La información puede ser resumida y visualmente presentada. Mediante la aplicación de esta tecnología los textos no estructurados pueden ser automáticamente analizados y se puede extraer de ellos los conceptos más importantes, etiquetar los documentos con términos claves, resumirlos y hacerlos disponibles en una forma normalizada y explotable. La minería de textos, también conocida como minería de datos textuales o descubrimiento de conocimiento desde bases de datos textuales, pretende algo.

(17) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 17 DE 77. similar a la minería de datos: identificar relaciones y modelos en la información no cuantitativa. En pocas palabras, proveer de una visión selectiva y perfeccionada de la información contenida en documentos escritos y sacar consecuencias para la acción, así como detectar patrones no triviales e incluso información sobre el conocimiento, almacenado en las mismas. La minería de textos es mucho más compleja que la minería de datos porque tiene que trabajar con datos textuales que son inherentemente no estructurados y borrosos. La minería de textos es un campo multidisciplinario que incluye recuperación de información, análisis de textos, extracción de información, agrupamiento, resumen, categorización, clasificación, visualización, tecnología de bases de datos, aprendizaje automático y minería de datos.. 1.3.1 ETAPAS DE LA MINERÍA DE TEXTO. El proceso de minería de texto consiste de dos etapas principales: una etapa de preprocesamiento y una etapa de descubrimiento. En la primera etapa, los textos se transforman a algún tipo de representación estructurada o semi-estructurada que facilite su posterior análisis, mientras que en la segunda etapa las representaciones intermedias se analizan con el objetivo de descubrir en ellas algunos patrones interesantes o nuevos conocimientos. Entonces, en dependencia del tipo de métodos aplicados en la etapa de preprocesamiento estará el tipo de representaciones intermedias construidas, y en función de dicha representación se determinan los métodos usados en la etapa de descubrimiento, y en consecuencia, el tipo de patrones descubiertos.. Etapa de Preprocesamiento: En la etapa de preprocesamiento los textos se transforman a una representación estructurada o semi-estructurada de su contenido. Estas representaciones intermedias de los textos deben ser, por una parte, sencillas para facilitar el análisis de los textos, pero por otra parte, completas para permitir el descubrimiento de patrones interesantes, e incluso.

(18) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 18 DE 77. de nuevos conocimientos. Las representaciones intermedias más usadas en la minería de texto son básicamente de dos tipos: A nivel documento, donde cada representación se refiere a un texto diferente de la colección o a nivel concepto, donde cada representación indica un objeto, tema o concepto interesante para el dominio específico de aplicación. La construcción de estas representaciones. sigue. diferentes. estrategias.. Por. ejemplo,. las. representaciones a nivel documento se construyen típicamente usando información. de. texto. completo. e. indexamiento.. Por. su. parte,. las. representaciones a nivel de concepto se obtienen básicamente aplicando métodos dependientes del dominio tales como la extracción de términos importantes y la extracción de información. Etapa de Descubrimiento: Típicamente, los descubrimientos de minería de texto y por consecuencia sus métodos y sus tareas se clasifican en: descriptivos y predictivos, aunque también se han usado otras clasificaciones. Una clasificación alternativa de la minería de texto considera que estos son una. descripción. de. situaciones. y. objetos. del. mundo,. y. que. las. representaciones intermedias de dichos textos obtenidas en la etapa de preprocesamiento son una descripción estructurada del contenido. Basándose en esta consideración, los descubrimientos de la minería de texto se pueden clasificar en tres enfoques:( i) descubrimientos a nivel de representación, (ii) descubrimientos a nivel de texto, y (iii) descubrimientos a nivel de descripción del mundo. o Descubrimientos a nivel de representación: Los métodos de este enfoque intentan construir o ―descubrir‖ una representación estructurada o semi-estructurada de los textos. Los más comunes se encargan de la clasificación, categorización e indexamiento de los textos. o Descubrimientos a nivel de texto: Los métodos de este enfoque son de dos tipos: métodos que descubren patrones de lenguaje a partir de una colección de textos, y métodos que descubren la organización ―oculta‖ de una colección de textos. Los métodos relacionados con la identificación de patrones de lenguaje se distinguen por considerar.

(19) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 19 DE 77. todas las palabras de los textos y mantener su orden relativo, es decir, usar representaciones de texto completo (full- text, en inglés). Estos métodos detectan secuencias frecuentes de palabras, y en ocasiones también construyen, con base en estas secuencias, un conjunto de reglas asociativas que expresan combinaciones de palabras de uso común. Por su parte los métodos relacionados con el agrupamiento de textos se caracterizan por utilizar diversos tipos de métodos, desde los tradicionales basados en una medida euclidiana de la distancia entre los textos, hasta los sofisticados que se sustentan en redes neuronales. En particular estos métodos enfatizan la visualización e interpretación de los resultados; algunos emplean interfaces gráficas para analizar los agrupamientos, otros determinan una etiqueta descriptiva del contenido de cada grupo, y otros determinan el documento representativo de cada clase. Adicionalmente, el agrupamiento de los textos se usa en el análisis exploratorio de las colecciones de textos, en la generación de resúmenes multidocumento, y en otras tareas de descubrimiento tales como la detección de asociaciones y desviaciones. o Descubrimientos a nivel de descripción del mundo: Este enfoque considera. distintas. tareas,. entre. ellas. el. descubrimiento. de. asociaciones, la detección de desviaciones y el análisis de tendencias. Los métodos de este enfoque comparten las siguientes características: (i) emplean tanto representaciones de los textos a nivel de concepto como a nivel de documento; (ii) usan conocimientos de dominio, generalmente expresados en jerarquías de conceptos o conjuntos de predicados, y (iii) permiten que el usuario guíe el proceso de descubrimiento, especificando principalmente las regiones y los conceptos de mayor interés. Entre los trabajos de descubrimiento de asociaciones se destacan aquellos que plantean la detección de asociaciones temáticas no-exactas, y el uso de los elementos estructurados y no estructurados para la obtención de dichas relaciones. Por su parte, los métodos de detección de desviaciones.

(20) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 20 DE 77. consideran la detección de los textos raros con temática diferente al promedio de una colección, así como la detección de los nuevos temas en una colección dinámica, por ejemplo en un flujo de noticias. El análisis de tendencias se encarga de la descripción de la evolución de una colección de textos. Entre sus métodos descuellan los siguientes enfoques: la detección de temas de discusión con un comportamiento preestablecido, y la comparación de la temática de una colección en dos tiempos diferentes.(Gómez, 2005). 1.3.2 DESCRIPCIÓN DE LAS ÁREAS QUE SE RELACIONAN CON. LA MINERÍA DE TEXTOS:. Recuperación de información: Se encarga de recuperar documentos que puedan ser considerados relevantes para la tarea a realizar. Típicamente los usuarios del sistema pueden especificar conjuntos de documentos, pero el sistema debe ser capaz de filtrarlos y dejar fuera aquellos irrelevantes. Extracción de la información: Es el proceso de filtrar la información a partir de documentos ya seleccionados y de las especificaciones de los usuarios a través de consultas complejas. Análisis de textos: Involucra todas las técnicas relacionadas con el análisis léxico, morfo-sintáctico y semántico de los textos. Resumen: Es el proceso de extraer conocimiento a partir de una fuente de información y presentar el contenido más importante al usuario en una forma condensada y adecuada a las necesidades de la aplicación o del usuario. Agrupamiento: Consiste en encontrar grupos de documentos que están relacionados por tópicos similares y extraer las palabras claves más importantes que son consideradas en esa clasificación. Categorización: Es el proceso de clasificar los documentos por sus contenidos..

(21) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 21 DE 77. Clasificación: Se usa como un término más amplio que la categorización, para incluir cualquier asignación de documentos a clases, no necesariamente basados en el contenido.(Valdés, 2005). 1.4 ANÁLISIS DE TEXTOS. Minería de Texto puede ser definida, de modo general, como un proceso de análisis de texto para extraer información que es útil para propósitos particulares.(Witten, 2003) La frase ―Minería de Texto‖ es generalmente usada para denotar un sistema que analiza grandes cantidades de texto en lenguaje natural y detecta patrones de uso léxicos o lingüísticos en un intento de extraer información útil.(Witten, 2003). 1.4.1 CUBRIMIENTO METODOLÓGICO DEL ANÁLISIS DE TEXTO SIMPLE A continuación proponemos un breve esquema sobre la metodología para realizar análisis de textos, 1.4.1.1. TIPOS DE ANÁLISIS DE TEXTO. En lo adelante "análisis de texto" debe ser entendido como "el análisis de textos por métodos algorítmicos". Un algoritmo es la descripción abstracta de lo que una computadora debe hacer. Antes de que el algoritmo pueda ejecutarse en una computadora, este debe ser creado en un lenguaje de programación. El punto es, que debido a que el algoritmo es una descripción de aquello que se debe hacer, este nos puede guiar para realizar nuestro análisis de texto. Para analizar un texto es esencial elaborar un tipo de análisis de texto, llamado codificación de texto ("markup"), pues para que una computadora procese eficazmente un texto, este debe contar con una estructura o formato adecuados..

(22) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 22 DE 77. Además de la codificación de textos, el análisis de texto puede ser dirigido en otros diferentes aspectos: 1. Concordancia y transformaciones relacionales de los datos textuales. 2. Análisis de Contenido. Este tema puede encontrarse en ocasiones bajo el título de ―análisis cualitativo‖. Esta es "una técnica sistemática y repetible para compactar muchas palabras del texto a unas pocas clasificaciones basadas en reglas predefinidas de codificación. Para esto generalmente se utiliza y aplica el llamado "diccionario conceptual" o vocabulario compartido de términos utilizados, para saber cuáles palabras serán usadas para calcular su concordancia o para procesarlas estadísticamente. 3. Análisis estadístico. Este tema involucra el conteo de características particulares de los datos textuales y la aplicación de una o más transformaciones matemáticas. El tipo más simple produce listas de frecuencias a partir de las palabras extraídas del texto, generalmente ordenadas de más a menos frecuentes. Existen muchas técnicas de análisis de texto más complejas que estas como las utilizadas para el análisis de estilo de los documentos y para la identificación de los autores.. 1.4.1.2. APLICACIÓN DE ESTAS TÉCNICAS A TEXTOS POCO CONOCIDOS. Existen dos razones principales que respaldan el uso de técnicas de análisis de texto sobre textos no conocidos. Primero, la cantidad de documentos es tan abundante que ninguna persona pudiera leerlos durante todo el transcurso de su vida, más aún si consideramos la inmensa cantidad de colecciones no literarias que satisfacen necesidades históricas o con propósitos lingüísticos; también está el inmenso tamaño de ciertas colecciones de libros que resulta muy tediosa su lectura. Segundo, y más importante, el análisis de texto es fundamentalmente diferente de los métodos.

(23) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 23 DE 77. manuales y revela aspectos de incluso textos bien conocidos que nunca hubiesen sido considerados. Si los textos se analizan con estos algoritmos, habrán de ser entendidos en mayor medida. 1.4.1.3. CONOCIMIENTO PREVIO. Asumimos que la aplicación del primer tipo de análisis (concordancia) se puede reflejar en la obtención de listas de frecuencia para textos no conocidos. Aún así, recomendamos que para procesar cualquier técnica de análisis sobre un texto se deba tener un conocimiento previo de este, conocimiento generado por las interrogantes a continuación: 1. Género: ¿Qué tipo de texto usted tiene? ¿Novela, poesía, política, leyes? ¿Está escrito originalmente o simplemente es un comentario? 2. Retórica y vocabulario: El género define una manera particular de hablar y escribir, por tanto, también un vocabulario específico. Incluyendo cuán frecuentemente aparecen palabras particulares. 3. Circunstancias sociales o psicológicas. El conocimiento de las circunstancias sociales circundantes a la escritura del texto puede ser importante. También si conocemos las características psicológicas del autor. 4. Circunstancias Históricas. Mientras más se conocen las circunstancias históricas bajo las cuales se escribió el texto mayor entendimiento se tendrá sobre este. 5. Naturaleza del objeto. El objeto físico sobre el cual ha sido tomado el texto, generalmente un libro impreso, puede ser relevante. Por ejemplo, si tomamos el texto a partir de una revista es claramente visible que este deba ser muy diferente al texto tomado de un libro. Queda claro que aun cuando los textos digitales luzcan igual, tienen diferentes contextos y significados. Mientras más conocimientos se tenga de estos, mejor será,.

(24) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 24 DE 77. pues el especialista podrá cotejar los resultados que obtenga del análisis, con lo que ya había observado. Por otro lado, aun sin conocimiento previo, esta técnica que proponemos permitirá adquirir información sobre los textos rápidamente. 1.4.1.4. PASOS EN EL ANÁLISIS. Al analizar un texto desconocido, o poco conocido, tenemos acceso a todo un cúmulo de información inesperada. Si la búsqueda se dirige hacia una cuestión específica, esto determinará, la particular diferencia con las búsquedas generales, y obviamente, un tipo de análisis distinto. Incluso en un análisis dirigido, muchas aplicaciones permiten que el usuario interrogue el texto en busca de cualquier otra información valiosa que pueda escapar a su percepción. Entre los datos que se pueden utilizar para estas interrogantes están: Palabras más frecuentes: Una técnica muy sencilla pero muy útil es revisar la lista de las palabras más frecuentes buscando en ellas información sobre el contenido y las principales características del texto. Por supuesto, existen muchas limitaciones sobre lo que se puede hacer con una lista de frecuencias; si el interés está en las palabras primitivas (léxicos de encabezado como ―know‖ o ―i‖) y no en otras palabras derivadas como (―knows‖, ―knew‖, ―me‖, ―we‖) estas listas resultarán más funcionales. Concurrencias: Una forma más desarrollada para relacionar palabras con sus significados utiliza la concurrencia de palabras. La idea aquí es que las concurrencias repetidas son indicadores más fiables que las palabras sencillas. Concordancia. La idea que respalda la concordancia es que dirige la atención a la circunstancia lingüística que rodea una palabra. Por lo tanto cuando se encuentra una palabra potencialmente interesante, el paso a seguir es extraerle la concordancia a esta, y luego buscar la lista de concordancias para interpretar los patrones encontrados..

(25) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. 1.4.2. PÁG. 25 DE 77. APLICACIONES DEL ANÁLISIS DE TEXTO. Consideramos a continuación. algunas de estas aplicaciones, desde las simples. hasta las complejas. Con cada una, mencionaremos los problemas lingüísticos que presenta esta tarea, es decir, en qué puede aprovechar el avance de la ciencia y la tecnología.. 1.4.2.1. AYUDA EN PREPARACIÓN DE TEXTOS (ALEXANDER G ELBUKH , 2000). Este tipo de aplicaciones es conocido hoy día, quizá por todas las personas que al menos una vez ha usado la computadora. Hablamos de las herramientas que proporcionan los procesadores de palabras como Microsoft Word. En el presente trabajo sólo nos interesan las herramientas que emplean el procesamiento complejo de texto y requieren conocimiento lingüístico. Guiones: La tarea de determinar los lugares donde las palabras se pueden romper para empezar una nueva línea es una de las más simples en procesamiento de textos. Por ejemplo, se puede romper la palabra como mara-villoso o maravillo-so, pero no maravil-loso o maravillos-o. A pesar de ser un problema simple, en ocasiones requiere una información bastante profunda. Por ejemplo, se debe saber cuáles son el prefijo y la raíz de la palabra: subir y sub-urbano, pero no sub-ir o su-burbano. O bien, en ocasiones se debe saber el idioma del origen de la palabra: Pe-llicer, pero Shil-ler. También se debe saber la estructura que requiere cada documento pues quizás no se deben usar guiones en los títulos y encabezados. Ortografía. La tarea de averiguar si una palabra está escrita correctamente o con un error ortográfico es un poco más difícil que la de los guiones. Por lo menos se debe saber todas las palabras del idioma dado. Ya que no es posible saber literalmente.

(26) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 26 DE 77. todas las palabras, se debe saber en primer lugar las formas de palabras, como inteligentísimas, satisfechos, piensen, etc. Pero para detectar los errores de ortografía, o simplemente de escritura, se debe considerar el contexto de la palabra de una manera a veces bastante complicada. Ejemplos: Sé que piensen en el futuro. El terremoto causó una gran hola en el mar. Se iba a cazar con su novia .Para detectar este tipo de errores, la computadora necesita hasta entender en cierto grado el sentido del texto. Gramática. Los correctores de gramática detectan las estructuras incorrectas en las oraciones aunque todas las palabras en la oración estén bien escritas en el sentido de que son palabras legales en el idioma, por ejemplo: Quiero que viene mañana. El maestro de matemáticas, se fue. Me gusta la idea ir a Europa. Fuera magnífico si él venía a la fiesta. El problema de detectar los errores de este tipo es que hay una gran variedad de estructuras permitidas, y enumerarlas todas resulta muy difícil. Para describir las estructuras de las oraciones en el idioma, se usan las llamadas gramáticas formales – los conjuntos de reglas de combinación de palabras y su orden relativo en las oraciones. Estilo. Una tarea ya más complicada es detectar los problemas en el texto cuando las palabras correctamente escritas y las oraciones correctamente estructuradas, son poco legibles, ambiguas o inconsistentes en el uso de palabras de diferentes estilos. Por ejemplo, el texto científico no debe usar las palabras de jerga; una carta a un amigo no debe usar las oraciones muy largas, profundamente estructuradas, con muchas palabras científicas. 1.4.2.2. BÚSQUEDA DE TEXTO. La búsqueda y el uso de la información contenida en el texto es una de las aplicaciones principales del análisis de texto. Las aplicaciones de este tipo varían desde las herramientas de búsqueda que simplemente ayudan al usuario a encontrar.

(27) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 27 DE 77. los documentos probablemente relevantes hasta las computadoras investigadoras que descubren el conocimiento nuevo que no está escrito en ninguno de los documentos disponibles. Búsqueda de documentos. Los motores de búsqueda permiten encontrar en un grupo de documentos aquellos que satisfagan una necesidad del usuario descrita en su petición. En el caso simple, la petición contiene las palabras clave, como «pensar y futuro», esto quiere decir que el usuario necesita los documentos que contengan ambas palabras. Hasta en este caso simple, se necesita un análisis bastante complejo: los. documentos. que contienen las. palabras. futuras, piensan. y. probablemente pensador y pensamiento también son relevantes. Si el usuario indica que necesita los documentos que indica sobre la acción «pensar en futuro», entonces el documento que contiene la frase como «piensan en las futuras aplicaciones» probablemente es relevante, mientras que «en el futuro próximo voy a pensarlo» probablemente no lo es. Para tomar esta decisión, es necesario un análisis profundo del texto. Además de los problemas lingüísticos, la búsqueda eficaz de documentos depende de las soluciones técnicas. No es posible analizar todos los documentos cada vez que el usuario hace su pregunta. Entonces, se hace y se maneja un índice de los documentos, es decir, una representación corta, simple y formal de los documentos. La representación de este índice, el tipo de información incluida en él, y los métodos matemáticos que se emplean en la búsqueda en él afectan mucho los resultados y eficiencia del proceso. Extracción de información: Lo que es más práctico hacer en el estado actual es encontrar en el texto proposiciones elementales, bastante simples, para compilar una base de datos a partir de un conjunto grande de texto. Por ejemplo, a partir de los periódicos, compilar una base de datos de las compras y ventas de compañías, o de los precios de abarrotes en las diferentes ciudades del país, etc. Para esta tarea, es necesario cierto entendimiento del lenguaje..

(28) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 28 DE 77. CAPÍTULO 2: DISEÑO E IMPLEMENTACIÓN DEL PROGRAMA. Diseño del programa: Básicamente el programa procesa un documento de texto que contiene el corpus que va a analizarse. El programa tiene la funcionalidad necesaria para llegar a este documento fundamental a partir de un conjunto de documentos aislados. Esta funcionalidad permite unir los diversos documentos de texto individuales en un solo documento y. darle el formato en términos de. delimitadores de texto necesario para su procesamiento ulterior. A partir de este documento de texto se producen un conjunto de transformaciones del corpus que este contiene.. 2.1 HERRAMIENTAS USADAS DURANTE LAS FASES DE DISEÑO E IMPLEMENTACIÓN. Para generar los diagramas de casos de uso y clases se empleó el software Rational Suite 2003 Enterprise Edition, debido a que el mismo contiene todos los elementos para la modelación en UML, permitiendo realizar dicha modelación de una manera automatizada, rápida y a la vez de manera intuitiva. En cuanto al lenguaje se decidió usar el Object Pascal, que implementa los principios y estructuras fundamentales de la POO, teniendo como característica adicional la comprensibilidad del código escrito en dicho lenguaje, cualidad esta deseable para asegurar la extensibilidad del sistema. Como herramienta de programación se utilizó el Delphi 6, pues en opinión de muchos programadores a nivel mundial el ambiente Delphi. ‖[...]constituye la mejor. combinación de programación orientada a objetos y programación visual para Windows‖ [CAN01]. Siendo como es un entorno para el desarrollo rápido de aplicaciones (Rapid Application Development), con una plataforma de clases de gran funcionalidad como la Visual Component Library y un compilador muy rápido..

(29) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 29 DE 77. Consideraciones para el desarrollador: Para la implementación de este Sistema se contó con la asistencia de dos componentes de Delphi que no vienen con el paquete original, estos son: el paquete MultiGrid y el paquete VCLSkin .Para llevar a cabo cualquier modificación será necesario tener instalados ambos paquetes.. 2.2 CONCEPCIÓN Y D ESARROLLO DEL SISTEMA TEXT LYNX P LUS. El sistema está compuesto por la aplicación principal y varios módulos ejecutables secundarios, lo que constituye una apreciable ventaja pues se pueden reemplazar por otros que resultarán más eficientes o del gusto del usuario con cambios mínimos en el código de la aplicación principal. Estos ejecutables son mencionados más adelante y también se podrá saber sus principales características y la funcionalidad que brinda al sistema. La aplicación principal está desarrollada de un modo con tres formas independientes y ajustables: FProject: Forma en la que se mantiene visualizado constantemente el arbol del proyecto en el que se trabaja. FStatistics: Forma que contiene la tabla. Aquí se cargarán y visualizarán varias tablas obtenidas en el TextLynx Plus. FLogs: Forma que. informa al usuario de cada operación realizada por el. Sistema. Cada forma tiene funcionalidades inherentes a ella que han sido enumeradas detenidamente en el manual de Usuario del Sistema. Las clases principales con las que cuenta el sistema están reflejadas en la figura del Anexo II. A continuación se ofrece una breve descripción de las mismas:.

(30) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 30 DE 77. TDocument: Representa al corpus que se está analizando. Está formada por cuatro clases: TTxtFile, TTknFile, TTknSrtFile y TTypFile. De esta forma, se garantiza el saber para cada corpus abierto en qué estado de procesamiento se encuentra. TTxtFile: Clase que cuenta con los atributos inherentes a un fichero texto tales. como. fHandle,. que. guarda. el. manipulador. del. fichero. y. fNameAndPath, que almacena el nombre y el camino absoluto del mismo. TTknFile: Representa el fichero de tokens creado por el sistema a partir del corpus. Contiene atributos. tales. como fDelimHandle,. que es. un. manipulador para el fichero de delimitadores, necesario para poder realizar el proceso de tokenización. TTknSrtFile: Es el fichero de tokens ordenado alfabéticamente. TTypFile: Clase que posibilita trabajar sobre el fichero donde se incluyen todos los tipos del corpus, generado a partir del anterior. TAdvancedSearch: Es la encargada de realizar las extracciones de oraciones que contienen una determinada combinación lógica de palabras. Para esto cuenta con métodos como Find, BoolAnd, BoolOr y BoolNot. TFileQuery: Clase que brinda la capacidad necesaria para construir las tablas cuyos datos se almacenan y se procesan en el atributo fResults.. 2.3 DESCRIPCIÓN DE LOS EJECUTABLES UTILIZADOS EN TEXTLYNX PLUS.. Las operaciones y facilidades de este sistema serían imposibles de lograr sin la amplia gama de funcionalidades que brindan los programas que dinámicamente utiliza este software. Como se aprecia en la gráfica anterior, estos programas o ejecutables se encuentran en una carpeta llamada Plugins y a continuación nos referiremos a ellos: 1. Lexical Corpus Classifier Como su nombre lo indica, este software clasifica los tipos de un corpus. Para realizar esta operación se parte de un fichero texto (TB1) creado por el.

(31) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 31 DE 77. TextLynx, y a partir de esto se obtiene un fichero de clasificación (TCF). Este programa depende totalmente del TextLynx pues su fichero de entrada necesita un formato que hasta el momento solo este puede crearlo. La clasificación consiste en 6 caracteres, donde cada uno denota una característica del tipo. Para más información referente a este tipo de clasificación ver el Anexo I. Luego de obtenido el fichero de clasificación este se puede usar junto a otro fichero de clasificación de algún corpus para obtener una comparación. El resultado de esta comparación nos indica cuán parecidos son los textos de ambos corpus. 2. Minipar MINIPAR es un analizador sintáctico (parser) para el idioma inglés. Una evaluación con corpus importantes muestra que este programa tiene un 88% de precisión y hace uso un 80% de veces de sus datos con respecto a la dependencia de relaciones. Minipar es un programa eficiente, capaz de analizar alrededor de 300 palabras por segundo en una Pentium II a trescientos MHz con 128MB de RAM. Su autor es Dekang Li's y permite el uso de este programa siempre que sea para fines no comerciales. (2003, Nalante, 1998, Lin, 2003) 3. Tagger El etiquetador de clases léxico-sintácticas (TAGGER) es una implementación del Brill-Tagger (Wikipedia, 2007, Valencia, 2003). que funciona por. etiquetamiento estadístico a partir del entrenamiento con un corpus. Este programa sigue la metodología de Eric Brill, quien es además su autor. 4. Append Se utiliza para la construcción de un corpus a partir de una serie de textos localizados por el usuario. 5. Attach Este ejecutable se utiliza para poner en correspondencia línea a línea diferentes representaciones del Corpus. Es utilizado en la unión vertical..

(32) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 32 DE 77. 6. AttachEqual Se utiliza. para. poner. en. correspondencia línea. a línea. diferentes. representaciones del Corpus. Es utilizado en la unión horizontal. 7. Concord Es un programa de concordancia. Este programa ha sido creado por Hamaguchi y publicado para uso libre. Sus especificidades pueden ser analizadas en la referencia. (Hamaguchi, 1995) 8. Detach Permite separar los textos que forman parte de un corpus. Se tiene acceso mediante la función desunir (unjoin) del menú Corpus. 9. MPDetach Este ejecutable brinda un formato adecuado al fichero devuelto por el programa Minipar y a su vez este programa devuelve como resultado el archivo (PAR). Gracias a este programa obtenemos un fichero mucho más reducido que a su vez contiene la información útil eliminando todo tipo de repeticiones y demás aspectos indeseables del fichero original. 10. Rep , Repl Programa utilitario que permite reemplazar cadenas de texto, es utilizado en la función normalizar del menú Corpus.. 11. Sorter Con la ayuda de este programa podemos ordenar un fichero en orden ascendente o descendente con la opción extra de escoger a partir de qué columna comenzar el ordenamiento. Es meritorio mencionar que solo se utiliza una vez en el programa. 12. Token Este software recibe como entrada un archivo de texto y devuelve otro con las siguientes características: cada token del texto inicial se encuentra rodeado de espacios a menos que se encuentre en el final o al principio de la línea. Para lograr esto el programa hace una revisión sencilla del texto inicial y cuando.

(33) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 33 DE 77. encuentra un carácter no alfanumérico lo sitúa entre espacios. La utilidad de esta herramienta se debe a que muchas veces buscamos una determinada palabra en un texto y la podemos encontrar como subcadena de otra palabra, por lo que los resultados no son óptimos. Para lograr buscar una palabra de forma que el resultado no incluya aquellas oraciones que contienen lo que se busca en forma de subcadena, primero se corre el ejecutable token.exe y en el resultado de este se busca la palabra esta vez rodeada de espacios, de este modo garantizamos que no aparezca ninguna oración con la palabra como subcadena. 13. SentSpliter Divide el corpus en oraciones. 14. Complex Corpus Transformation Plataforma: Windows XP o superior. Implementado en: Borland Delphi 6. Objetivo Alcanzado: La lengua es un sistema que no puede ser siempre analizado literal y estructuralmente. Dos frases iguales pueden tener diferentes significados en dependencia del contexto en el cual se encuentran insertadas. Lo expuesto anteriormente evidencia que tratar de representar documentos del lenguaje natural por el significado de un conjunto de índices de términos es un reto. Diferentes enfoques lingüísticos intentan capturar, o ignorar, una cierta extensión del significado con respecto al contexto. Estos enfoques se dividen en cinco niveles (Valdés, 2005): 1.. Nivel de grafema: Análisis sobre un nivel de sub-palabra, comúnmente. concerniente a las letras. 2.. Nivel léxico: Análisis concerniente a palabras individuales.. 3.. Nivel sintáctico: Análisis concerniente a la estructura de oraciones.. 4.. Nivel semántico: Análisis relativo al significado de palabras y frases..

(34) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. 5.. PÁG. 34 DE 77. Nivel pragmático: Análisis relativo al significado, tanto dependientes del. contexto como independientes del contexto, e.g. aplicaciones específicas, contextos. Actualmente la herramienta CorpusMiner y TextLynx trabajan al nivel 2 por lo que se desea incursionar en técnicas y mecanismos para lograr que trabajen en un nivel superior. Una forma efectiva de lograr que los programas antes mencionados logren un análisis a nivel sintáctico y hasta semántico es transformando el corpus original. Esta transformación posibilitará que en cada palabra sea expresada no sólo la información léxica sino también información de otras palabras en la oración y las palabras que la rodean, alcanzando así nuevos niveles en el análisis de textos. A continuación se explica cada transformación permitida. 1.. N-Grams.. Esta transformación consiste en transformar cada línea del texto original en otra donde cada palabra sea un conjunto de n palabras originales. Con esta transformación se puede lograr que el texto obtenido tenga información semántica en cada palabra; pues se obtendría por cada palabra la original y las que la rodean, para facilitar su entendimiento ejemplificamos: Dada la línea Pedro construye una casa El resultado sería: Para N=2 Pedro—construye construye—una una—casa Para N=3 Pedro—construye—una construye—una—casa Para N=4=5-9 Pedro—construye—una—casa Como se ha podido apreciar, cuando la cantidad de palabras es menor que el número N seleccionado se representan todas las palabras de la oración de forma que no exista pérdida de información. 2.. Combinations:.

(35) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 35 DE 77. Esta transformación pretende imprimir un significado sintáctico al resultado ya que para cada oración del texto original, se conforma otra oración que es el resultado de unir cada palabra de la oración con todas las diferentes a ella de esa oración: Dada la línea: Pedro construye una casa Obtendríamos: Pedro—construye Pedro—una Pedro—casa construye—una construye—casa una—casa Si tomamos como objeto de comparación las líneas resultas en este ejemplo del corpus transformado, podemos intuir que es mucho mayor en tamaño que el del corpus original, por lo que se recomienda usar técnicas de reducción de dimensionalidad usando el CorpusDRT. 3.. MinMax Markers. Esta transformación convierte el texto original en otro cuando reduce cada línea por otra representada por las palabras más importantes para el texto o el corpus, según se seleccione. Esto posibilita que las dimensiones del corpus inicial sean reducidas y el corpus transformado solo presente la información más importante. El algoritmo para esta transformación consiste en: a.. Determinar las palabras más importantes para el texto o el corpus. ―según se seleccione‖. Donde una palabra es más importante que otra cuando su frecuencia es mayor en el texto o el corpus. b.. Cuando exista alguna oración sin asignar palabra en este ciclo. entonces asignar la palabra más importante a la oración donde esta aparece . c.. Este último paso se repetirá tantas veces como ciclos haya. seleccionado el usuario. Explicación Técnica: Para la implementación de esta aplicación fueron creadas un conjunto de clases y estructuras que serán analizadas detenidamente en el diagrama de clases correspondiente. Solo cabe resaltar que la estructura de.

(36) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 36 DE 77. representación del corpus usada fue la de Árbol de caracteres (Valdés, 2005) por las ventajas explicadas en el material referenciado.. Estructura física:. Diagramas: Ver Anexo II. 15. Corpus CODEC Plataforma: Windows XP o superior. Implementado en: Borland Delphi 6. Objetivo Alcanzado: Ante la imposibilidad de CorpusMiner. (Valdés, 2005) de procesar corpus específicos debido a su tamaño, CorpusCODEC brinda una opción donde traduce cada palabra del corpus por otra, de modo que el espacio en disco requerido por el corpus codificado sea aproximadamente un 40% del corpus original. Explicación Técnica: Este software garantiza una codificación máxima sin pérdida de información, proporcionando una traducción en la que las palabras más frecuentes se traducen por cadenas de caracteres de longitud 1, luego cuando esto es imposible, se traducen por cadenas de caracteres de longitud 2, y así sucesivamente. El tamaño del corpus original solamente influirá en la cantidad de espacio de disco duro necesario para la operación y en la demora en obtener la solución, ya que mientras más grande sea el corpus más lento será el proceso de su codificación y decodificación; pero nunca debido al tamaño del corpus original será imposible su codificación y decodificación. La solución obtenida será el corpus ideal para ser procesado en CorpusMiner; ya que la representación en.

(37) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 37 DE 77. el árbol de caracteres (Valdés, 2005) alcanza sus valores mínimos en cuanto a memoria se refiere. Para lograr la traducción eficiente de los textos, el sistema crea dos archivos claves de codificación y decodificación, estos constituyen el núcleo de todo el proceso. El sistema tiene implementada una vía de reanudación del proceso de modo que si falla el fluido eléctrico o cualquier otro tipo de fallo, el proceso de codificación-decodificación pueda continuarse a partir del momento en que fue interrumpido, ahorrándose así importantes intervalos de tiempo. Recomendaciones de Uso: Se recomienda usar esta herramienta solo cuando las características de la computadora no permitan procesar el corpus. Siempre se deben guardar cuidadosamente los archivos claves de decodificación o codificación, ya que de perderse éstos será imposible decodificar el corpus a menos que se ejecute nuevamente el proceso de codificación partiendo del mismo corpus original a través del cual se crearon los archivos perdidos. Estructura física:. Diagramas: Ver Anexo II.. 16. Corpus DRT Plataforma: Windows XP o superior. Implementado en: Borland Delphi 6. Objetivo. Alcanzado:. En. la. actualidad. existen. varios. reductores. de. dimensionalidad para corpus de textos implementados y funcionando correctamente. Como ejemplo de estos reductores están los reductores de dimensionalidad implementados en la anterior versión de TextLynx y en CorpusMiner, pero sucede que estos algoritmos necesitan el uso de memoria.

(38) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 38 DE 77. RAM, por lo que mientras más grande sea el corpus del que se quiere reducir la dimensionalidad, más grandes serán los requerimientos del sistema y por ende muchos corpus habrán de ser irreductibles con las computadoras que tenemos a nuestro alcance. CorpusDRT brinda la posibilidad de reducir la dimensionalidad de un corpus sin importar cuán grande este sea; además de brindar la posibilidad de eliminar las palabras que no aparezcan en un rango determinado de frecuencia total, reducción también conocida como Ley de Zpif. Explicación Técnica: Para la reducción de dimensionalidad este software utiliza la información almacenada en los archivos que se encuentran en el directorio DATA; en este directorio se encuentran las tablas de sinónimos, palabras de la familia, palabras gramaticales, etc. Estos archivos de datos se encuentran en formato texto ―.txt‖ por tanto pueden ser editados en dependencia de la necesidad de la reducción. Para su edición se debe entender la forma en que han sido escritos: Existen dos tipos de formatos para estos ficheros, un formato es el del fichero de palabras gramaticales que presenta las mismas en una lista, por otra parte, y en otro tipo de formato los ficheros de sinónimos, palabras de la familia, etc. presentan el siguiente formato; word1 tab word2, word3,…, word n lo cual significa que las palabras word2,.., wordn serán sustituidas por word 1. Si la lista de sinónimos o cualquier otra no satisface sus necesidades se puede editar fácilmente. ¿Si CorpusDRT brinda la posibilidad de reducir la dimensionalidad de un corpus sin importar cuán grande este sea, cómo lo hace? Para reducir la dimensionalidad se crea un archivo clave y a partir de este se crea la traducción del corpus original. Este archivo clave ha sido nec esario debido a que en él se basa el proceso de reducción en memoria externa y no interna, siendo este el factor que nos permite poder reducir cualquier tipo de corpus considerando un hardware específico. Se podrá reducir en corpus de cualquier tamaño siempre que la memoria externa lo permita Estructura física:.

(39) TEXTLYNX PLUS: UN ANALIZADOR AVANZADO DE TEXTOS.. PÁG. 39 DE 77. Diagramas: Ver Anexo II.. 2.4 USO DE FICHEROS DE D ATOS. Para su correcto funcionamiento TextLynx Plus depende de la información almacenada en le ficheros de Datos. Estos ficheros en su totalidad pueden ser modificados por los usuarios expertos pero no nos responsabilizamos por las consecuencias pues muchas funcionalidades dependen directamente de esta información y un pequeño cambio puede ocasionar grandes diferencias. Por lo tanto se recomienda antes de hacer cualquier cambio salvarlos en un lugar seguro, de forma tal que si el funcionamiento posterior no resulta el esperado se pueda regresar al estado anterior. Los ficheros de Datos que utiliza TextLynx Plus son los siguientes: 1. Delim02.txt y delim.txt. estos ficheros se encuentran en Data\Delims\ y contienen la lista de delimitadores de tokens 2. Todos los ficheros contenidos en Data\Lists\ presentan listas de información que son necesarias para el desarrollo de procesos como el de transformar corpus. Estas listas son perfectamente editables, de forma que si se desea agregar alguna abreviación, sinónimo, etc., editando estos documentos lo puede conseguir perfectamente. 3. TextLynx.ini localizado en \Data\. Este archivo nos permite inicializar el programa con características seleccionadas por el usuario. En este momento se utiliza para el uso de skins del programa..

Figure

TABLA CONTENIDA EN LOS FICHEROS DE TÓKENES ORDENADOS  ALFABÉTICAMENTE [SRT]
TABLA CONTENIDA EN LOS FICHEROS DE TIPOS POR TEXTO DEL CORPUS  ORDENADOS ALFABÉTICAMENTE [TIP]
TABLA CONTENIDA EN LOS FICHEROS DE TIPOS DEL CORPUS ORDENADOS  ALFABÉTICAMENTE [TCP]
TABLA CONTENIDA EN LOS FICHEROS DE TABLA DE DISTRIBUCIÓN DE LAS  FORMAS LÉXICAS [TB1]
+5

Referencias

Documento similar

n que se contiene La Ordenanza que generalmente deberá observarse para el modo de.. cazar y pescar en estos rey nos, con señalamiento de los tiempos de veda, de una y

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

A partir de los resultados de este análisis en los que la entrevistadora es la protagonista frente a los entrevistados, la información política veraz, que se supone que

La Normativa de evaluación del rendimiento académico de los estudiantes y de revisión de calificaciones de la Universidad de Santiago de Compostela, aprobada por el Pleno or-

Debido a la calidad y el legado de nuestra compañía, los cuales se reflejan en nuestros pianos, elegir un instrumento hecho por Steinway & Sons tiende a ser una decisión

a. Las pruebas diagnósticas y terapéuticas rutinarias o especiales que sea preciso realizar al paciente. La atención derivada de las posibles complicaciones que

Gastos derivados de la recaudación de los derechos económicos de la entidad local o de sus organis- mos autónomos cuando aquélla se efectúe por otras enti- dades locales o