Aprendizaje de ontologías

El aprendizaje de ontologías (extracción de ontologías, generación de ontologías o adquisición de ontologías) consiste en la creación automática o semiautomática de ontologías, lo que incluye extraer los términos del dominio correspondiente y las relaciones entre los conceptos que estos términos representan a partir de un corpus de texto en lenguaje natural, y codificarlos con un lenguaje ontológico para facilitar su recuperación. Dado que la creación manual de ontologías requiere mucho trabajo y tiempo, existe una gran motivación para automatizar el proceso.

Normalmente, el proceso comienza con la extracción de términos y conceptos o frases sustantivas a partir de textos sin formato mediante procesadores lingüísticos como el etiquetado de partes del discurso y la fragmentación de frases. A continuación, se utilizan técnicas estadísticas[1]​ o simbólicas[2][3]​ para extraer características de relación, a menudo basadas en técnicas de extracción de hiperónimos basadas en patrones[4]​ o definiciones.[5]

Procedimiento

editar

El aprendizaje de ontologías (en inglés: ontology learning, OL) se utiliza para extraer (semi)automáticamente ontologías completas a partir de texto en lenguaje natural.[6][7]​ El proceso suele dividirse en las ocho tareas siguientes, que no necesariamente se aplican todas en todos los sistemas de aprendizaje de ontologías.

Extracción de terminología de dominio

editar

Durante el paso de extracción de terminología del dominio, se extraen términos específicos del dominio, que se utilizan en el siguiente paso (descubrimiento de conceptos) para derivar conceptos. Los términos relevantes pueden determinarse, por ejemplo, calculando los valores TF/IDF o aplicando el método del valor-C / valor-NC. La lista de términos resultante debe ser filtrada por un experto en la materia. En el paso siguiente, de forma similar a la resolución de coreferencias en la extracción de información, el sistema OL determina los sinónimos, ya que comparten el mismo significado y, por tanto, corresponden al mismo concepto. Para ello, los métodos más habituales son la agrupación y la aplicación de medidas estadísticas de similitud.

Descubrimiento de conceptos

editar

En la fase de descubrimiento de conceptos, los términos se agrupan en unidades portadoras de significado, que corresponden a una abstracción del mundo y, por tanto, a conceptos. Los términos agrupados son estos términos específicos del dominio y sus sinónimos, que se identificaron en el paso de extracción de la terminología del dominio.

Derivación de la jerarquía de conceptos

editar

En el paso de derivación de la jerarquía de conceptos, el sistema OL intenta ordenar los conceptos extraídos en una estructura taxonómica. Esto se consigue principalmente con métodos no supervisados de agrupación jerárquica. Dado que el resultado de estos métodos suele ser impreciso, se añade un paso de supervisión, por ejemplo, la evaluación del usuario. Otro método para derivar una jerarquía de conceptos consiste en utilizar varios patrones que indiquen una relación de sub o supersunción. Patrones como "X, que es un Y" o "X es un Y" indican que X es una subclase de Y. Estos patrones pueden analizarse de forma eficiente, pero a menudo son demasiado infrecuentes como para extraer suficientes relaciones de sub o supersunción. En su lugar, se desarrollan métodos de bootstrapping, que aprenden estos patrones automáticamente y garantizan así una cobertura más amplia.

Aprendizaje de relaciones no taxonómicas

editar

En la etapa de aprendizaje de relaciones no taxonómicas, se extraen relaciones que no expresan ninguna sub-suposición ni supersuposición. Tales relaciones son, por ejemplo, las de trabajo o las de localización. Existen dos enfoques comunes para resolver esta subtarea. El primero se basa en la extracción de asociaciones anónimas, que se nombran adecuadamente en un segundo paso. El segundo enfoque extrae verbos, que indican una relación entre entidades, representados por las palabras que los rodean. El resultado de ambos enfoques debe ser evaluado por un ontólogo para garantizar su precisión.

Descubrimiento de reglas

editar

Durante el descubrimiento de reglas,[8]​ se generan axiomas (descripción formal de conceptos) para los conceptos extraídos. Esto puede hacerse, por ejemplo, analizando la estructura sintáctica de una definición en lenguaje natural y aplicando reglas de transformación al árbol de dependencia resultante. El resultado de este proceso es una lista de axiomas que, posteriormente, se comprenden en una descripción de concepto. Este resultado es evaluado por un ontólogo.

Población de la ontología

editar

En este paso, la ontología se completa con instancias de conceptos y propiedades. Para añadir instancias de conceptos se utilizan métodos basados en la concordancia de patrones léxico-sintácticos. Las instancias de propiedades se añaden mediante la aplicación de métodos de bootstrapping, que recopilan tuplas de relaciones.

Ampliación de la jerarquía de conceptos

editar

En este paso, el sistema OL intenta ampliar la estructura taxonómica de una ontología existente con más conceptos. Esto puede realizarse de forma supervisada con un clasificador entrenado o de forma no supervisada mediante la aplicación de medidas de similitud.

Detección de tramas y eventos

editar

Durante la detección de marcos y eventos, el sistema OL intenta extraer relaciones complejas del texto, por ejemplo, quién partió de dónde, a qué lugar y cuándo. Los enfoques van desde la aplicación de SVM con métodos kernel hasta el etiquetado semántico de roles (en inglés: semantic role labeling, SRL),[9]​ pasando por técnicas de análisis semántico profundo.[10]

Herramientas

editar

Dog4Dag (Dresden Ontology Generator for Directed Acyclic Graphs) es un plugin de generación de ontologías para Protégé 4.1 y OBOEdit 2.1. Permite la generación de términos, la generación de pares, la generación de definiciones y la inducción de relaciones. Integrado en Protégé 4.1 y OBO-Edit 2.1, DOG4DAG permite la extensión ontológica para todos los formatos ontológicos comunes (por ejemplo, OWL y OBO). Limitado en gran medida a las extensiones de los servicios de búsqueda de EBI y Bio Portal.[11]

Véase también

editar

Bibliografía

editar
  • P. Buitelaar, P. Cimiano (Eds.). Ontology Learning and Population: Bridging the Gap between Text and Knowledge, Series information for Frontiers in Artificial Intelligence and Applications (en inglés), IOS Press, 2008.
  • P. Buitelaar, P. Cimiano, and B. Magnini (Eds.). Ontology Learning from Text: Methods, Evaluation and Applications, Series information for Frontiers in Artificial Intelligence and Applications (en inglés), IOS Press, 2005.
  • Wong, W. (2009), "Learning Lightweight Ontologies from Text across Different Domains using the Web as Background Knowledge" (en inglés), Doctor of Philosophy thesis, University of Western Australia.
  • Wong, W., Liu, W. & Bennamoun, M. (2012), "Ontology Learning from Text: A Look back and into the Future". ACM Computing Surveys,(en inglés), Volume 44, Issue 4, Pages 20:1-20:36.
  • Thomas Wächter, Götz Fabian, Michael Schroeder: DOG4DAG: semi-automated ontology generation in OBO-Edit and Protégé. SWAT4LS (en inglés), London, 2011. doi 10.1145/2166896.2166926

Referencias

editar
  1. Maedche, A.; Staab, S. (2001). «Learning ontologies for the semantic web». Semantic Web Worskhop (en inglés). 
  2. Navigli, Roberto; Velardi, Paola (2004). «Learning Domain Ontologies from Document Warehouses and Dedicated Web Sites». Computational Linguistics (MIT Press) 30 (2): 151-179. 
  3. Velardi, P.; Faralli, S.; Navigli, R. (2013). «OntoLearn Reloaded: A Graph-based Algorithm for Taxonomy Induction». Computational Linguistics (en inglés) (MIT Press) 39 (3): 665-707. 
  4. Hearst, Marti A. (1992). «Automatic acquisition of hyponyms from large text corpora». Proceedings of the Fourteenth International Conference on Computational Linguistics (en inglés) (Nantes, Francia): 539--545. 
  5. Navigli, R.; Velardi, P. (2012). «Learning Word-Class Lattices for Definition and Hypernym Extraction». Proc.of the 48th Annual Meeting of the Association for Computational Linguistics (ACL 2010) (en inglés) (Uppsala, Suecia): 1318-1327. 
  6. Cimiano, Philipp; Völker, Johanna; Studer, Rudi. «Ontologies on Demand? - A Description of the State-of-the-Art, Applications, Challenges and Trends for Ontology Learning from Text». Information, Wissenschaft und Praxis (en inglés) 57: 315-320. Consultado el 18 de junio de 2012. 
  7. Wong, W.; Liu, W. (2012). «Ontology Learning from Text: A Look back and into the Future». ACM Computing Surveys (en inglés) 44 (4): 20:1-20:36. 
  8. Völker, Johanna; Cimiano, Philipp; Hitzler, Pascal (2007). «Acquisition of OWL DL Axioms from Lexical Resources». Proceedings of the 4th European conference on The Semantic Web. Consultado el 18 de junio de 2012. 
  9. Coppola, B.; Gangemi, A.; Gliozzo, A.; Picca, D.; Presutti, V. (2009). «Frame Detection over the Semantic Web». Proceedings of the European Semantic Web Conference (ESWC2009), Springer, 2009. (en inglés). 
  10. Presutti, V.; Draicchio, F.; Gangemi, A. (2009). «Knowledge extraction based on Discourse Representation Theory and Linguistic Frames». Proceedings of the Conference on Knowledge Engineering and Knowledge Management (EKAW2012), LNCS, Springer, 2012 (en inglés). 
  11. Wächter, Thomas; Götz, Fabian; Schroeder, Michael (2011). «DOG4DAG: semi-automated ontology generation in OBO-Edit and Protégé». SWAT4LS (en inglés) (Londres). doi:10.1145/2166896.2166926.