poblado semiautomático de ontologías organizacionales a partir de análisis de contenido web

93
Centro Nacional de Investigación y Desarrollo Tecnológico Departamento de Ciencias Computacionales TESIS DE MAESTRÍA EN CIENCIAS Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web Presentada por Everardo Munguía Aguilar Ing. Sistemas Computacionales por el I.T. de Zacatepec Como requisito para la obtención del grado de: Maestría en Ciencias en Ciencias de la Computación Director de tesis: Dra. Azucena Montes Rendón Co-Director de tesis: M.C. Rocío Vargas Arroyo Jurado: Dr. Juan Gabriel González Serna Presidente Dr. Hugo Estrada Esquivel Secretario M.C. José Alejandro Reyes Ortiz Vocal Dra. Azucena Montes Rendón Vocal Suplente Cuernavaca, Morelos, México. 29 de Junio de 2012

Upload: gabriel-gonzalezserna

Post on 28-Jun-2015

642 views

Category:

Technology


0 download

DESCRIPTION

Una ontología es uno de los principales mecanismos de representación del conocimiento, a pesar de sus costos de producción, tanto en la creación como en el poblado de las mismas. Esta puede ser utilizada como una base de conocimiento descriptiva y suficientemente explícita para un sistema o simplemente para la representación de la información en la Web semántica. Estos aspectos son aprovechados por sistemas que buscan explotar e inferir conocimiento, utilizando la semántica que describe una ontología. Actualmente, se cuenta con diversas herramientas, técnicas, metodologías y sistemas de software qué obtienen de manera automática y/o semiautomática información relevante y de un dominio específico. Estas técnicas resuelven algunos problemas tales como la diversidad de idiomas en los que está representada la información, o la redundancia de los datos. Sin embargo, para realizar un correcto poblado ontológico es necesario verificar la información instanciada, revisando que se encuentre ubicada en la clase correcta de la ontología. Existen herramientas desarrolladas, tanto para extraer información de páginas Web como para realizar un poblado ontológico, pero muy pocas de ellas lo realizan tomando una página Web como fuente de información. Se han implementado metodologías para sistemas supervisados y no supervisados, redes neuronales que utilizan grandes corpus de documentos, o haciendo un análisis de diversos patrones. A pesar de esto muchas de estas metodologías y/o sistemas requieren de muchos ejemplos de entrenamiento y/o no se basan en la Web como su principal fuente de información. En este contexto, esta tesis aborda el problema de extraer información, en español, de un sitio Web utilizando un conjunto de reglas y especificaciones para realizar un poblado ontológico de dominio específico. Para ello se implementa una metodología conformada por tres fases principales: recuperación de información, extracción de texto y poblado ontológico.

TRANSCRIPT

Page 1: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Centro Nacional de Investigación y Desarrollo Tecnológico

Departamento de Ciencias Computacionales

TESIS DE MAESTRÍA EN CIENCIAS

Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Presentada por

Everardo Munguía Aguilar Ing. Sistemas Computacionales por el I.T. de Zacatepec

Como requisito para la obtención del grado de:

Maestría en Ciencias en Ciencias de la Computación

Director de tesis: Dra. Azucena Montes Rendón

Co-Director de tesis:

M.C. Rocío Vargas Arroyo

Jurado:

Dr. Juan Gabriel González Serna – Presidente

Dr. Hugo Estrada Esquivel – Secretario M.C. José Alejandro Reyes Ortiz – Vocal

Dra. Azucena Montes Rendón – Vocal Suplente

Cuernavaca, Morelos, México. 29 de Junio de 2012

Page 2: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

I

Page 3: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

II

Page 4: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

III

Dedicatorias

A mis padres

Everardo Munguía Maldonado y María Aguilar Arrollo, por todo el apoyo

que me han brindado, la confianza y el amor que día a día me han hecho lo

que soy.

A mi padre por haber sido firme y enseñarme a valorar las cosas, a seguir

adelante y sobre todo por haber sido mi padre cuando era bebé, mi maestro

cuando era pequeño y ahora mi mejor amigo.

A mi madre, por ser tan amable y servicial, por apoyarme y sacarme de

muchos apuros, por confiar plenamente en mí y ser parte de mi vida todos los

días.

A mi familia

Por apoyarme en mis decisiones y brindarme su apoyo, por darme la

confianza de que puedo contar con ellos en cualquier momento, sobre todo a

mis hermanas Carla y Janette que siempre me apoyan y me han enseñado

mucho de la vida. Gracias por estar siempre conmigo.

A Sam

Por formar parte de mi vida, ya que su compañía me dio el ímpetu para

alcanzar mis metas, preocupándose por mí, y aconsejándome en todos los

aspectos, gracias por preocuparte tanto.

Page 5: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

IV

Agradecimientos

Primero que nada quiero agradecer a mí directora de tesis la Dra. Azucena

Montes Rendón y a mí codirectora la M.C. Rocío Vargas Arroyo, que me han apoyado

durante el desarrollo de esta tesis, proporcionándome su tiempo, opiniones, sugerencias y

haciendo de mi una persona más capaz, dándoles un muy humilde gracias por todo su

apoyo.

A mis revisores de tesis, Dr. Juan Gabriel González Serna, Dr. Hugo Estrada

Esquivel, M.C. José Alejandro Reyes Ortiz, quienes me brindaron sus conocimientos y

aportaciones a esta tesis.

También quiero agradecer al Centro Nacional de Investigación y Desarrollo

Tecnológico (CENIDET), por proporcionar sus instalaciones y servicios, por brindarme

un servicio óptimo y por tener los mejores profesores-investigadores.

Quiero agradecer a Consejo Nacional de Ciencia y Tecnología (CONACYT), por

el apoyo económico que brinda a los estudiantes de maestría y doctorado, permitiéndonos

dedicarnos completamente al estudio.

A mi familia, por apoyarme y estar siempre conmigo, forjándome todos los días

para ser una persona mejor.

A mis compañeros, por compartir experiencias y aprender juntos, apoyándonos

unos a los otros y dándome la mano cada vez que la necesito a Sabino Pariente Juárez,

Nimrod González Franco, Eliel Morales González, Ricardo Estrada Peláez, Nazir

Molina, Felipe Román y Jaime Boanerjes, por ser parte de esta experiencia única y por

el gusto de conocerlos gracias.

A todos mis compañeros y la gente que me rodeó durante mi desarrollo en

Cenidet, compartiendo experiencias, convivencias y sonrisas, gracias.

¡Gracias a todos por formar parte de mi historia!

Page 6: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

V

Abstract

An ontology is one of the main knowledge representation mechanisms although its production,

creation and population cost. It can be used as a descriptive and explicit enough knowledge base for a system

or simply for the information representation of the current semantic web. These aspects are used by systems

which look for exploring and inferring knowledge using the semantic that the ontologies describe.

Nowadays, there are different tools, techniques, methodologies and systems software for obtaining in

a automatic and/or semiautomatic way the relevant information of a specific domain. These techniques solve

some problems such as diversity of languages in which the information is available or data redundancy.

However, for a correct ontology population it is necessary to verify the information being instantiated,

assuring that it is placed in the correct class of the ontology.

There exist developed tools for both extracting information from web pages and performing a correct

ontological population, but only a few of them allow performing an ontology population using a web page as

their source of information. Also, methodologies for supervised and not supervised systems, neuronal

networks based in huge documents corpus or making an analysis of different patrons have been implemented.

Despide this, many of these methodologies and/or systems require time, training or they are not based on the

web as their main source of information.

In this context, this thesis present an approach to solve the problem of extracting information from a

web site for ontology population in Spanish. To make it possible, a methodology conformed by three main

phases has been implemented. These phases allow obtaining information from a web site using a set of rules

and specifications for performing an ontological population of a specific domain. Population is made by

searching a web site in an automatic way with the objective of obtaining the relevant information for an user

and incrusting it in an ontology.

Page 7: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

VI

Resumen

Una ontología es uno de los principales mecanismos de representación del conocimiento, a pesar de

sus costos de producción, tanto en la creación como en el poblado de las mismas. Esta puede ser utilizada

como una base de conocimiento descriptiva y suficientemente explícita para un sistema o simplemente para la

representación de la información en la Web semántica. Estos aspectos son aprovechados por sistemas que

buscan explotar e inferir conocimiento, utilizando la semántica que describe una ontología.

Actualmente, se cuenta con diversas herramientas, técnicas, metodologías y sistemas de software qué

obtienen de manera automática y/o semiautomática información relevante y de un dominio específico. Estas

técnicas resuelven algunos problemas tales como la diversidad de idiomas en los que está representada la

información, o la redundancia de los datos. Sin embargo, para realizar un correcto poblado ontológico es

necesario verificar la información instanciada, revisando que se encuentre ubicada en la clase correcta de la

ontología.

Existen herramientas desarrolladas, tanto para extraer información de páginas Web como para

realizar un poblado ontológico, pero muy pocas de ellas lo realizan tomando una página Web como fuente de

información. Se han implementado metodologías para sistemas supervisados y no supervisados, redes

neuronales que utilizan grandes corpus de documentos, o haciendo un análisis de diversos patrones. A pesar

de esto muchas de estas metodologías y/o sistemas requieren de muchos ejemplos de entrenamiento y/o no se

basan en la Web como su principal fuente de información.

En este contexto, esta tesis aborda el problema de extraer información, en español, de un sitio Web

utilizando un conjunto de reglas y especificaciones para realizar un poblado ontológico de dominio específico.

Para ello se implementa una metodología conformada por tres fases principales: recuperación de información,

extracción de texto y poblado ontológico.

Page 8: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

VII

Contenido

Capítulo 1. Introducción ........................................................................................................................ 1

1.1 Motivación .................................................................................................................................. 2

1.2 Planteamiento del problema ......................................................................................................... 2

1.3 Objetivos ..................................................................................................................................... 3

1.3.1 Objetivo general ...................................................................................................................... 3

1.3.2 Objetivos particulares .............................................................................................................. 3

1.4 Alcances y limitaciones................................................................................................................ 3

1.4.1 Alcances .................................................................................................................................. 3

1.4.2 Limitaciones ............................................................................................................................ 4

1.5 Organización de la tesis ............................................................................................................... 4

Capítulo 2. Fundamento teórico ............................................................................................................. 5

2.1 Técnicas para el análisis de contenido Web .................................................................................. 6

2.1.1 Procesamiento de lenguaje natural ........................................................................................... 6

2.1.2 Pre- procesamiento de texto ..................................................................................................... 7

2.1.3 Tratamiento de signos .............................................................................................................. 8

2.1.4 Pre-procesamiento de páginas Web .......................................................................................... 9

2.2 Extracción y recuperación de información .................................................................................... 9

2.2.1 Extracción de información ....................................................................................................... 9

2.2.2 Recuperación de información ................................................................................................. 10

2.2.3 Minería de texto..................................................................................................................... 10

2.3 Ontología................................................................................................................................... 10

2.4 Poblado ontológico .................................................................................................................... 11

2.4.1 Poblado ontológico basado en patrones léxico-sintácticos ....................................................... 11

2.4.2 Poblado ontológico basado en clasificación por similitud........................................................ 11

2.4.3 Poblado ontológico basado en enfoques supervisados ............................................................. 11

2.4.4 Poblado ontológico basado en conocimiento y enfoques lingüísticos ....................................... 12

2.4.5 Poblado ontológico basado en clasificación por similitud de nombres de entidades ................. 12

Capítulo 3. Estado del arte ................................................................................................................... 13

3.1.1 KNOWITALL ....................................................................................................................... 14

3.1.2 Ontosophie: a semi-automatic system for ontology population from text ................................. 14

3.1.3 WEB→ KB ........................................................................................................................... 15

3.1.4 PANKOW ............................................................................................................................. 15

3.1.5 Kim – semantic annotation platform ....................................................................................... 16

Page 9: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

VIII

3.1.6 Optima: an ontology population system.................................................................................. 17

3.1.7 Omini .................................................................................................................................... 18

3.1.8 Ontominer: bootstrapping and populating ontologies from domain specific Web sites ............. 19

3.1.9 Comparativa de trabajos relacionados .................................................................................... 19

3.2 Conclusiones ............................................................................................................................. 22

Capítulo 4. Metodología de solución .................................................................................................... 23

4.1 Introducción .............................................................................................................................. 24

4.2 Fase 1. Recuperación de información ......................................................................................... 25

4.2.1 Exploración del sitio Web ...................................................................................................... 26

4.2.2 Filtrado y selección de páginas Web....................................................................................... 27

4.2.3 Pre-procesamiento de páginas Web ........................................................................................ 28

4.3 Fase 2. Extracción de información .............................................................................................. 29

4.3.1 Tokenización de texto ............................................................................................................ 30

4.3.2 Etiquetado del texto ............................................................................................................... 31

4.3.3 Análisis lingüístico ................................................................................................................ 31

4.3.4 Árbol de elementos relacionados ............................................................................................ 33

4.4 Fase 3. Poblado ontológico ........................................................................................................ 33

4.4.1 Similitud de objetos recuperados ............................................................................................ 35

4.4.2 Encriptado ............................................................................................................................. 35

4.4.3 Instanciación ......................................................................................................................... 36

4.5 Análisis y diseño de RExPO ....................................................................................................... 36

4.5.1 Desarrollo de RExPO............................................................................................................. 37

4.5.2 RExPO .................................................................................................................................. 40

4.6 Conclusiones ............................................................................................................................. 44

Capítulo 5. Pruebas y resultados .......................................................................................................... 45

5.1.1 Métricas de evaluación .......................................................................................................... 46

5.2 Caracterización de Pruebas......................................................................................................... 47

5.2.1 Criterios de evaluación .......................................................................................................... 47

5.2.2 Casos de estudio .................................................................................................................... 49

5.3 Resultados ................................................................................................................................. 52

5.3.1 Recorrido del sitio. ................................................................................................................ 52

5.3.2 Extracción de información ..................................................................................................... 54

5.3.3 Poblado ontológico ................................................................................................................ 56

5.4 Análisis de resultados ................................................................................................................ 58

Capítulo 6. Conclusiones y trabajos futuros.......................................................................................... 60

Page 10: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

IX

6.1 Conclusiones ............................................................................................................................. 61

6.2 Trabajos futuros ......................................................................................................................... 63

Anexos ...................................................................................................................................................... 67

Anexo 1. Herramientas utilizadas ........................................................................................................... 68

FreeLing ............................................................................................................................................ 68

Jericho ............................................................................................................................................... 70

TDB .................................................................................................................................................. 73

SimMetrics ........................................................................................................................................ 74

Encriptación. ...................................................................................................................................... 74

Autómatas .......................................................................................................................................... 75

Anexo 2.- Bolsa de palabras y marcadores lingüísticos ............................................................................ 77

Anexo 3.- Catálogo de páginas Web ....................................................................................................... 80

Page 11: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

X

Figuras FIGURA 1.- PROCESO DE PANKOW. ............................................................................................................ 16

FIGURA 2.- PROCESO DE KIM. ..................................................................................................................... 17

FIGURA 3.- PROCESO DE OPTIMA. .............................................................................................................. 18

FIGURA 4.- LAS 3 ETAPAS PRINCIPALES DE LA METODOLOGÍA. ...................................................................... 24

FIGURA 5.- FASE 1- RECUPERACIÓN DE INFORMACIÓN. ................................................................................. 25

FIGURA 6.- PROCESO DE IR. ......................................................................................................................... 26

FIGURA 7.- PROCESO DE EXPLORACIÓN DEL SITIO. ........................................................................................ 27

FIGURA 8.- PRE-PROCESAMIENTO DE PÁGINAS WEB...................................................................................... 29

FIGURA 9.- FASE 2 - EXTRACCIÓN DE INFORMACIÓN. .................................................................................... 29

FIGURA 10.- PROCESO PARA EL ETIQUETADO DEL TEXTO. ............................................................................. 31

FIGURA 11.- PROCESO PARA LA IDENTIFICACIÓN DE ELEMENTOS PERTINENTES. ............................................. 32

FIGURA 12.- JERARQUÍA DE ELEMENTOS....................................................................................................... 33

FIGURA 13.- FASE 3 – POBLADO ONTOLÓGICO. ............................................................................................. 33

FIGURA 14.- FORMACIÓN DE TRIPLETAS. ...................................................................................................... 34

FIGURA 15.- INSTANCIACIÓN DE TRIPLETAS. ................................................................................................. 34

FIGURA 16.- PROCESO PARA EL POBLADO ONTOLÓGICO. ............................................................................... 35

FIGURA 17.- ARQUITECTURA DE REXPO. ..................................................................................................... 37

FIGURA 18.- REXPO. .................................................................................................................................. 41

FIGURA 19.- RESULTADO DE LA RECUPERACIÓN DE INFORMACIÓN. ............................................................... 42

FIGURA 20.- RESULTADO DE IE.................................................................................................................... 42

FIGURA 21.- RANGOS DE ANÁLISIS. .............................................................................................................. 48

FIGURA 22.- FILTROS PARA LA EXTRACCIÓN DE UN OBJETO. .......................................................................... 48

FIGURA 23.- EFECTIVIDAD DE LA METODOLOGÍA IMPLEMENTADA EN EL PROTOTIPO. ..................................... 59

FIGURA 24.- AUTÓMATA DE TELÉFONO ........................................................................................................ 75

FIGURA 25.-AUTÓMATA DE TWITTER ........................................................................................................... 75

FIGURA 26.- AUTÓMATA DE CORREOS ELECTRÓNICOS .................................................................................. 76

Page 12: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

XI

Tablas TABLA 1.- CUADRO COMPARATIVO DE TRABAJOS DEL ESTADO DEL ARTE. ..................................................... 21

TABLA 2.- EJEMPLOS DE TOKENIZACIÓN DE TEXTO. ...................................................................................... 30

TABLA 3.- TABLA PARA DETERMINAR LA FORMULA DE PRECISIÓN Y RECUERDO. ........................................... 46

TABLA 4.- DETALLES CASO DE ESTUDIO 1. ................................................................................................... 50

TABLA 5.- DETALLES CASO DE ESTUDIO2. .................................................................................................... 50

TABLA 6.- DETALLES CASO DE ESTUDIO 3. ................................................................................................... 50

TABLA 7.- DETALLES CASO DE ESTUDIO 4. ................................................................................................... 51

TABLA 8.- DETALLES CASO DE ESTUDIO 5. ................................................................................................... 51

TABLA 9.- DETALLES CASO DE ESTUDIO 6. ................................................................................................... 51

TABLA 10.- TABLA COMPARATIVA DEL RECORRIDO DEL SITIO ....................................................................... 53

TABLA 11.- RESUMEN ESTADÍSTICO POR RECORRIDO DEL SITIO. .................................................................... 54

TABLA 12.- TABLA COMPARATIVA DE LA EXTRACCIÓN DE INFORMACIÓN ...................................................... 55

TABLA 13.- RESUMEN ESTADÍSTICO POR EXTRACCIÓN DE INFORMACIÓN. ...................................................... 56

TABLA 14.- TABLA COMPARATIVA DEL POBLADO ONTOLÓGICO..................................................................... 57

TABLA 15.- RESUMEN ESTADÍSTICO POR POBLADO ONTOLÓGICO. .................................................................. 57

TABLA 16.- TABLA COMPARATIVA DE LA EFECTIVIDAD DE LA METODOLOGÍA POR SITIO WEB ........................ 58

TABLA 17.- EFECTIVIDAD DE LA METODOLOGÍA POR SITIO WEB. ................................................................... 58

TABLA 18.- ETIQUETADORES. ...................................................................................................................... 69

TABLA 19.- CATEGORÍA GRAMATICAL DE NOMBRES PROPIOS. ...................................................................... 69

TABLA 20.- TABLA COMPARATIVA DE ANALIZADORES HTML. ..................................................................... 72

Page 13: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 1. Introducción

En este capítulo se presentan los principales temas que llevaron a la realización de esta tesis, los objetivos,

limitaciones y la metodología de solución propuesta para realizar un poblado ontológico.

Page 14: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 1.- Introducción

Everardo Munguía Aguilar 2 | P á g i n a

1.1 Motivación

Actualmente existe una gran diversidad de información y varias formas de acceder a ella con

diferentes propósitos, distintas fuentes y desde un mismo lugar. La mayoría de las personas hacen sus

búsquedas mediante “Internet” percatándose que es más fácil acceder a la información y obtener una gran

cantidad de resultados en muy poco tiempo. Sin embargo, en ocasiones no resulta útil toda la información

recuperada mediante internet, ya que una gran parte no es relevante o no cumple con las necesidades y

criterios del usuario. Dada esta problemática se han desarrollado diferentes herramientas, técnicas, algoritmos,

procedimientos y metodologías para optimizar los resultados que un usuario desea.

Derivado de estos nuevos enfoques, ha surgido una gran cantidad de propuestas tal como el uso de

metadatos semánticos y ontológicos en la Web, los cuales describen el contenido, el significado y la relación

de los datos, haciendo posible evaluar automáticamente la información utilizando máquinas de procesamiento

de texto.

La Web ha evolucionado, desde la web 1.0, donde comenzó con SQL usando HTTP y HTML,

evolucionando hacia diversos lenguajes orientados a la Web como java, flash, XML y diversas tecnologías

para llegar hasta la web 2.0 y en base a esto surgen nuevos paradigmas y nuevas tecnologías como AJAX,

OWL, SPARQL, RDF, entre otros, que están en actual desarrollo para llegar hacia la Web 3.0, donde se

pretende que en toda la Web se puedan hacer búsquedas semánticas o implementar bases de datos semánticas

para lograr evolucionar completamente hacia la Web 3.0.

El objetivo es mejorar los resultados de búsqueda de información en la web considerando la

semántica y que permita a las computadoras buscar información sin la intervención del ser humano es, por un

lado, ampliar la interoperabilidad entre los sistemas informáticos usando "agentes inteligentes"; por otro lado,

tratar automáticamente aspectos del lenguaje natural. Este último es la motivación del presente trabajo.

1.2 Planteamiento del problema

El surgimiento de la Web semántica, y con ella el manejo de ontologías, aparecen nuevas

problemáticas tecnológicas como la creación, poblado, alineamiento y explotación de estas, creando un reto

para la ingeniería ontológica sobre todo en descubrimiento automático de elementos, como clases, relaciones

e instancias.

Los principales métodos para el poblado de ontologías son manuales, costosos y complejos ya que el

método requiere de la intervención de un experto para identificar conceptos en un dominio y relaciones entre

ellos. Por lo general se utilizan aplicaciones de tipo standalone como [Protégé, 2011] o se implementan

aplicaciones Web que utilizan formularios para capturar las instancias de las clases y atributos, con esto se

logra poblar la ontología adecuadamente.

Por otra parte existen los métodos semiautomáticos, donde interviene un usuario que puede hacer

varias tareas, como proponer una ontología inicial, validar, cambiar o eliminar los elementos extraídos por la

técnica de aprendizaje de ontologías; seleccionar patrones de clases, agrupar variaciones de conceptos o

eliminar aquellos irrelevantes y etiquetar nuevos conceptos en los textos, entre otro tipo de funciones como

menciona [Celjuska & Vargas-Vera 2004] donde es implementada una herramienta llamada Ontosophie

descrita en 3.1.2.

Page 15: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 1.- Introducción

Everardo Munguía Aguilar 3 | P á g i n a

Por último, existen métodos en los cuales el proceso de aprendizaje de algunos elementos

ontológicos se realiza de forma automática, estos se enfocan en descubrir instancias de las clases en una

ontología existente como en [Craven et al. 1999], sin embargo requieren de muchos ejemplos de

entrenamiento.

Por consiguiente, esta tesis se enfoca en resolver el problema de identificar y extraer instancias a

partir de texto de sitios Web para poblar una ontología organizacional, además de realizar un análisis

semántico y el almacenamiento de aquellos datos que se consideran pertinentes de un sitio Web, llevando a

cabo el proceso de instanciación del repositorio de tripletas a una ontología ya definida.

1.3 Objetivos

En esta sección se presenta el objetivo principal y los objetivos particulares que se abordaron para la

elaboración de esta tesis.

1.3.1 Objetivo general

El objetivo de este trabajo consiste en desarrollar una metodología para poblar ontologías

organizacionales mediante el análisis de contenido textual de páginas Web.

1.3.2 Objetivos particulares

De acuerdo al objetivo general se desglosan los objetivos particulares que son abordados en esta tesis como:

Crear un catálogo de organizaciones a partir del dominio Web, identificando organizaciones que

trabajen con el dominio de las TIC.

Estudiar herramientas existentes sobre la instanciación de clases de una ontología.

Analizar el contenido de las páginas Web (texto).

Aprender, comprender y utilizar una base de datos basada en tripletas “TDB”.

Proponer e implementar una metodología para la instanciación entre el repositorio de

información y la ontología.

1.4 Alcances y limitaciones

1.4.1 Alcances El análisis de contenido Web se realizar sobre sitos del dominio de las TIC y se acota a

organizaciones (IES o empresas).

Se identifican datos generales de la organización.

Se identifican recursos humanos asociados a la organización.

Se identifican los servicios (competencias organizacionales) que presta la organización al

exterior.

Se identifican objetos de conocimiento de una organización por medio de su página Web.

Page 16: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 1.- Introducción

Everardo Munguía Aguilar 4 | P á g i n a

1.4.2 Limitaciones No se analizan competencias individuales.

No se analizan contenidos de documentos diferentes a las páginas Web.

No se analizan contenidos multimedia, imágenes, audio y video.

No se analizan scripts.

Únicamente se analizan las ontologías diseñadas para empresas e instituciones de educación

superior.

Sólo se aborda el idioma español.

1.5 Organización de la tesis

El capítulo uno se muestra la principal motivación, planteamiento del problema, objetivos,

metodología de solución, alcances y limitaciones a los que se acota la tesis, mostrando las principales ideas y

la solución para poblar una ontología.

El segundo capítulo se aborda el marco teórico en donde se muestran los fundamentos teóricos como

la recuperación de información, extracción de información, tratamiento de páginas Web, análisis del texto y

las diferentes técnicas para poblar una ontología.

El tercer capítulo muestra una recopilación de los diferentes trabajos relacionados a esta tesis, así

como sus comparativas, características principales y su relevancia.

El capítulo cuatro se presenta el trabajo central donde se describe la metodología de solución,

compuesta por tres fases principales, explicando la exploración del sitio Web, el etiquetado de texto, la

recuperación de información, el poblado ontológico y la descripción del diseño e implementación de la

metodología en la herramienta RexPO mostrando los principales criterios que se consideran para cada parte

del desarrollo.

Posteriormente se encuentra el capítulo cinco donde se muestran las pruebas y resultados, obtenidos

en los casos de estudio presentados, detallando cada una de los datos obtenidos, experiencias y conclusiones.

El capítulo seis, presenta la conclusión general, trabajos futuros, las referencias de los trabajos

abordados y analizados y Anexos.

Page 17: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 2. Fundamento teórico

En este capítulo aborda los fundamentos teóricos para comprender adecuadamente los temas en esta tesis.

Se presenta el tratamiento de páginas Web, extracción de información, recuperación de información,

ontologías y el poblado ontológico. En cada uno de estos temas se presenta una explicación y algunos

ejemplos y técnicas, considerando los criterios enfocados al poblado ontológico y a la recuperación y

extracción de información de páginas Web.

Page 18: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 6 | P á g i n a

2.1 Técnicas para el análisis de contenido Web

Las diversas técnicas utilizadas en [B. Liu et al. 2008] se presentan en esta sección, enfocadas a la

extracción de datos estructurados. Existen tres enfoques principales: enfoque manual, el aprendizaje

supervisado y la extracción automática. En el enfoque manual, el programador humano, mediante

observación, encuentra patrones generando un programa con respecto a ellos. El aprendizaje supervisado es

semiautomático y consta de un conjunto de reglas de extracción en base a una colección de páginas,

posteriormente emplea reglas para extraer información de otras páginas con formato similar. La extracción

automática consta de patrones o gramáticas para la extracción de datos.

Cada uno de estos enfoques brinda un proceso para lograr un análisis completo del contenido de una

página Web, logrando una extracción de información eficiente, además de que cada uno requiere de un

desarrollo e implementación de técnicas diferentes para lograr un análisis del contenido de una páginas Web.

A continuación se abordan algunas técnicas de análisis de contenido Web para el procesamiento de la

información.

2.1.1 Procesamiento de lenguaje natural

En [Liddy, 2001] menciona que el Procesamiento del Lenguaje Natural (Natural Language

Processing, NLP) es una teoría motivada de técnicas computacionales para el análisis y representación de

textos de forma natural en uno o varios niveles de análisis lingüístico con el fin de lograr el desarrollo

humano, como el procesamiento del lenguaje para una variedad de tareas o aplicaciones.

2.1.1.1 Análisis Morfológico

En [Liddy, 2001] menciona que el análisis morfológico se ocupa de la naturaleza componencial de

las palabras (sufijos, prefijos, raíces, flexiones), que se componen de morfemas: las más pequeñas unidades

con un significado. Por ejemplo, “preinscripción” palabra puede ser morfológicamente analizada en tres

morfemas independientes: el prefijo “pre”, el registro raíz, y el sufijo “ción”. Dado que el significado de cada

morfema sigue siendo el mismo a través de las palabras, los seres humanos descomponen una palabra

desconocida en sus morfemas constituyentes con el fin de entender su significado. Del mismo modo, un

sistema de PLN puede reconocer el significado transmitido por cada morfema con el fin de obtener y

representar el significado de una palabra. Por ejemplo, añadiendo el sufijo-ed a un verbo, transmite que la

acción del verbo se llevó a cabo en el pasado.

2.1.1.2 Análisis Léxico

En [Liddy, 2001] menciona que en el análisis léxico en seres humanos, así como los sistemas de

NLP, interpretan el significado de las palabras de forma individual. Por lo tanto existen varios tipos de

procesamiento que contribuyen a la comprensión de una palabra, donde la primera de ellas inicia con la

asignación de una etiqueta a una palabra que forma parte de una oración. En este proceso, las palabras pueden

funcionar como algo más que una parte de una oración a las cuales se les asigno una etiqueta basada en el

contexto en el que están. Por ejemplo, las palabras que sólo tienen un sentido o significado, pueden ser

sustituidas por una representación semántica de su significado.

La naturaleza de la representación varía de acuerdo con la teoría semántica utilizada en un sistema

PNL, por ejemplo en forma de predicados lógicos, donde una sola unidad léxica se descompone en sus

Page 19: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 7 | P á g i n a

propiedades más básicas. Teniendo en cuenta que hay una serie de primitivas semánticas utilizadas en todas

las palabras, estas representaciones léxicas simplificadas hacen posible unificar el significado a través de

palabras y de producir interpretaciones complejas, logrando hacer lo que hacen los humanos.

El análisis léxico puede requerir un lexicón (Conjunto de palabras y lexemas) y un enfoque particular de un

NLP para determinar si un lexicón será usado, así como la naturaleza y extensión de la información que se

codificará en un lexicón.

2.1.1.3 Análisis Sintáctico

En [Liddy, 2001] menciona que el análisis sintáctico se enfoca en el análisis de las palabras en una

oración con el fin de descubrir la estructura gramatical de la frase. Esto requiere de una gramática y un

analizador. La salida de este nivel de procesamiento es una representación de una sentencia que revela las

relaciones y dependencias estructurales entre palabras, por lo la sintaxis transmite un significado en la

mayoría de los idiomas, con respecto al orden y la dependencia, que contribuyen al significado.

2.1.1.4 Análisis Semántico

El Procesamiento semántico determina los posibles significados de una frase, centrándose en las

interacciones entre los significados a nivel de palabra en la frase. Este nivel de procesamiento puede incluir la

desambiguación semántica de palabras con múltiples sentidos, de manera análoga como la desambiguación

sintáctica de las palabras que pueden funcionar como múltiples partes de su discurso llevado acabado en el

nivel sintáctico. La desambiguación semántica permite uno y sólo un sentido en las palabras polisémicas para

ser seleccionadas e incluidas en la representación semántica de una frase [Liddy, 2001].

2.1.1.5 Análisis Pragmático

Este nivel nos menciona [Liddy, 2001] que se refiere al uso útil del lenguaje en situaciones,

utilizando el contexto más allá de los contenidos del texto para su comprensión. El objetivo es explicar cómo

el significado adicional se lee en los textos sin llegar a ser codificado en ellos. Esto requiere de mucho más

conocimiento del mundo, incluyendo la comprensión de las intenciones, planes y metas. Algunas aplicaciones

de la PNL pueden utilizar bases de conocimiento y módulos de inferencia.

Por ejemplo, las dos frases siguientes requieren la resolución de la expresión anafórica "ellos", pero esta

resolución requiere un conocimiento pragmático o conocimiento del mundo.

Los concejales de la ciudad negaron un permiso a los manifestantes porque ellos temían a la violencia.

Los concejales de la ciudad negaron un permiso a los manifestantes porque ellos abogaban por la revolución.

2.1.2 Pre- procesamiento de texto

Algunas tareas de pre-procesamiento se realizan para documentos con texto plano (sin estructura),

como la eliminación de palabras vacías, lematización y la manipulación de dígitos, signos de puntuación y

casos de caracteres poco peculiares. Muchas de estas técnicas también son utilizadas en páginas Web.

Algunas de las tareas adicionales para el pre-procesamiento de páginas Web son la eliminación de etiquetas

HTML y la identificación de los principales bloques de contenido.

Page 20: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 8 | P á g i n a

2.1.2.1 Eliminación de palabras vacías

En [B. Liu et al. 2008] nos menciona que las palabras vacías denominadas “StopWords”, son las

palabras insignificantes en un idioma que ayudan a construir oraciones, pero no presentan ningún contenido

importante en un documento. Entre ellas se encuentran las preposiciones, conjunciones, pronombres, entre

otras, por ejemplo algunas StopWords en el lenguaje español son: “uno, sobre, una, son, como, por, para, de,

cómo, en, es decir, que, estos, esta, era, qué, cuándo, dónde, quién, que, con. Generalmente para el análisis de

un documento, este tipo de palabras son eliminadas antes de realizar una tarea de procesamiento de lenguaje

natural.

2.1.2.2 Lematización

De acuerdo con [Blum et al. 2008], las palabras tienen diferentes formas sintácticas en función de los

contextos que se utilizan y el idioma en el que están. Por ejemplo, en inglés los sustantivos tienen formas

plurales, los verbos tienen formas de gerundio (agregando “ing”), y los verbos utilizados en pasado son

diferentes que los del tiempo presente. Estos son considerados como las variaciones sintácticas de la raíz de

una palabra. Este tipo de problema es tratado parcialmente con lematización, la cual se refiere al proceso de

reducir las palabras a sus raíces. La palabra madre es el resultado de retirar los prefijos y sufijos de una

palabra, por ejemplo, "camina", "caminando" y "caminó" se reducen a "caminar". Al usar la lematización,

permite identificar las diferentes variaciones de una palabra al momento de realizar la reculeracion de

información (Information Retrieval, IR). Existen varios algoritmos de Lematización también conocidos como

“Stemming”, dentro de uno de los lematizadores más popular está el algoritmo stemming de Martin Porter

[Porter 1980].

Blum [Blum et al. 2008] también afirma que muchos investigadores han evaluado al efecto del

proceso de lematización concluyendo que aumenta el recuerdo y reduce el tamaño de la estructura de

indexación, sin embargo puede perjudicar la precisión ya que puede considerar muchos documentos

irrelevantes como relevantes.

2.1.3 Tratamiento de signos

2.1.3.1 Tratamiento de Cifras

Se refiere a los números y términos que contienen dígitos, los cuales son retirados en la IR

tradicional con acepción de algunos como fechas y horas.

2.1.3.2 Tratamiento de Guiones y marcas de puntuación

Eliminar guiones, principalmente se aplica a las inconsistencias de su uso. Por ejemplo, algunas

personas usan “estado-del-arte” y otros utilizan “estado del arte”. Como primer caso, se quitan los guiones, se

elimina el problema de la inconsistencia de su uso. Sin embargo algunas palabras deben llevar un guion como

parte fundamental de la palabra, por ejemplo, “R-12”. Por lo tanto el sistema debe seguir una regla general de

eliminación de todos los guiones, pero con algunas excepciones. Como extraer el guion remplazándolo por un

espacio vacío o quitándolo sin dejar algún espacio. La puntuación puede ser tratada de manera similar al

tratamiento que se le da a los guiones.

Page 21: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 9 | P á g i n a

2.1.4 Pre-procesamiento de páginas Web

En [B. Liu et al. 2008] nos menciona los puntos más importantes para el pre-procesamiento de páginas Web

descritos a continuación:

Identificación de los diferentes campos de una página HTML como, el título, los metadatos, el

cuerpo y otro tipo de elementos que complementan la página. Esta identificación le permite al

sistema lograr una mejor recuperación de información para el tratamiento de los diferentes

campos. Por ejemplo para un motor de búsqueda es más importante el título ya que

generalmente es una descripción concisa de una página.

Identificación de anclaje asociado con un hipervínculo. A menudo un ancla representa una

descripción más precisa de la información contenida en la página a la que apunta su enlace.

Eliminar o ignorar etiquetas HTML. Se trata de una forma similar a la eliminación de la

puntuación, pero se debe ser cauteloso ya que la simple eliminación de una etiqueta HTML

puede causar problemas al unirse texto que no debe hacerlo.

Identificación de bloques con contenidos principales. Una típica página Web, contiene diversos

comerciales lo cual es información que no forma parte del contenido principal de la página.

También puede contener barras de navegación, avisos de copyright, entre otros, los cuales

pueden causar un mal resultado en la minería Web. Algunos bloques pueden ayudar a recuperar

más rápido una dirección o un titulo

2.2 Extracción y recuperación de información

En esta sección se abarca tanto la extracción de información como la recuperación de información

explicando en qué consiste cada uno de estas técnicas, así como su función y como serán abordados.

Entre la extracción y la recuperación de información existe una diferencia que surge al obtener

información, el motivo es que al realizar la recuperación de información, esta funciona de forma muy general

por ejemplo en el contexto de esta tesis el recuperar información se hace la selección de páginas de un sitio

Web. Sin embargo una página puede contener mucha información, por lo cual se debe realizar una extracción

de información, que consiste en identificar elementos específicos de una página web, por ejemplo un evento,

acontecimiento importante o una fecha, mostrando el enfoque de cada técnica, donde a continuación se

describe con más detalle.

2.2.1 Extracción de información

También conocido como IE (Information Extraction) es utilizado por diferentes necesidades o

motivos, en este caso se aborda la IE sobre páginas web o dicho de otra forma sobre documentos

estructurados. De acuerdo con [Appelt 1999] el nivel más básico del texto es sólo una secuencia de caracteres

en los que uno puede realizar búsquedas de cadenas, inserciones, supresiones y sustituciones sin siquiera ser

conscientes de que los elementos representan artículos de periódicos o un programa de computadora, tablas de

números, o algo más. En cambio un nivel superior es aquel que se encarga de integrar el conocimiento de

texto real en lenguaje natural, por lo que IE se encuentra entre la recuperación de información y la

comprensión del texto.

Page 22: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 10 | P á g i n a

Por lo tanto la IE es la localización de porciones de texto que contenga información relevante para

las necesidades concretas de un usuario, proporcionando dicha información de forma adecuada para su

proceso manual o automático.

Como se describe en [Appelt 1999], un sistema típico de extracción de información tiene fases de

entrada como tokenización, procesamiento léxico y morfológico, análisis sintáctico básico y una combinación

de constituyentes sintácticos básicos en patrones de dominio relevantes, dependiendo de los requisitos

particulares de la aplicación.

2.2.2 Recuperación de información

La recuperación de información, IR (Information Retrieval), determina cuales son las páginas de una

colección que satisfacen una “necesidad de información” de un usuario; por lo que IR trata de la

representación, almacenamiento, organización y acceso a la información presente en colección de documentos

textuales. [Cimiano 2006]

2.2.3 Minería de texto

La Minería de texto (del inglés, Text Mining), se define como el descubrimiento de nueva

información mediante la extracción automática de información de diferentes fuentes [Hearst 2003]. Uno de

los elementos clave es la vinculación de la información extraída para formar nuevos hechos o nuevas

hipótesis, por lo tanto la minería de texto no es como una búsqueda en la Web, sino el descubrimiento de

información desconocida y relevante.

También Hearst afirma que la minería de texto es una variación de la minería de datos. La minería

de texto maneja patrones dentro del lenguaje natural en tanto que la minería de datos hace uso de bases de

datos estructuradas de los hechos. Debido a que en el análisis lingüístico no se cuenta con una metodología o

sistema que permita entender el contexto en el que se encuentra un texto, ocasionando el no lograr tener un

impacto futuro en un análisis lingüístico, recurriendo a técnicas como la minería de texto.

2.3 Ontología

En [Hepp et al. 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 [Gruber 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 [Studer et al. 1998] .

Page 23: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 11 | P á g i n a

2.4 Poblado ontológico

El poblado ontológico consiste en una actividad de adquisición de conocimiento que se basa en

métodos semi-automáticos y/o automáticos no estructurados por ejemplo corpus, también en métodos semi-

estructurados como folksonomías por ejemplo páginas html y fuentes datos estructurados como bases de

datos[Cimiano 2006].

En esta sección se muestra un panorama general de las principales técnicas utilizadas para el poblado

de una ontología, tomando en cuenta los enfoques más usados y orientados a esta tesis.

2.4.1 Poblado ontológico basado en patrones léxico-sintácticos

En [Hearst, 1992] define patrones léxico-sintácticos para la obtención automática de relaciones entre

hipónimos a partir de un corpus, también define algunos ejemplos de estos patrones y sugiere un

procedimiento para su adquisición. Este procedimiento consiste en distinguir el hipónimo de alguna instancia,

clasificándolo por el tipo de elemento o con uno muy parecido o relacionado a este por medio del nivel

taxonómico al que pertenece dicho hipónimo en una ontología, posteriormente se validan los rasgos

semánticos del elemento más general (hiperónimo), logrando una instancia en un contexto parecido o igual al

de la instancia.

2.4.2 Poblado ontológico basado en clasificación por similitud

Este tipo de clasificación se basa en similitud o enfoques basados en memoria[Cimiano 2006]. Por lo

general se basan en la hipótesis de la distribución de Harris[Harris 1954], donde se sostiene que es posible

definir una estructura lingüística sólo en términos de las "distribuciones" de sus elementos. El poblado

ontológico basado en clasificación por similitud se encuentra relacionado con otros enfoques en los que se

utiliza el contexto de una frase para eliminar la ambigüedad de su sentido [Yarowsky 1995][Schütze 1998] o

para descubrir otros términos relacionados semánticamente [Hindle 1990].

Esta clasificación se usa para evitar la ambigüedad de una palabra, basándose principalmente en el

contexto de la palabra para verificar si corresponde a la misma palabra de una ontología, de esta forma se

evita un concepto repetitivo o con grandes similitudes semánticas, en base a su similitud.

2.4.3 Poblado ontológico basado en enfoques supervisados

Este tipo de enfoques predice la categoría de una instancia determinada con un modelo inducido a

partir de datos de entrenamiento, utilizando técnicas de aprendizaje maquina. Sin embargo la principal

desventaja radica en que un enfoque supervisado requiere de muchos ejemplos de entrenamiento para que sea

realmente efectivo. También existen los enfoques que funcionan como bootstrap (técnicas de arranque

automatizado) utilizando un conjunto de semillas de entrenamiento para obtener más datos[Cimiano 2006].

El aprendizaje automático se basa en la suposición de que todos los documentos tienen una estructura

similar. Dada la heterogeneidad de la Web actual, en muchos de los casos se opta por realizar un paso sin

Page 24: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 2.- Fundamento teórico

Everardo Munguía Aguilar 12 | P á g i n a

supervisión y después utilizar los resultados de este para inducir nuevas reglas de extracción.

Este tipo de enfoques es usado principalmente para saber a qué tipo de categoría pertenece una

instancia. De esta forma verifica que no se trate del mismo concepto, facilitando el poblado en base al modelo

por el cual es inducido.

2.4.4 Poblado ontológico basado en conocimiento y enfoques lingüísticos

Algunos enfoques ven el poblado ontológico como un problema de desambiguación y por lo tanto

como un subproducto de la comprensión del lenguaje natural. Por ejemplo, en una aproximación en la que,

para cada entidad se desconoce el nombre, los espacios de hipótesis que contienen las diversas categorías

ontológicas (las cuales pueden pertenecer a la ontología o de otra forma se crean), se descartan o se refinan

iterativamente mientras el texto es analizado lingüísticamente. [Cimiano 2006]

La principal desventaja de los enfoques basados en conocimiento y lingüística es que necesita una

base de conocimientos relativamente compleja o un conjunto de herramientas muy precisas para el

procesamiento lingüístico como POStaggers de dominio especifico, analizadores, etc.

2.4.5 Poblado ontológico basado en clasificación por similitud de nombres

de entidades

Este tipo de clasificación usa principalmente un corpus para lograr el poblado de una ontología,

basándose en la clasificación de entidades con nombre. Este tipo de enfoque presenta un sistema sin

supervisión basándose en el supuesto de que las palabras son semánticamente similares en la medida en que

comparten contextos sintácticos.

En esta clasificación se comienza el análisis mediante la comparación del contexto de una palabra en

la ventana, así como las dependencias pseudo-sintácticas extraídas por medio de expresiones regulares

definidas sobre las etiquetas que parten de la expresión. Se analiza el impacto de la similitud y las medidas de

las diferentes funciones de ponderación [Lee 1999],entre ellas: el coseno y medidas de Jaccard, la norma LI

así como Jensen Shannon y la inclinación de divergencias.

Page 25: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 3. Estado del arte

En este estado del arte se presentan distintos trabajos y herramientas enfocados a la extracción de

información basado en ontologías (OBIE, Ontology-based information extraction) con el objetivo de

caracterizar y complementar el estado del arte.

Actualmente en internet se cuenta con mucha información, pero mucha de ella no es explotada, o no

es verídica, por lo que es difícil manipular e identificar la información más importante y hacerlo de forma

semiautomática o automática. Se presentan diversos trabajos relacionados con OBIE, que realizan una

identificación de entidades nombradas (NE, Named entities), extracción de información (IE, information

extraction) recuperación de información (IR, information retrieval) y principalmente un poblado ontológico,

con el fin de obtener, proporcionar o recopilar la información más importante de una página Web. A

continuación se presenta una recopilación de distintos trabajos de tipo OBIE con sus características y aspectos

sobresalientes. Además de esta sección son presentados diversos trabajos analizados para el estudio del arte, y

posteriormente en la Tabla 1 mostrando una comparativa de cada trabajo contra la metodología propuesta en

esta tesis.

Page 26: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 14 | P á g i n a

3.1.1 KNOWITALL

En [Oren Etzioni et al. 2005] y [O. Etzioni et al. 2004] se presenta el sistema KNOWITALL, su

principal objetivo es la extracción de hechos utilizando un sistema no supervisado, independiente del

dominio, de forma escalable y sin necesidad de ningún tipo de ejemplo de entrenamiento. Su arquitectura

genera y prueba extractos de la información utilizando un conjunto de ocho patrones de IE independientes del

dominio para generar hechos candidatos, aprovechando los actuales motores de búsqueda de la Web y

utilizándola como un corpus masivo de texto para calcular las estadísticas de manera eficiente. Con base en

estas estadísticas asocia una probabilidad con cada hecho que extrae, permitiéndole administrar

automáticamente el equilibrio entre precisión y exhaustividad utilizando patrones de aprendizaje (PL, Pattern

Learning). Las principales características detectadas en este sistema son las siguientes:

Extracción de hechos.

Sistema no supervisado.

No usa ejemplos de entrenamiento.

Utiliza 8 patrones para la extracción de información entre ellos (PL).

El principal elemento de valor de esta herramienta para este trabajo de tesis es la extracción de

información, principalmente la de un hecho, ya que obtiene fechas, nombres, entre otros tipos de información

específica relevantes de un texto, acoplándose a la necesidad de extracción de información específica tanto de

una organización como de una persona. Por otra parte, una característica relevante es que no usa ejemplos de

entrenamiento disminuyendo el tiempo de desarrollo, al no tener la necesidad de entrenar el sistema,

aportando un proceso alternativo para el desarrollo de la tesis.

3.1.2 Ontosophie: a semi-automatic system for ontology population from

text

El principal objetivo de Ontosophie [Celjuska & Vargas-Vera 2004] es el poblado semiautomático de

ontologías creando instancias de clases a partir de texto no estructurado utilizando reglas de extracción de

texto, aprendizaje máquina (ML, Machine Learning), tratamiento de lenguaje natural (NLP, Natural

Language Processing) y análisis parcial del texto para reconocer las construcciones sintácticas. Por medio de

estas técnicas, identifica valores importantes de entidades basándose en el aprendizaje supervisado.

Ontosophie está compuesto de tres componentes fundamentales los cuales son Marmot, un procesador de

lenguaje natural, Cristal, un diccionario de inducción y Badger, una herramienta de extracción de

información. Mediante este conjunto de herramientas extrae las entidades competentes de un artículo y

alimenta una instancia nueva de una ontología dada.Durante el proceso, existe una etapa donde el usuario

debe intervenir aceptando o modificando extractos de información mediante la aplicación de una técnica

llamada “poda”, la cual se basa en los parámetros de un umbral fijado por un usuario.

Por lo tanto las principales características detectadas en el sistema Ontosophie son las siguientes:

Población semiautomática de ontologías

Procesa texto no estructurado

Aprendizaje supervisado

Aplicación o uso Conjunto de reglas de extracción

Análisis parcial del texto

Page 27: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 15 | P á g i n a

Se basa en IE, ML y NPL.

El principal aporte de este sistema para el trabajo de tesis es el proceso de poblado semiautomático

de ontologías aplicando IE entre otros tipos de NPL, el cual sirvió como guía para el proceso dedesarrollo de

esta tesis.

3.1.3 WEB→ KB

En [Craven et al. 1999]se presenta una herramienta llamada WEB→KB que tiene como objetivo

crear automáticamente una base de conocimiento informático, reflejando la Web. WEB→KB realiza una

extracción de información que cuenta con dos entradas: una ontología para crear la base de conocimientos y,

como segunda entrada, un etiquetado de hipertexto que representa instancias de clases y relaciones. El sistema

extrae información utilizando algoritmos de aprendizaje partiendo de una URL y explorando las páginas

mediante una búsqueda, complementado su amplitud al seguir las ligas que contiene dicha página. Cada

página se examina con la descripción de clases para verificar si es parte de una de las clases de la ontología.

Por otra parte, entre las características relevantes de este sistema se encuentran las siguientes:

Poblado de ontología

Sistema entrenable de extracción de información

Etiquetado de hipertexto

Algoritmos de aprendizaje

Descripción de clases

El elemento de valor para la tesis es el poblado de una ontología basándose en la Web para hacerlo.

Además, se realiza un etiquetado de hipertexto mediante el cual se puede realizar la instanciación o poblado

de una ontología, así como su sistema entrenable para la extracción de información. Una característica

relevante en este trabajo es la descripción de las clases de la ontología para desambiguar la información que

se analiza en una página Web, aportando un punto clave de mucha ayuda para encontrar los objetos de interés

en la Web.

3.1.4 PANKOW

En [Cimiano et al. 2004]se presenta una herramienta llamada PANKOW (Pattern-based Annotation

through Knowledge on the Web) la cual emplea un enfoque sin supervisión basado en patrones para

categorizar los casos con respecto a una ontología, utilizando la auto-anotación Web. Esta se basa en la

frecuencia de ocurrencia de ciertos patrones en la Web para obtener anotaciones formales, como patrones

lingüísticos, para identificar determinadas relaciones ontológicas. Esta herramienta hace uso de la lingüística

para identificar las relaciones del concepto con la instancia del texto. También utiliza una heurística para

obtener una mayor precisión de reconocimiento de candidatos, considerando el etiquetador POS(Part-Of-

Speech).

Page 28: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 16 | P á g i n a

El proceso que sigue PANKOW se observa en la Figura 1 Inicia al realizar un etiquetado de una

página Web, identificar frases que sean candidatas para el poblado de la ontología, utilizando un conjunto de

patrones para esta identificación, como “patrones de Hearst”. Estos patrones identifican una relación entre

conceptos mencionados por dos términos en el texto. Posteriormente clasifica a un nombre propio candidato

en una ontología utilizando la API de Google para obtener el número de visitas para cada una de las frases

hipótesis reconocidas. Por consiguiente el sistema realiza una clasificación de los sustantivos candidatos,

utilizando un “categorizador de frases sustantivas candidatas” anotando un fragmento de texto que describe

un ejemplo de ese concepto, obteniendo una página Web ontológicamente anotada.

Algunas de las características más sobresalientes y detectadas de PANKOW son las siguientes:

Enfoque sin supervisión.

Auto anotación Web.

Se basa en patrones (frecuencia de ocurrencias, lingüísticos, Hearst).

Expresiones regulares.

Utiliza heurísticas.

Categorizador de frases sustantivas.

Relaciones ontológicas.

Los elementos relevantes para este trabajo de tesis son las relaciones ontológicas que realiza esta

herramienta basándose en la Web, así como la autoanotación Web utilizando distintos métodos y

herramientas utilizados como soporte para guiar la tesis en el proceso de IE.

3.1.5 Kim – semantic annotation platform

El sistema KIM[Popov et al. 2003]ofrece servicio de anotación semántica, indexación y recuperación

de información como se aprecia en la Figura 2. Su extracción de información es escalable y personalizable así

como la anotación y administración de documentos. Maneja el tradicional nombrado de etiquetas (EN). En

cuanto a las tecnologías, KIM utiliza el repositorio RDF de Sesame (S), GATE Framework (General

Architecture for Text Engineering) para el procesamiento de IE y NL, un motor llamado Lucene IR el cual se

ha adoptado para llevar a cabo la indexación y recuperación con respecto a entidades con nombre y

evaluación de la relevancia de contenidos. La ontología utilizada se diseñó desde cero, manualmente y se

compone de alrededor de 250 clases de entidad y 100 atributos y relaciones.

Figura 1.- Proceso de PANKOW.

Page 29: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 17 | P á g i n a

Figura 2.- Proceso de KIM.

En el sistema KIM, se detectaron las siguientes características más importantes dentro de su proceso:

Anotación semántica

Extracción de información

Utiliza una ontología para realizar las anotaciones semánticas.

Los elementos de mayor relevancia encontrados en este trabajo son las anotaciones semánticas

basadas en una ontología, la extracción de información y el etiquetado ya que esos puntos se pretenden

abordar en la tesis proporcionando una opción más del como poblar una ontología.

3.1.6 Optima: an ontology population system

En [Hyung-Geun Park 2008] se presenta una herramienta llamada OPTIMA (Ontology Population

Tool based on Information extraction and Matching). Es un sistema de poblado automático de ontologías a

partir de textos no estructurados o semi-estructurados en la Web. ÓPTIMA realiza una IE utilizando técnicas

de (ML, Machine Learning), (NLP, Natural Language Processing), minería de datos, etiquetando la posición

del concepto como se puede ver en la Figura 3. Realiza un reconocimiento de nombres de entidades de un

documento no estructurado o semi-estructurado obteniendo candidatos para ser insertados en la ontología

como una instancia de un concepto optimo, además de que se centra en el idioma coreano. OPTIMA también

permite intervenir en su proceso de poblado de la ontología, dejando a los usuarios elegir en cada paso de la

búsqueda de la clase óptima, utilizando información sintáctica en la jerarquía de la ontología por lo cual no

depende de una ontología especifica.

Page 30: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 18 | P á g i n a

Figura 3.- Proceso de OPTIMA.

En OPTIMA, se presentan las siguientes características más relevantes:

Poblado automático de ontologías.

Procesa texto no estructurado y semi-estructurado.

Realiza IE, PLN, ML minería de datos y reconocimiento de nombre de entidad.

No depende de una ontología específica.

El principal elemento de valor para la tesis es el poblado automático de ontologías mediante la

minería de datos y PLN , además del tratamiento de texto semi-estructurado, el cual se está considerando

como el proceso más viable para la extracción y búsqueda de información específica, considerando

importante el que OPTIMA no dependa de una ontología especifica.

3.1.7 Omini

En [Buttler et al. 2001]se presenta una sistema llamado Omini, el cual analiza la estructura de árbol

de una página Web de forma automática para la extracción de objetos de interés. Este sistema utiliza un

algoritmo de normalización sintáctica, que transforma una página Web determinada en un documento Web

bien formado, el cual se convertirá en una representación de árbol de etiquetas basado en la estructura anidada

de inicio y finalización etiquetas. Posteriormente utiliza un conjunto de algoritmos de extracción de subárbol

hasta llegar a la última rama la cual contiene todos los objetos de interés, reduciendo considerablemente el

número de posibilidades de extracción del objeto, tomando en cuenta que descarta la publicidad. Después

emplea un conjunto de algoritmos de extracción de objetos para encontrar la etiqueta que separa a los objetos

correctos de una forma eficaz. La principal contribución de este trabajo es el aprendizaje automático de reglas

para la extracción de subárbol mínimo y la identificación del límite del objeto de interés. A continuación se

presentan las características más relevantes en el proceso de Omini:

Análisis de estructuras Web

Extracción de objetos de interés

Aprendizaje automático de reglas

Algoritmos de extracción de objetos de interés

Algoritmos de extracción de subárbol

Algoritmo de normalización sintáctica

Los procesos relevantes identificados en Omini permiten recuperar objetos de interés analizando la

estructura de un sitio Web, el cual aporta información valiosa para el proceso de extracción de información

Page 31: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 19 | P á g i n a

de páginas Web ya que de esta forma se descarta información obsoleta para después realizar la extracción

de información y posteriormente poblar la ontología, convirtiéndolo en el proceso más viable para la

búsqueda de información en la Web.

3.1.8 Ontominer: bootstrapping and populating ontologies from domain

specific Web sites

En [Davalcu et al. 2003] presentan un sistema llamado OntoMiner, el cual implementa técnicas de

arranque automatizado (bootstrapping) y poblado de ontologías de dominio especifico mediante la

organización de la minería datos y el conjunto de sitios Web relevantes proporcionados por el usuario. El

sistema inicia con una URL de algún sitio Web específico de dominio, posteriormente detecta y utiliza las

regularidades HTML en documentos Web y las convierte en las estructuras jerárquicas de semántica

codificada como XML utilizando un algoritmo de partición jerárquica el cual usa un árbol DOM. En el

proceso utiliza un algoritmo de minería de árbol para extraer los casos de estos segmentos. Identifica los

conceptos clave más importantes del dominio seleccionado dentro de los directorios de las páginas de inicio,

posteriormente rastrea sub-conceptos de los conceptos clave, además de que puede identificar las regiones

lógicas dentro de los documentos Web que contiene enlaces a páginas de ejemplo. También, realiza una

separación de las “decoraciones humanas” en la página Web para mejorar la precisión, para posteriormente

organizar las etiquetas de los conceptos junto con su jerarquía en los documentos XML.

Entre las principales características de Ontominer se encuentran las siguientes:

Poblado de ontologías de dominio

Detecta y utiliza las regularidades HTML

Algoritmo de partición jerárquica

Convierte HTML en XML

Árbol DOM

Algoritmo de minería de árbol

Identificación de “decoraciones humanas” en una página HTML

Este sistema proporciona un método muy eficiente para obtener objetos candidatos de una página

Web implementando distintos algoritmos, con un enfoque similar al de esta tesis.

3.1.9 Comparativa de trabajos relacionados

La comparativa es con intención de mostrar las diferencias y coincidencias del trabajo presentado en

esta tesis en relación a los trabajos identificados en el estado del arte, en la Tabla 1 se muestra un cuadro

comparativo donde se caracterizan los distintos aspectos de interés considerando los siguientes criterios de

comparación:

Procesamiento de texto: en este punto se especifica cuáles trabajos son los que procesan texto de alguna o

varias de las siguientes categorías:

No estructurado: Se refiere al texto sin formato o estructura alguna, considerándolo como texto

Page 32: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 20 | P á g i n a

plano.

Semi-estructurado: Se refiere al texto con una estructura definida, por ejemplo: HTML.

Estructurado: Se refiere al texto con una estructura definida y obligatoria, por ejemplo: XML.

Poblado de ontología: en este punto se identifica qué tipo de poblado ontológico realiza cada trabajo. Por lo

tanto, en caso de que se haga poblado se especifica qué tipo de acción se realiza con la ontología, los

principales casos son:

Automático: se refiere a que el proceso de poblado de la ontología se realiza automáticamente sin

que el usuario intervenga en dicho proceso.

Semi-automático: se refiere a que en el proceso de poblado de la ontología, el usuario debe intervenir

en diferentes pasos para realizar el poblado.

Manual: se refiere a que el proceso de poblado de la ontología es totalmente manual, sin que una

máquina intervenga en dicho proceso.

Análisis de páginas Web: En este punto se determina si una herramienta o sistema analiza el contenido y/o la

estructura de una página Web.

Extracción de información: cualquier tipo de extracción de información que mencione la herramienta o

sistema.

Idioma: el idioma para el cual fue desarrollado.

Otros: en esta sección se exponen características adicionales y particulares a cada trabajo que son relevantes

para este trabajo de tesis.

.

Page 33: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 21 | P á g i n a

Trabajo Poblado de ontologías

Análisis de páginas Web

Procesamiento de texto

Extracción de información

Idioma Otros

KNOWITALL [Oren Etzioni et al. 2005]

No menciona Contenido Texto semi-estructurado

8 patrones de Extracción de información

Inglés Sistema no supervisado No usa ejemplos de entrenamiento

Ontosophie [M. Vargas-Vera & D. Celjuska

2004]

Población semiautomática

Contenido Texto no estructurado(NLP)

Conjunto de reglas de extracción

Inglés Aprendizaje supervisado Análisis Parcial ML

WEB→KB [Craven et al. 1999]

Poblado de ontología

Contenido Texto semi-estructurado,

Sistema de extracción de información supervisado

Inglés Algoritmos de aprendizaje Descripción de clases de la ontología Etiquetado de hipertexto

PANKOW [Cimiano et al. 2004]

Relaciones ontológicas

Contenido Texto semi-estructurado

Se basa en patrones Inglés Enfoque sin supervisión Expresiones regulares Utiliza heurística Auto anotación Web

KIM [Popov et al. 2003]

Utiliza una ontología

Contenido Texto semi-estructurado

Si Inglés Anotación semántica

OPTIMA [Hyung-Geun Park 2008]

Poblado automático de ontologías

Contenido Procesa texto no estructurado y semi-estructurado

Minería de datos, PLN, ML, Reconocimiento de nombre de entidad

Coreano No depende de una ontología específica

Omini [Buttler et al. 2001]

No menciona Estructura y contenido Texto semi-estructurado

Algoritmos de extracción

Inglés Aprendizaje automático de reglas

OntoMiner [Davalcu et al. 2003]

Poblado de ontologías

Estructura y contenido Texto semi-estructurado

Algoritmo de minería de árbol

Inglés Detecta y utiliza las regularidades HTML Árbol DOM

RExPO

Poblado de ontologías

Estructura y contenido Texto semi-estructurado

API Jericho para la IE Patrones de estructura Web Técnicas de minería de texto

Español Autómatas Etiquetado del texto TDB Poblado ontológico con similitud de cadenas Bolsa de palabras Encriptado de instancias

Tabla 1.- Cuadro comparativo de trabajos del estado del arte.

Page 34: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 3.- Estado del arte

Everardo Munguía Aguilar 22 | P á g i n a

3.2 Conclusiones

Los distintos trabajos que se presentaron en este capítulo tienen una semejanza entre ellos, ya sea en

el objetivo que desean alcanzar o en el proceso de desarrollo que realizan. El objetivo principal de los trabajos

presentados es el poblado de una ontología. En los diferentes trabajos que se estudiaron, se encontraron casos

donde manejan la estructura de un sitio Web [Buttler et al. 2001; Davalcu et al. 2003]. Estos trabajos

proporcionan métodos muy eficientes para obtener objetos candidatos de una página Web los cuales fueron la

inspiración para dar solución a la extracción de información de esta tesis.

También existen trabajos que usan otro tipo de tratamiento de páginas, utilizando patrones para

reconocer información de un dominio en especifico y utilizando enfoques no supervisados como[Oren Etzioni

et al. 2005; Cimiano et al. 2004]. Existen algunos trabajos que usan enfoques supervisados como [M. Vargas-

Vera & D. Celjuska 2004], el cual utiliza reglas para la extracción de información.

Existen aquellos que no realizan un poblado de una ontología, sólo la usan para hacer un etiquetado

de una página Web como (Popov et al. 2003) o aquellos sistemas que son supervisado como [Craven et al.

1999] o independiente de una ontología, permitiéndole una buena portabilidad.

Durante el análisis de los trabajos presentados se mostraron distintos aspectos relevantes como el

análisis de una estructura Web, las distintas herramientas, API’s, algoritmos, los diferentes métodos para

poblar una ontología y los distintos tratamientos que se aplican a una página Web, tomando en cuenta cada

uno de estos aspectos para decidir e implementar los que mejor se acoplaron al desarrollo de esta tesis.

Page 35: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 4. Metodología de solución

En este capítulo, se presenta la metodología empleada, la cual está compuesta por tres etapas

principales, recuperación información, extracción de información y poblado ontológico.

Page 36: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 24 | P á g i n a

4.1 Introducción

La metodología de solución propuesta en este apartado se compone de tres fases principales:

recuperación de información, extracción de información y poblado ontológico. En ellas se realizan técnicas de

exploración, filtrado y pre-procesamiento de sitio, tokenización de texto, etiquetado de la información,

similitud y encriptado de los datos, con el fin de poblar una ontología con base en un sitio Web (ver Figura 4).

Además de las técnicas mencionadas también se utilizan API’s facilitando tareas como el etiquetado, similitud

de palabras y exploración del sitio Web, aplicándolas durante el proceso y ejecución de la herramienta.

La primera etapa, denominada recuperación de información, realiza un recorrido del sitio Web. Esta

etapa se encarga de recuperar la información conforme recorre el sitio, además lleva un historial de los

enlaces que visita para evitar caer en un recorrido interminable. La segunda etapa denominada extracción de

información, no sólo se encarga de extraer la información, también se encarga de relacionar dicha

información al construir un árbol de los elementos extraídos relacionados entre sí y con un orden jerárquico,

para generar la salida adecuada para la tercer etapa denominada poblado ontológico, la cual se encarga de

llevar el control de los elementos que se instancian, para un poblado no sólo exitoso, si no efectivo.

Figura 4.- Las 3 etapas principales de la metodología.

Una vez que se cumplen dichas etapas se obtiene como resultado una ontología poblada a partir de

un sitio Web de un dominio específico, poblado los siguientes elementos: nombres propios, correos, nombre

de organización, redes sociales, publicaciones, ubicación (dirección), teléfonos y nombre de departamentos.

Page 37: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 25 | P á g i n a

4.2 Fase 1. Recuperación de información

La recuperación de información es necesaria para lograr un poblado ontológico efectivo, por lo que

se recorre el sitio, iniciando por tomar cada página de un sitio Web, recorrerla, realizar un índice de los

enlaces nuevos y visitados, extraer la información, filtrar los enlaces y almacenar la información obtenida,

como se puede ver en la Figura 5. En este proceso se debe tener en consideración que los sitios Web tienen

una estructura y están compuestos por diferentes lenguajes de programación, por lo que es preciso tener

presente los lenguajes que se abordarán o los más factibles y con base en esto, identificar una estructura

uniforme en la mayoría de los sitios. Por ejemplo, en páginas de gobierno manejan una estructura Web similar

la cual ayuda facilitar el recorrido o evitar ciclos recursivos o tediosos. Por lo tanto los principales procesos de

esta fase son el recorrido del sitio, filtrado y selección de páginas Web y el pre-procesamiento de páginas

Web, los cuales son detallados en las subsecciones siguientes.

Figura 5.- Fase 1- Recuperación de información.

Esta fase pretende obtener toda la información posible y/o disponible de un sitio Web, al filtrar todo

tipo de elementos y objetos diferentes de información, y para obtener como resultado un conjunto de

información en texto plano o dicho de otra forma sin formato, de esta forma se obtiene la base para una

buena extracción de información.

Page 38: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 26 | P á g i n a

En la Figura 6 se puede apreciar el proceso que sigue la primera fase denominada recuperación de

información del sitio Web. Los números uno y dos representan las etapas contenidas en la exploración del

sitio; tres y cuatro pertenecen al filtrado y selección de páginas web; y cinco y seis se abordan en el pre-

procesamiento de páginas web.

Figura 6.- Proceso de IR.

4.2.1 Exploración del sitio Web

La recuperación de información es el proceso vital de la primera fase, la cual inicia con la

exploración del sitio. El primer parámetro de entrada de este proceso es la página inicial del sitio que se

analiza, tomado de un catálogo de sitios web de domino IES y TIC, donde se aprecian en el Anexo 2. El

método de exploración del sitio proporciona el enlace a su principal recurso que es un analizador HTML, el

cual se encarga del manejo tanto de las diversas páginas contenidas en el sitio como de su contenido, para

proporcionar la página y su estructura requeridas para devolverlas al método de exploración del sitio. Por lo

tanto, el método de exploración proporciona los enlaces a partir de un control de los contenidos de la página

Web. Utilizando el analizador HTML se obtiene cada uno de los enlaces con su etiqueta correspondiente a los

contenidos en cada una de las páginas del sitio.

La forma en que el método de exploración del sitio lleva el control de todo los enlaces son con

respecto a el orden de adquisición de los mismos, llevando un control de repetición de enlaces con base en

una lista de todos aquellos obtenidos hasta el momento, completando su recorrido hasta explorar por completo

el sitio Web como se aprecia en la Figura 7.

Para la exploración del sitio, no sólo es necesario llevar el control de los enlaces si no que también

hay que considerar que algunas páginas proporcionan los enlaces con su ruta relativa, por lo que es necesario

complementarlos hasta obtener su ruta absoluta para su posterior análisis. Además del complemento de los

enlaces, también se abordan diferentes lenguajes de programación orientados a la Web para el recorrido de

cada elemento estructural que contenga la página. Con base en estos criterios se logra explorar todo el sitio

Web y obtener una lista de todos los enlaces que contiene, resultando una base para el filtrado y selección de

páginas que se aborda en el segundo método de la fase 1.

Page 39: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 27 | P á g i n a

Figura 7.- Proceso de exploración del sitio.

4.2.2 Filtrado y selección de páginas Web

El filtrado y selección de páginas Web inicia tras obtener una lista de enlaces con los que realizan

diversos procesos para la selección y filtrado de cada una de las páginas, donde el primer filtrado es opcional

porque está compuesto por dos sub procesos, donde el primero se encarga de analizar todas las páginas del

sitio sin usar ningún filtro y posteriormente elige páginas candidatas. Sin embargo el segundo proceso se

encarga de usar un bolsa de palabras (ver anexo 2) conformada por diferentes elementos con respecto a lo que

se desea buscar, el cual realizan tres diferentes filtrados con lo que decide que página debe ser elegida como

candidata.

Una página candidata es aquella que se considera pertinente a analizar y para obtener su información.

Para su elección se toma en cuenta que puede ser con filtrado o sin él. La elección puede influir mucho en esta

etapa, ya sea para realizar un recuperación de información de una forma rápida o de una forma más precisa.

Este factor se usa dependiendo del criterio para recuperar la información, porque tanto puede afectar la

velocidad con la que se recupera la información, como su calidad. El motivo por el que se deja a elección es

por la necesidad con la que se cuente, ya que para este caso, se uso sólo una selección de páginas sin filtrado

por motivo de que algunos sitios cuentan con una gran cantidad de páginas, tomando mucho tiempo el filtrado

y la selección, lo cual redujo el tiempo pero se incrementó la cantidad de información repetida.

Los filtros usados para la elección de cada página candidata consisten en tres procesos de filtrado en

cascada. El primero se encarga del análisis de la etiqueta que tiene el enlace, comparándolo con cada

elemento de la bolsa de palabras y validando si se encuentra algún elemento similar o igual. De lo contrario si

no cuenta con una etiqueta HTML o no se encontró una similitud con algún elemento de la bolsa de palabras,

el primer filtro delega el enlace al segundo filtro. El segundo filtro se encarga de procesar la cadena que

corresponde al enlace, separando el enlace en palabras, formando un estilo de tokenizado para posteriormente

realizar una comparativa de cada uno de los elementos correspondientes a algún elemento de la bolsa de

palabras. Si no es encontrada ninguna coincidencia, el enlace es delegado al tercer filtro. Éste es el encargado

de visitar el enlace de forma simple para obtener el título del enlace a partir de la etiqueta(<title>) de la página

por medio del analizador HTML, por lo que se prosigue con la recuperación del título de la página, el cual es

procesado de igual forma que el segundo filtro, realizando un análisis para validar si el titulo contiene alguna

palabra relacionada con la bolsa de palabras.

Una vez que son aplicados los filtros o no, se realiza la selección de páginas que consiste en verificar

si el enlace que se analiza es erróneo o no está disponible, validando su acceso con las excepciones que

maneja el lenguaje en el cual fue desarrollada la herramienta [Java 2011]. Esta selección no sólo valida este

tipo de enlace si no que también verifica que el enlace no salga del dominio del sitio, haciendo una

comparación de la raíz del enlace actual, con la raíz del enlace que se ingreso como primera instancia, de esta

forma valida que el enlace sea viable. También valida enlaces que apuntan a un archivo, ya sea un documento

o contenido multimedia (video, imagen, PDF, entre otro tipo de elementos). Por lo tanto, si los tres filtrados

Page 40: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 28 | P á g i n a

fracasan en caso de haberlos usado, es considerado como una página no candidata, descartándola de la lista de

enlaces a visitar y quedando sólo aquellas páginas que se seleccionaron.

Al realizar el filtrado y selección de páginas de un sitio Web, el resultado puede presentar un sinfín

de información repetida, ya que en la mayoría de los sitios repiten muchas veces sus encabezados o la

información que contienen en el pie de página Ej. (Una dirección o un lema). Esta información estaría

repitiéndose por el número de páginas que contenga el sitio, a pesar de que no se visita el mismo enlace. Este

método no evita esta repetición de información, por lo que toda la información repetida es tratada al momento

de hacer la IE y el poblado ontológico.

4.2.3 Pre-procesamiento de páginas Web

El tercer y último método de la fase “recuperación de información”, es el pre-procesamiento de

páginas Web, este método inicia tras obtener una lista candidata de enlaces a analizar. Cada uno de esos

enlaces es tomado por el método de pre-procesamiento de páginas Web y enviado al analizador HTML para la

obtención del texto, la estructura HTML y cualquier elemento que contenga la página Web, regresando toda

esta información al método de pre-procesamiento de páginas. Este método se encarga de hacer un recorrido de

toda la página, obteniendo los siguientes elementos: texto plano, título de la página y las palabras clave de la

página. Estos son almacenados de forma temporal en memoria, donde se concatena todo el texto obtenido

como un sólo elemento, separado por el enlace de donde se obtuvo. El resto de los elementos se adjunta a la

información del texto extraído conforme se van adquiriendo. Este proceso se pude apreciar en la Figura 8, el

cual es realizado para cada una de las páginas del sitio Web, con la limitante de que el analizador HTML

pueda analizar el lenguaje de programación que contiene la página Web para que posteriormente sea

procesada.

Cabe mencionar que la estructura HTML de cualquier página Web facilita obtención del texto. Sin

embargo los scripts dificultan esta tarea por lo que no se consideraron para esta tesis.

El resultado del método de pre-procesamiento de páginas Web, es un conjunto de texto plano,

ordenado por la secuencia en la que se visitaron las páginas y separados por su enlace, pasando a la segunda

fase de la metodología, denominada extracción de información.

Page 41: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 29 | P á g i n a

Figura 8.- Pre-procesamiento de páginas Web.

4.3 Fase 2. Extracción de información

Esta fase no sólo extrae información, si no que lleva a cabo la ejecución de un conjunto de métodos

para completar su objetivo. El proceso que sigue esta metodología consiste en una tokenización del texto

obtenido en la fase de recuperación de información, posteriormente un etiquetado del texto, luego un análisis

lingüístico con base en las etiquetas obtenidas y por último la formación de un árbol de elementos

relacionados. El objetivo de esta base es la extracción de información relevante con la finalidad de obtener

elementos ontológicos. El proceso general de esta fase se puede apreciar en la Figura 9.

Figura 9.- Fase 2 - Extracción de información.

Cada uno de los métodos que conforman la fase dos de esta metodología, son descritos a

continuación presentando con más detalle cada etapa de este proceso para lograr su objetivo, el cual no sólo es

la extracción de información, sino la agrupación de los elementos relacionados encontrados en el texto, para

facilitar el posterior poblado ontológico.

Page 42: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 30 | P á g i n a

4.3.1 Tokenización de texto

Esta fase recibe el texto procesado y realiza la depuración y tratamiento del mismo, como se puede

apreciar en la Tabla 2, donde se muestran algunos ejemplos del depurado que se le da al texto.

La depuración, del texto abarca la eliminación de signos de puntuación, símbolos como diagonales,

paréntesis, guiones que estén separados de alguna palabra, guiones bajos, dejando prácticamente sólo

caracteres alfanuméricos como números 0-9; y letras de la A-Z, con algunas excepciones como en el ejemplo

tres de la Tabla 2, donde se omite el guión, por la simple razón de que no se pierda el contexto de la palabra o

su significado, por lo que complica la tokenización del texto, ya que es difícil saber si es necesario que se deje

ese carácter o sea eliminado, por lo que, el criterio para esta decisión es saber el tipo de elemento que se

desean extraer, teniendo algunos parámetros referentes de acuerdo a dicho elemento, para prevenir su

depuración, donde uno de los principales casos son, teléfonos.

Una vez que el texto es depurado, está listo para ser tokenizado donde se separan las palabras

considerando un espacio en blanco, una vuelta de carro o un salto de línea. Este proceso recorre todo el texto

depurado e identifica cada elemento como un token y los almacena en memoria para su posterior

procesamiento en la fase de etiquetado del texto.

Depuración del texto

No Texto encontrado Texto depurado

1 Recuperación_de_información de un sitio Web Recuperación de información de un sitio Web

2 El archivo (entrega.doc) se canceló El archivo entrega . doc se

canceló

3 Se obtendrá el formato_R-8 Se obtendrá el formato R-8

4 El Centro, naturalmente, participa de esta valiosa sinergia. El Centro naturalmente ,

participa de esta valiosa sinergia

.

5 Por lo tanto la etiqueta <title> Por lo tanto la etiqueta title

6 Los elementos como: raíz, nodo e hijo. Los elementos como raíz nodo e

hijo .

7 El boleto cuesta en este momento $110.00 pesos. Las salidas

son aproximadamente cada 30-40 minutos.

El boleto cuesta en este momento

110 . 00 pesos Las salidas son

aproximadamente cada 30 40

minutos .

9 En programación el símbolo | significa: En programación el simbolo

significa :

10 La dirección es: \\pruebas\pru.txt La direccion es pruebas pru . txt

Tabla 2.- Ejemplos de tokenización de texto.

En la Tabla 2 se presentan diversos casos muy que muestran la depuración de cadenas con diversos

caracteres, signos de puntuación, donde en el caso tres se depura el “_” pero no el “-” ya que se tiene en

cuenta que en algunos casos es necesario dejar un elemento en lugar de eliminarlo.

Page 43: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 31 | P á g i n a

4.3.2 Etiquetado del texto

El etiquetado del texto esta posicionado como el segundo método de la fase de extracción de

información, donde su objetivo principal es marcar las palabras con su categoría gramatical.

Con base en la capacidad del etiquetador gramatical se realiza un etiquetado completo de todo el

texto, tomando en cuenta que el resultado dependerá de la calidad de la tokenización del texto.

Al final de este proceso se obtienen la lista de las etiquetas correspondientes a la lista de las palabras, como se

puede apreciar en la Figura 10. Este etiquetado es muy importante, ya que será la base para la fase de análisis

lingüístico.

Figura 10.- Proceso para el etiquetado del texto.

4.3.3 Análisis lingüístico

El método de análisis lingüístico es el tercer método de la segunda fase de la metodología propuesta,

el cual es el elemento principal para realizar la extracción de información. El principal objetivo de este

método es identificar los elementos pertinentes a partir de los textos etiquetados y clases ontológicas.

La principal tarea del análisis lingüístico está compuesta por un proceso denominado “escáner”.

Este proceso se encarga de la pre-identificación de los elementos pertinentes en el texto, para posteriormente

verificar si el elemento es pertinente haciendo uso de autómatas y patrones estructurales del sitio Web. Con

base a la palabra y su categoría. El escáner decide si se deben emplear los autómatas, patrones estructurales o

ambos, llevando el control del elemento que se analiza y la forma en que será analizado.

El escáner no sólo se encarga de repartir y decidir que palabra será analizado, sino que también

decide cuando un elemento es pertinente con base en la decisión de las herramientas que usa, ya que si se

decide que es un elemento pertinente, este será almacenado y enviado a el método llamado árbol de

elementos relacionados abordado en la sección 4.3.4, de lo contrario será ignorado y el proceso escáner

continuara con el siguiente elemento en la lista de palabras.

Los autómatas, se encargan de la identificación de elementos como: nombres propios, teléfonos,

correos electrónicos, departamentos o áreas, organizaciones y redes sociales.

Cada elementos es pre-procesado por el escáner, identificando rasgos o basándose en su etiqueta

gramatical, por ejemplo: Tel, @, etiqueta NP, o la palabra “departamento”. Considerando algún rasgo, el

escáner verificar mandando un palabra al autómata correspondiente. El autómata se encarga de validar la

palabra, verificando su estructura morfosintáctica y decidiendo si se trata del elemento válido, ver anexo uno.

Este proceso permite emplear un número (n) de autómatas, por lo que se podrían identificar una cantidad (n)

Page 44: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 32 | P á g i n a

de elementos en el texto o identificar variaciones de algún elemento. Por ejemplo, si en un futuro es

modificara la estructura de una cuenta de correo se podrá crear un autómata para esta variación, permitiéndole

adaptarse y seguir evolucionando.

Los patrones estructurales, también realizó una función similar a la de los autómatas, sólo que ésta

no realiza un análisis tan específico. Se basa en la estructura del sitio Web, para lo que se necesita hacer un

análisis posterior del tipo de páginas que se abordarían y con base en ese análisis reconocer que tipo de

patrones se repiten en la mayoría de las páginas.

Los patrones estructurales abordan la identificación de: direcciones y publicaciones. En el caso de las

direcciones, la mayoría de las páginas de dominio de las TICs utilizan el pie de página para colocar su

dirección, con base en esto, los patrones estructurales saben dónde analizar específicamente la información

dentro de la página y cómo es presentada.

Con base en estos criterios, los patrones estructurales realzan la identificación basándose en las

etiquetas HTML del sitio Web y teniendo como referencia el enlace que viene con el contenido dentro del

texto plano que se analiza. No sólo basta la estructura del sitio para identificar el elemento, si no que deben

ser analizados los datos que componen a ese elemento. Por ejemplo si se trata de una dirección se busca la

sección en la página Web donde comúnmente aparece. Se toma la cadena y se analiza, comprobando las

siguientes cadenas: direccion, Dir, domicilio, colonia, col, c.p., postal, #, No., Av., avenida, interior,

delegación, fraccionamiento, manzana lote, esq., zona, blvd., locales, local, calle, cd, bulevar. Con las cadenas

anteriores se hace una comparación, dónde por lo menos tres cadenas deben coincidir con el texto para decidir

que lo que se analizó es una dirección. La identificación de publicaciones se lleva a cabo de la misma forma

para las direcciones, ya que por las diversas variaciones en las que son encontrados en el texto, se debe usar

un conjunto de cadenas como: isbn, publicación, issn, publicaciones, No., Vol., p.p., para determinar que se

trata de una publicación.

Una vez que se ha recorrido toda la lista de elementos, el escáner ya cuenta con un conjunto de

elementos candidatos, por lo que pasa este conjunto de elementos al árbol de elementos relacionados para su

posterior análisis. Todos los factores y procesos mencionados se pueden apreciar en la Figura 11.

Figura 11.- Proceso para la identificación de elementos pertinentes.

Page 45: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 33 | P á g i n a

4.3.4 Árbol de elementos relacionados

El último método de esta fase es denominado árbol de elementos relacionados, ya que su objetivo es

relacionar los objetos extraídos por los tres métodos anteriores por medio de un árbol, a partir de su nivel

jerárquico. Esto lo hace mediante el orden en el que escáner va identificando los diversos elementos en el

texto plano. Conforme identifica un elemento, el método de árbol busca un nivel jerárquico a partir del tipo de

elemento identificado.

La forma en que el método de árbol identifica el nivel jerárquico de cada elemento es a partir de la

definición cada elemento a relacionar, Ej. (Una persona “z” tiene un correo “x” y pertenece a una empresa

“y”). Por lo tanto “y” se toma como un nivel jerárquico superior a “z” y a su vez “z” es una nivel superior al

de “x”, con base en estos criterios se deciden rangos por razones de relación de información con base en “la

pertenencia de los elementos”, como se puede apreciar en la Figura 12.

Figura 12.- Jerarquía de elementos.

Una vez que los elementos son relacionados y categorizados jerárquicamente, estos están listos para

ser procesados e instanciados en la ontología, por medio de la fase de poblado ontológico.

4.4 Fase 3. Poblado ontológico

En la tercera y última fase de la metodología, son abordados tres métodos denominados: similitud de

objetos recuperados, encriptado e instanciación, ver Figura 13. Cada uno de estos métodos cumplen con una

función para que esta fase realice su principal objetivo: el poblado ontológico a partir de un árbol de

elementos relacionados y ordenados jerárquicamente.

Figura 13.- Fase 3 – Poblado ontológico.

Page 46: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 34 | P á g i n a

El poblado ontológico compuesto por tres métodos, inicia con el análisis del árbol de elementos para

conformar tripletas. Las tripletas se conforman de acuerdo a la jerarquía y la relación, iniciando con el padre

del árbol, y tomando a uno de sus hijos. Estos dos elementos se analizan para definir el tipo de elemento y su

relación, con respecto a las relaciones de la ontología. Este proceso se hace con cada elemento del árbol hasta

llegar al último hijo, como se puede ver en la Figura 14.

Figura 14.- Formación de tripletas.

El árbol jerárquico se recorre para ir formando tripletas de forma “elemento relación elemento” e “x

instancia elemento”, estas se validan para evitar su instanciación redundante. Se define un elemento universal

para cada instancia, el cual abarcará todas las variaciones del objeto como del predicado utilizando el cálculo

de la similitud de los objetos recuperados descrito en 4.4.1. Este proceso se realiza tanto para el predicado de

la tripleta como para el objeto.

Cuando se desea instanciar una tripleta y uno de los elementos ya esta instanciado, el elemento nuevo

es remplazado por el ya existente, complementando la información de la tripleta existente con la información

de la tripleta nueva, como se puede ver en a Figura 15.

Figura 15.- Instanciación de tripletas.

Una vez verificada la posibilidad de la creación de una nueva instancia, se debe realizar el

encriptado del elemento que se instanciará (sujeto u objeto de la tripleta candidata) el cual se aborda en 4.4.2.

El encriptado se realiza por dos razones, la primera para tener un identificador único de ese elemento

instanciado y la otra, si se encuentra dicho elemento en otra página o se llega a actualizar la página se pueda

complementar ese elemento en un segundo análisis de esta página. El cálculo de la similitud y el encriptado

de los elementos influyen positivamente la calidad de instanciación abordado en 4.4.3, evitando la

redundancia en las instancias.

Los tres subprocesos mencionados anteriormente trabajan en conjunto para lograr un poblado

exitoso, como se puede ver en la Figura 16. Estos procesos forman las tripletas, determinan el tipo de relación

y el tipo de instancia, ya sea de objeto o de atributo. Posteriormente, cada una de estas relaciones pasa por un

proceso en el que se realiza un cálculo de la similitud de textos para no instanciar dos elementos iguales aún

Page 47: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 35 | P á g i n a

cuando estén escritos de forma diferente. Después se realiza un encriptado de la tripleta, para ser instanciado

en la ontología y posteriormente relacionado con otras instancias.

Figura 16.- Proceso para el poblado ontológico.

4.4.1 Similitud de objetos recuperados

La similitud entre objetos se hace por dos razones, una es para saber que tan similares son dos

elementos y la segunda es para tener un elemento universal que represente las variaciones de ese mismo

elemento. Por ejemplo en las cadenas, en donde se tiene la misma persona pero el segundo nombre esta

abreviado se debe realizar un cálculo de la similitud entre los dos nombres para saber si se trata de la misma

instancia. Por lo tanto, suponiendo que la primera instancia que se creó en la ontología sea (“Dr. Luis M.”), se

tomará como referencia y sustituirá para todas las demás ocurrencias y variaciones del nombre de esa persona

creando una alias de esa persona. De esta, forma se tendrá homogeneidad al instanciar las diferentes

variaciones de un elemento, mejorando la calidad del poblado ontológico.

4.4.2 Encriptado

La fase tres necesita la tarea de encriptado antes de instanciar los elementos, con el objeto de obtener

un identificador único, el cual funciona con base en un algoritmo que nos permite encriptar cadenas de texto.

Este trabajo inicia al recibir una cadena de caracteres y devuelve otra cadena con los caracteres combinados e

irrepetibles. De esta forma, se tiene un identificador único de ese elemento en la ontología, con la finalidad de

evitar la redundancia en las instancias y favorecer el complemento de las ya existentes, por ejemplo: cuando

se identifique un mismo elemento en diversas páginas, este se irá complementando ya que se tratará de la

misma instancia identificado por su dato encriptado, en lugar de realizar una nueva instancia.

Page 48: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 36 | P á g i n a

4.4.3 Instanciación

La instanciación se realiza con base en la conformación de tripletas que se van creando durante la

fase tres. Una vez que se logra formar una tripleta, esta se procesa calculando su similitud, realizando su

encriptado y posteriormente la instanciación del predicado y/o el objeto.

Al realizar la instanciación es necesario comprobar la similitud y haber hecho el encriptado, para

cerciorar que la tripleta es candidata, para buscar la clase, el atributo y el tipo de atributo necesario para

realizar la instanciación. Una vez que son instanciados todos los predicados y/o objetos de las tripletas

candidatas, se hace la relación entre cada uno. El objetivo de este proceso es evitar caer en la confusión de

relacionar un elemento que aún no existe, fallando en algunas relaciones o relacionándolas mal.

4.5 Análisis y diseño de RExPO

Para probar la metodología propuesta se creó una herramienta denominada RExPO (Recuperación y

Extracción de información para el Poblado Ontológico), donde se muestra su estructura, las API’s utilizadas,

su funcionamiento, los principales problemas y el prototipo diseñado. En esta sección se explica el

funcionamiento de la herramienta creada.

Cada módulo se implementó y uso en java con una versión JDK 6 y NetBeans IDE 6.9.1, sobre

páginas Web y textos planos, las API’s, autómatas y técnicas que se usaron, son mencionadas en el Anexo 1.

Herramientas utilizadas, para la implementación de RExPO.

En la Figura 17 se puede apreciar el funcionamiento completo de la herramienta, compuesto por sus

tres fases principales, que forman el esqueleto de la metodología para lograr el poblado ontológico. A

continuación se mencionan las herramientas que se usaron en la implementación de RExPO y por último su

funcionamiento en conjunto.

Page 49: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 37 | P á g i n a

Figura 17.- Arquitectura de RExPO.

4.5.1 Desarrollo de RExPO

En esta sección se expone el desarrollo de la herramienta, describiendo como se implementó cada

proceso y en qué momento se usan las diversas API’s, métodos y técnicas para el funcionamiento armónico

entre todos los componentes que conforman a RExPO. Estos elementos participan en las tres fases para lograr

el poblado ontológico. En la fase uno, se realiza la recuperación de información haciendo una exploración,

filtrado y pre-procesamiento de páginas Web, dando como resultado un documento de texto plano, el cual es

usado en la fase dos, que tiene como objetivo realiza una extracción de información a partir del texto plano y

realizándole un tokenizado, etiquetado, un análisis lingüístico y relacionando la información para formar un

árbol jerárquico. En la última fase, realiza un poblado ontológico haciendo uso del árbol de relaciones y

formar e instanciar tripletas, las cuales son validadas por medio de un algoritmo de similitud, un algoritmo de

encriptado y posteriormente el poblado ontológico. A continuación se describen las tres fases implementadas

en RExPO (ver Figura 19).

Page 50: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 38 | P á g i n a

4.5.1.1 Fase 1

El proceso inicia al realizar la recuperación de información al explorar el sitio Web, tras utilizar la

API llamada, Jericho[Jericho s. f., 2011], esta realiza la función del analizador Web, al obtener el texto de la

página, sus enlaces, titulo del sitio, palabras clave y directorio, para después almacenar el enlace en una lista

de enlaces que se visitaron. Posteriormente se inicia el recorrido del sitio con los enlaces obtenidos a partir de

la página inicial, validando los enlaces obtenidos con base en la bolsa de palabras ya definida y usando los

tres filtros para determinar si un enlace es candidato, o de otra forma evitar los filtros para hacer el recorrido

completo tras analizar todos los enlaces que se encuentren durante el proceso. En caso de que el enlace sea

válido o no se usen los filtros, se repite el proceso hasta recorrer todo el sitio, al obtener la recopilación de

todo el texto de la página Web como un texto plano en la pantalla de RexPO.

4.5.1.2 Fase 2

La segunda fase, inicia a partir de un texto plano como resultado de la fase uno, tokenizando y

usando todas las diversas técnicas de depuración de texto para dejar el texto sin carácteres no procesables, y

listo para ser tratado. La tokenización se hizo con base en un ciclo que recorre todo el texto, remplazando los

carácteres raros por espacios en blanco y dejando un espacio en blanco entre cada token. Una vez que el texto

se tokeniza se procede al etiquetado lingüístico usando la API FreeLing[FreeLing s. f., 2011], la cual permite

etiquetar texto plano, devolviéndo la categoría a la que pertenece el elemento analizado. Freeling permite ser

entrenado para un mejor etiquetado de palabras, está en varios idiomas y hace uso de técnicas como

lematización e identificación de nombres propios por ejemplo:

Nombre: Everardo Munguía Aguilar

Activando la herramienta para identificar nombre completo: Everardo_Munguía_Aguilar (NP)

Desactivando la herramienta para identificar nombre completo: Everardo(NP) Munguía (NP)

Aguilar(NP)

La técnica de identificación de nombres propios es una de las funcionalidades extras de Freeling,

resultando muy útil en algunos casos como para obtener el nombre propio de una persona, con la desventaja

que tendrá que depurarse eliminando el guion bajo que es agregado por Freeling en su resultado. Por otro

lado, si no se activa la técnica, se tendrán tres nombres propios por lo que difícilmente se sabrá si se trata de

personas diferentes o de la misma.

Una vez obtenido el etiquetado de todo el texto se crean dos listas: una con todas las palabras y otra

con su etiqueta correspondiente, en base al resultado del etiquetado de FreeLing. Una vez que se tienen las

etiquetas de cada palabra analizada se procede a la extracción de información usando autómatas descritos en

el anexo uno. Los patrones estructurales implementados usan etiquetas HTML, principalmente (“div”), y

comparan los componentes de los elementos que se desea identificar, con el uso de marcadores lingüísticos

Ej. (C.P., Dir., No., Av.), para determinar qué tipo de elemento es el que se identificó y su relación por medio

de jerarquías definidas para cada elemento que corresponde a la ontología. La relación de cada elemento se

hace por medio de un ciclo que recorre todo el texto tokenizado y determina cuando termina una relación, ya

sea por el nivel jerárquico del elemento o por que se encuentra en otra página del sitio analizado. Una vez

concluida la fase dos, se obtiene un árbol jerárquico en forma de lista de elementos relacionados.

Page 51: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 39 | P á g i n a

4.5.1.2.1 Detección de elementos en el texto

Hay muchas y variadas formas de identificar un teléfono, un nombre, una dirección entre otros

elementos de un texto, ya que cada elemento contienen una nomenclatura en común lo cual ayuda a reconocer

uno del otro y los cuales son reconocibles a simple vista. En esta sección se presentan las diferentes y variadas

formas que se toman en cuenta para identificar cada uno de estos elementos en un texto, a través de diferentes

métodos que se implementaron en RExPO.

Las bolsas de palabras y los marcadores lingüísticos son algunos de los recursos que se usaron para

filtrar páginas y agilizar el proceso de recuperación de información. A continuación se describen estos dos

elementos.

Bolsa de palabras

Las bolsas de palabras se utilizan al consultar cada página de un sitio, en 3 procesos de filtrado. El

primero es el análisis del título de un enlace, después se hace una comparación con el enlace y por último con

el título de la página que se pretende analizar. En cada uno de estos filtrados se busca alguna cadena

relacionada con la bolsa de palabras (ver Anexo 2.- Bolsa de palabras y marcadores lingüísticos), para

verificar que es viable analizar esa página o que contiene información de interés.

Marcadores lingüísticos

Los marcadores lingüísticos son aquellos que describen o contextualizan para saber qué es lo que

probablemente diga el texto en su siguiente palabra; Ej. El profesor, indica que está hablando de un profesor y

posiblemente mencionen su nombre, o se describan aspectos de él. Por lo que se deben definen diferentes

marcadores lingüísticos con base en los elementos que se desean identificar como, Tel., o Dir. Dando un

panorama más amplio de que es lo que describe el texto en su siguiente palabra (ver Anexo 2.- Bolsa de

palabras y marcadores lingüísticos).

Reconocimiento de NP

Para el reconocimiento de los nombres propios (NP), se implementaron distintas técnicas que van de

la mano con el etiquetador FreeLing. Para el reconcomiendo de NP sólo se identificaron dos tipos de nombres

propios como: personas y empresas u organizaciones, las cuales de se describen a continuación.

Personas

El reconocimiento de personas se llevo a cabo usando bolsas de palabras como (directorio, directiva,

subdirección, jefes, encargado, departamento, coordinador, personal, profesores, alumnos, estudiantes,

egresados, quienes somos, docencia, docentes, administración, servicios escolares, dirección, coordinación,

centro, laboratorio, administración) e identificando cada nombre por su grado Ej.Dr., Ing., Lic., entre otros,

para determinar el grado de la persona y verificar que realmente es el nombre de una persona.

Organización o empresa

El reconocimiento de una organización se logra mediante 3 aspectos, que son las etiquetas del título

de la página principal del sitio, el enlace y la ubicación más común del nombre de una organización.

Page 52: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 40 | P á g i n a

4.5.1.3 Fase 3

En la tercera fase, se tiene como entrada el árbol jerárquico en forma de lista de elementos

relacionados para el poblado ontológico. Primero se implementó un recorrido para cada conjunto de

elementos localizados en la primera posición de la lista de elementos relacionados, calculando la similitud del

primer elemento que se analiza con el resto de ese conjunto, utilizando la API denominada SimMetrics. Esta

API recibe dos cadenas de entrada y realiza una comparativa entre esas cadenas, donde el rango de similitud

que usa es de 0.0. hasta 1.0, el cual es aplicado sólo a los nombres propios con una grado de similitud de 0.7,

ya que es el rango que daba mejores resultados al considerar un nombre propio como similar o diferente. Si

las cadenas que se analizan tienen un grado mayor o igual a 0.7 son consideradas como similares, por lo tanto

se toma la primer nombre propio encontrado como el valor único para sus otras ocurrencias, dejándolo como

un alias de ese nombre propio. Ya que se tienen los valores candidatos se realiza un segundo recorrido a estos

valores para formar las tripletas, identificando la relación de cada elemento, con base en su posición en el

árbol jerárquico y una lista con todas las relaciones de la ontología, buscando la relación indicada y

almacenando la tripleta candidata.

Una vez que la similitud se aprobó y se tienen las tripletas candidatas, se realiza el encriptado con

base en las tripletas que ya son consideradas como candidatas utilizando un algoritmo de encriptado común,

convirtiendo el objeto y el predicado en una cadena de caracteres y dígitos únicos, para su posterior

instanciación o actualización en la ontología. La instanciación se utiliza el API TDB (TDB), como un

repositorio de tripletas, factor primordial para el poblado ontológico y como analizador de redundancia de

instancias. TDB nos permite reconocer que se trata del mismo elemento que se quiere instanciar, al notar que

tiene el mismo identificador único con uno ya existente, TDB complementa la información o descartando la

instancia.

Para la instanciación por medio de TDB no hace falta desencriptar el elemento instanciado ya que

cada vez que se consulta a la ontología se hace una comparación de el valor encriptado nuevo con el

identificador encriptado en la ontología, sabiendo así que se trata del mismo elemento. Dicho de otra forma,

se usará el encriptado como un identificador único en lugar de la fecha o un contador como es usado en

muchos casos para el poblado ontológico, ya que con el encriptado se puede realizar la actualización de la

ontología sin necesidad de instanciar nuevamente por causa de que tiene otra fecha u otro número.

Una vez instanciadas las tripletas candidatas, se prosigue con la relación de estas, basándose en la

lista de tripletas candidatas.

4.5.2 RExPO

En este apartado se muestra el funcionamiento del prototipo, y un ejemplo del resultado de la ontología

instanciada, mostrando los componentes de su interfaz. A continuación se presenta la primera impresión del

RExPO en funcionamiento.

Page 53: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 41 | P á g i n a

Figura 18.- RExPO.

En la Figura 18, se aprecian los diferentes botones y aéreas de la herramienta, descritos a continuación.

1.- Este botón es presionado para que aparezca el campo de texto 9, para ser ingresada la página

Web.

2.- Este botón es usando para cargar un documento de texto plano. Comúnmente este botón se

usa para las pruebas del etiquetado y tokenización.

3.- Este botón se usa para analizar el archivo de texto ingresado con el botón 2.

4.- Este botón se usa para salir de la herramienta.

5.- Este botón se usa para inicializar la IR del sitio Web, teniendo en cuenta que ya se agrego el

enlace en el campo 9.

6.- Este botón se usa una vez que se ha realizado la IE con el botón 5, para realizar el etiquetado

del texto que se obtuvo.

7.- Este botón se usa para la IR del texto etiquetado y tokenizado, teniendo en cuenta que antes

se debe haber presionado el botón 6.

8.- Este botón realiza el poblado ontológico, pero no sin antes haber terminado de realizar la IR

con el botón 7.

9.- Esta barra se usa para ingresar la dirección del sitio que se quiere analizar, la cual no será

visible si no hasta que se presione el botón 2.

10.- En esta área se van mostrando los resultados de cada proceso, y las notificaciones de

cuando terminada cada uno.

El funcionamiento de RExPO, inicia con el ingreso del enlace que se desea analizar, posteriormente

se da clic en el botón “jericho” y el sistema estará recorriendo y obteniendo toda la información contenida en

el sitio, este proceso tarda dependiendo de qué tan grande sea el sitio. Como se puede ver en la figura 20.

Terminado el proceso de recuperación de información, se mostrará en pantalla el contenido textual

de las páginas relevantes recuperadas del sitio. Para continuar con el etiquetado del texto, sólo hace falta dar

clic en el botón etiquetado. El proceso es rápido y mostrará un mensaje cuando se complete el etiquetado. A

causa de que el etiquetado es trasparente para el usuario, sólo se muestra el mensaje de que se completó el

etiquetado el cual se puede visualizar en la Figura 19.

5

3

6 7 8

4

1

2

9

10

Page 54: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 42 | P á g i n a

Figura 19.- Resultado de la recuperación de información.

En la Figura 19, se muestra el resultado de la recuperación de información de un sitio pequeño,

obteniendo todo el texto que contiene en sus páginas.

Cuando se tiene todo el texto etiquetado se debe realizar la extracción de información, dando clic en

el botón “identificación de elementos” mostrando todos los elementos recuperados y ordenamos de forma que

en cada renglón son elementos relacionados entre sí con una etiqueta que corresponde el tipo de elemento

(árbol de relaciones), como se puede apreciar en la Figura 20.

Figura 20.- Resultado de IE.

En la Figura 20, se muestra el resultado de extracción de información, obteniendo todos los datos y

Page 55: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 43 | P á g i n a

mostrándolos de forma ordenada y con una etiqueta con la que se identificó.

Cuando es mostrada la extracción de información en pantalla, sólo hace falta presionar el botón de

poblado, el cual realiza un poblado de toda la ontología mediante los elementos recuperados. El resultado es

un archivo OWL con la información de todos los elementos instanciados y relacionados. A continuación se

presenta un fragmento del archivo OWL, como resultado del poblado ontológico.

<rdf:Description rdf:about="http://www.cenidet.edu.mx/instancias213012302"> <rdf:type rdf:resource="http://www.cenidet.edu.mx/OrganizationalMemory.owl #IESOrganization"/> <j.0:comercialName>CENIDET</j.0:comercialName> <j.1:phone>(777)362-7770 </j.1:phone> <j.1:phone>362-7770</j.1:phone> <j.1:phone>(777)362-7795</j.1:phone> <j.1:phone>362-7795</j.1:phone> <j.3:hasAddress rdf:resource="http://www.cenidet.edu.mx/instancias22122503302122502143221013012550221304221013012135021413122530503142244443200221424202430"/> <j.0:hasDivisionrdf:resource="http://www.cenidet.edu.mx/instancias222541021152232452135233112131432133321051"/> <j.0:hasDivision rdf:resource="http://www.cenidet.edu.mx/instancias22254102115223 24524533013120311231"/> <j.0:hasDivision rdf:resource="http://www.cenidet.edu.mx/instancias22254102115223 245245330131243212335031"/> <j.0:hasDivision rdf:resource="http://www.cenidet.edu.mx/instancias2225410211522324525504333312313301051"/> </rdf:Description>

En el ejemplo anterior se muestra la organización “Cenidet” con los datos relacionados como su

dirección y teléfonos. También cuenta con las divisiones que la componen, las cuales sólo se visualizan

números con la palabra “instancias”, lo que corresponde a los datos encriptado de cada uno de los elementos

relacionados. Por otra parte, los datos instanciados se hacen mediante TDB, mediante su etiqueta corresponde

al tipo de dato que recuperó, realizando un búsqueda en la ontología y corroborando que exista la tripleta que

se desea instanciar. Para esto, se hace el árbol de relaciones y primero se instancian tanto el predicado, como

el sujeto para posteriormente realizar la relación de estos dos objetos.

Page 56: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 4.- Metodología de solución

Everardo Munguía Aguilar 44 | P á g i n a

4.6 Conclusiones

En este capítulo se presentó la metodología para el poblado ontológico y la elaboración y planeación

de RExPO, compuesta por 3 fases denominadas: recuperación de información, extracción de información y

poblado ontológico, donde cada una aporta un resultado primordial para el objetivo principal de esta

metodología.

El proceso de la implementación de la metodología descrita, se consideran algunos aspectos como:

en la fase uno se comenta sobre el filtrado de páginas, el cual fue omitido por motivo de que los sitios web

eran muy grandes y se demoraba el filtrado y exploración de un sitio, por lo que se opto por quitar el filtrado

y sólo usar la selección de páginas, dejando el filtrado como un trabajo futuro. También en la fase dos, se optó

por usar el etiquetador lingüístico FreeLing, el cual se eligió por una comparación de entre 3 etiquetadores

que abordan el lenguaje español, obteniendo a FreeLing como el mejor.

El árbol de elementos relacionados de la fase tres, en el cual se optó por hacer una lista donde cada

posición se conformara por conjunto de elementos relacionados, tomándolo como una rama del árbol.

También se tuvieron que adaptar algunos procesos más a la etapa del poblado, ya que TDB tiene sus reglas y

procedimientos para ser usado, por ejemplo: el cargar la ontología en memoria, hacer las modificaciones

(instanciación) y nuevamente realizar el volcado sobre un documento nuevo OWL. Por otra parte, se puede

mejorar algunos aspectos de la metodología, por ejemplo en lugar de usar autómatas, implementar

expresiones regulares.

Cada una de las etapas principales de RExPO, se abordaron diferentes criterios, como en el recorrido

del sitio, donde se tuvieron diferentes dificultades, y actualmente no se logra visitar al 100% tolas las páginas

de un sitio Web, sin importar que se supriman los filtros de enlaces, y bolsas de palabras. Sin embargo, se

logra visitar un 50% en el caso más ineficiente. La etapa del recorrido afectó mucho al prototipo ya que no se

logra visitar muchas páginas contenidas en un sitio Web, por lo que afecta toda la recuperación de

información y consecuentemente a la extracción de información y el poblado ontológico. Sin embargo, en la

etapa dos denominada recuperación de información, realiza de forma eficiente el recuperado, logrando

equilibrar la falla de la etapa uno, aunque se espera con el tiempo ir complementado el número de elementos a

identificar y realizar IR más completo.

La recuperación de información fue una etapa en la que se presentaron grandes dificultades con el

etiquetado, ya que debía ser depurado varias veces para tener un texto limpio y bien etiquetado, a pesar que se

uso una de los mejores etiquetadores para el lenguaje en español.

El poblado ontológico se considero como una etapa en la que se encontraron otro tipo de

problemáticas, entre ellas la redundancia de los elementos instanciados y la conformación de tripletas. Sin

embargo, se implementaron otros componentes como SimMetrics y el encriptado del texto para facilitar el

poblado ontológico y evitar la redundancia de sus elementos, no se solucionó al 100%, aún se cuenta con

algunas fallas, pero mejoró considerablemente el resultado al poblar la ontología.

En RExPO a pesar de las dificultades que se tuvieron en su elaboración, se logró conjuntar las 3 etapas de una

forma adecuada haciendo posible el poblado ontológico satisfactorio.

Page 57: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 5. Pruebas y resultados

En esta sección se describen las pruebas y resultados de la aplicación RExPO, la cual costa de seis sitios. Se

evalúa su efectividad por medio de métricas como Precisión y Recuerdo, además de usar la Medida F. En

cada caso de pruebas se explican las condiciones sobre las cuales se trabajó, dando un resumen estadístico de

cada sitio y el porcentaje total para obtener el rendimiento de la herramienta. Cada resumen estadístico se

hace a partir de cada etapa de la metodología, obteniendo los resultados para ser evaluada. También se

abordan las secciones que se poblaron en la ontología, mostrando que clases, atributos y relaciones se

tomaron en cuenta para realizar el poblado ontológico.

Page 58: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 46 | P á g i n a

5.1.1 Métricas de evaluación

En esta sección se presentan las métricas de evaluación que se usaron para determinar que tan

efectiva es la metodología propuesta, mostrando el funcionamiento y la descripción de cada una de las

métricas usadas.

5.1.1.1 Precisión y Recuerdo

Estas métricas de evaluación, mejor conocidas como “precision and recall” donde:

Precisión: Una medida de la capacidad de un sistema para presentar todos los elementos

pertinentes, enfocándose a la exactitud o debilidad de la herramienta.

Recuerdo: Una medida de la capacidad de un sistema de presentar sólo los elementos

pertinentes, enfocándose en la completitud.

Mediante la Tabla 3.- Tabla para determinar la formula de Precisión y Recuerdo. se usa para determinar los

valores de las fórmulas de Precisión y Recuerdo.

Tabla 3.- Tabla para determinar la formula de Precisión y Recuerdo.

Precisión y Recuerdo

Relevantes Irrelevantes

Recuperados A B (A + B) Todos los datos recuperados

No

recuperados

C D (C +D) Todos los datos omitidos

(A + C) Todos

los datos

relevantes del

sitio

(B + D) Todos

los datos

irrelevantes del

sitio

(A + B + C + D) Todos los datos del

sitio

Precisión =𝐴

𝐴 + 𝐵 Recuerdo =

𝐴

𝐴 + 𝐶

Rango negativo verdadero =𝐷

𝐷 + 𝐵 Exactitud =

𝐴 + 𝐷

𝐴 + 𝐷 + 𝐵 + 𝐶

Page 59: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 47 | P á g i n a

5.1.1.2 Medida F

La Medida F es una combinación de la precisión y recuerdo con una medida armónica de precisión y

exactitud, que representa la efectividad de lo que se mide.

F = 2 ∗𝑝𝑟𝑒𝑐𝑖𝑠𝑖ó𝑛 ∗ 𝑟𝑒𝑐𝑢𝑒𝑟𝑑𝑜

𝑝𝑟𝑒𝑐𝑖𝑠𝑖ó𝑛 + 𝑟𝑒𝑐𝑢𝑒𝑟𝑑𝑜

Ésta también se conoce como la medida F1, porque el recuerdo y la precisión son uniformemente ponderados.

5.2 Caracterización de Pruebas

Las pruebas realizadas se hicieron sobre seis sitios completos, con los cuales se realizó una prueba

por cada etapa de la metodología, obteniendo resultados para el recorrido del sitio, la extracción de

información y el poblado ontológico. Cada prueba realizada con la metodología, se hizo de igual forma

manualmente, validando que tan correcta es la información y que tan efectiva es la metodología, además de

presentar los aspectos más notorios para realizar las pruebas.

En cada prueba realizada en los seis casos de estudio analizados se usan las siguientes limitantes, es decir no

se abordan en la metodología.

Las principales limitantes son las siguientes:

Análisis de scripts.

Análisis de páginas fuera del sitio Web.

Análisis de archivos como (multimedia, pdf, imágenes, documentos).

Extracción de nombres propios sin grado académico.

Análisis de Flash.

Análisis de diversos lenguajes poco populares.

5.2.1 Criterios de evaluación

La evaluación de la herramienta se hace con base en 4 aspectos, el recorrido del sitio, recuperación

de información y poblado ontológico, determinando la completitud, exactitud y/o debilidad de la herramienta

en cada proceso con respecto a una muestra realizada manualmente.

En la Figura 21.- Rangos de análisis se muestra un gráfico del rango aproximado de la cobertura de

la información existente en el sitio Web, de un análisis manual y del análisis automático:

Page 60: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 48 | P á g i n a

Figura 21.- Rangos de análisis.

Donde:

Sitio Web: se refiere a toda la información que conforma un sitio web como: audio, video,

imágenes, archivos, texto, enlaces, entre otros elementos por los que está compuesto.

Los datos existentes en el sitio Web: se refiere a los objetos, enlaces o instancias que contiene

el sitio Web, y sean relevantes o irrelevantes.

Los datos obtenidos manualmente: se refiere a los objetos, enlaces o instancias que se

obtuvieron manualmente del sitio Web, analizando cada página del sitio y recorriéndola

totalmente para identificar toda la información posible.

Los datos extraídos automáticamente: se refiere a los objetos, enlaces o instancias que se

obtuvieron automáticamente, tomando en cuenta diferentes métodos y filtros.

Los distintos criterios que se toman en cuenta para realizar una extracción de información, en los

cuales existen diversos aspectos que intervienen con la extracción de un objeto, como los filtros usados, el

enlace que se está visitando, la información contenida en la página y el elemento a extraer, como se puede

apreciar en la Figura 22.- Filtros para la extracción de un objeto.

Figura 22.- Filtros para la extracción de un objeto.

Page 61: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 49 | P á g i n a

Los aspectos descritos en las Figura 21 y Figura 22, se pretende evaluar los siguientes criterios:

1. Recorrido del sitio

Información general: presenta el tiempo de extracción de información que se tardo el proceso,

y también un porcentaje aproximado de la redundancia de los datos.

Número de enlaces visitados: se presenta el número de enlaces que se visitaron durante la

ejecución manual y automática, haciendo un conteo del total de páginas, donde:

o enlaces relevantes: son las páginas que contienen información relevante dentro del

criterio de extracción de información y recuperación de información.

o enlaces irrelevantes: son las páginas que no contienen ningún dato relevante dentro del

criterio de extracción de información y recuperación de información.

2. Extracción de información

Número total de objetos recuperados: se presenta el número de objetos que se identificaron en

la ejecución manual y automática, mostrando un conteo del total de objetos, donde:

o Total de objetos relevantes: es el número de objetos verídicos y no repetidos

identificados en todo el sitio.

o Total de objetos irrelevantes: es el número de objetos repetidos o irrelevantes

identificados en todo el sitio.

3. Poblado ontológico

Número total de instancias: se presenta el número de instancias candidatas para ser pobladas

en la ontología en la ejecución manual y automática, mostrando un conteo total de instancias

donde:

o Total de instancias relevantes: es el número de instancias relevantes o correctas que se

crearon en la ontología

o Total de instancias irrelevantes: es el número de instancias repetidas o erróneas que se

detectaron para ser pobladas.

5.2.2 Casos de estudio

Los casos de estudio usados para probar esta metodología son sobre seis sitios Web diferentes de tipo

TIC o IES, en los que se busca información específica como nombres propios de persona o empresa, áreas,

teléfonos, direcciones, correos, redes sociales y objetos de interés como publicaciones. El sitio Web debe

contar con algunas características para que la metodología funcione correctamente: debe estar en el lenguaje

español, ser un sitio con información orientada a las TIC o IES, los nombres propios especificados dentro de

las páginas del sitio deben estar acompañados, en el caso de una persona, de su grado de estudios,

considerando Dr., M.C., Lic., entre otros.

Los casos de estudio se caracterizaron mediante las Tablas: Tabla 4, Tabla 5, Tabla 6, Tabla 7, Tabla 8 y

Tabla 9 con los siguientes criterios:

Página: Se refiere al enlace del sitio visitado.

Tipo de información: la información encontrada válida para la metodología.

Limitaciones: Se presentan los diversos casos que causaron fallos a la metodología.

Número de páginas: el número de páginas visitadas manualmente y automáticamente.

Page 62: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 50 | P á g i n a

Tabla 4.- Detalles caso de estudio 1.

Caso de estudio 1.- Cenidet.

Página http://www.cenidet.edu.mx/

Tipo de Información

El Centro Nacional de Investigación y Desarrollo Tecnológico, el cual brinda servicios de maestrías y doctorados. En donde se encontraron datos como: nombres, objetos de interés, correos, áreas, teléfonos y direcciones.

Limitaciones La página de CENIDET cuenta con diversos scripts en sus menús, lo que limita a la metodología a analizar diversidad de páginas contenidas en el sitio, otra limitante es que maneja otro dominio en alguna de sus áreas.

Número de páginas Número de páginas visitadas manualmente: 244

Número de páginas visitadas automáticamente: 115

Tabla 5.- Detalles caso de estudio2.

Caso de estudio 2.- Instituto de investigación y desarrollo educativo Campus Ensenada.

Página http://iide.ens.uabc.mx/blogs/iide/

Tipo de Información

Instituto de Investigación y Desarrollo Educativo Campus Ensenada, el cual brinda servicios de doctorados y maestría en ciencias educativas. En donde se encontraron datos como: nombres, objetos de interés, correos, teléfonos y direcciones.

Limitaciones El instituto de investigación campus ensenada, cuenta con las siguientes limitantes: con índices con scripts, áreas con otro dominio y muchos enlaces que apuntan a documentos.

Número de páginas Número de páginas visitadas manualmente: 226

Número de páginas visitadas automáticamente: 51

Tabla 6.- Detalles caso de estudio 3.

Caso de estudio 3.- Instituto Politécnico Nacional.

Página http://iide.ens.uabc.mx/blogs/iide/

Tipo de Información

El Instituto Politécnico Nacional (IPN), es un centro de investigación en computación. En donde se encontraron datos como: nombres, objetos de interés, correos, teléfonos y direcciones.

Limitaciones La página del IPN está compuesta por aproximadamente 15 scripts, donde esta es la base de las demás páginas del sitio, limitando mucho el acceso a la información por medio de la metodología, otra limitante es que cuenta con muchos nombres propios, sin grado (Ing., Lic., etc.).

Número de páginas Número de páginas visitadas manualmente: 571

Número de páginas visitadas automáticamente: 150

Page 63: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 51 | P á g i n a

Tabla 7.- Detalles caso de estudio 4.

Caso de estudio 4.- Cinvestav

Página http://www.cinvestav.mx/

Tipo de Información

Cinvestav, es un instituto de investigadores y de conocimiento tecnológico y científico, donde se encontraron datos como: nombres, objetos de interés, correos, teléfonos, direcciones y redes sociales.

Limitaciones La página principal cuenta con muchos scripts, además de muchas animaciones que dificultan la extracción de información, muchos de los botones principales están compuestos como menús, por lo que contienen algún tipo de codificación ya sea scripts u otro tipo.

Número de páginas Número de páginas visitadas manualmente: 338

Número de páginas visitadas automáticamente: 105

Tabla 8.- Detalles caso de estudio 5.

Caso de estudio 5.- Cablemas

Página http://www.cablemas.com.mx/

Tipo de Información

Cablemas es una compañía que proporciona un servicio de cable e internet donde se encontraron datos como: nombre de la compañía, teléfonos y redes sociales.

Limitaciones La página contiene muy poca información descriptiva, ya que la mayor parte de la información que proporcionan es visual ya sea en imágenes y videos.

Número de páginas Número de páginas visitadas manualmente: 45

Número de páginas visitadas automáticamente: 67

Tabla 9.- Detalles caso de estudio 6.

Caso de estudio 6.- Nextel

Página http://www.nextel.com.mx/index.htm

Tipo de Información

Nextel es una compañía que proporciona un servicio de telefonía, venta, renta, etc., en donde se encontraron datos como: nombre de la compañía, teléfonos, redes sociales y correos electrónicos.

Limitaciones La página proporciona poca información y repetida, ya que la mayoría de la información no es de utilidad.

Número de páginas Número de páginas visitadas manualmente: 156

Número de páginas visitadas automáticamente: 101

Page 64: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 52 | P á g i n a

5.3 Resultados

En esta sección se presentan los resultados que se obtuvieron a partir de los criterios y métricas de

evaluación mencionadas 5.1.1 y 5.2.1 donde se presentan en forma de una tabla como resumen estadístico de

los resultados obtenidos por cada sitio analizado. En cada una de estas tablas se presentan los aspectos

descritos anteriormente los cuales son: número total de enlaces visitados, número total de objetos recuperados

y número total de instancias. Cada clasificación con sus datos respectivos, mostrando al final de cada etapa

una gráfica de la precisión, recuerdo y medida F de cada sitio. A continuación se presentan los resultados

obtenidos.

5.3.1 Recorrido del sitio.

Caso de estudio 1.- Cenidet

Manual Automático Tiempo de extracción y recuperación de

información: 5 días

Tiempo de extracción y recuperación de

información: 1 min. 55 seg.

Número total de enlaces visitados

Total de páginas: 244

Páginas relevantes: 152

Páginas irrelevantes: 92

Total de páginas: 115

Páginas relevantes: 64

Páginas irrelevantes: 42

Caso de estudio 2.- Instituto de investigación y desarrollo educativo

Campus Ensenada

Manual Automático Tiempo de extracción y recuperación de

información: 1.5 días

Tiempo de extracción y recuperación de

información: 2 min. 54 seg.

Número total de enlaces visitados

Total de páginas: 226 Páginas relevantes: 108

Páginas irrelevantes: 118

Total de páginas: 51 Páginas relevantes: 37

Páginas irrelevantes: 7

Caso de estudio 3.- Instituto Politécnico Nacional.

Manual Automático Tiempo de extracción y recuperación de

información: 6 días

Tiempo de extracción y recuperación de

información: 1 min. 50 seg.

Número total de enlaces visitados

Total de páginas: 571

Páginas relevantes: 242

Páginas irrelevantes: 329

Total de páginas: 150

Páginas relevantes: 85

Páginas irrelevantes: 45

Page 65: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 53 | P á g i n a

Caso de estudio 4.- Cinvestav

Manual Automático Tiempo de extracción y recuperación de

información: 5 días

Tiempo de extracción y recuperación de

información: 3 min. 36 seg.

Número total de enlaces visitados

Total de páginas: 338

Páginas relevantes: 169

Páginas irrelevantes: 169

Total de páginas: 105

Páginas relevantes: 62

Páginas irrelevantes: 6

Caso de estudio 5.- Cablemas

Manual Automático Tiempo de extracción y recuperación de

información: 3 hrs.

Tiempo de extracción y recuperación de

información: 62 seg.

Número total de enlaces visitados

Total de páginas: 45

Páginas relevantes: 12

Páginas irrelevantes: 33

Total de páginas: 67

Páginas relevantes: 2

Páginas irrelevantes: 53

Caso de estudio 6.- Nextel

Manual Automático Tiempo de extracción y recuperación de

información: 7 hrs.

Tiempo de extracción y recuperación de

información: 62 seg.

Número total de enlaces visitados

Total de páginas: 156

Páginas relevantes: 35

Páginas irrelevantes: 121

Total de páginas: 101

Páginas relevantes: 80

Páginas irrelevantes: 2

Tabla 10.- Tabla comparativa del recorrido del sitio

Precisión Recuerdo Efectividad

CENIDET 0.6 0.42 0.49

IIDE Ensenada 0.84 0.34 0.48

IPN 0.65 0.35 0.45

Cinvestav 0.91 0.36 0.52

Cablemas 0.07 0.33 0.11

Nextel 0.97 1 0.98

Page 66: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 54 | P á g i n a

Tabla 11.- Resumen estadístico por recorrido del sitio.

En la Tabla 10 y 11, se presenta el resultado estadístico sobre la Precisión y Recuerdo, y además de la Medida

F de la Fase 1, donde la mayoría de los sitios se encuentran en el 50% de efectividad, afectando seriamente

los scripts contenidos en cada una de sus páginas del sitio, sin embargo se logra recorrer la mitad del sitio, por

consecuente es afectada la extracción de información, ya que entre menos páginas sean recuperadas, se cuenta

con menos información afectando de forma proporcional a la extracción de información.

5.3.2 Extracción de información

Caso de estudio 1.- Cenidet. Manual Automático

Repetición de datos: 40% a 70% aprox. Repetición de datos: 30% aprox.

Número total de datos

Total de objetos: 1372

Total de objetos relevantes: 548

Total de objetos irrelevantes o repetidos: 823

Total de objetos: 255

Total de objetos relevantes: 149

Total de objetos irrelevantes o repetidos: 106

Caso de estudio 2.- Instituto de investigación y desarrollo educativo

Campus Ensenada. Manual Automático

Repetición de datos: 20% aprox. Repetición de datos: 30% a 40%

Número total de datos

Total de objetos: 337

Total de objetos relevantes: 269

Total de objetos irrelevantes o repetidos: 68

Total de objetos: 342

Total de objetos relevantes: 201

Total de objetos irrelevantes o repetidos: 141

0

0.2

0.4

0.6

0.8

1

1.2

Precisión

Recuerdo

Efectividad

Page 67: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 55 | P á g i n a

Caso de estudio 3.- Instituto Politécnico Nacional.

Manual Automático Repetición de datos: 10% aprox. Repetición de datos: 30% a 40%

Número total de datos

Total de objetos: 1761

Total de objetos relevantes: 1591

Total de objetos irrelevantes o repetidos: 170

Total de objetos: 199

Total de objetos relevantes: 67

Total de objetos irrelevantes o repetidos: 132

Caso de estudio 4.- Cinvestav. Manual Automático

Repetición de datos: 15% aprox. Repetición de datos:20% aprox.

Número total de datos

Total de objetos: 3320

Total de objetos relevantes: 2540 Total de objetos irrelevantes o repetidos: 780

Total de objetos: 221

Total de objetos relevantes: 112 Total de objetos irrelevantes o repetidos: 109

Caso de estudio 5.- Cablemas. Manual Automático

Repetición de datos: 40% aprox. Repetición de datos: 0%

Número total de datos

Total de objetos: 18

Total de objetos relevantes: 7

Total de objetos irrelevantes o repetidos: 11

Total de objetos: 6

Total de objetos relevantes: 6

Total de objetos irrelevantes o repetidos: 0

Caso de estudio 6.- Nextel. Manual Automático

Repetición de datos: 35% aprox. Repetición de datos: 0%

Número total de datos Total de objetos: 81

Total de objetos relevantes: 23

Total de objetos irrelevantes o repetidos: 58

Total de objetos: 10

Total de objetos relevantes: 4

Total de objetos irrelevantes o repetidos: 6

Tabla 12.- Tabla comparativa de la extracción de información

Precisión Recuerdo Efectividad

CENIDET 0.58 0.27 0.37

IIDE Ensenada 0.58 0.74 0.65

IPN 0.33 0.04 0.07

Cinvestav 0.50 0.04 0.08

Cablemas 1 0.85 0.92

Nextel 0.4 0.17 0.24

Page 68: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 56 | P á g i n a

Tabla 13.- Resumen estadístico por extracción de información.

En la Tabla 12 y 13, se aprecia qué el resultado de la extracción de información de los seis sitios es

muy variado, esto se debe a que los elementos a extraer son más en los sitios politécnico y cinvestav, y de los

cuales se logro una extracción de información muy pequeña, influyendo mucho la recuperación de

información, ya que si sólo se visita la mitad de las páginas del sitio, esto afecta en gran medida a la fase dos

de extracción de información, obteniendo como mejor resultado un 92% de datos y la peor un 7%.

5.3.3 Poblado ontológico

Caso de estudio 1.- Cenidet. Datos Obtenidos Manualmente Poblado Automático

Total de objetos: 1372

Total de objetos relevantes: 548 Total de objetos irrelevantes o repetidos: 823

Total de instancias: 205

Total de instancias relevantes: 120 Total de instancias irrelevantes: 85

Caso de estudio 2.- Instituto de investigación y desarrollo educativo

Campus Ensenada. Datos Obtenidos Manualmente Poblado Automático

Total de objetos: 337

Total de objetos relevantes: 269

Total de objetos irrelevantes o repetidos: 68

Total de instancias: 342

Total de instancias relevantes:95

Total de instancias irrelevantes:12

Caso de estudio 3.- Instituto Politécnico Nacional.

Datos Obtenidos Manualmente Poblado Automático Total de objetos: 1761

Total de objetos relevantes: 1591

Total de objetos irrelevantes o repetidos: 170

Total de instancias: 141

Total de instancias relevantes: 38

Total de instancias irrelevantes: 4

0

0.2

0.4

0.6

0.8

1

1.2

Precisión

Recuerdo

Efectividad

Page 69: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 57 | P á g i n a

Caso de estudio 4.- Cinvestav

Datos Obtenidos Manualmente Poblado Automático Total de objetos: 3320

Total de objetos relevantes: 2540

Total de objetos irrelevantes o repetidos: 780

Total de instancias: 88

Total de instancias relevantes:84

Total de instancias irrelevantes: 3

Caso de estudio 5.- Cablemas

Datos Obtenidos Manualmente Poblado Automático Total de objetos: 18

Total de objetos relevantes: 7

Total de objetos irrelevantes o repetidos: 11

Total de instancias: 6

Total de instancias relevantes: 6

Total de instancias irrelevantes: 0

Caso de estudio 6.- Nextel

Datos Obtenidos Manualmente Poblado Automático Total de objetos: 81

Total de objetos relevantes: 23 Total de objetos irrelevantes o repetidos: 58

Total de instancias: 4

Total de instancias relevantes: 4 Total de instancias irrelevantes: 0

Tabla 14.- Tabla comparativa del poblado ontológico.

Precisión Recuerdo Efectividad

CENIDET 0.88 0.21 0.35

IIDE Ensenada 0.88 0.35 0.50

IPN 0.90 0.02 0.04

Cinvestav 0.96 0.03 0.06

Cablemas 0.85 0.85 0.85

Nextel 1 0.17 0.29

Tabla 15.- Resumen estadístico por poblado ontológico.

0

0.2

0.4

0.6

0.8

1

1.2

Precisión

Recuerdo

Efectividad

Page 70: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 58 | P á g i n a

En la Tabla 14 y 15, se presenta el resumen estadístico del poblado ontológico, en lo que respecta a

los resultados de esta gráfica, se presentan resultados muy bajos los cuales son proporcionales a las fases

anteriores, ya que aquí se mide la efectividad que tiene la metodología para poblar una ontología a partir de

los datos extraídos en la fase dos y No. total de objetos que se obtuvo manual mente, por lo que en el poblado

se considero la fase más afectada con un 85% en como mejor resultado y un 4% como el mínimo. Esta fase se

considera la más afectada ya que individualmente logra obtener un 95% de efectividad.

5.4 Análisis de resultados

Los resultados mediante las dos métricas presentadas en la sección 5.1.1 donde a partir de estas se

logra la efectividad de cada fase de la metodología implementada en RExPO mediante la Medida F, teniendo

un 51% de efectividad como suma de los seis casos de estudio en la fase 1, en la fase 2 se logró el 39% de

efectividad y en cuanto a la fase 3 se obtuvo un 35%.

Una vez que se tienen los resultados de las tres fases, se suman los resultados de Precisión y

Recuerdo de cada fase de un sitio analizado, sacando un promedio general de las tres fases como se puede

apreciar en la Tabla 16 y 17. Posteriormente se calcula la efectividad de la herramienta en general usando la

Medida F sobre el resultado general de cada sitio analizado, concluyendo los resultados mostrados en la

Figura 23.

Tabla 16.- Tabla comparativa de la efectividad de la metodología por sitio web

Precisión Recuerdo Efectividad

CENITED 0.69 0.30 0.42

IIDE Ensenada 0.77 0.48 0.59

IPN 0.13 0.68 0.23

Cinvestav 0.14 0.94 0.25

Cablemas 0.64 0.68 0.66

Nextel 0.79 0.44 0.57

Tabla 17.- Efectividad de la metodología por sitio Web.

0

0.2

0.4

0.6

0.8

1

Precisión

Recuerdo

Efectividad

Page 71: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 5.- Pruebas y resultados

Everardo Munguía Aguilar 59 | P á g i n a

En la Figura 23, se presenta la efectividad de la metodología implementada a partir de las pruebas

realizadas, la cual se obtuvo mediante el promedio general de los resultados de cada sitio, sacando la Medida

F para calcular el total de las pruebas.

Figura 23.- Efectividad de la metodología implementada en el prototipo.

El resultado mostrado en la Figura 23 muestra un 46% de efectividad, por lo que se pretende mejorar

la metodología, abordando diferentes elementos descartados, como los presentados en la sección 6.2 de los

trabajos futuros. Los enfoques mencionados en esa sección, son vitales para la mejora de la herramienta. Sin

embargo a pesar de los problemas y deficiencias de cada fase para lograr el poblado ontológico, se obtuvo un

46% de efectividad en la herramienta, logrando poblar la ontología.

46%54%

Metodologia

Efectividad

Ineficiencia

Page 72: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capítulo 6. Conclusiones y trabajos futuros

En este capítulo se presentan las conclusiones generales y los trabajos futuros de la metodología propuesta, la

cual fue desarrollada e implementada para lograr un poblado ontológico, presentando las experiencias

ganadas tras lograr cumplir los diferentes objetivos y metas pospuestas al inicio de la elaboración de esta

tesis, las dificultades presentadas y las soluciones óptimas para su desarrollo.

Page 73: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 61 | P á g i n a

6.1 Conclusiones

La metodología propuesta en esta tesis cumple con su principal objetivo que consiste en poblar una

ontología organizacional mediante el análisis de contenido textual de páginas Web. Este objetivo se logra

mediante su estructura compuesta por tres etapas denominadas, recuperación de información, extracción de

información y poblado ontológico.

Las tres fases que componen a esta metodología la hacen adaptable, mediante la modificación

independiente de cada fase, ya sea para el manejo de otra ontología o integración de alguna fase a otro

sistema. La reutilización de cada fase que brinda la metodología propuesta, se obtuvo mediante diversas

experiencias obtenidas en los diferentes trabajos analizados y presentados en el estado del arte, las

herramientas, API’s, algoritmos, métodos para poblar una ontología y los distintos tratamientos que se aplican

a una página web.

Las pruebas presentadas en esta tesis se realizaron por medio de páginas Web de tipo IES y TIC,

sobre las cuales se extrajo la siguiente información: nombres propios, correos, nombre de organización, redes

sociales, publicaciones, ubicación (dirección), teléfonos y nombre de departamentos. La ontología

organizacional considerada es la desarrollada por [Vargas 2011].

La metodología actual está conformada por diferentes componentes que pretenden mejorar aspectos

en cada fase como, abarcar un mayor número de leguajes de programación, y principalmente scripts. Otro

aspecto a mejorar es el análisis de páginas ligadas a alguna persona o elemento de la organización, que

comúnmente presentan información útil para el complemento de una clase de la ontología y que casualmente

se encuentran fuera del sitio.

Un aspecto importante de señalar, en la fase dos, es el análisis lingüístico. Esta subfase es vital ya

que, dependiendo de la información que se desee recuperar, determinará el nivel del análisis lingüístico. Estos

niveles pueden ser sintácticos, semánticos o pragmáticos. En esta tesis, nos situamos en un análisis semántico

donde se analizó léxico y cuestiones morfosintácticas apoyándose en diversas herramientas como FreeLing,

características semánticas y el uso de patrones.

La metodología implementada a través del prototipo RexPO, aborda diferentes criterios descritos en

5.2.1 y se tuvieron diferentes dificultades mencionadas en 5.4 en cada una de las fases de la metodología.

Actualmente no se logra visitar el 100% de las páginas de un sitio web, a pesar de suprimir los filtros, sin

embargo se logra visitar aproximadamente un 50% en el caso más eficiente, convirtiendo a los scripts en el

principal problema para la recuperación de información. La etapa de exploración del sitio afecto al prototipo

ya que no se logra visitar diversas páginas de un sitio Web, por lo que afecta tanto a la extracción de

información como a la recuperación de información y consecuentemente al poblado ontológico, sin embargo a

pesar de que un sitio tenga scripts se logra hacer una extracción de información eficiente tomando en cuenta

que esta tesis no considera el análisis de scripts.

La fase dos denominada extracción de información, se logró equilibrar la falla de la fase uno,

haciendo una buena identificación de elementos en el texto, a pesar de que la información en la Web es

presentada de diversas formas, tratándose de la misma cosa, por lo que se optó por usar diversos autómatas,

patrones, bolsas de palabras e identificadores que se adaptan a las diversas estructuras con las que es

presentada la información teniendo como base un etiquetador lingüístico (FreeLing), el cual no se entrenó y a

pesar de esto presentó buenos resultados ya que se trata de uno de los mejores etiquetadores para el lenguaje

en español hasta el momento.

La ontología se aborda en la última etapa, la cual se modificó y depuró en algunas ocasiones durante

Page 74: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 62 | P á g i n a

el desarrollo de la metodología por su desarrollador [Vargas 2011] ya qué la elaboración de la ontología no fue

parte de esta metodología, pero si parte de su funcionamiento, convirtiéndose en la clave para saber qué tipo

de información se debe recuperar y con esto el inicio de la redundancia de los elementos instanciados y la

conformación de tripletas en la ontología, haciendo uso de Apis como SimMetrics para la comparación de

instancias, un encriptado para facilitar la instanciación de los elementos recuperados en la ontología y el

proceso del poblado ontológico con la API de jena TDB, que permite a la ontología ser trasportable y

manejable, además de solucionar muchos casos de redundancia de sus elementos.

Con base a los resultados generales de cada fase, se obtuvo un resultado de efectividad de la fase 1-

“recorrido del sitio” que oscila entre 98% y 11% de efectividad, el cual fue afectado principalmente por los

scripts de los diversos sitios. La fase dos, “Extracción de información” oscila de 92% a un 7% de efectividad,

siento afectado rotundamente por la cantidad de enlaces que no fueron visitados en la fase 1, limitando mucho

la recuperación de información y consecuentemente la extracción de información. Por último la fase tres

“Poblado ontológico” oscila entre un 85% y 4% de efectividad, a pesar de algunas fallas encontradas al

relacionar los diferentes elementos recuperados y algunas otras en la redundancia de cada elemento

Con base en estas tres fases se calcula una efectividad por sitio y posteriormente se obtiene un

promedio del resultado de los seis sitios para sacar la medida armónica entre Precisión y Recuerdo,

obteniendo la efectividad de la metodología implementada en la herramienta denominada RExPO presentada

en esta tesis, teniendo un 45% de efectividad en general tras haber logrado su objetivo principal el cual era

desarrollar una metodología para poblar una ontología organizacional mediante el análisis de contenido

textual de páginas Web.

Page 75: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 63 | P á g i n a

6.2 Trabajos futuros

En esta sección se abordan los trabajos futuros que son factibles y necesarios para complementar esta

metodología desarrollada para realizar un poblado de ontológico.

Implementar un modulo para el análisis de scripts: este módulo no fue implementado a causa de

que las limitaciones de esta tesis y el tiempo que requiere su análisis, sin embargo el

implementarlo incrementaría el número de enlaces que se visitan en la fase de IR. Y

consecuentemente mejoraría la IE y el número de instancias en la ontología.

Ampliar los lenguajes de programación: este módulo es necesario para ampliar la IR de la

metodología teniendo más cobertura en más sitios web, en la que sólo se abordan los lenguajes

más comunes.

Realizar IE e IR en diferentes idiomas: Este módulo daría más amplitud a la metodología la cual

sólo está desarrollada para el lenguaje español.

Complementar y mejorar FreeLing, entrenándolo: este módulo proporcionaría mejor exactitud al

etiquetado del texto y consecuentemente a la extracción de información.

Implementar expresiones regulares en lugar de autómatas y elaborar más expresiones regulares

para ampliar la IR.: en este caso no se usaron expresiones regulares ya que cuando se pretendía

implementarlas el prototipo ya se encontraba en la última fase, por lo que falto tiempo para

implementar los expresiones regulares y ampliar la cobertura de los autómatas.

Implementar un módulo que se adapte a cualquier ontología organizacional sin necesidad de

hacer cambios.: este módulo es ambicioso, pero muy útil ya que proporcionaría una portabilidad

excepcional a la metodología, permitiéndole poblar cualquier ontología de un dominio

específico.

Mejorar el aspecto de la herramienta.: Este módulo no se complementó por causa de tiempo, a

pesar de eso se tiene en cuenta mejorar el aspecto de la herramienta haciéndola más amigable y

manejable.

Mejorar el porcentaje de efectividad: para cumplir con esta meta se tiene que mejorar las tres

fases de la metodología, para lo cual es necesario cumplir con la mayoría de los trabajos

futuros.

Mejorar la bolsa de palabras o sustituirla por algún tipo de herramienta o metodología.: Se

pretende mejorar la bolsa de palabras ampliándola y eligiendo palabras clave para detectar mejor

la información o en otro caso emplear un método para no limitar la recuperación de información

sólo a una bolsa de palabras.

Mejorar el proceso de relación de elementos recuperados: En este proceso se pretende mejorar la

relación de objetos, ya que en muchos casos es difícil decidir la relación de dos objetos extraídos

de un texto plano.

Page 76: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 64 | P á g i n a

Referencias

[Appelt 1999]

Appelt, D.E., 1999. Introduction to information extraction. AI

Commun., 12(3), pp.161–172.

[Blum et. al. 2008]

Blum, C., Aguilera, M.J.B. & Roli, A., 2008. Hybrid

metaheuristics: an emerging approach to optimization, Springer

Verlag.

[Buttler et al. 2001]

Buttler, D., Liu, L. & Pu, C., 2001. A fully automated object

extraction system for the World Wide Web. En Distributed

Computing Systems, 2001. 21st International Conference on. pp.

361–370.

[M. Vargas-Vera &

D. Celjuska 2004]

Celjuska, David & Vargas-Vera, Maria, 2004. Ontosophie: A

Semi-Automatic System for Ontology Population from Text.

http://eprints.aktors.org/416/

[Cimiano 2006] Cimiano, 2006. Ontology Learning and Population from Text:

Algorithms, Evaluation and Applications, Dordrecht: Springer.

[Cimiano et al. 2004] Cimiano, P., Handschuh, S. & Staab, S., 2004. Towards the self-

annotating web. En Proceedings of the 13th international

conference on World Wide Web. pp. 462–471.

[Clark & Guillemot

2011]

Clark, A. & Guillemot, M., 2011. NekoHTML.

http://nekohtml.sourceforge.net/

[Craven et al. 1999] Craven, M. et al., 1999. Learning to Construct Knowledge Bases

from the World Wide Web H.

[Davalcu et al. 2003] Davalcu, H. et al., 2003. OntoMiner: bootstrapping and

populating ontologies from domain-specific Web sites. IEEE

Intelligent Systems, 18(5), pp.24– 33.

[Oren Etzioni et al.

2005]

Etzioni, Oren et al., 2005. Unsupervised named-entity extraction

from the Web: An experimental study. Artificial Intelligence,

165(1), pp.91–134.

[O. Etzioni et al.

2004]

Etzioni, O. et al., 2004. Web-scale information extraction in

knowitall:(preliminary results). En Proceedings of the 13th

international conference on World Wide Web. pp. 100–110.

[FreeLing s. f., 2011] FreeLing, home - FreeLing Home Page.

http://nlp.lsi.upc.edu/freeling/

[Gruber 1995] Gruber, T.R., 1995. Towards principles for the design of

Page 77: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 65 | P á g i n a

ontologies used for knowledge sharing.

http://148.226.12.104/handle/123456789/10422

[Harris 1954] Harris, Z.S., 1954. Distributional structure. Word, 10, pp.146–

162.

[Hearst 2003] Hearst, M., 2003. What is text mining. Retrieved October, 18,

p.2005.

[Hearst, 1992] Hearst,, 1992. Automatic acquisition of hyponyms from large text

corpora. En Proceedings of the 14th conference on Computational

linguistics-Volume 2. pp. 539–545.

[Hepp et al. 2007] Hepp, M., De Leenheer, P. & de Moor, A., 2007. Ontology

management: semantic web, semantic web services, and business

applications, Springer-Verlag New York Inc.

[Hindle 1990] Hindle, D., 1990. Noun classification from predicate-argument

structures. En Proceedings of the 28th annual meeting on

Association for Computational Linguistics. pp. 268–275.

[HTML Parser 2006] HTML Parser, 2006. HTML Parser - HTML Parser.

http://htmlparser.sourceforge.net/

[Hyung-Geun Park

2008]

Hyung-Geun Park, S.-S., 2008. OPTIMA: An Ontology

Population System. Semantic Web Dog Food.

http://data.semanticweb.org/conference/iswc-

aswc/2007/tracks/posters-demos/papers/385

[Java 2011] Java, 2011. Oracle and Java | Technologies.

http://www.oracle.com/

[Jericho s. f., 2011] Jericho, M., Jericho HTML Parser.

http://jericho.htmlparser.net/docs/index.html.

[Lee 1999] Lee, L., 1999. Measures of distributional similarity. En

Proceedings of the 37th annual meeting of the Association for

Computational Linguistics on Computational Linguistics. pp. 25–

32.

[Liddy, 2001] Liddy, ED 2001. Procesamiento del Lenguaje Natural. En la

Enciclopedia de Bibliotecología y Ciencias de la Información, 2 ª

ed. Nueva York. Marcel Decker, Inc. Disponible en:

http://surface.syr.edu/istpub/63.

[B. Liu et al. 2008] Liu, B., Aguilera, M.J.B. & Roli, A., 2008. Hybrid

metaheuristics: an emerging approach to optimization, Springer

Verlag.

Page 78: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Capitulo 6.- Conclusiones y trabajos futuros

Everardo Munguía Aguilar 66 | P á g i n a

[Popov et al. 2003] Popov, B. et al., 2003. KIM – Semantic Annotation Platform. En

Dieter Fensel, K. Sycara, & J. Mylopoulos, eds. The Semantic

Web - ISWC 2003. Berlin, Heidelberg: Springer Berlin

Heidelberg, pp. 834–849.

http://www.springerlink.com/content/31l2tk95lcdv76py/

[Porter 1980] Porter, M.F., 1980. An algorithm for suffix stripping. Program:

electronic library and information systems, 14(3), pp.130–137.

[Protégé, 2011] Protégé, P., 2011. The Protégé Ontology Editor and Knowledge

Acquisition System. Protégé. http://protege.stanford.edu/

[Quick 2011] Quick, A., 2011. JTidy - JTidy. http://jtidy.sourceforge.net/

[Schütze 1998] Schütze, H., 1998. Automatic word sense discrimination. Comput.

Linguist., 24(1), pp.97–123.

[Semantic Web,

2008]

Semantic Web,, 2008. Topic ontology population. Available at:

http://semanticweb.org/wiki/Category:Topic_ontology_population

[SimMetrics 2011] SimMetrics, 2011. SimMetrics.

http://www.ohloh.net/p/simmetrics

[Studer et al. 1998] Studer, R., Benjamins, V.R. & Fensel, D., 1998. Knowledge

engineering: principles and methods. Data & knowledge

engineering, 25(1-2), pp.161–197.

[TDB, 2011] TDB, 2011a. Apache Jena - TDB. Apache Jena TDB.

http://incubator.apache.org/jena/documentation/tdb/index.html

[Vargas 2011] Vargas, 2011b. Rocío Vargas Arroyo, Modelo colaborativo para

la integración de sistemas. Tesis de doctorado en desarrollo. 2011

[Celjuska & Vargas-

Vera 2004]

Vargas-Vera, M. & Celjuska, D., 2004. Event recognition on

news stories and semi-automatic population of an ontology. En

Proceedings of the 2004 IEEE/WIC/ACM International

Conference on Web Intelligence. pp. 615–618.

[Yarowsky 1995] Yarowsky, D., 1995. Unsupervised word sense disambiguation

rivaling supervised methods. En Proceedings of the 33rd annual

meeting on Association for Computational Linguistics. pp. 189–

196

Page 79: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Page 80: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 68 | P á g i n a

Anexo 1. Herramientas utilizadas

FreeLing

Desarrollador

TALP Research Center, y Universidad Politécnica de Catalunya

Descripción

FreeLing incluye diccionarios morfológicos, estos diccionarios se incluyen algunas lenguas latinas,

freeling toma en cuenta que muchos elementos del diccionario son reconocidos gracias a un módulo de

análisis sufijo, capaz de detectar formas como pronombre enclítico verbal y diminutivo / sufijo aumentativo,

sustantivos y adjetivos. También cuenta con él en anotador probabilístico sufijo de las categorías de una

palabra, en caso de que no se encuentra en el diccionario. El Diccionario en español contiene más de 550.000

formularios correspondientes a más de 76.000 combinaciones de lemas, los diccionario se extraen de

EuroWordNet.

Características relevantes

Tokenización de texto

Separación de sentencias

Análisis morfológico

Tratamiento sufijo, re-tokenización de los pronombres clíticos

Reconocimiento de varias palabras flexibles

Contracción de la división

Predicción probabilística de categorías de palabras desconocidas.

Detección de nombrado de entidad.

Reconocimiento de fechas, números, relaciones, dinero, y las magnitudes físicas (velocidad,

peso, temperatura, densidad, etc.).

Etiquetado PoS.

Clasificación del nombrado de entidad.

Uso de WordNet para la anotación base y desambiguación.

Dependencia basada en reglas de análisis.

Actualmente los idiomas admitidos son el español, catalán, gallego, italiano, Inglés, Galés,

portugués y asturiano.

Referencia:[FreeLing s.d.]

Otros etiquetadores similares son, OpenNLP [OpenNLP s.d] y TreeTagger[Helmut Schmid s.d], que también

admiten el idioma español.

Page 81: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 69 | P á g i n a

Rendimiento

Tabla 18.- Etiquetadores.

Analizador Texto analizado

Pepe pedro y juan esta bien locos .

OpenNLP AQ NC CC SPS DD NC AQ FP

TreeTagger NC nada CC nada DM NC ADJ FS

FreeLing NCMS NCM CC VMIP DD0FS NCMS AQ0MP FP

Como se puede ver en la Tabla 18 cada etiquetador identificó cada palabra de forma parecida pero en

este caso destaco más FreeLing ya que presenta mejores resultados al reconocer nombres, los cuales resultan

muy importantes en el desarrollo del prototipo, en el sitio oficial de FreeLing proporcionan una sección donde

se encuentra la clasificación de estas estiqeuetas como el que se puede apreciar en la Tabla 19, presentan la

posición de la letra, el atributo, valor y el código que representa.

Tabla 19.- Categoría Gramatical de nombres propios.

Posición. Atributo Valor Código

1 Categoría Nombre N

2 Tipo Común C

Propio P

3 Género Masculino M

Femenino F

Común C

4 Número Singular S

Plural P

Invariable N

5-6 Clasificación semántica

Persona SP

Lugar G0

Organización O0

Otros V0

7 Grado Aumentativo A

Diminutivo D

Page 82: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 70 | P á g i n a

Jericho

Desarrollador

(Jericho s. f.): Developer Web Hosting - Open Source Software

Descripción

Jericho HTML Parser es una biblioteca de Java de código abierto distribuido bajo la Licencia Pública

Eclipse (EPL) y la GNU Lesser General Public License (LGPL) que permite el análisis y la manipulación de

un documento HTML, incluyendo etiquetas lado-servidor, tratamiento de HTML no válido y un alto nivel de

manipulación HTML, es de uso libre para aplicaciones comerciales que estén sujetas a los términos detallados

en cualquiera de los documentos de licencia, presentan la documentación completa de toda la API, además de

ser una referencia muy útil sobre los aspectos de HTML y XML en general.

Características relevantes

La presencia de un HTML mal formato no interfiere con el análisis del resto del documento, lo

que lo hace ideal para su uso en el "mundo real".

ASP, JSP, PSP, PHP y Mason son etiquetas de servidor que están explícitamente reconocidos

por el analizador. Esto significa que HTML normal se analiza correctamente, incluso si hay

etiquetas de servidor dentro del código, que es muy común.

Una nueva corriente basada en el análisis de opciones con el StreamedSource, clase que permite

el procesamiento eficiente de la memoria de archivos de gran tamaño utilizando un iterador.

Esto es esencialmente una StAX, alternativa con la capacidad de procesamiento de HTML y

XML sin necesidad de validar, así como varias otras características no disponibles en otros

programas de análisis de streaming.

En su forma estándar no es ni un evento ni programa de análisis basado en arboles, sino que

utiliza una combinación de búsqueda de texto simple, un reconocimiento eficiente de etiquetas y

la posición de etiquetas en memoria caché. El texto del documento origen se carga por primera

vez en la memoria, y sólo entonces se buscan los segmentos relevantes de los caracteres

relevantes de cada operación de búsqueda.

En comparación del analizador basado en árboles como DOM, las necesidades de recursos de

memoria puede ser mejor si sólo pequeñas secciones del documento deben ser analizados o

modificado. Los HTML mal formados pueden ser fácilmente ignorados, a diferencia de los

analizadores basados en un árboles, que debe identificar todos los nodos en el documento de

arriba hacia abajo.

A comparación de un analizador basado en eventos como el SAX, la interfaz se encuentra en un

nivel mucho más alto y más intuitivo, y una representación de árbol jerárquico del documento se

crea fácilmente si es necesario.

Las posiciones de inicio y fin en el documento de origen de todos los segmentos analizados son

accesibles, lo que permite la modificación de determinados segmentos del documento sin tener

que reconstruir el árbol del documento.

El número de fila y columna de cada posición en el documento origen son de fácil acceso.

Proporciona una interfaz sencilla pero completa para el análisis y manipulación de los controles

de un formulario HTML, incluyendo la extracción y la población de los valores iníciales, y la

conversión de sólo lectura o modos de visualización de datos. El Análisis de los controles de

formulario también permite que los datos recibidos de un “form” puedan ser almacenados y

presentados de una manera apropiada.

Tipos de etiquetas personalizadas pueden ser fácilmente definidas y registradas para el

Page 83: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 71 | P á g i n a

reconocimiento por el intérprete.

Funcionalidad integrada para extraer todo el texto de código HTML, adecuado para la

alimentación en un motor de búsqueda en el texto, tales como Apache Lucene.

Funcionalidad integrada para devolver el formato HTML en formato de texto simple.

Funcionalidad integrada para formato de código fuente HTML para identificar elementos

acuerdo a su profundidad en la jerarquía del elemento del documento.

Funcionalidad integrada para el código HTML compacto mediante la eliminación de todos los

espacios en blanco innecesarios.

Otros etiquetadores similares son: CyberNeko [Clark & Guillemot 2011] HTML Parser[HTML Parser 2006],

Parser Java, y JTidy [Quick 2011].

Referencias: [Jericho s. f., 2011]

Tabla comparativa de los diferentes Analizadores HTML

Analizar HTML: Este aspecto de considera importante porque HTML es el lenguaje que se va a tratar y del

cual se extraerá la información.

Tolerante a errores de sintaxis o de anidamiento: Este se considera importante ya que es muy común encontrar

una página HTML con errores de sintaxis o anidamiento provocando problemas al recorrer el código HTML o

saber dónde termina una etiqueta entre otros aspectos.

Extracción: Este punto indica que proporciona herramientas adicionales para la extracción de información

además del análisis HTML.

Corrección: Este punto indica que algunos analizadores proporcionan la utilidad para arreglar errores de

sintaxis permitiendo un buen análisis del código HTML.

Page 84: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 72 | P á g i n a

Función Jericho JTedy Parser

Java CyberNeko HTMLParser

Analizar XML ● ● ● ●

Analizar las entidades sin DTD ● ● ●

Automáticamente validar XML

Analizar HTML ● ● ● ● ●

Tolerante a errores de sintaxis o de anidamiento ● ●

Proporcionar el inicio y fin las posiciones de caracteres de cada evento ●

Proporcionar texto original de cada evento ●

Manejar eventos de servidor de etiquetas ●

Manejar eventos de declaración de XML ●

Manejar eventos de comentario ●

Manejar CDATA sección de eventos ●

Manejar tipo de documento de declaración de eventos ●

Permitir agrupamiento de texto sin formato ●

Permitir la especificación de tamaño máximo de búfer ●

Extracción ● ● ●

Transformación Ordena ●

Corrección ● ● Tabla 20.- Tabla comparativa de Analizadores HTML.

Page 85: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 73 | P á g i n a

TDB

Base de datos especializada en almacenamiento de tripletas (TDB)

TDB [TDB, 2011] forma parte de Jena el cual es un Framework semántico para Java inicialmente

desarrollado por HP Labs y una comunidad de software libre, Jena soporta RDF, RDFS, OWL y SPARQL,

además de notaciones como RDF/XML, N3 y Ntriples y Cuenta con cinco componentes básicos: Model,

OWL-API, RDF-API, interfaz SPARQL y la API y motores de inferencia.

El Framework de Jena incluye tres tipos de almacenamiento para la información del modelo:

En memoria,

En DB relacional (SDB) y

En BD especializada en almacenamiento de tripletas (TDB)

También su almacenamiento en memoria es útil para probar pequeños ejemplos, en tanto que SDB y

TDB son implementaciones utilizadas para el almacenamiento persistente, con otras palabras su

implementación fue hecha para que la información del sistema pueda persistir “sobrevivir” durante el tiempo

que sea requerida.

TDB está basado en tripletas con el propósito de almacenar y recuperar metadatos RDF a través de

un lenguaje de consulta, cada almacén de tripletas está optimizado para el almacenamiento y recuperación de

tripletas con la estructura sujeto-predicado-objeto. Existen distintas formas de almacenamiento de tripletas,

algunos han sido construidos como motores de base de datos desde inicio en tanto que otros han sido

construidos sobre motores de bases de datos relacionales.

TDB permite almacenamiento de grandes volúmenes de datos RDF y no requiere de las bases de

datos tradicionales ya que cuenta con un motor puramente desarrollado en java.

Ventajas y desventajas de TDB

TDB es un motor java desarrollado por Jena Project y optimizado para el almacenamiento y consulta RDF.

Ventajas

TDB es un grafo no-SQL persistente.

Es un sistema puramente java (independiente de la plataforma y de manejadores de BD

relacionales).

Diseñado para hardware de 64 bits (almacena e indexa la información de las tripletas).

Tiene un alto desempeño para la carga y consulta ya que no tiene la sobrecarga de SQL y JDBC

(mejor desempeño y escala que SDB).

Desventajas

Es no-transaccional, de tal manera que es ideal como un almacén RDF de alto desempeño, pero

para ambientes distribuidos es necesario utilizarlo junto con un administrador de transacciones.

Page 86: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 74 | P á g i n a

Comparativas

Las pruebas se tomaron de [Bizer & Schultz 2009] donde presenta una comparativa del desempeño

de almacenes RDF nativos contra el desempeño de traductores SPARQL-tú-SQL en distintas arquitecturas, en

otras palabras el desempeño de Jena TDB y Jena SDB, en Bizer & Schultz presentan 3 pruebas distintas que

consisten en:

Tiempo de carga.- Se refiere al tiempo acumulado en el que se carga un conjunto de datos de

la fuente “ontología” al almacén de datos”TDB”. Incluye el tiempo empleado en construir los

índices de las estructuras internas y generar las estadísticas sobre el conjunto de datos para la

optimización de las consultas.

Consultas por segundo.- Evalúa el número de consultas de un tipo específico que fueron

respondidas dentro de un periodo de tiempo de 1 segundo.

Mezcla de consultas por hora.- Evalúa el número de mezclas de consultas que son respondidas

en un periodo de 1 hora.

Los resultados obtenidos y los resultados se inclinan hacia TDB mostrándola como la mejor opción

SimMetrics

SimMetrics [SimMetrics 2011] es una API de java para medir la similitud o distancia entre 2

cadenas, es de uso libre y fue desarrollado por Sam Chapman. SimMetrics está compuesto por los siguientes

algoritmos de similitud:

Levenshtein

CosineSimilarity

EuclideanDistance

MongeElkan

Cada uno de estos algoritmos permite comprar 2 cadenas para saber que tanta similitud existe entre

ellas, usando un umbral de 0 a 1 para determinar esa similitud. En RExPO es usando el algoritmo de

MongeElkan, por su rapidez y para mejorar la calidad y la repetición de datos en la ontología.

Encriptación.

Para el algoritmo de encriptación de texto, no se uso uno en particular, sólo usaron diversas técnicas

para lograr un encriptado, realizando una serie de multiplicaciones y variaciones de palabras.

Page 87: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 75 | P á g i n a

Autómatas

Teléfonos

El autómata de teléfonos fue implementado para reconocer números de 12, 10 y 7 dígitos, que

contenga o no paréntesis en la lada, con guiones o sin ellos, con espacios o sin ellos, como se puede apreciar

en la Figura 24.

Figura 24.- Autómata de teléfono

Twitter

El autómata de twitter fue implementado para identificar una cuenta de twitter ya sea por el URL o

por el “@” que contiene toda cuenta de twitter. A continuación en la Figura 25, se muestra el autómata.

Figura 25.-Autómata de Twitter

Page 88: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 76 | P á g i n a

Correos electrónicos

El autómata de correos electrónicos reconoce cualquier correo electrónico encontrado en el texto. A

continuación en la Figura 26 se muestra el autómata.

Figura 26.- Autómata de correos electrónicos

Page 89: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 77 | P á g i n a

Anexo 2.- Bolsa de palabras y marcadores lingüísticos

Bolsa de palabras

Palabra Sinónimos

persona

empleado

directorio

Mapa del sitio

directiva

coordinador

personal

profesores Docencia, docentes, Investigadores, Investigador

Alumnos Estudiantes, Investigadores, Investigador

egresados

quienes somos

administración

servicios

dirección

coordinación

centro

laboratorio

posgrado Posgrados, maestrías

investigación investigar

doctorados

electrónica

computación

mecatrónica

ingeniería

mecánica

desarrollo desarrollar

ciencia

tecnología ciencia y tecnología

innovación

tecnológico

científico

Page 90: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 78 | P á g i n a

universidad

laboratorio

diplomados

licenciatura

Educación

Escuela

Computo

Ciencias Computacionales

Staff

MARCADORES LUIGUISTICOS

Redes Sociales

Orkut linkedin flickr tuenti

meneame tumblr facebook Blogspot

delicious myspace youtube twitter

Titulo de una persona

DR. PHD. DRA MTRO MTRA LIC M.C ING L.I Q.F.B

M.V.Z L.S.C.A L.R.I. ARQ. L.C.C I.S.C M.T.R.I.

Documentos

pdf zip rar jpg png cab afa deb 7z bzip2

tif gif bmp mng jpeg pic svg ico

Departamento

Departamento Dep Depa Depto división

ramo sección

Teléfonos

teléfono tel tels teléfonos fax

Page 91: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 79 | P á g i n a

Publicación

ISBN publicación Publicaciones ISSN No Vol pp "p.p.

Dirección

dirección Dir. domicilio colonia col. CP. postal # No Av.

avenida interior delegación Fraccionamiento manzana lote ESQ. Zona BLVD.

Locales local Calle Callejón CD Bulevar

Page 92: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 80 | P á g i n a

Anexo 3.- Catálogo de páginas Web

Institución Sitio Web CICESE http://www.cicese.edu.mx/index.php

Instituto Politécnico Nacional http://www.cic.ipn.mx/

Centro de Investigación y Desarrollo de la

Educación.

http://www.cide.cl/index.php

Conacyt http://www.conacyt.mx/Paginas/default.aspx

Centro de Investigaciones y Estudios Superiores en

Antropología Social

http://www.ciesas.edu.mx/

Cinvestav http://www.cinvestav.mx/

Instituto Politécnico Nacional http://www.ipn.mx/

Tecnológico de Monterrey http://www.itesm.edu

FIDETEL http://www.fidetel.gob.ve/

Universidad Autónoma de Baja California http://iide.ens.uabc.mx/blogs/iide/

Universidad Autónoma de San Luis Potosí http://www.uaslp.mx

Universidad Cuauhtémoc http://www.cuauhtemoc.edu.mx/

Universidad Pedagógica Nacional http://www.upn.mx/

Universidad Mesoamericana http://www.universidadmesoamericana.edu.mx/

Universidad Tangamanga http://www.universidadtangamanga.edu.mx/

Universidad de Valle de México http://www.uvmnet.edu/

Universidad La Salle http://www.ulsa.edu.mx/

Universidad Iberoamericana http://www.uia.mx/

Universidad Potosina http://www.campusup.edu.mx/univpotosina/

Universidad Autónoma de Chapingo http://www.chapingo.mx/

Centro de Investigación y Docencia en Humanidades

del Estado de Morelos

http://www.cidhem.edu.mx

Universidad Noroeste http://www.univer.edu.mx/

Universidad Autónoma de Guerrero http://www.uagro.mx/

Universidad Tecnológica de la Región Norte de

Guerrero

http://www.utrng.edu.mx/

Centro de ingeniería y Desarrollo Industrial http://cidesi.com/joomla/index.php

Centro Interdisciplinario de Investigación y

Docencia en Educación Técnica

http://www.ciidet.edu.mx/web/index.php

Cablemas http://www.cablemas.com.mx/

Nextel http://www.nextel.com.mx/index.htm

Instituto Tecnológico de Querétaro http://www.itq.edu.mx/

Page 93: Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de Contenido Web

Anexos

Everardo Munguía Aguilar 81 | P á g i n a

Universidad Anáhuac http://www.anahuacqro.edu.mx/

Universidad del Golfo de México Norte http://www.ugm.edu.mx/

Universidad TEC Milenio http://www.tecmilenio.edu.mx/home.php

Benemérita Universidad Autónoma de Puebla http://www.buap.mx/

Centro Internacional de Prospectiva y Altos Estudios http://www.cipae.edu.mx/

Centro Universitario Interamericano http://www.interamericano.edu.mx/mid/

Centro Avanzado de Comunicación Eulalio Ferrer http://www.cadec.edu.mx/cadec/home.html

Universidad Itaca http://www.i.edu.mx/educacion.asp

Centro de Estudios en Ciencias de la Comunicación http://www.cecc.edu.mx/portal/