Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Clasificación Automática de Objetos de Conocimiento con Contenido no Estructurado para el Poblado Semiautomático de Ontologías Multidimensionales

506 views

Published on

Hoy en día la cantidad de conocimiento generado de manera digital es considerable en cuanto a la cantidad de objetos de conocimiento disponibles, en específico de artículos científicos.
La mayoría de los artículos científicos utilizan el PDF para ser distribuidos. La variedad de plantillas en los que se publican los artículos científicos complica la tarea de extracción secuencial del texto de forma manual, pues si no se tiene cuidado en la selección del texto, se podría extraer texto sin una secuencia correcta y sin sentido. Realizar la extracción de forma semiautomática o automática resulta una tarea más compleja.
La clasificación de tales objetos de conocimiento de forma manual con base en el dominio de su contenido y utilizando las clases definidas en una taxonomía, requiere de tantos expertos como dominios de conocimientos en los que se desee clasificar, el salario de los expertos y además tiempo para realizar la clasificación de cada objeto de conocimiento.
Cuando el poblado ontológico se realiza de manera manual, esta tarea conlleva tiempo y presenta una desventaja para instanciar múltiples elementos rápidamente.
Hoy en día existen herramientas que realizan las tareas antes mencionadas de manera semiautomática o automática, pero de manera separada.
Realizar la extracción, clasificación y el poblado ontológico a partir de objetos de conocimiento en PDF de forma manual, resulta una tarea que consume mucho tiempo cuando se requiere procesar múltiples objetos, en un menor tiempo.
En el presente trabajo de investigación se analizaron las técnicas existentes para realizar la extracción secuencial del texto y la identificación de características del texto a partir de un artículo científico en PDF.
También se analizaron algunos algoritmos de clasificación de textos, identificados a partir del estado del arte, con los cuales se implementaron diversas variaciones del clasificador, dichas variaciones del clasificador fueron probadas con un corpus formado manualmente y la taxonomía de la ACM, a partir de la librería de la ACM. De las ocho variaciones del clasificador, a través de los resultados obtenidos en las pruebas se pudo concluir cual variación arrojaba las mejores métricas. Además se identificó la lógica para realizar el poblado de una ontología que modela a los artículos científicos, las clases en las que pueden estar clasificados y los autores de los artículos.
A partir del análisis previo se generó un mecanismo el cual implementa de forma unificada la extracción automática de texto, clasificación automática y el poblado ontológico semiautomático a partir de textos no estructurados en PDF.
Al mecanismo que se realizó, se le diseñó una interfaz web que permite seleccionar un artículo científico en PDF y de forma automática se extrae el texto del artículo, se identifican algunas secciones del articulo como por ejemplo, el título, los autores, las palabras clave

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

Clasificación Automática de Objetos de Conocimiento con Contenido no Estructurado para el Poblado Semiautomático de Ontologías Multidimensionales

  1. 1. cnológico Centro Nacional de Investigación y Desarrollo Tecnológico Subdirección Académica Cuernavaca, Morelos, México. Julio de 2014. Departamento de Ciencias Computacionales TESIS DE MAESTRÍA EN CIENCIAS Clasificación Automática de Objetos de Conocimiento con Contenido No Estructurado Para el Poblado Semiautomático de Ontologías Multidimensionales presentada por Ing. Juan Carlos Rendón Miranda como requisito para la obtención del grado de Maestro en Ciencias de la Computación Director de tesis Dr. Juan Gabriel González Serna Codirectora de tesis Dra. Azucena Montes Rendón
  2. 2. P á g i n a | i i
  3. 3. P á g i n a | ii ii
  4. 4. P á g i n a | iii iii Dedicatorias A mis padres, sin ellos nada A mis hermanos y hermanas, por su apoyo y experiencias A mis sobrinas, porque las quiero ver triunfar en la vida A mis tíos y demás familia, por el apoyo y los buenos momentos A mis amigos, por invitarme a divertirme y ayudarme cuando lo necesité
  5. 5. P á g i n a | iv iv Agradecimientos A mis directores de tesis, el Dr. Juan Gabriel y la Dra. Azucena, por ser guía y apoyo incondicional para la realización de esta investigación y porque nunca dejaron de creer en mí. A mis revisores de tesis: Dr. Noé Alejandro Castro Sánchez, Dr. Máximo López Sánchez y Dr. David Eduardo Pinto Avendaño, por su invaluable tiempo y comentarios dedicados en la revisión de mi trabajo. A los profesores que conocí como alumno de CENIDET, por sus enseñanzas. A mis compañeros de generación Julia e Hiram, por ser parte de mi formación y con quien compartí retos y éxitos. A mi familia por ser mi base fundamental y que me ha apoyado con las decisiones que he tomado durante la maestría. A mis amigos que me apoyaron, comprendieron y con quienes he compartido muy buenos momentos, en especial a H., N., M., T., Z. y O. A todas las demás personas que fueron parte de mi formación y de este proyecto, sin las cuales no hubiera sido lo mismo. Al Centro Nacional de investigación y Desarrollo Tecnológico (CENIDET) por darme la oportunidad de formarme dentro de sus aulas. Al Consejo Nacional de Ciencia y Tecnología (CONACYT) por el apoyo económico brindado durante mis estudios de maestría.
  6. 6. P á g i n a | v v Resumen Hoy en día la cantidad de conocimiento generado de manera digital es considerable en cuanto a la cantidad de objetos de conocimiento disponibles, en específico de artículos científicos. La mayoría de los artículos científicos utilizan el PDF para ser distribuidos. La variedad de plantillas en los que se publican los artículos científicos complica la tarea de extracción secuencial del texto de forma manual, pues si no se tiene cuidado en la selección del texto, se podría extraer texto sin una secuencia correcta y sin sentido. Realizar la extracción de forma semiautomática o automática resulta una tarea más compleja. La clasificación de tales objetos de conocimiento de forma manual con base en el dominio de su contenido y utilizando las clases definidas en una taxonomía, requiere de tantos expertos como dominios de conocimientos en los que se desee clasificar, el salario de los expertos y además tiempo para realizar la clasificación de cada objeto de conocimiento. Cuando el poblado ontológico se realiza de manera manual, esta tarea conlleva tiempo y presenta una desventaja para instanciar múltiples elementos rápidamente. Hoy en día existen herramientas que realizan las tareas antes mencionadas de manera semiautomática o automática, pero de manera separada. Realizar la extracción, clasificación y el poblado ontológico a partir de objetos de conocimiento en PDF de forma manual, resulta una tarea que consume mucho tiempo cuando se requiere procesar múltiples objetos, en un menor tiempo. En el presente trabajo de investigación se analizaron las técnicas existentes para realizar la extracción secuencial del texto y la identificación de características del texto a partir de un artículo científico en PDF. También se analizaron algunos algoritmos de clasificación de textos, identificados a partir del estado del arte, con los cuales se implementaron diversas variaciones del clasificador, dichas variaciones del clasificador fueron probadas con un corpus formado manualmente y la taxonomía de la ACM, a partir de la librería de la ACM. De las ocho variaciones del clasificador, a través de los resultados obtenidos en las pruebas se pudo concluir cual variación arrojaba las mejores métricas.
  7. 7. P á g i n a | vi vi Además se identificó la lógica para realizar el poblado de una ontología que modela a los artículos científicos, las clases en las que pueden estar clasificados y los autores de los artículos. A partir del análisis previo se generó un mecanismo el cual implementa de forma unificada la extracción automática de texto, clasificación automática y el poblado ontológico semiautomático a partir de textos no estructurados en PDF. Al mecanismo que se realizó, se le diseñó una interfaz web que permite seleccionar un artículo científico en PDF y de forma automática se extrae el texto del artículo, se identifican algunas secciones del articulo como por ejemplo, el título, los autores, las palabras clave y el resumen; se realiza la clasificación automática del articulo con base en la taxonomía de la ACM y finalmente se realiza el poblado ontológico semiautomático con los elementos del articulo obtenidos en la extracción y la clase obtenida en el clasificador. El presente trabajo puede tomarse como base para realizar la clasificación de objetos de conocimiento de otros dominios.
  8. 8. P á g i n a | vii vii Abstract The amount of knowledge digitally generated nowadays is substantially based on the quantity of knowledge objects available: research papers, specifically. Most of the research papers are distributed in a PDF. The wide range of papers style complicates the task of manual sequential extraction from a text. Furthermore what is more important, if it is not followed the appropriate procedure of selecting the text to extract may not follow a sequence or may have no meaning at all. Extracting a text automatically or semi automatically becomes a more complex task. Classifying knowledge objects manually, based on the content domain and using defined taxonomies require as many experts as domains of knowledge to classify them, also their wages and time to perform the classification of every single knowledge object too. When the ontology population is manually done, this task requires too much time and it presents a disadvantage when trying to instantiate several elements rapidly, at the same time. These days, there are tools that are able to perform the text extraction, classification and ontology population in an automatic or semi-automatic way. Performing the extraction, classification and ontology population manually using knowledge objects in PDF is a complex task when it is required processing several objects in a minor time. Several existing techniques were analyzed in this research in order to extract sequential text and to identify text characteristics using a research paper in PDF. Some text classifying algorithms were also analyzed. These algorithms were identified based on the state of the art and by using these algorithms we were able to implement several classifier variations that were tested with a research paper corpus manually selected from the ACM digital library and the ACM taxonomy. From the eight classifier variations we selected the one with the best results. The logic to build up the population of an ontology that models the research paper, the classes were the papers belong and the paper authors was identified. A mechanism was developed from the previous analysis that implements the automatic extraction, the automatic classification and semi-automatic ontology population from non-structured text in PDF.
  9. 9. P á g i n a | viii viii Consequently, a Web interface was built up for the previous mechanism that allows the user to pick a research paper in PDF. In the first stage it extracts the paper text automatically, identifying some paper sections such as title, authors, keywords and the abstract, then with the extracted information the paper classification is performed using the ACM taxonomy and finally this paper is instantiated in the ontology. This research can be used to perform classification of knowledge objects in several knowledge domains.
  10. 10. P á g i n a | ix ix 1 Índice 1. Introducción ................................................................................................................................ 2 1.1. Antecedentes ...................................................................................................................... 4 1.2. Planteamiento del problema .............................................................................................. 5 1.3. Objetivos ............................................................................................................................. 6 1.3.1. Objetivos específicos ................................................................................................... 6 1.4. Justificación ......................................................................................................................... 6 1.5. Beneficios ............................................................................................................................ 7 1.6. Estructura del documento................................................................................................... 8 2. Fundamento teórico .................................................................................................................. 10 2.1. Ontología ........................................................................................................................... 10 2.2. Taxonomía ......................................................................................................................... 10 2.3. Taxonomía de la ACM ....................................................................................................... 10 2.4. NLTK .................................................................................................................................. 11 2.5. Aprendizaje automático .................................................................................................... 12 2.6. Clasificación ....................................................................................................................... 12 2.7. Clasificación automática de textos .................................................................................... 13 2.8. Representación de los documentos .................................................................................. 14 2.9. Pre-procesamiento del texto ............................................................................................ 15 2.9.1. Normalización de términos ....................................................................................... 16 2.9.2. Eliminación de stopwords ......................................................................................... 17 2.9.3. Identificación de familias léxicas ............................................................................... 17 2.9.4. Segmentación ............................................................................................................ 18 2.9.5. Vectorización ............................................................................................................. 18 2.10. Métricas de evaluación ................................................................................................. 19 2.11. Algoritmos de clasificación ............................................................................................ 20 2.11.1. Naive Bayes ............................................................................................................... 21 2.11.2. Máquinas de vectores de soporte ............................................................................. 23 2.11.3. Arboles de decisión ................................................................................................... 25 2.11.4. k-nearest neighbors .................................................................................................. 26 3. Estado del arte .......................................................................................................................... 29
  11. 11. P á g i n a | x x 3.1. Layout-aware text extraction from full-text PDF of scientific articles (Ramakrishnan, Patnia, Hovy, & Burns, 2012) ........................................................................................................ 29 3.2. GROBID: Combining Automatic Bibliographic Data Recognition and Term Extraction for Scholarship Publications (Lopez, 2009) ......................................................................................... 30 3.3. Evaluation of header metadata extraction approaches and tools for scientific PDF documents (Lipinski, Yao, Breitinger, Beel, & Gipp, 2013) ........................................................... 31 3.4. Comparison of Text Categorization Algorithms (Yong-feng & Yan-ping, 2004) ................ 32 3.5. A Regularized Linear Classifier for Effective Text Classification (Nandanwar & Narasimha Murty, 2012) ................................................................................................................................. 33 3.6. A hybrid text classification approach with low dependency on parameter by integrating K-nearest neighbor and support vector machine (Heng Wana, Hong Leeb, & Rajkumarb, 2012) 34 3.7. Multi-label Hierarchical Text Classification using the ACM Taxonomy (Santos & Rodrigues, 2009) ........................................................................................................................... 35 3.8. Support Vector Machines classification with a very large-scale taxonomy (Tie-Yan, Yang, Hao, Hua-Jun, Zheng, & Wei-Ying, 2005) ...................................................................................... 36 3.9. Automated Arabic Text Categorization Using SVM and NB (Alsaleem, 2011) .................. 36 3.10. Tabla comparativa ......................................................................................................... 38 4. Metodología de solución para la extracción automática de información, clasificación automática y poblado ontológico semiautomático de textos no estructurados en PDF ................. 41 4.1. Describiendo la metodología ............................................................................................ 42 4.1.1. Etapa 1. Extracción .................................................................................................... 42 4.1.2. Etapa 2. Clasificación ................................................................................................. 43 4.1.3. Etapa 3. Poblado ontológico ..................................................................................... 46 5. Implementación de la metodología de solución ....................................................................... 49 5.1. Formación del corpus ........................................................................................................ 51 5.1.1. Extracción .................................................................................................................. 54 5.1.2. División del corpus para obtener el conjunto de entrenamiento y el conjunto de pruebas 55 5.2. Pre-procesamiento del conjunto de entrenamiento y representación vectorial ............. 56 5.3. Entrenamiento .................................................................................................................. 56 5.4. Pre-procesamiento del texto a clasificar y representación vectorial ................................ 58 5.5. Clasificador y texto clasificado .......................................................................................... 58 5.5.1. Variaciones del clasificador ....................................................................................... 58
  12. 12. P á g i n a | xi xi 5.6. Poblado ontológico ........................................................................................................... 59 5.7. Planeación de las pruebas ................................................................................................. 60 6. Pruebas y resultados ................................................................................................................. 62 6.1. Resultados de las variaciones del clasificador .................................................................. 62 6.1.1. Bayes + Texto completo + Bigramas ......................................................................... 62 6.1.2. SVM + Texto completo + Bigramas ........................................................................... 62 6.1.3. Bayes + Resumen + Bigramas .................................................................................... 63 6.1.4. SVM + Resumen + Bigramas ...................................................................................... 64 6.1.5. Bayes + Texto completo + Unigramas ....................................................................... 64 6.1.6. SVM + Texto completo + Unigramas ......................................................................... 65 6.1.7. Bayes + Resumen + Unigramas ................................................................................. 65 6.1.8. SVM + Resumen + Unigramas ................................................................................... 66 6.2. Análisis de los resultados de las variaciones del clasificador ............................................ 67 7. Conclusiones.............................................................................................................................. 70 7.1. Hipótesis ............................................................................................................................ 70 7.2. Comprobación de la hipótesis ........................................................................................... 71 7.3. Conclusiones finales .......................................................................................................... 72 7.4. Aportaciones ..................................................................................................................... 73 7.4.1. Interfaz web para la implementación de la metodología ......................................... 73 7.5. Trabajos futuros ................................................................................................................ 74 8. Anexos ....................................................................................................................................... 76 8.1. Anexo 1. Resultados del clasificador SVM+Resumen+Bigramas ....................................... 76 9. Bibliografía .............................................................................................................................. 109
  13. 13. P á g i n a | xii xii 2 Índice de Figuras Figura 1. Representación básica de la taxonomía de la ACM. Los cuadros azules representan las clases finales a las que puede ser clasificado un objeto de conocimiento ....................................... 11 Figura 2. Los vectores de soporte están sobre las líneas punteadas. A través de un hiperplano h identificado por SVM se puede separar los elementos positivos de los negativos a través de un margen máximo ................................................................................................................................ 24 Figura 3. Árbol de decisión sencillo (Quinlan, 1986) ......................................................................... 25 Figura 4. Metodología de solución propuesta .................................................................................. 41 Figura 5. Esquema para la construcción y pruebas de un clasificador.............................................. 45 Figura 7. Vista parcial de la tabla taxonomia_acm, la cual modela la taxonomía de la ACM ........... 52 Figura 8. Captura de pantalla de una clase final de la librería online de la ACM (Combinatorial algorithms - ACM DL) ........................................................................................................................ 53 Figura 9. Vista parcial de la tabla tesis_papers en la que se almacenaron los datos de los artículos recuperados en la formación del corpus .......................................................................................... 54 Figura 10. Captura de pantalla de la página principal de la herramienta construida con interfaz web ........................................................................................................................................................... 73 Figura 11. Captura de pantalla de la página del resultado del procesamiento de la herramienta construida con interfaz web .............................................................................................................. 74
  14. 14. P á g i n a | xiii xiii 3 Índice de Tablas Tabla 1. Stopwords en inglés, incluidas en NLTK .............................................................................. 15 Tabla 2. Vocales en minúsculas del alfabeto inglés con acento derecho escrito y su codificación en ISO8859-1 (ISO/IEC 8859-1:1998) ..................................................................................................... 16 Tabla 3. Resultado de la vectorización de un texto .......................................................................... 19 Tabla 4. Comportamiento de un sistema de clasificación automática de textos, según los aciertos y errores ............................................................................................................................................... 20 Tabla 5. Comparativa de los trabajos relacionados .......................................................................... 39 Tabla 6. Reglas de selección por clase de las publicaciones para formar los conjuntos de entrenamiento y pruebas .................................................................................................................. 55 Tabla 7. Representación de las listas de palabras iniciales y finales, asociadas a cada clase ........... 57 Tabla 8. Combinación de los algoritmos de clasificación y las características de los artículos científicos .......................................................................................................................................... 59 Tabla 9. Combinación de los algoritmos de clasificación con las características de los artículos científicos y los enfoques de selección de n-gramas ........................................................................ 59 Tabla 10. Resultados de las pruebas con la variación del clasificador: Bayes + Texto completo + Bigramas ............................................................................................................................................ 62 Tabla 11. Resultados de las pruebas con la variación del clasificador: SVM + Texto completo + Bigramas ............................................................................................................................................ 63 Tabla 12. Resultados de las pruebas con la variación del clasificador: Bayes + Resumen + Bigramas ........................................................................................................................................................... 63 Tabla 13. Resultados de las pruebas con la variación del clasificador: SVM + Resumen + Bigramas 64 Tabla 14. Resultados de las pruebas con la variación del clasificador: Bayes + Texto completo + Unigramas ......................................................................................................................................... 65 Tabla 15. Resultados de las pruebas con la variación del clasificador: SVM + Texto completo + Unigramas ......................................................................................................................................... 65 Tabla 16. Resultados de las pruebas con la variación del clasificador: Bayes + Resumen + Unigramas ......................................................................................................................................... 66 Tabla 17. Resultados de las pruebas con la variación del clasificador: SVM + Resumen + Unigramas ........................................................................................................................................................... 66 Tabla 18. Promedios de los resultados de las pruebas de las ocho variaciones del clasificador ...... 67 Tabla 19. Resultados de la clasificación con la variación del ultimo nivel ........................................ 72 Tabla 20. Comparativa de los resultados promedios de la variación del clasificador que arrojó las mejores puntuaciones y de los obtenidos en la comprobación de la hipótesis ............................... 72 Tabla 21. Clases de los objetos de conocimiento obtenidas a través del clasificador SVM+Resumen+Bigramas y clases a las que pertenecen los objetos de conocimiento en la librería digital de la ACM ............................................................................................................................. 107
  15. 15. CAPITULO I Introducción
  16. 16. C a p í t u l o I . I n t r o d u c c i ó n 2 1. Introducción Por naturaleza, los seres humanos han utilizado diferentes formas de expresión, incluida la escritura, de la cual se han servido para expresar sus pensamientos, deseos, conocimientos, etc. Con los avances tecnológicos el acervo de objetos de conocimiento en formato texto ha pasado a ser de manera digital y la cantidad de información disponible aumenta cada día. Durante la última década, la generación y distribución de los documentos ha pasado a ser en formato digital, de ahí que la mayoría de las publicaciones científicas estén en texto PDF (Ramakrishnan, Patnia, Hovy, & Burns, 2012) dado a la aceptación global que este formato ha tenido, gracias a que sin depender tanto del sistema operativo, se puedan visualizar correctamente los documentos. Sin embargo la falta de una estructura estandarizada dificulta la extracción de información de los artículos científicos. En la mayoría de las organizaciones, la producción de información comienza a generarse sin tener una organización uniforme de los documentos desde el principio y cuando la colección de conocimiento ya es significativa se identifica la dificultad del manejo y la recuperación de la información relevante, para lo cual se requiere de una organización de los documentos. La organización de los documentos ayuda a aprovechar la información contenida dentro de los objetos de conocimiento y eso se puede dar a través de una clasificación de acuerdo al dominio del contenido de los objetos de conocimiento, esto para ayudar a la recuperación de información relevante cuando se requiera. Con los avances tecnológicos, la producción, distribución y el acceso digital a la información se ha incrementado con los esfuerzos de estandarizar el idioma en el que están escritos los documentos. La mayoría de los artículos científicos se encuentran escritos en idioma inglés (Bordons & Gómez, 2004). La minería de textos ha creado diferentes líneas de investigación para el tratamiento automático de textos con la finalidad de mejorar la extracción, recuperación (Henzinger, 2004) y clasificación automática de textos (Sebastiani, Classification of text, automatic, 2006). La clasificación de textos es una tarea que ayuda a la organización de información a través de clases descriptivas, por ejemplo: en el sentido de opinión, atribución de autoría de un texto (Bruce, 1972), o con base en el dominio de conocimiento de los textos (Sebastiani, Machine learning in automated text categorization, 2002).
  17. 17. C a p í t u l o I . I n t r o d u c c i ó n 3 Con el paso de los años, la clasificación de textos ha pasado de ser manual a enfoques semiautomáticos o automáticos, mejorando la precisión de la clasificación, reduciendo tiempos de aprendizaje y clasificación, además de disminuir los costos del proceso de clasificar textos. En este documento hablaremos sobre la problemática y solución de la extracción de información a partir de documentos de texto con contenido no estructurado, para ser clasificados con base en el dominio de conocimiento de su contenido utilizando una taxonomía. En la línea de Sistemas Distribuidos del departamento de Ciencias Computacionales, dentro del Centro Nacional de Investigación y Desarrollo Tecnológico (CENIDET), se desarrolló un conjunto de ontologías, las que permiten modelar los recursos y servicios de una organización, adicionalmente se han desarrollado investigaciones relacionadas con sistemas de recomendación (SR), estos dos trabajos permiten proporcionar a los usuarios recomendaciones con base en el su perfil y la información de las recomendaciones es extraída del conjunto de ontologías desarrollada en el laboratorio de Sistemas Distribuidos (LSD). El sistema de recomendación implementado en el LSD tiene la capacidad de recomendar ítems heterogéneos, por ejemplo: personas, lugares, eventos y objetos de conocimiento. De estos últimos no se cuenta con un mecanismo que realice la extracción automática de información de un documento no estructurado, por ejemplo archivos PDF, como es el caso de los artículos científicos y que además puedan ser clasificados con base en el dominio de conocimiento de su contenido, lo cual servirá al sistema de recomendación desarrollado en el LSD para realizar las recomendaciones pertinentes al usuario. El objetivo de esta investigación fue analizar las técnicas existentes para la extracción de información a partir de textos en PDF y la clasificación automática de textos, para desarrollar un mecanismo que permita extraer de forma automática información de un artículo científico, clasificarlo automáticamente con base en el dominio de conocimiento de su contenido y además realizar el poblado ontológico de forma semiautomática con la información extraída del objeto de conocimiento y la clase asignada al mismo.
  18. 18. C a p í t u l o I . I n t r o d u c c i ó n 4 1.1. Antecedentes En el grupo de Sistemas de Recomendación Sensibles al Contexto (por sus siglas en inglés, CARS) de CENIDET, se ha realizado una serie de trabajos de investigación en el marco del proyecto T-Guía, el cual consiste en el desarrollo de un sistema de recomendación semántico sensible al contexto (SRSSC) diseñado para realizar recomendaciones de personas, objetos de conocimiento, lugares, eventos, actividades, recursos tecnológicos y servicios a los miembros o visitantes de una organización, con especial énfasis en Instituciones de Educación Superior (IES). Un sistema sensible al contexto es aquel que toma como uno de sus atributos de entrada el entorno en el que se ejecuta. T-Guía es un sistema de recomendación sensible al contexto, funciona en dispositivos móviles inteligentes de los que aprovecha algunos de sus componentes y sensores. T-Guía funciona a partir de una ubicación, orientación y perfil de usuario. Esta caracterización permite extraer información instanciada en el conjunto de ontologías denominadas Ontología de Memoria Organizacional (González Franco, 2012). Los distintos tipos de ítems son recomendados al usuario con la finalidad de brindarle información que pudiera serle de interés o utilidad. Hasta el momento la Red de ontologías multidimensionales que se ha desarrollado en el grupo CARS, denominada Ontología de Memoria Organizacional, tiene instanciados objetos de conocimiento, sin embargo, estos no se encuentran clasificados, lo cual podría considerarse una desventaja, pues un sistema de recomendación para poder considerar con más precisión estos ítems, tendrían que estar previamente clasificados para así poder seleccionarlos en recomendaciones con base en las temáticas de interés de un usuario dado y a las temáticas del contenido de un objeto de conocimiento. El proyecto T-Guía extrae la información de la Ontología de Memoria Organizacional, en donde se encuentra la ontología que modela objetos de conocimiento. El poblado de los objetos de conocimiento se realiza de forma manual, esta tarea consume bastante tiempo y este podría extenderse en situaciones en las que se cuenta con grandes cantidades de objetos de conocimiento por instanciar. En (Munguía Aguilar, 2012) se abordó el problema de la extracción de información de un sitio web a través de un conjunto de reglas y especificaciones para realizar un poblado ontológico de forma semiautomática. En este trabajo encontramos un primer acercamiento para la extracción de información, las soluciones planteadas en el mismo, podrían ser adaptadas
  19. 19. C a p í t u l o I . I n t r o d u c c i ó n 5 parcialmente a la extracción y procesamiento de los objetos de conocimiento, además brinda información para realizar un poblado ontológico de forma semiautomática, tarea que se tiene contemplada en el presente trabajo de investigación. 1.2. Planteamiento del problema Actualmente, en el grupo de Sistemas de Recomendación Sensibles al Contexto (por sus siglas en inglés, CARS), del Departamento de Ciencias Computacionales del CENIDET, se cuenta con una Red de ontologías multidimensional cuyo fin es modelar la información referente a un escenario organizacional incluyendo dimensiones contextuales, conocimiento correspondiente a una memoria organizacional, a una memoria individual y a las características de los usuarios del sistema. Dentro de esta red de ontologías, existen algunas que se encargan de modelar el capital intelectual de la organización, incluyendo objetos de conocimiento. El poblado de este fragmento de la red se realiza de manera manual, tarea que conlleva tiempo y presenta una desventaja para instanciar múltiples elementos rápidamente. Adicionalmente, se requiere que las instancias de objetos de conocimiento contenidas en la red se encuentren clasificadas de acuerdo a su dominio conocimiento. Hoy en día, existen herramientas capaces de instanciar una ontología a partir de texto. Sin embargo, su capacidad de clasificar se encuentra limitada a la explícita mención del dominio de conocimiento dentro del contenido del texto. A pesar de las palabras clave que algunos objetos de conocimiento poseen, aún se requiere diferenciar entre los distintos significados de las mismas. Por ejemplo, la palabra clave "ontología" puede aplicar tanto para "Web Semántica" como para "Sociología", dependiendo del contexto. Debido a esto, el problema que el presente trabajo de investigación trata es sobre la reducción de tiempo en la realización de manera unificada de las tareas de extracción automática de la información, la clasificación automática con base en el dominio de conocimiento y el poblado semiautomático de la ontología de objetos de conocimiento a partir de un objeto de conocimiento de texto en PDF. Una vez que se resuelva esta carencia, será posible realizar cálculos e inferencias sobre la información poblada y clasificada, así T-GUIA podrá considerar los objetos de conocimiento para poder brindarlos en recomendaciones con base en las temáticas
  20. 20. C a p í t u l o I . I n t r o d u c c i ó n 6 de interés de un usuario dado y a las temáticas del contenido de un objeto de conocimiento. 1.3. Objetivos Desarrollar un mecanismo que de manera unificada procese documentos de texto en PDF, permita clasificarlos de forma automática de acuerdo al dominio de conocimiento al que pertenece utilizando una taxonomía y realizar el poblado semiautomático de la ontología que modela los objetos de conocimiento, la cual que forma parte de la Ontología de Memoria Organizacional. 1.3.1. Objetivos específicos Dado que se conoce el conjunto de ontologías multidimensionales desarrollada en CARS (González Franco, 2012), se va a considerar la taxonomía de la ACM 2012, como el conjunto de clases para la clasificación de los objetos de conocimiento, una vez que se incorpore la taxonomía dentro del conjunto de ontologías denominada Ontología de Memoria Organizacional 1.0. Formar un corpus de objetos de conocimiento, con elementos previamente clasificados en la taxonomía de la ACM 2012, que sirva como corpus para el entrenamiento y pruebas de esta investigación. Realizar la extracción automática de título, autores, keywords, resumen y texto completo a partir de los objetos de conocimiento. Someter el conjunto de pruebas al clasificador. Realizar la instanciación ontológica de forma automática con la información extraída de los objetos de conocimiento y la clase determinada por el clasificador. 1.4. Justificación Dentro de la Red de ontologías multidimensionales (González Franco, 2012) que se ha desarrollado en el grupo CARS, existen instanciados objetos de conocimiento, sin embargo no se encuentran clasificados con base en el dominio de su contenido, lo cual imposibilita que puedan ser brindados en las recomendaciones que T-GUIA realiza. Una vez completado el proceso de extracción automática, clasificación automática y poblado ontológico semiautomático, las instancias de la ontología podrán ser utilizadas para ampliar las recomendaciones que realiza T-GUÍA, pudiendo brindar en recomendaciones los objetos de conocimiento con base en el dominio de su contenido.
  21. 21. C a p í t u l o I . I n t r o d u c c i ó n 7 Como se mencionó en el planteamiento del problema, si se requirieran clasificar en una taxonomía, múltiples objetos de conocimiento, necesitaríamos de expertos para realizar una clasificación adecuada, sin embargo esta tarea se llevaría mucho tiempo y se requeriría de tantos expertos como dominios de conocimiento en los que se desee clasificar y los resultados de la clasificación manual podrían no ser los más óptimos, pues dependeríamos de la subjetividad de los expertos, mientras que en el método automático de clasificación que utilizaremos dependeremos de un conjunto previamente clasificado para cada clase que servirá como entrenamiento. 1.5. Beneficios Se cuenta con un mecanismo que de manera unificada permite realizar en un menor tiempo la extracción automática de la información de los objetos de conocimiento de texto en PDF, la clasificación automática de los mismos con base en las clases definidas en la taxonomía, logrando además de la clasificación automática, el poblado semiautomático de la ontología que modela objetos de conocimiento y que forma parte de la red de ontologías multidimensionales denominada Ontología de Memoria Organizacional. Con el mecanismo propuesto, la clasificación de objetos de conocimiento se realiza de manera automática, es decir, la tarea de clasificación de múltiples objetos de conocimiento, se realiza en un menor tiempo y nuevos objetos de conocimiento posteriores a los existentes, serán clasificados sin mayor contratiempo gracias a la herramienta desarrollada. Con la herramienta que se desarrolló, la clasificación de objetos de conocimiento se realiza de manera automática, es decir, la tarea de clasificación de múltiples objetos de conocimiento, se realiza en un menor tiempo y nuevos objetos de conocimiento posteriores a los existentes, serán clasificados sin mayor contratiempo gracias a la herramienta desarrollada. Con la clasificación se tendrá una organización de los objetos de conocimiento con base en una taxonomía, generando así un modelo que puede ser adaptado a diversos dominios de conocimiento sin importar la cantidad de niveles en los que se requiera clasificar. Una vez clasificados e instanciados en la ontología de objetos de conocimiento, las instancias podrán utilizarse para ampliar o mejorar las recomendaciones de objetos de conocimiento que realiza la herramienta T-GUIA, así como el ahorro de tiempo,
  22. 22. C a p í t u l o I . I n t r o d u c c i ó n 8 dinero y esfuerzo, siendo beneficiada la institución que implemente la herramienta desarrollada. 1.6. Estructura del documento Este documento se encuentra organizado en siete capítulos, los cuales describen el trabajo de investigación en sus diversas etapas como se indica a continuación: En el capítulo II: Fundamento Teórico, se abordan los temas relevantes a la presente investigación. En el capítulo III: Estado del Arte, se presenta un panorama de la información obtenida a través de la investigación sobre los enfoques para la extracción de información a partir de textos en PDF, así de la clasificación de textos. En el capítulo IV: Metodología de solución propuesta para la extracción automática de información, clasificación automática y poblado ontológico semiautomático de textos no estructurados en PDF. En el capítulo V: Implementación de la Metodología para la Extracción automática de información, clasificación automática y poblado ontológico semiautomático de textos no estructurados en PDF, tomando como base las fases presentadas en el capítulo anterior. En el capítulo VI: Pruebas y Resultados, se presentan las pruebas realizadas y los resultados obtenidos, con la finalidad de brindar resultados confiables y seleccionar la mejor técnica de clasificación para ser implementada en la herramienta objetivo de este trabajo de investigación. Por último, en el capítulo VII, se presentan las conclusiones a las que se llegaron con las pruebas realizadas, se identifican las aportaciones realizadas y los trabajos futuros de la presente investigación.
  23. 23. CAPITULO II Fundamento teórico
  24. 24. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 10 2. Fundamento teórico Para la elaboración de la Clasificación automática de objetos de conocimiento con contenido no estructurado para el poblado semiautomático de ontologías multidimensionales, se han tomado en cuenta los conceptos básicos que ayuden a un mejor entendimiento del presente trabajo de investigación 2.1. Ontología En (Hepp, De Leenheer, De Moor, & Sure, 2007) se describe como los filósofos griegos Sócrates y Aristóteles fueron los primeros en desarrollar los fundamentos de la ontología. Sócrates introdujo la noción de las ideas abstractas, una jerarquía entre ellos y las relaciones de instancia de clase. Aristóteles añadió las asociaciones lógicas. Dando como resultado un modelo bien estructurado, que es capaz de describir el mundo real. Sin embargo, no es trivial para incluir todas las relaciones amplias y complejas de nuestro entorno. En la historia moderna, el termino ontología de acuerdo con (Guber, 1995), se define como “Una especificación de una conceptualización” donde una conceptualización es una visión abstracta y simplificada del mundo que queremos representar con algún propósito. Una conceptualización se refiere a un modelo abstracto de algún fenómeno en el mundo, identificando el concepto relevante de este fenómeno. 2.2. Taxonomía En (Unni & K., 2012) definen taxonomía como el conjunto de conceptos ordenados de forma jerárquica, en donde los términos pertenecientes a cada nivel heredan atributos a otros conceptos de jerarquías inferiores y en donde los conceptos de un mismo nivel comparten ciertos atributos que son heredados de una jerarquía superior. 2.3. Taxonomía de la ACM La taxonomía de la ACM 2012 es un conjunto de clases predefinidas que fue utilizada en el esquema de clasificación de la ACM en la versión del año 2012 (Association for Computing Machinery (ACM)). Las clases definidas están relacionadas con el área de ciencias computacionales y existe una organización jerárquica de hasta seis niveles.
  25. 25. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 11 Figura 1. Representación básica de la taxonomía de la ACM. Los cuadros azules representan las clases finales a las que puede ser clasificado un objeto de conocimiento El primer nivel está integrado por 14 clases codificadas con una letra mayúscula de la A a la N, están subdivididas en el segundo nivel por clases identificadas con la letra correspondiente al primer nivel y un número entero incrementable según la cantidad de clases en este nivel, por ejemplo A.1, A.2, …, D.6, D.7, ..., N.5, N.6, las cuales, a su vez están divididas en clases en un tercer nivel jerárquico. Hay clases que a partir del tercer nivel y hasta el sexto nivel ya son clases finales, es decir, ya no tienen clases hipónimas, por el contrario las clases que no son clases finales las podemos encontrar hasta el quinto nivel. Las clases finales también son llamadas descriptores de temas. La taxonomía de la ACM 2012, fue implementada a partir del año 2012 en el nuevo esquema de clasificación, a través de esta taxonomía son indexadas de forma ordenada las publicaciones de la ACM dentro de la librería digital. La taxonomía de la ACM 2012 está disponible para su descarga en formato XML, Word y HTML. Estos últimos dos formatos son en forma de lista, mientras que el formato XML respeta y describe explícitamente las relaciones de jerarquía de las clases. 2.4. NLTK El Natural Language Toolkit o mejor conocido como NLTK, es un conjunto de programas de código abierto, cuenta con una variedad de algoritmos implementados en Python, los cuales ayudan a realizar múltiples tareas del lenguaje natural (Loper & Bird, 2002).
  26. 26. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 12 También cuenta con una variedad de conjuntos de datos de prueba y un libro (Bird, Klein, & Loper, 2009) publicado bajo licencia Creative Commons (CC) en donde a detalle se muestran en forma de manual, ejemplos claros de tareas a resolver en el área del lenguaje natural con la implementación de estas librerías. 2.5. Aprendizaje automático Una persona adquiere habilidades y conocimientos gracias a la experiencia o enseñanza, entonces podemos decir que ha aprendido. Sin embargo hasta el momento no existe una máquina que aprenda de la misma manera que el ser humano, sin embargo, se han creado diversos algoritmos para algunas tareas de aprendizaje. El aprendizaje automático se refiere a aquellos programas de computadora que una vez construidos puedan mejorar automáticamente gracias a la experiencia, es decir, que puedan aprender. De manera formal, podemos definir que el aprendizaje automático de un programa se da cuando a partir de la experiencia o entrenamiento (E), con respecto a una tarea o a un conjunto de tareas (T) y a través de una métrica de desempeño (M), los resultados de las M después de la ejecución de las T mejoran gracias al E. (Mitchell, 1997). Generalmente son múltiples las tareas que deben resolverse para lograr el objetivo del aprendizaje automático, es decir, que mejore a través de una experiencia dada. 2.6. Clasificación La clasificación es el proceso de colocar de forma ordenada un objeto específico o concepto, en un conjunto de clases (Gorunescu, 2011). La clasificación se apoya en las características respectivas del concepto u objeto especifíco que este tenga en común con las características definidas por un experto o alguna clase del conjunto (Jain & Aggarwal, 2009). Como el nombre lo sugiere, el tipo más sencillo del problema de clasificación se refiere a la identificación de un objeto o fenómeno desconocido como miembro de una clase conocida (Clancey, 1984). El proceso de clasificación, es la identificación de la clase de un objeto. Esta identificación se realiza por medio de un proceso de coincidencia de las propiedades del objeto con las propiedades de alguna clase.
  27. 27. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 13 Si tenemos que un objeto está representado por * + y las clases están representadas por * * + * + * + * ++, vemos que tanto O como cada elemento de C están formados por valores ( ) que llamaremos características. La tarea de clasificación consiste en someter las características de O y de cada elemento de C a la función llamada clasificador, la cual evalúa las coincidencias encontradas entre las propiedades de O y las propiedades de cada elemento de C, con la finalidad de encontrar el elemento de C con la cual O tuvo las mejores coincidencias. Un ejemplo de clasificación, podría ser la identificación de una planta o animal, utilizando una guía de características, tales como coloración, estructura, y tamaño. 2.7. Clasificación automática de textos La clasificación automática de textos es el proceso de asignación de clases o etiquetas a datos de textos no clasificados. Los datos de texto no clasificados pueden variar en su longitud, pueden ser frases cortas o documentos con una longitud mayor. La clasificación automática de textos tiene sus orígenes en la recuperación de información y en la última década ha recibido mayor atención dado el incremento que ha tenido la información disponible en formato electrónico. Debido a esto el ser humano ha tenido la necesidad de contar con herramientas que permitan a un usuario encontrar la información relevante que requiera en un tiempo adecuado. Con la clasificación automática de textos, la búsqueda y recuperación de información relevante puede ser posible en un menor tiempo al separar documentos de acuerdo a un tema o una clasificación especifica. La tarea de clasificación de textos puede ser definida como sigue: dado un conjunto de documentos * + y un conjunto limitado de clases * + se asigna una clase del conjunto C a cada elemento del conjunto D (Jansen & Spink, 2009). Para que dicha asignación sea posible, es necesario realizar un entrenamiento para la tarea de clasificación, la cual permitirá al programa de computadora aprender y determinar la clase de cada elemento del conjunto D.
  28. 28. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 14 2.8. Representación de los documentos Un documento está formado por una secuencia de términos, entonces podemos decir que un documento es un conjunto de términos que unidos de forma secuencial tienen un significado en concreto dentro de un contexto (Pirzadeh, Hamou-Lhadj, & Shah, 2011). La secuencia de términos de un documento se puede descomponer en n-gramas. Los n-gramas son una subsecuencia de n términos de una secuencia dada (Shannon, 1948). De ahí que tenemos 1-gramas los cuales son llamados también unigramas, 2- gramas los cuales son llamados también bígamas, 3-gramas llamados también trigramas y así sucesivamente. Con el siguiente ejemplo podemos tener más clara cómo es la descomposición de una secuencia de términos en n-gramas. Dado el enunciado: “programación orientada a objetos” lo dividimos a nivel de palabra a través de un espacio simple “ “, entonces tenemos los siguientes conjuntos, en donde cada elemento está separado por comas “,”: unigramas={programación, orientada, a, objetos} bigramas={programación orientada, orientada a, a objetos} Dentro de los documentos hay términos, también llamados stopwords, que no tienen un significado semántico relevante y sólo ayudan a unir palabras, por ejemplo, las conjunciones. Estos términos tienen una frecuencia elevada dentro de los documentos y de forma separada cada uno de estos términos no tienen un significado semántico relevante. Las stopwords o palabras vacías incluyen no solo a las conjunciones, sino también, pronombres personales, preposiciones, algunos verbos, etc. En el idioma inglés se han identificado (Bui, Redd, & Zeng-Treitler, 2012) algunas stopwords, en la Tabla 1 mostramos las stopwords incluidas dentro del NLTK y que son eliminadas del texto a pre-procesar:
  29. 29. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 15 Stopwords 'i', 'me', 'my', 'myself', 'we', 'our', 'ours', 'ourselves', 'you', 'your', 'yours', 'yourself', 'yourselves', 'he', 'him', 'his', 'himself', 'she', 'her', 'hers', 'herself', 'it', 'its', 'itself', 'they', 'them', 'their', 'theirs', 'themselves', 'what', 'which', 'who', 'whom', 'this', 'that', 'these', 'those', 'am', 'is', 'are', 'was', 'were', 'be', 'been', 'being', 'have', 'has', 'had', 'having', 'do', 'does', 'did', 'doing', 'a', 'an', 'the', 'and', 'but', 'if', 'or', 'because', 'as', 'until', 'while', 'of', 'at', 'by', 'for', 'with', 'about', 'against', 'between', 'into', 'through', 'during', 'before', 'after', 'above', 'below', 'to', 'from', 'up', 'down', 'in', 'out', 'on', 'off', 'over', 'under', 'again', 'further', 'then', 'once', 'here', 'there', 'when', 'where', 'why', 'how', 'all', 'any', 'both', 'each', 'few', 'more', 'most', 'other', 'some', 'such', 'no', 'nor', 'not', 'only', 'own', 'same', 'so', 'than', 'too', 'very', 's', 't', 'can', 'will', 'just', 'don', 'should', 'now' Tabla 1. Stopwords en inglés, incluidas en NLTK Para llevar a cabo la clasificación automática de texto, es necesario representar a cada documento que forma parte del conjunto de entrenamiento (CE) y a cada documento que forma parte del conjunto de elementos no clasificados (CENC) de una forma a la cual se le pueda aplicar el algoritmo de clasificación. La representación de los documentos más utilizada en los procesos de clasificación automática de textos es el modelo vectorial. El modelo vectorial para la representación de textos o documentos, consiste en representar cada documento como un conjunto de términos, donde cada palabra del documento, es un elemento del conjunto de términos que representa a cada documento (Ass & Eikvil, 1999). A cada conjunto de términos de un documento se le llama vector, por lo que tenemos que el vector de un documento es ( ), donde es un documento específico del conjunto CE o CENC y cada es cada uno de los elementos de los n-gramas del enunciado. En este trabajo de investigación se realizó la selección de unigramas y bigramas para ser sometidos a pruebas de forma separada. 2.9. Pre-procesamiento del texto Dentro de los trabajos que se revisaron, por ejemplo en (Santos & Rodrigues, 2009) (Figuerola, Alonso Berrocal, Zazo Rodríguez, & Mateos, 2008) (Zahedi & Ghanbari Sorkhi, 2013), donde los investigadores realizaron clasificación de textos o recuperación de textos, el pre-procesamiento de los textos era una etapa previa a la tarea literal de clasificación o recuperación.
  30. 30. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 16 Las técnicas utilizadas para el pre-procesamiento de los textos varían en las investigaciones, sin embargo se identificaron algunas de las técnicas de pre-procesamiento utilizadas y que ayudan a convertir un texto en bruto, en un texto más característico que sirva más para ser aplicados en los algoritmos de clasificación automática de texto. 2.9.1. Normalización de términos La normalización de términos consiste en estandarizar los caracteres de los términos con la finalidad de convertir un texto enriquecido a un texto plano, y eso se consigue a través de: 2.9.1.1. Texto a minúsculas Todas las letras en mayúsculas se convierten en minúsculas, pues una comparación estricta de dos palabras, por ejemplo Computadora y computadora podría generarnos un conflicto de igualdad, mientras que para las operaciones de los algoritmos de clasificación deberíamos tener los mismos términos. 2.9.1.2. Eliminación de acentos El tener caracteres especiales no incluidos en el alfabeto inglés podría provocar confusión para el sistema en el tratamiento de los mismos, ya que debido a la variación de codificación de los textos un carácter acentuado podría convertirse en un conjunto de caracteres especiales. En la siguiente tabla se presentan las vocales en minúsculas del alfabeto inglés con acento escrito y su codificación en formato ISO8859-1 (ISO/IEC 8859-1:1998). Vocal Vocal con acento Vocal con acento en iso8859-1 a á á e é é I í í o ó ó u ú ú Tabla 2. Vocales en minúsculas del alfabeto inglés con acento derecho escrito y su codificación en ISO8859-1 (ISO/IEC 8859-1:1998) 2.9.1.3. Eliminación de símbolos Los símbolos y signos de puntuación dentro de un documento son irrelevantes para la clasificación de textos, pues no brindan un significado relevante dentro de un documento. Por lo cual, cada símbolo y signo de puntuación presente en un documento a pre-procesar, es eliminado y reemplazado por espacios simples “ “.
  31. 31. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 17 2.9.1.4. Eliminación de saltos de línea y múltiples espacios De igual manera que los símbolos son reemplazados por espacios en blanco “ “, los salto de línea presentes en un documento son eliminados y reemplazados por espacios y blanco “ “. Y debido a la naturalidad del texto original, más el reemplazo realizado de los símbolos y saltos de línea por espacios en blanco, puede que hayamos acumulado múltiples espacios en blanco entre término y término, por lo cual, la secuencia de varios espacios en blanco son reemplazados por sólo un espacio en blanco, de tal manera que los términos estén separados por un espacio en blanco “ “. 2.9.2. Eliminación de stopwords Las stopwords o también conocidas como palabras vacías son términos cuya frecuencia en el texto de un documento es muy alta y que por sí solos no tienen un significado relevante, por lo que la eliminación de estas ayuda a aligerar la longitud de términos de un documento, disminuyendo el peso digital de un archivo y el ahorro de tiempo para el procesamiento de las mismas dentro de la tarea de clasificación. Dentro de las stopwords se encuentran preposiciones, conjunciones, adverbios, artículos, pronombres y algunos verbos (Kongovi, Guzman, & Dasigi, 2002). El número de stopwords únicas dentro de un documento puede ser baja, sin embargo su frecuencia es muy alta. Ejemplos de stopwords identificadas en el idioma inglés son: THE, FOR, IT, IS, AND (Lo, He, & Ounis, 2005). 2.9.3. Identificación de familias léxicas La identificación de familias léxicas o stemming consiste en la reducción de un término o un conjunto de términos a su raíz, lo cual permite que palabras que literalmente son diferentes pero con una raíz en común puedan ser consideradas como un solo término. A través del stemming se eliminan algunos prefijos y sufijos comunes, los cuales modifican en parte el significado de un término. Por ejemplo las palabras computadora, computador, computadoras y computadores hacen referencia a un mismo concepto y tienen la misma raíz, computad. Entre los algoritmos conocidos para realizar la identificación de familias léxicas se encuentran (Lovins, 1968), (Porter, 1980) y (Paice, 1990). En este trabajo se utilizó la implementación del algoritmo de (Porter, 1980) incluida en NLTK.
  32. 32. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 18 2.9.4. Segmentación Conocida como tokenización, la segmentación se refiere a la división de un texto en unidades más pequeñas conocidas como tokens (Carreras, Chao, Padró, & Padró, 2004). Generalmente la tokenización toma como carácter de separación los espacios en blanco que hay entre un término y otro, aunque también pueden tomarse algunos otros caracteres no incluidos en el alfabeto inglés como indicadores para realizar la división de una cadena de texto. Los algoritmos de clasificación calculan la probabilidad de un término, por lo que el texto completo de un documento no nos serviría sino está dividido en unidades más pequeñas. 2.9.5. Vectorización La vectorización es el modelo de representación de los documentos generalmente utilizada en tareas de clasificación automática de textos. Consiste en convertir un texto en una lista de términos (tokens). Generalmente cada elemento o término del vector está acompañado con algún otro valor, por ejemplo la frecuencia del término dentro de . A continuación mostramos la vectorización de un texto dividido en unigramas. Si tenemos el siguiente texto: una computadora computador tambien denominada ordenador maquina electronica que recibe procesa datos para convertirlos informacion util una computadora una coleccion circuitos integrados otros componentes relacionados que puede ejecutar con exactitud rapidez acuerdo indicado por un usuario automaticamente por otro programa una gran variedad de secuencias rutinas de instrucciones que son ordenadas organizadas Y eliminamos los términos repetidos pero contamos la frecuencia de cada uno y los mantenemos, obtendríamos el siguiente vector que se muestra en la Tabla 3, en donde cada elemento es un término y tiene la frecuencia de aparición del mismo:
  33. 33. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 19 {"una"=>4, "computadora"=>2, "computador"=>1, "tambien"=>1, "denominada"=>1, "ordenador"=>1, "maquina"=>1, "electronica"=>1, "que"=>3, "recibe"=>1, "procesa"=>1, "datos"=>1, "para"=>1, "convertirlos"=>1, "informacion"=>1, "util"=>1, "coleccion"=>1, "circuitos"=>1, "integrados"=>1, "otros"=>1, "componentes"=>1, "relacionados"=>1, "puede"=>1, "ejecutar"=>1, "con"=>1, "exactitud"=>1, "rapidez"=>1, "acuerdo"=>1, "indicado"=>1, "por"=>2, "un"=>1, "usuario"=>1, "automaticamente"=>1, "otro"=>1, "programa"=>1, "gran"=>1, "variedad"=>1, "de"=>2, "secuencias"=>1, "rutinas"=>1, "instrucciones"=>1, "son"=>1, "ordenadas"=>1, "organizadas"=>1} Tabla 3. Resultado de la vectorización de un texto 2.10. Métricas de evaluación Para evaluar la clasificación automática de textos, utilizaremos las métricas de precisión y recuerdo (precision and recall), las cuales son las medidas más comunes utilizadas para la medición del desempeño en tareas de recuperación de información. Para poder aplicar estas métricas es necesario contar con un corpus de objetos previamente clasificados, del cual podamos contar con un porcentaje de este corpus para el entrenamiento del sistema y otro porcentaje para las pruebas del mismo. Los resultados de la clasificación automática que arrojen los elementos del conjunto de pruebas del corpus, serán a los que se les aplicarán las métricas de evaluación y así tendremos la evaluación del desempeño de nuestro sistema de clasificación automática de textos. La precisión es la probabilidad de que un documento clasificado de forma automática en la clase , pertenezca realmente a esa clase. El recuerdo es la probabilidad de que un documento que pertenece a la clase , sea clasificado en esa clase (Hernández, Ramírez, & Ferri, 2004) (Lewis D. , 1991). Si representamos el problema de la predicción de las clases a través de la clasificación automática de textos, podemos observar en la Tabla 4 el comportamiento de un sistema de clasificación automática de textos, según los aciertos y errores que arrojen las predicciones:
  34. 34. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 20 Predicción positiva Predicción negativa Total de predicciones Clase positiva a b a + b Clase negativa c d c + d a + c b + d a + b + c + d = n Tabla 4. Comportamiento de un sistema de clasificación automática de textos, según los aciertos y errores En cada celda de la Tabla 4 se encuentra representado el número de predicciones positivas y negativas. Donde son las predicciones correctas del sistema y son las predicciones erróneas. Por lo que tenemos que la suma de equivale al total de pruebas sometidas al sistema de clasificación automática de textos. Con la tabla anterior, podemos definir las fórmulas para la obtención de las métricas de precisión y recuerdo, las cuales quedan como sigue: La precisión muestra la probabilidad de que el sistema de clasificación automática de texto arroje una predicción correcta de la clase a un documento que se desea clasificar. El recuerdo expresa el porcentaje de los elementos de una clase que son clasificados correctamente en ella. Hay otra métrica denominada F1-Score, la cual combina las métricas de precisión y recuerdo. F1-Score muestra a la precisión y el recuerdo, como una sola métrica, la cual es definida como una medida armónica entre ambas, el valor de F1-Score oscila entre 0 y 1, donde 1 es el valor más idóneo. F1-Score se obtiene a través de la fórmula: ( ) 2.11. Algoritmos de clasificación La clasificación de textos ha sido ampliamente investigada (Li, 2007) con el objetivo de encontrar los mejores métodos que permitan realizar esta tarea de forma automática con la finalidad de reducir sustancialmente el tiempo consumido en la
  35. 35. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 21 clasificación de textos, así como mejorar la calidad de la clasificación de documentos ya sea de uno o múltiples dominios. Desde hace varios años se han propuesto varios métodos que sirven para el procesamiento de textos y su clasificación, sin embargo cada técnica ha arrojado resultados diferentes (Chang, 2005). Algunas técnicas han sido más investigadas, mejoradas o combinadas con la finalidad de realizar un mejor trabajo de clasificación. En esta sección del documento se presentan cuatro algoritmos de clasificación, los cuales han sido aplicados en múltiples trabajos para la clasificación de textos identificados en el estado del arte. 2.11.1. Naive Bayes El algoritmo de Naive Bayes o más conocido como Bayes, fue descrito originalmente en (Duda & Hart, 1973) y es uno de los métodos favoritos utilizados en tareas de clasificación y recuperación de información, debido a los buenos resultados que arroja su funcionamiento (Lewis D. , 1998). En el caso de la clasificación de textos, el método bayesiano utiliza la frecuencia de las palabras del objeto que se desea clasificar, así como las mismas características pertenecientes a cada una de las clases con las cuales se realizará la comparación y estimación de la probabilidad que un objeto perteneciente a un conjunto de documentos pertenezca a cada una de las clases pertenecientes al conjunto de clases . Cada elemento del conjunto está representado por un vector ( ) formado por un conjunto de características previamente seleccionadas, n-gramas, en el caso de un documento, de las cuales se conoce la frecuencia de aparición de las mismas en el elemento . Por su parte, cada uno los elementos del conjunto de clases ( ), de igual manera están representados por un vector de características representativas de cada clase, las cuales servirán para poder realizar el cálculo de la probabilidad de elementos del conjunto a clasificar. El clasificador de Bayes está basado en el teorema de probabilidad conocido como la Regla de Bayes, el Teorema de Bayes o la Fórmula de Bayes: ( | ) ( ) ( | ) ( )
  36. 36. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 22 dónde ( ) Σ ( | ) ( ) Se da por hecho que en todos los posibles eventos de clasificación se les asigna a los objetos exactamente una clase ( ) del conjunto de las mismas. es una clase aleatoria en donde sus valores son el vector de características de ésta, mientras que es un documento que se desea clasificar y sus valores son el vector de términos del documento. Dado que y son valores tomados de forma aleatoria a partir de y , en la formula podemos omitir estos valores y reescribir la Regla de Bayes como sigue: ( | ) ( ) ( | ) ( ) Ahora tenemos que ( | ) es el problema de clasificación que debemos de resolver y la asignación de la clase al objeto a clasificar se realizará de acuerdo al resultado mayor que obtengamos de ( | ). Debido a que no se conoce el valor de ( | ) y la realidad es que es difícil estimarlo directamente, la Regla de Bayes sugiere estimar ( ) y ( ), luego combinar los resultados para poder estimar ( | ), que no es más que el producto de las probabilidades de cada término que aparece en el vector de : ( | ) Π ( | ) | | De las dos fórmulas previas se tiene que la probabilidad de que el documento elegido de forma aleatoria pertenezca a la clase es: ( | ) ( )Π ( | ) | | con ( ) calculado como: ( )
  37. 37. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 23 dónde es el número de documentos en la clase y es el total de documentos pertenecientes a las clases del conjunto . Mientras que ( | ) se suele calcular como ( | ) ( ) | | dónde ( ) es el número de veces en las que el término aparece en los documentos de la clase . Calculado lo anterior, puede ser asignado a la clase donde ( | ) es la máxima. 2.11.2. Máquinas de vectores de soporte Las máquinas de vectores de soporte, máquinas de soporte vectorial o también conocidas como SVM por sus siglas en inglés (Support Vector Machines), han tenido un buen desempeño en una gran variedad de problemas de clasificación, como por ejemplo: la identificación de partículas (Ranzato, Taylor, House, Flagan, LeCun, & Perona, 2007), identificación de rostros (Guo, Li, & Chan, 2000) y clasificación de textos (Joachims, 1998) (Tong & Koller, 2002) (Liu, Lv, Liu, & Shi, 2010). Los orígenes de esta técnica estadística fueron presentados por (Vapnik, 1995). En el caso de clasificación de textos, los elementos del conjunto (documentos) son representados por medio de vectores y de forma separada son mapeados en un espacio de alta dimensionalidad junto con los elementos del conjunto (clases) con la finalidad de compararlos y separar los objetos positivos y negativos con la ayuda de un margen máximo entre las dos clases de objetos, al plano de decisión que sirve de separación de le llama hiperplano. En la Figura 2 se puede observar puntos de datos que son linealmente separables a través de un hiperplano. Las líneas punteadas paralelas a la línea solida muestran que tanto el hiperplano puede moverse sin que conlleve a una mala clasificación, entre mayor sea el margen, será menor el riesgo de una mala clasificación. El margen es la distancia entre las líneas paralelas y los puntos más cercanos al hiperplano, a los que se les conoce como vectores de soporte.
  38. 38. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 24 Figura 2. Los vectores de soporte están sobre las líneas punteadas. A través de un hiperplano h identificado por SVM se puede separar los elementos positivos de los negativos a través de un margen máximo SVM puede clasificar un vector en una clase de dos posibles, y a través de: ( ) Σ ( ) y se tiene que: { donde * + es la clase que corresponde a cada y donde * , +; ( ) es la representación de en un espacio diferente al original a través de un kernel, los más comunes son los polinómicos de grado como el definido por la función: ( ) ( ) SVM requiere de entrenamiento y éste consiste en determinar el vector que maximice la distancia entre los objetos de las clases diferentes dentro del conjunto de entrenamiento y en donde puede ser escrita como una combinación lineal de valores , y ( ). SVM surgió con el enfoque de clasificación binaria, sin embargo puede ser generalizado para colecciones de más de dos clases de documentos. En (Weston & Watkins, 1999) se presenta como un problema multiclase puede ser dividido en varios problemas binarios de la forma uno contra uno o uno contra todos. En ambos casos un objeto se asigna a la clase con el valor más alto.
  39. 39. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 25 La forma uno contra uno se refiere a que si se tienen clases, se tendrán que construir ( ) clasificadores usando los documentos de cada combinación de las dos clases distintas. En uno contra todos se construyen clasificadores, uno para cada clase, usando los valores de una clase y comparándolo con la mezcla de todas las demás clases, lo cual genera una función que da un peso mayor a una de las dos clases y el objeto a clasificar es relacionado a la clase que tuvo el valor más alto. Debido a la alta dimensionalidad en conjuntos multiclase, los clasificadores basados en SVM son generalmente implementados como clasificadores binarios en cascada, es decir, se compara un objeto con todos los elementos del conjunto pero de forma separada, así cada clasificador será capaz de reconocer entre una clase y el resto (Burges, 1998). 2.11.3. Arboles de decisión El método arboles de decisión ha sido uno de los más populares en el área de inteligencia artificial para resolver tareas de clasificación, el cual fue presentado en (Quinlan, 1986). El método de aprendizaje supervisado de árboles de decisión funciona través de la creación de reglas del tipo si entonces. La Figura 3 muestra un árbol de decisión sencillo, el cual tiene reglas indicadas por las etiquetas dentro de los rectángulos, las etiquetas sin recuadros son los posibles valores y las etiquetas dentro de cuadros punteados son las hojas o decisiones (categorías). Representa la posibilidad de que dado un pronóstico del clima se pueda decidir si es posible (P) o no es posible (N) realizar actividades al aire libre. Figura 3. Árbol de decisión sencillo (Quinlan, 1986)
  40. 40. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 26 Para cada nodo o rama del árbol se realiza un entrenamiento que consiste en la creación de reglas, las cuales tienen como valor la dirección del siguiente nodo al cual deberá dirigirse el objeto evaluado * , - , -+, las cuales una vez evaluadas darán paso a una siguiente rama o a ninguna. En los arboles de decisión se tiene como entrada un objeto * + el cual está representado por un conjunto de características, en el caso de un documento, palabras acompañadas de otro valor, por ejemplo, su frecuencia de aparición en el documento . En el primer nodo del árbol, se evalúa alguna característica especificada a través de las reglas correspondientes a este nodo y se da paso a la rama correspondiente al valor de la característica evaluada del objeto , este proceso se itera dependiendo de la cantidad de nodos existentes en el árbol de decisión hasta llegar en el mejor de los casos a las hojas, las cuales en un problema de clasificación serían las clases a donde tendría que anotarse el objeto evaluado. 2.11.4. k-nearest neighbors El método k-nearest neighbors (k-NN) o también conocido como vecinos más cercanos, es un método de los del tipo de aprendizaje basado en ejemplos el cual evalúa nuevos elementos y los compara con elementos almacenados o ya aprendidos (Cover & Hart, 1967). Se basa en la hipótesis de que un nuevo elemento puede tomar la clase de algún elemento almacenado del cual tenga una similitud alta. Este tipo de algoritmos funciona muy bien para agrupamiento de elementos debido a que se calcula la similitud de un elemento con otro elemento y no con las características de una clase en particular, aunque entre las mejoras que tiene este método, se encuentra la comparación de las características de un elemento con las de las clases. Si partimos de que tenemos un conjunto de elementos pertenecientes al conjunto * + y que cada elemento del conjunto está relacionado con algún elemento del conjunto * +, nuevos elementos del conjunto pueden ser relacionados con algún elemento del conjunto a través de una función que calcule la similitud entre el nuevo elemento y los elementos existentes del conjunto , ( ). Utilizando el método vectorial y posteriormente alguna medida para calcular la similitud entre vectores, por ejemplo coseno, podemos identificar con cuales de los
  41. 41. C a p í t u l o I I . F u n d a m e n t o t e ó r i c o 27 elementos vecinos , el elemento tiene una mayor similitud y el elemento relacionado a los elementos va sumando puntuación, por lo que al terminar las comparaciones entre vectores de con sus vecinos , podemos conocer el elemento con el cual sus vecinos tienen mayor relación y así el nuevo elemento podrá tomar esa relación como suya. La regla de decisión de k-NN se define como: ( ) Σ ( ) ( ) Donde ( ) * + es la clasificación para la instancia con respecto a la categoría (1=si y 0=no), mientras que ( ) es el grado de similitud entre la nueva instancia y la instancia de entrenamiento .
  42. 42. CAPITULO III Estado del arte
  43. 43. C a p í t u l o I I I . E s t a d o d e l a r t e 29 3. Estado del arte En esta sección se presentan los trabajos relacionados que se han realizado con la temática de extracción de texto a partir de documentos de texto en PDF y de clasificación automática de textos. Con estos trabajos se tiene un panorama general de las técnicas utilizadas en la actualidad para la extracción de información a partir de texto en PDF y de clasificación automática de textos. 3.1. Layout-aware text extraction from full-text PDF of scientific articles (Ramakrishnan, Patnia, Hovy, & Burns, 2012) Resumen El Formato de Documento Portable, PDF, por sus siglas en inglés (Portable Document Format), es el formato de documentos digitales más común utilizado para la publicación de artículos científicos. Las plantillas de los artículos científicos, para la presentación de la información dentro de los archivos PDF son muy variables, aunque principalmente se utilizan presentaciones con formatos en una columna y dos columnas. Cuando uno extrae de forma manual información de un PDF, es común que si no se tiene cuidado se pierda cierta secuencia entre un texto y otro, por lo que hacer esto de forma automática o semiautomática resulta una tarea trivial. Algunas de las secciones de un artículo científico son repetitivas y proporcionan poca información no menos relevante, como los encabezados y pies de página, pero si no se identifican adecuadamente podrían causar ruido o texto sin sentido en el texto una vez extraído. Entre otras de los sistemas que existen para la extracción de documentos se encuentra PDF2Text, la cual sólo extrae el texto a partir de un PDF sin hacer mucho énfasis en identificar la secuencia de los textos, lo cual provoca extracciones de texto no secuenciales y sin sentido. El sistema LA-PDFText desarrollado en este trabajo provee mayor precisión en la extracción secuencial de texto de un PDF, según los resultados presentados, además que es capaz de identificar secciones comunes de un artículo científico como: el título, los autores, el resumen, resultados, métodos y referencias. LA-PDFText es una herramienta open-source y su versión estable puede ser obtenida en http://code.google.com/p/lapdftext/.
  44. 44. C a p í t u l o I I I . E s t a d o d e l a r t e 30 Similitud Debido a que parte del trabajo para poder realizar la clasificación de los objetos de conocimiento que se encuentran en formato PDF, es extraer el texto de éste, es necesario que la extracción secuencial del mismo se dé con la mayor precisión posible, por esta razón esta tarea se realizaría de forma automática. Se había probado la librería PDF2Text que también ayuda para la extracción de textos a partir de documentos textuales en PDF, sin embargo los resultados son muy básicos y sólo se limitan a la extracción del texto sin tomar en cuenta las secciones o secuencias que tiene el documento, especialmente cuando el texto está presentado en más de una columna. En las pruebas realizadas, LA-PDFText arrojó mejores resultados en la extracción de textos a diferencia de PDF2Text. 3.2. GROBID: Combining Automatic Bibliographic Data Recognition and Term Extraction for Scholarship Publications (Lopez, 2009) Resumen En este trabajo el autor presenta una descripción de la herramienta GROBID, la cual ayuda en la identificación automática de descripciones complementarias de un artículo técnico o científico. La herramienta GROBID está desarrollada en Java y utiliza técnicas de aprendizaje automático y de extracción de multi-términos. El objetivo de GROBID es mejorar la extracción de metadatos (título, autores, keywords, resumen, fecha de publicación) de artículos técnicos y científicos, enfocado a la extracción automática de metadatos en librerías digitales en donde los documentos se encuentran disponibles en texto en PDF. En Github hay una comunidad de desarrolladores, para que los interesados ayuden a mejorar la identificación de secciones de las publicaciones técnicas y científicas. Similitud Los documentos a procesar en nuestro trabajo de investigación se encuentran en texto en PDF. Uno de los enfoques probados para la identificación de los metadatos de un artículo científico, era convertir un PDF a XML, en donde además de extraer el texto del documento, obteníamos etiquetas que describían el formato del mismo (tipo de
  45. 45. C a p í t u l o I I I . E s t a d o d e l a r t e 31 letra, tamaño, inicio y fin de un párrafo), sin embargo la variedad de plantillas en los que se publican los artículos científicos dificultaba la identificación correcta de los metadatos. Con la implementación de GROBID pudimos realizar la identificación de ciertas secciones de un artículo científico, a través de una interfaz de línea de comandos y generando resultados en XML. Además de acuerdo a (Lipinski, Yao, Breitinger, Beel, & Gipp, 2013), esta herramienta tiene los mejores resultados en cuando a la identificación automática de secciones de un objeto de conocimiento se refiere. 3.3. Evaluation of header metadata extraction approaches and tools for scientific PDF documents (Lipinski, Yao, Breitinger, Beel, & Gipp, 2013) Resumen En este trabajo presentan los resultados de la comparación de diversas herramientas para la extracción de metadatos de artículos científicos con la finalidad de evaluar el desempeño de dichas herramientas. Los autores pretenden que este trabajo sirva de guía a los desarrolladores que buscan realizar la extracción de metadatos de forma automática, especialmente enfocados a librerías digitales de documentos de texto en PDF. En las pruebas de extracción de Titulo, autores, Resumen y año de publicación, los resultados evidenciaron que GROBID tiene el mejor desempeño en todos los campos. Similitud Como dice el resumen, este trabajo ayudó como guía para ayudar a seleccionar una herramienta que nos ayude a la extracción de los metadatos descriptivos de una publicación científica. Al tener una comparativa de 7 herramientas enfocadas a la extracción de metadatos a partir de documentos de texto en PDF, tenemos fundamentos para seleccionar a GROBID como la herramienta que nos permita realizar dicha extracción de las metadatos a los documentos de texto en PDF a los que serán sometidos a nuestra herramienta objetivo.
  46. 46. C a p í t u l o I I I . E s t a d o d e l a r t e 32 3.4. Comparison of Text Categorization Algorithms (Yong-feng & Yan-ping, 2004) Resumen En este trabajo se presenta un resumen de los algoritmos de clasificación automática de textos, más utilizados en la actualidad: Naive Bayes (NB), Vecinos más cercanos (KNN), Máquinas de soporte vectorial (SVM) y Redes neuronales (NN). A través de una descripción de los mismos, un análisis de ventajas y desventajas y una comparación se puede conocer en resumen la forma de trabajo de cada algoritmo. Los autores realizaron pruebas implementándolos, con las cuales evaluaron a los algoritmos y pudieron conocer su desempeño en el campo practico. De acuerdo a los resultados presentados, el desempeño mostrado por SVM fue el mejor, cercano a los resultados de KNN. En general el campo de acción semántica de estos algoritmos está muy limitado por su naturaleza con la que fueron concebidos, pero pueden ser aplicados para resolver problemas de clasificación en dominios cerrados. De acuerdo a los autores, la implementación de un algoritmo hibrido podría presentar un mejor desempeño, una tendencia inevitable que se ha presentado en otros trabajos. En el desempeño de los algoritmos no solo influye la implementación de este, sino los parámetros de entrada, como serían los textos, provenientes del conjunto de documentos a clasificar, la extracción de los textos, el tratamiento de los términos y otros pre-procesamientos que se aplican a estos. Similitud De entre los algoritmos analizados, los algoritmos de NB, SVM y KNN sobresalen al igual que este trabajo presentado, siendo de entre los más utilizados en la actualidad para tareas de clasificación automática de textos. En nuestro trabajo de investigación, se realzó la implementación de un enfoque hibrido lineal, el cual ayudó a realizar la clasificación multinivel con base en la taxonomía de la ACM.
  47. 47. C a p í t u l o I I I . E s t a d o d e l a r t e 33 3.5. A Regularized Linear Classifier for Effective Text Classification (Nandanwar & Narasimha Murty, 2012) Resumen Los resultados individuales arrojados por los algoritmos de clasificación Maquinas de Soporte Vectorial (SVM) y Naive Bayes (NB) han demostrado buenos desempeños, debido a eso su popularidad que han sido utilizados en diversas aplicaciones. En este trabajo presentan una nueva manera de mezclar ambos algoritmos de tal forma que complementen y mejoren el desempeño de la clasificación. De los resultados presentados se observa que el modelo hibrido propuesto, en promedio tiene una precisión de 91.79% frente a los 88.77% arrojados por NB. Mientras que el promedio de la precisión obtenida con SVM es de 91.78% frente al 93.36% obtenido con el método propuesto. Las mejoras obtenidas se dan desde el pre-procesamiento de los textos, pasando por la selección de los términos característicos y el cálculo de los valores utilizados como pesos de cada término. De forma separada se aplican NB y SVM y al final los valores resultantes forman parte del cálculo del método hibrido propuesto que mejora la precisión de la clasificación resultante. Similitud La sencillez y buen desempeño de NB lo ha hecho muy popular para diversos trabajos de clasificación de textos, o como para tomar sus resultados como punto de referencia para compararlos con resultados de otros algoritmos. Así mismo en las reglas de decisión de cada uno de los algoritmos, nos percatamos de que SVM es un algoritmo más robusto en comparación con NB. La implementación de ambos de forma separada da buenos resultados, no muy lejanos al enfoque hibrido presentado en este trabajo, no desestimado. En nuestro trabajo realizamos la implementación hibrida lineal del algoritmo de Arboles de decisión + Bayes y de forma separada Arboles de decisión + SVM, los cuales fueron sometidos a pruebas para determinar cuál de las implementaciones hibridas propuestas arrojaba mejores resultados. Estamos conscientes de que el pre procesamiento de los textos para poder ser objetos de entrada a un algoritmo de clasificación es algo básico y que comienza a definir los resultados de las implementaciones hibridas propuestas.
  48. 48. C a p í t u l o I I I . E s t a d o d e l a r t e 34 3.6. A hybrid text classification approach with low dependency on parameter by integrating K-nearest neighbor and support vector machine (Heng Wana, Hong Leeb, & Rajkumarb, 2012) Resumen En este trabajo los autores presentan un nuevo enfoque de clasificación de textos llamado Nearest Neighbor-Support Vector Machine (SVM-NN), que resulta de la combinación de los algoritmos Maquinas de Soporte Vectorial (SVM) y de Vecinos más cercanos (KNN). De SVM se toma el enfoque de entrenamiento que se aplica a un clasificador, ayudando así a reducir los ejemplos de entrenamiento de clasificación de cada clase. Por otro lado, de KNN utilizan el enfoque de decisión para realizar la clasificación debido a su bajo costo de implementación y a su alto grado de efectividad. El problema de KNN radica en la determinación del valor k, de tal manera que este afecta directamente a la precisión de la clasificación, sin embargo, si este incrementa, el desempeño de la clasificación podría verse afectado por el hecho de la cantidad de vecinos utilizados. La decisión de asignación de clases por parte de KNN, se da tras haber realizado el cálculo de la distancia entre el elemento evaluado y el conjunto de vectores de las diferentes clases proveniente de la implementación de SVM. Similitud La reducción de clases a través de SVM permite a un sistema de clasificación, disminuir el espacio de decisión, permitiendo que clases más probables a participar en una clasificación sean las que se tomen en cuenta para evaluarse a través de KNN, con lo cual se ahorran recursos, pues en cualquiera de los enfoques de KNN, uno contra uno o uno contra todos, el tamaño del corpus influye en el tiempo de desempeño y costo del clasificador. Si tomamos en cuenta de que la taxonomía de la ACM consta de más de 1000 clases, con la implementación del enfoque de reducción de clases nos permite disminuir el tiempo de clasificación de los documentos al someter a la decisión de la clase para un documento, solo aquellas clases que sean más probables, lo que se traduce en el ahorro de recursos, a comparación de que si implementáramos uno de los enfoques de KNN en donde participarían todas las clases, tanto las poco probables como las de mayor probabilidad en el pronóstico de la clase de un documento.
  49. 49. C a p í t u l o I I I . E s t a d o d e l a r t e 35 3.7. Multi-label Hierarchical Text Classification using the ACM Taxonomy (Santos & Rodrigues, 2009) Resumen Generalmente las clasificaciones de texto que se realizan en muchos trabajos, corresponden a la asignación de una clase a un documento dado un conjunto determinado de clases, esta es una clasificación pequeña o ligera. En este trabajo se realiza una clasificación multiclase, que según los autores definen como más compleja en comparación a las clasificaciones pequeñas de texto, en donde se asigna una sola clase a un documento. La complejidad de esta tarea se incrementa al involucrar un conjunto de clases ordenadas en una estructura jerárquica, utilizando los dos primeros niveles de la taxonomía de la ACM1998 y un corpus formado a partir de la librería de la ACM y utilizando las fichas bibliográficas de cada artículo científico. Además se describe brevemente el pre-procesamiento aplicado al texto previo a que sean aplicados diferentes algoritmos de clasificación, en este caso, los algoritmos de Binary Relevance (BR), Label Powerset (LP) y Multi-Label k-Nearest Neighbor (MLkNN). Finalmente presentan los resultados de la evaluación del desempeño de los diferentes clasificadores construidos, pero solamente en forma de gráfica. Similitud En nuestro trabajo, hemos utilizado la taxonomía de la ACM2012 como el conjunto de clases ordenadas de forma jerárquica, abarcando no solo dos, sino hasta los seis niveles de clasificación en los que se extiende la misma. Al tener el conjunto de clases de la ACM2012 como dominio de conocimiento, de igual forma hemos formado un corpus de forma manual a partir de la librería de la ACM, pero a diferencia de este trabajo, en el nuestro realizamos la extracción de la información a partir de los archivos de texto en PDF de los artículos científicos y no de la ficha bibliográfica de los mismos que se encuentra disponible a través de la librería online de la ACM. De este trabajo tomamos en cuenta algunas etapas del pre-procesamiento para implementarlas en el nuestro.
  50. 50. C a p í t u l o I I I . E s t a d o d e l a r t e 36 Finalmente, nosotros mostramos de forma explícita los resultados a los que llegamos y los presentamos en tablas, en donde es más fácil conocer los valores de precisión y recuerdo que se obtuvieron como desempeño de los algoritmos de clasificación utilizados. 3.8. Support Vector Machines classification with a very large-scale taxonomy (Tie-Yan, Yang, Hao, Hua-Jun, Zheng, & Wei-Ying, 2005) Resumen En este trabajo se presentan los resultados obtenidos de realizar una clasificación jerárquica utilizando una taxonomía muy larga que se extiende hasta en 16 niveles. La clasificación se apoya utilizando la taxonomía de Yahoo Directory como el conjunto ordenado de clases, la cual está formada por cientos de miles de clases en las que puede ser clasificada una página web. Con una implementación del algoritmo de máquinas de soporte vectorial (SVM), este trabajo aborda la clasificación de los documentos y obtienen resultados de efectividad cuyos valores van en decremento por cada nivel. Para el primer nivel los resultados en la gráfica se muestran por encima del 0.7, los cuales se reducen hasta valores por debajo del 0.3 para el nivel 16 de la taxonomía. Similitud En nuestro trabajo de igual forma implementamos una taxonomía la cual es considerablemente menor que la de este trabajo, sin embargo, los resultados obtenidos con la implementación del algoritmo SVM arrojan valores de F1-Score superiores al 0.9. No obstante, el enfoque utilizado para realizar la clasificación en cada nivel, fue una guía para la implementación del clasificador jerárquico de nuestro trabajo. 3.9. Automated Arabic Text Categorization Using SVM and NB (Alsaleem, 2011) Resumen En este trabajo los autores realizan el experimento de clasificar texto a un nivel y con un conjunto de siete categorías, aplicado a conjuntos de noticias en idioma árabe.
  51. 51. C a p í t u l o I I I . E s t a d o d e l a r t e 37 Los autores implementaron por separado los algoritmos de Maquinas de Soporte Vectorial (SVM) y de Naive Bayes (NB). La evaluación del desempeño de cada clasificador se realiza a través de las métricas de precisión, recuerdo y F1-Score. Los resultados arrojaron valores para F1-Score de hasta 0.96 para una clase, utilizando SVM. Mientras que los valores de la misma métrica utilizando NB fueron de hasta 0.94. Similitud En nuestro trabajo de igual forma decidimos implementar de forma separada los algoritmos de SVM y NB, para que con base en los resultados arrojados por cada uno, se pudiera decidir cuál de los dos arrojaba los mejores valores utilizando las mismas métricas, esto con la finalidad de poder ser implementados finalmente en la herramienta objetivo de nuestra investigación. A diferencia de este trabajo, nosotros realizamos una clasificación jerárquica y el idioma en el que realizamos nuestras evaluaciones es el idioma inglés.
  52. 52. C a p í t u l o I I I . E s t a d o d e l a r t e 38 3.10. Tabla comparativa A continuación en la Tabla 5 se muestran en resumen las similitudes entre los artículos mencionados dentro del Capítulo III y este trabajo de Tesis, como parte del estado del arte. Documento Extracción secuencial de texto a partir de texto de artículos científicos en PDF Extracción de metadatos a partir de texto de artículos científicos en PDF Clasificación jerárquica de texto Clasificación de texto utilizando por lo menos 2 algoritmos de clasificación de forma separada Poblado ontológico Layout-aware text extraction from full-text PDF of scientific articles  GROBID: Combining Automatic Bibliographic Data Recognition and Term Extraction for Scholarship Publications  Evaluation of header metadata extraction approaches and tools for scientific PDF documents  Comparison of Text Categorization Algorithms  A Regularized Linear Classifier for Effective Text Classification  A hybrid text classification approach with low dependency on parameter by integrating K-nearest neighbor and support vector machine Multi-label Hierarchical Text Classification using the ACM Taxonomy   Support Vector Machines classification with a very large-scale taxonomy  Automated Arabic Text Categorization Using SVM and NB 
  53. 53. C a p í t u l o I I I . E s t a d o d e l a r t e 39 Clasificación automática de objetos de conocimiento con contenido no estructurado para el poblado semiautomático de ontologías multidimensionales      Tabla 5. Comparativa de los trabajos relacionados
  54. 54. CAPITULO IV Metodología de solución para la extracción automática de información, clasificación automática y poblado ontológico semiautomático de textos no estructurados en PDF
  55. 55. C a p í t u l o I V . M e t o d o l o g í a d e s o l u c i ó n 41 4. Metodología de solución para la extracción automática de información, clasificación automática y poblado ontológico semiautomático de textos no estructurados en PDF La metodología de solución propuesta abarca la extracción automática de información, la clasificación automática y el poblado ontológico semiautomático a partir de textos no estructurados en PDF. Como nos percatamos en la Tabla 5 referente a la comparativa de los trabajos relacionados, en la actualidad hay herramientas que realizan alguna de las tareas antes mencionadas, pero de manera separada. La metodología de solución propuesta y que describimos a continuación, la podemos englobar en tres etapas principales: Figura 4. Metodología de solución propuesta En la etapa de extracción nos enfocamos a la recuperación del texto secuencial y de los metadatos de un artículo científico de manera automática. En la etapa de clasificación abordamos desde el pre-procesamiento del texto obtenido en la fase de extracción, el entrenamiento del clasificador y la clasificación automática del texto, pasando por la evaluación del clasificador. En la etapa del poblado ontológico realizamos la instanciación de los objetos de conocimiento con sus respectivos metadatos recuperados en la fase de extracción y de la clase obtenida para cada objeto de conocimiento, dentro de las ontologías que modelan los objetos de conocimiento y que forman parte de la Ontología de Memoria Organizacional (González Franco, 2012). A continuación se describen a detalle las etapas de la metodología de solución propuesta. Extracción Clasificación Poblado ontológico

×