You are on page 1of 111

UNIVERSIDAD MAYOR DE SAN ANDRÉS

FACULTAD DE CIENCIAS PURAS Y NATURALES


CARRERA DE INFORMÁTICA

TESIS DE GRADO

“BUSCADOR INTELIGENTE BASADO EN EL


COMPORTAMIENTO SEMÁNTICO Y LENGUAJE
NATURAL EN LA WEB”

PARA OPTAR AL TÍTULO DE LICENCIATURA EN INFORMÁTICA


MENCIÓN: INGENIERÍA DE SISTEMAS INFORMÁTICOS

POSTULANTE: JAVIER ALEJANDRO CHÁVEZ ARCE


TUTOR METODOLÓGICO: Ph.D. YOHONI CUENCA SARZURI
ASESOR: M.Sc. CARLOS MULLISACA CHOQUE

LA PAZ – BOLIVIA
2016
UNIVERSIDAD MAYOR DE SAN ANDRÉS
FACULTAD DE CIENCIAS PURAS Y NATURALES
CARRERA DE INFORMÁTICA

LA CARRERA DE INFORMÁTICA DE LA FACULTAD DE CIENCIAS PURAS Y


NATURALES PERTENECIENTE A LA UNIVERSIDAD MAYOR DE SAN ANDRÉS
AUTORIZA EL USO DE LA INFORMACIÓN CONTENIDA EN ESTE
DOCUMENTO SI LOS PROPÓSITOS SON ESTRICTAMENTE ACADÉMICOS.

LICENCIA DE USO

El usuario está autorizado a:

a) visualizar el documento mediante el uso de un ordenador o dispositivo móvil.


b) copiar, almacenar o imprimir si ha de ser de uso exclusivamente personal y privado.
c) copiar textualmente parte(s) de su contenido mencionando la fuente y/o haciendo la
referencia correspondiente respetando normas de redacción e investigación.

El usuario no puede publicar, distribuir o realizar emisión o exhibición alguna de este


material, sin la autorización correspondiente.

TODOS LOS DERECHOS RESERVADOS. EL USO NO AUTORIZADO DE LOS


CONTENIDOS PUBLICADOS EN ESTE SITIO DERIVARA EN EL INICIO DE
ACCIONES LEGALES CONTEMPLADOS EN LA LEY DE DERECHOS DE AUTOR.
AGRADECIMIENTOS

A Dios.

Por tantos momentos acompañándome paso a paso, hasta terminar esta etapa de mi vida, por
darme la salud y protección.

A la UMSA.

Por abrirme las puertas hacia el conocimiento, a mi querida Carrera Informática que me brindo
el estudio, la investigación, entre otros.

A mi Tutor Metodológico.

Ph.D. Yohoni Cuenca Sarzuri, por guiarme a elaborar la tesis de grado, con sus consejos y
experiencia.

A mi Asesor.

M.Sc. Carlos Mullisaca Choque, por la gran colaboración en la estructura de la tesis de grado,
ideas, consejos oportunos.

A mi Querido Abuelo Luis Santiago.✞

Por haberme criado con todo su amor, dándome en cada instante de mi vida valores para ser
un hombre de bien, protegiéndome en mis enfermedades y dándome la mejor educación.

A mi Amada Abuela Margarita.

Por haberme apoyado en todo momento, por sus consejos, sus valores, por la
motivación constante que me ha permitido ser una persona de bien, pero más que nada, por
todo su amor de madre.

A mi Valeroso Padre Ángel.

Por los ejemplos de perseverancia y constancia que lo caracterizan y que me ha


infundado siempre, por el valor mostrado para salir adelante y por su amor.

A mis Tíos

Por el apoyo incondicional a cada momento, directa o indirectamente en la elaboración de la


tesis de grado para Juan Luis, Fernando, María, Isabel, Teresa, Walter, Patricia, Martin,
Erminia✞, Mauricio y Santiaguito.

Gracias a ustedes
RESUMEN

En la presente tesis, se desarrolló el tratamiento del volumen de información en


Internet y en las Bibliotecas Digitales actuales, que hace difícil la recuperación de la
información por la gran cantidad de información que existe actualmente.

La información es consultada por el usuario, luego es recuperada mediante un


buscador, la cual no llega a satisfacer la consulta.

La Web actual está formada principalmente por un conjunto de documentos cuya


información semántica es fácilmente comprendida por los usuarios y no así por los
ordenadores que procesan la información automáticamente.

Los Investigadores ponen en marcha diseños y modelos para transformar la red


desde un espacio de información a un espacio de conocimientos, incorporando metadatos
que contienen información adicional que permite hacer deducciones y posibilitando a los
buscadores un tratamiento inteligente de la información.

La idea es que los conjuntos de datos puedan ser utilizados y comprendidos por los
ordenadores sin la necesidad ni la supervisión humana.

Con el objetivo de optimizar las técnicas de búsqueda, se presenta un enfoque


inteligente. El estudio analiza la mención a las tecnologías de la semántica, ontologías y
comprueba que la aplicación de ambos factores, facilita la accesibilidad al conocimiento
científico-técnico, a la vez que simplifica las búsquedas y mejora el proceso de
recuperación de la información.

El trabajo ayuda a comprender las principales tecnologías dedicadas a procesar el


significado de los datos de la Web, para que puedan ser interpretados por sistemas de
computación. Asimismo, se presentará un desarrollo basado en dichas tecnologías, acorde
a la investigación llevada a cabo.

PALABRAS CLAVES: Lenguaje Natural, Web Semántica, Ontologías, Protégé,


Inteligencia Artificial, Indexación Booleana, Inferencia Bayesiana.
ABSTRACT

In this thesis, the treatment volume of information on the Internet and in the current
Digital Libraries, which makes it difficult to retrieve information from the wealth of
information that exists today, was developed.

The information is accessed by the user; it is then retrieved by a search engine,


which does not satisfy the query.

The current Web is mainly formed by a set of documents which semantic


information is easily understood by users and not by computers that automatically process
information.

Researchers are launched designs and models to transform the network from an
information space into a space of knowledge, incorporating metadata containing additional
information that allows deductions and allowing searchers intelligent information processing.

The idea is that the data sets can be used and understood by computers without
the need or human supervision.

With the aim of optimizing search techniques, an intelligent approach is presented.


The study analyzes the technologies mention semantics, ontologies and verifies that the
application of both factors facilitates access to the scientific and technical knowledge while
simplifying searches and improves the process of information retrieval.

The work helps to understand the main technologies dedicated to process the
meaning of the data from the Web, so they can be interpreted by computer systems. Also, a
development based on these technologies will be presented, according to the research
conducted.

KEY WORDS: Natural Language, Semantic Web, Ontologies, Protégé, Artificial


Intelligence, Indexation Boolean, Bayesian Inference.
ÍNDICE

CAPÍTULO I MARCO REFERENCIAL ................................................................................................. 1


1.1 INTRODUCCIÓN ............................................................................................................................ 1
1.2 ANTECEDENTES ........................................................................................................................... 2
1.2.1 HAKIA ....................................................................................................................................... 3
1.2.1.1 ONTOSEM Y ONTO PARSER ......................................................................................... 4
1.2.1.2 QDEX, QUERY INDEXING TECHIQUE ........................................................................... 4
1.2.1.3 SEMANTICRANK .............................................................................................................. 5
1.2.2 WOLFRAM ALPHA .................................................................................................................. 6
1.2.3 LUCENE – SIREN .................................................................................................................... 7
1.3 PROBLEMA .................................................................................................................................... 8
1.3.1 PLANTEAMIENTO DEL PROBLEMA ...................................................................................... 8
1.3.2 FORMULACIÓN DEL PROBLEMA .......................................................................................... 8
1.4 OBJETIVOS .................................................................................................................................... 9
1.4.1 OBJETIVO GENERAL ............................................................................................................. 9
1.4.2 OBJETIVOS ESPECÍFICOS .................................................................................................... 9
1.5 HIPÓTESIS ..................................................................................................................................... 9
1.5.1 VARIABLES OPERACIONALES ............................................................................................. 9
1.5.1.1 VARIABLES INDEPENDIENTES ...................................................................................... 9
1.5.1.2 VARIABLE DEPENDIENTE ............................................................................................ 10
1.6 JUSTIFICACIÓN ........................................................................................................................... 10
1.6.1 JUSTIFICACIÓN SOCIAL ...................................................................................................... 10
1.6.2 JUSTIFICACIÓN ECONÓMICA ............................................................................................. 10
1.6.3 JUSTIFICACIÓN TECNOLÓGICA ......................................................................................... 10
1.6.4 JUSTIFICACIÓN CIENTÍFICA ............................................................................................... 11
1.7 ALCANCES Y LÍMITES................................................................................................................. 11
1.7.1 ALCANCES ............................................................................................................................ 11
1.7.2 LÍMITES ................................................................................................................................. 11
1.8 METODOLOGÍAS ......................................................................................................................... 12
1.8.1 METODOLOGÍA CIENTÍFICA ............................................................................................... 12
1.8.2 METODOLOGÍA PARA EL DESARROLLO EN CASCADA .................................................. 13

CAPÍTULO II MARCO TEÓRICO ....................................................................................................... 15


2.1 LA WORLD WIDE WEB ................................................................................................................ 15
2.2 DATOS EN LA WEB Y SU SIGNIFICADO ................................................................................... 18
2.3 LENGUAJE ................................................................................................................................... 18
2.3.1 EL LENGUAJE NATURAL ..................................................................................................... 19
2.3.2 HISTORIA DEL PLN .............................................................................................................. 19
2.3.3 NIVELES DEL PLN ................................................................................................................ 20
2.3.3.1 ANÁLISIS MORFOLÓGICO ............................................................................................ 21
2.3.3.2 ANÁLISIS SINTÁCTICO ................................................................................................. 22
2.3.3.3 ANÁLISIS SEMÁNTICO .................................................................................................. 22
2.3.3.4 ANÁLISIS PRAGMÁTICO ............................................................................................... 23
2.3.4 PROBLEMAS Y LIMITACIONES ........................................................................................... 23
2.4 EL PLN Y LA WEB ........................................................................................................................ 25
2.5 WEB SCRAPING .......................................................................................................................... 26
2.5.1 DAPPER ................................................................................................................................. 27
2.5.2 YAHOO! PIPES ...................................................................................................................... 28
2.6 APROXIMACIÓN TOP-DOWN ..................................................................................................... 29
2.7 APROXIMACIÓN: BOTTOM-UP ................................................................................................... 31
2.8 METADATOS ................................................................................................................................ 33
2.9 WEB SEMÁNTICA ........................................................................................................................ 34
2.9.1 CAPAS DE LA WEB SEMÁNTICA ........................................................................................ 36
2.9.2 MAPA CONCEPTUAL DE LA WEB SEMÁNTICA ................................................................. 37
2.9.3 LA SEMÁNTICA EN LA WEB 3.0 .......................................................................................... 38
2.10 ONTOLOGIAS ............................................................................................................................. 40
2.10.1 MOTOR SEMÁNTICO.......................................................................................................... 41
2.10.1.1 ORIENTADO AL USUARIO ......................................................................................... 41
2.10.1.2 ORIENTADOS AL SERVICIO WEB ............................................................................. 41
2.11 METODOLOGÍA CIENTÍFICA .................................................................................................... 42
2.11.1 INTRODUCCIÓN A LA METODOLOGÍA CIENTÍFICA ....................................................... 42
2.11.2 FUNDAMENTOS DEL MÉTODO CIENTÍFICO ................................................................... 43
2.11.2.1 RACIONAL ................................................................................................................... 43
2.11.2.2 ANALÍTICO ................................................................................................................... 43
2.11.2.3 CLARO Y PRECISO ..................................................................................................... 43
2.11.2.4 VERIFICABLE .............................................................................................................. 44
2.11.2.5 EXPLICATIVO .............................................................................................................. 44
2.11.2.6 OBJETIVO .................................................................................................................... 44
2.11.3 ESTRUCTURA DEL MÉTODO CIENTÍFICO ...................................................................... 44
2.11.3.1 OBSERVACIÓN O EXPERIMENTACIÓN ................................................................... 44
2.11.3.2 ORGANIZACIÓN .......................................................................................................... 45
2.11.3.3 HIPÓTESIS Y TEORÍA ................................................................................................. 45
2.11.3.4 VERIFICACIÓN Y PREDICCIÓN ................................................................................. 45
2.12 TECNOLOGÍAS DE SOFTWARE ............................................................................................... 45
2.12.1 INGENIERÍA DE SOFTWARE ........................................................................................... 47
2.12.1.1 CARACTERÍSTICAS DE LOS REQUERIMIENTOS ................................................. 47
2.12.2 INGENIERÍA DE USABILIDAD ......................................................................................... 49
2.12.2.1 IMPORTANCIA DE USABILIDAD ............................................................................... 50

CAPÍTULO III MARCO APLICATIVO ................................................................................................ 51


3.1 INTRODUCCIÓN .......................................................................................................................... 51
3.2 REQUERIMIENTOS DEL SISTEMA............................................................................................. 53
3.2.1 CONEXIÓN A INTERNET ...................................................................................................... 53
3.2.2 SERVIDOR DE PRUEBA ....................................................................................................... 53
3.2.3 ESTACIÓN DE TRABAJO ..................................................................................................... 53
3.3 REQUERIMIENTOS DEL SOFTWARE ........................................................................................ 54
3.4 ANÁLISIS ...................................................................................................................................... 56
3.4.1 RECUPERACIÓN DE LA INFORMACIÓN ............................................................................ 56
3.4.2 BÚSQUEDA EXACTA ............................................................................................................ 57
3.4.2.1 MODELO DE INDEXACIÓN BOOLEANA ...................................................................... 57
3.4.3 BÚSQUEDA APROXIMADA .................................................................................................. 58
3.4.3.1 MODELO DE BÚSQUEDA PROBABILÍSTICA ............................................................... 58
3.4.3.2 MODELO DE INFERENCIA BAYESIANA ...................................................................... 59
3.4.3.3 MODELO VECTORIAL ................................................................................................... 60
3.4.4 ONTOLOGÍAS ........................................................................................................................ 61
3.4.4.1 ACCIONES ONTOLÓGICAS .......................................................................................... 61
3.5 DISEÑO DEL PROGRAMA .......................................................................................................... 62
3.5.1 DISEÑO ONTOLÓGICO ........................................................................................................ 62
3.5.2 HERRAMIENTA PARA LA CONSTRUCCIÓN ONTOLÓGICA ............................................. 62
3.5.3 ARQUITECTURA PROTÉGÉ ................................................................................................ 63
3.5.4 MODELO Y ARQUITECTURA DEL PROTOTIPO ................................................................ 64
3.6 CODIFICACIÓN ............................................................................................................................ 66
3.6.1 CONSTRUCCIÓN DE ONTOLOGÍAS ................................................................................... 66
3.6.1.1 CONSTRUCCIÓN Y EDICIÓN ONTOLÓGICA CON PROTÉGÉ................................... 66
3.6.2 CONSTRUCCIÓN DE BD EN MYSQL .................................................................................. 71
3.7 PRUEBA ........................................................................................................................................ 72
3.7.1 BÚSQUEDA EXACTA ............................................................................................................ 73
3.7.2 BÚSQUEDA POR TIPO DE ARCHIVO ................................................................................. 73
3.7.3 BÚSQUEDAS CON MAYÚSCULAS O MINÚSCULAS ......................................................... 74
3.7.4 BÚSQUEDAS CON O SIN ORTOGRAFÍA ............................................................................ 74
3.8 IMPLANTACIÓN ........................................................................................................................... 75
3.8.1 INTERFACE DE USUARIO ................................................................................................... 75

CAPÍTULO IV PRUEBA DE HIPÓTESIS ........................................................................................... 78


4.1 INTRODUCCIÓN .......................................................................................................................... 78
4.2 PRUEBA DE DEMOSTRACIÓN ................................................................................................... 79
4.2.1 SOLUCIÓN ............................................................................................................................. 80
4.2.2 CONCLUSIÓN ....................................................................................................................... 84

CAPÍTULO V CONCLUSIONES Y RECOMENDACIONES .............................................................. 85


5.1 CONCLUSIONES .......................................................................................................................... 85
5.2 RECOMENDACIONES ................................................................................................................. 86

BIBLIOGRAFÍA .................................................................................................................................. 88

GLOSARIO DE TÉRMINOS ............................................................................................................... 94

ANEXOS ............................................................................................................................................. 96
ANEXO A ÁRBOL DE PROBLEMAS.................................................................................................. 97
ANEXO B ÁRBOL DE OBJETIVOS .................................................................................................... 98
ANEXO C MATRIZ DE PLANIFICACIÓN (MARCO LÓGICO) ........................................................... 99

DOCUMENTACIÓN .......................................................................................................................... 100


ÍNDICE DE FIGURAS

Figura 1.1 Funcionamiento de QDEX en las Búsquedas de Hakia. ..................................................... 5


Figura 1.2 Estructura de Hakia.............................................................................................................. 6
Figura 1.3 Esquema de la Metodología en Cascada. ......................................................................... 14
Figura 2.1 Niveles de Análisis del Procesamiento del Lenguaje Natural. ........................................... 21
Figura 2.2 Distintas Aproximaciones para Estructurar la Información de la Web. .............................. 31
Figura 2.3 Capas de la Web Semántica. ............................................................................................. 37
Figura 2.4 Mapa Conceptual de la Web Semántica. .......................................................................... 38
Figura 2 5 Evolución de la Web e Incorporación de la Web Semántica en la Web 3.0. .................... 39
Figura 3.1 Etapas de la Metodología en Cascada. .......................................................................... 51
Figura 3.2 Red Bayesiana para la Recuperación de la Información................................................... 60
Figura 3.3 Fases de las Ontologías .................................................................................................... 61
Figura 3.4 Arquitectura de Protégé ................................................................................................... 64
Figura 3.5 Arquitectura del Prototipo .................................................................................................. 65
Figura 3.6 Nuevo Proyecto para Desarrollar Ontologías en Protégé 5.0. .......................................... 67
Figura 3.7 Creación de la Clases Principal. ........................................................................................ 68
Figura 3.8 Construcción de la Clase y Subclases Ontológicas. ......................................................... 68
Figura 3.9 Agregar Instancias. ............................................................................................................ 69
Figura 3.10 Estructura Ontológica Concluida. .................................................................................... 69
Figura 3.11 Formato de la Ontología. ................................................................................................. 70
Figura 3.12 Diagrama Modelo Entidad Relación. ............................................................................... 72
Figura 3.13 Resultados de Búsqueda Exacta. .................................................................................... 73
Figura 3.14 Resultados por Tipo de Archivo. ...................................................................................... 73
Figura 3.15 Resultado de Mayúsculas y Minúsculas. ......................................................................... 74
Figura 3.16 Resultados sin Ortografía. ............................................................................................... 74
Figura 3.17 Página Inicio del Buscador Inteligente.......................................................................... 75
Figura 3.18 Página para la Búsqueda de Información. ................................................................... 76
Figura 3.19 Resultados de la Búsqueda de Información................................................................. 77
Figura 4.1 Hipótesis por Demostrar. ................................................................................................. 78
Figura 4.2 Regiones de Aceptación. ................................................................................................... 84

ÍNDICE DE TABLAS

Tabla 3.1 Herramientas de Desarrollo ................................................................................................ 54


Tabla 3.2 Matriz de Términos - Documentos ...................................................................................... 58
Tabla 3.3 Matriz de Búsqueda Probabilística...................................................................................... 59
Tabla 3.4 Matriz de Frecuencia de Términos...................................................................................... 60
Tabla 4.1 Resultados Obtenidos. ........................................................................................................ 79
Tabla 4.2 Resultados Totales de la Muestra....................................................................................... 81
Tabla 4.3 Frecuencia Observada FOi. ................................................................................................ 82
Tabla 4.4 Frecuencia Esperada FEi. ................................................................................................... 82
2
Tabla 4.5 Distribución Chi Cuadrado X .............................................................................................. 83
CAPÍTULO I

MARCO REFERENCIAL

1.1 INTRODUCCIÓN

En nuestra vida diaria, es necesario realizar búsquedas electrónicas mediante la


Web, entre los buscadores más utilizados se halla el buscador Google, Baidu, Bing, Yahoo,
Yandex entre otros.

La presente tesis, demanda que se realice un buscador inteligente o buscador de


información, donde la búsqueda sea optimizada y concreta, de acuerdo a las necesidades
de los usuarios, puesto que en la actualidad los buscadores realizan búsquedas de la
información que derivan a contenidos diferentes o no deseados por los usuarios, además al
emitir una búsqueda de información pierden demasiado tiempo para encontrar información
adecuada a su requerimiento.

La Web está formada por un conjunto de documentos, cuya información semántica


es comprendida fácilmente por los usuarios y no así por los ordenadores, que llegan a
procesar automáticamente esta información.

Además busca mejorar y optimizar los procesos de la búsqueda de la información,


con la finalidad de encontrar resultados más relevantes en relación a la demanda del
usuario. Debido a la evolución y el gran incremento de contenidos presentes en internet,
es necesario tener métodos eficientes de recuperación de información.

La recuperación de la información, consiste, en que de toda una colección de


información, presente en internet, debe llegar a satisfacer de la mejor manera a los
usuarios.

Para obtener resultados óptimos, es necesario basarse en las propiedades de la


semántica, el estudio del significado de las palabras, el lenguaje natural y agentes
inteligentes de comparación de términos, entre otros.

1
Se llegara a la comprensión y al estudio de las tecnologías adecuadas, para que
puedan procesar la búsqueda de la información en la Web, con el propósito de que se
pueda interpretar y mejorar el lenguaje humano hacia un ordenador, además en la
investigación, llevada a cabo, se presentara un desarrollo basado en propiedades de la
semántica y la mención del lenguaje natural.

1.2 ANTECEDENTES

Utilizando a la Web como marco de trabajo los buscadores de cuarta generación o


semánticos tienen como objetivo entender la búsqueda de los usuarios y ofrecer resultados
concretos. Ya no se basan en palabras claves ya que esto se presta a la ambigüedad, si no
que tratan de entender los conceptos en la consulta así como también su contexto. Las
ontologías forman parte fundamental de los mecanismos de un buscador semántico ya que
son las encargadas de definir formalmente los conceptos de un dominio en particular con la
suficiente riqueza expresiva para que los usuarios puedan especificar sus consultas con
mayor detalle, esto permitirá al buscador presentar los resultados más relevantes.

Técnicamente se define un buscador semántico como: “una aplicación que


comprende las búsquedas de los usuarios y los textos de los documentos de la Web
mediante el uso de algoritmos que simulan comprensión o entendimiento” (Abián, El Futuro
de la Web, 2005).

Este entendimiento y comprensión permitirá al usuario obtener información


relacionada gracias al tratamiento automático de la información carente en la Web actual.

A la aparición de la utilidad en los buscadores semánticos, aparecen nuevos


problemas relacionados, como las palabras polisémicas; es cuando una palabra tiene
diferentes significados (Moreno, 2015).

Para ilustrar este problema se hará uso de un ejemplo, en el cual se tiene una
ontología que describe las señales de radio emitidas por medios informáticos y por
insectos, el buscador que esté trabajando con esta ontología deberá contar con los
mecanismos necesarios que le ayuden a distinguir cuando la palabra antena hace
referencia a un insecto o al aparato de captar señales electromagnéticas (Suárez, 2010).

2
Los buscadores semánticos ofrecen muchos servicios; sin embargo, hasta ahora
no existe la estructura ni la suficiente anotación semántica para tal efecto, algunos de los
buscadores semánticos que existen en el mercado utilizan artificios para simular dichas
anotaciones; por otro lado, algunos de los buscadores semánticos del mercado no son
orientados a usuarios, existen una gran cantidad de buscadores que realizan consultas a
una ontología, este hecho no se refiere precisamente a que puedan ser usados por
cualquier usuario, más bien son considerados para usuarios con conocimientos avanzados
de anotación semántica. Según Hernández (2009) se divide a los buscadores semánticos
en dos categorías:

• Buscadores Semánticos no orientados a usuarios: Estos hacen


referencia a buscadores que realizan sus consultas en una ontología, por
ejemplo: Un buscador de drivers para un computador. Esta clase de
buscadores es recomendable para usuarios con conocimientos avanzados
de notación semántica. Algunos nombres de buscadores ontológicos se
muestran a continuación: NaturalFinder, Buscador Experimental BOPA,
Lexxe, WebBrain, Blinky.
• Buscadores Semánticos orientados a usuarios: en cambio estos
buscadores además de utilizar herramientas de la WS manejan
Procesamiento de Lenguaje Natural con lo cual los usuarios plantean su
consulta como si estuvieran planteándosela a otra persona, dentro de esta
categoría destacan: Hakia, Wolfram Alpha, Bing.

A continuación se presenta el funcionamiento de varios buscadores semánticos


orientados al usuario.

1.2.1 HAKIA

Buscador creado en el 2004, es uno de los más representativos en el campo


semántico, a pesar que se encuentra en fase beta, los resultados obtenidos son altamente
relevantes (Klein, 2009).

Las principales características que se puede mencionar son; toda la información


en Hakia proviene de sitios creíbles como: Medical Library Association, Biblioteca Nacional
de Medicina de los Estados Unidos y otros más. Otra característica importante es que no

3
hace uso de artificios estadísticos para calcular la relevancia, “El significado no emerge de
la estadística, emerge del conocimiento Asociativo”; es decir, que el poder de este
buscador está en entender la consulta y recuperar aquella información que satisfaga dicha
consulta. Sobre su funcionamiento, hace un estudio pormenorizado sobre Hakia, señala
que para el funcionamiento de este buscador se hace uso de tres tecnologías cuya
explicación se detalla enseguida (Rodríguez y Zayas, 2011).

1.2.1.1 ONTOSEM Y ONTO PARSER

Ontosem es el encargado de analizar los textos en lenguaje natural, para lo cual


utiliza una ontología que es independiente del lenguaje y que abarca miles de conceptos
debidamente relacionados. El diccionario que posee esta ontología posee más de 100.000
sentidos de las palabras, cada palabra se encuentra categorizada según los significados
que puede tener. Además se contemplan nombres propios y conceptos de muchas áreas
de conocimiento del saber humano (Abián, 2009).

La representación de cada texto a su respectiva representación semántica es


llevado a cabo por OntoParser que es un conversor ontológico, cada vez que se introduce
una consulta en lenguaje natural OntoSem se encarga de estructurar una representación
donde se pueden distinguir conceptos, las diferentes relaciones entre ellos, además de los
sentidos de cada palabra. Ontosem permite que Hakia pueda realizar inferencias e
inclusive realizar búsquedas relacionadas con el tema en cuestión. Si la Web estuviera
implementada Hakia dejaría de utilizar OntoParser para establecer el significado exacto de
las palabras en una oración (Abián, 2009).

1.2.1.2 QDEX, QUERY INDEXING TECHIQUE

Para hacer una analogía con los buscadores actuales, QDEX vendría siendo el
crawler con la diferencia de que por cada página que va revisando extrae las sentencias
más importantes y genera preguntas a partir de esas sentencias, es así que si se pregunta
a Hakia ¿Quién es Obama? QDEX ya ha generado y por ende se ha respondido esa
pregunta previamente, y también todas aquellas preguntas relacionadas. QDEX utiliza a
Ontosem para eliminar aquellas sentencias que carecen de sentido y hacer
desambiguaciones de palabras (Abián, 2009).

4
En la Figura 1.1 se muestra un ejemplo en el cual se quiere dar respuesta a la
consulta ¿Dónde nació Max Planck?, como se muestra en la figura, QDEX ya ha generado
previamente preguntas relacionadas y tiene enlazados los documentos que dan respuesta
a dicho requerimiento (Abián, 2009).

Figura 1.1 Funcionamiento de QDEX en las Búsquedas de Hakia.


Fuente (Abián, 2009)

1.2.1.3 SEMANTICRANK

Cumple las mismas funciones que PageRank de Google; determinar la relevancia


de un documento, pero lo hacen con mecanismos diferentes. El pageRank calcula la
relevancia de los resultados a partir del número de enlaces que apuntan a la página en
cuestión, en cambio SemanticRank determina la relevancia de los resultados en base a la
concordancia de los conceptos relacionados con la búsqueda (Klein, 2009).

SemanticRank recibe las preguntas relevantes de QDEX y determina la relevancia


con la búsqueda en cuestión. En la Figura 1.2 se muestra gráficamente como estaría
compuesto estructuralmente Hakia, esto en base a lo que se ha revisado anteriormente
(Klein, 2009).

5
Figura 1.2 Estructura de Hakia.
Fuente (Klein, 2009)

1.2.2 WOLFRAM ALPHA

Este buscador ha originado una gran expectativa desde su lanzamiento en Mayo


de 2009, esto se debe a su funcionamiento; es capaz de realizar cálculos matemáticos tal
como lo haría cualquier persona, entre sus capacidades de cálculo constan la resolución
de polinomios, integrales y demás operaciones. Esto ha llevado a la gran comunidad de
Internet ha considerarlo como la revolución entre los buscadores semánticos y no
semánticos. Su funcionamiento es muy particular, las inferencias son básicas y son
realizadas por Cyc, un proyecto de inteligencia artificial que intenta ensamblar una
ontología compresiva y una base de conocimientos general, todo esto con el objetivo de
realizar razonamientos de tipo humano. Otro factor importante es la RI, un grupo de
expertos en Wolfram Alpha han procesado la información presente en la Web y la han
almacenado en una base de datos desde la cual se extrae un informe con los datos más
relevantes, evitando mostrar enlaces Web, este buscador elimina las páginas
intermediarias y presenta el resultado directo en la interfaz del buscador. Si bien es cierto

6
este buscador recupera la información desde una base de datos y realiza inferencias; sin
embargo, es más un sistema de respuestas que un buscador semántico como tal, esto lo
corrobora el propio Stephen Wolfram 8creador del buscador, ya que considera que su
aplicación es más un repositorio de conocimientos que un buscador (Castro, 2015).

1.2.3 LUCENE – SIREN

Este es un motor de búsqueda completo de código de abierto escrito originalmente


en Java, aunque en la actualidad ha extendido su desarrollo a otros lenguajes de
programación. Según Cutting, (2011) las funcionalidades destacadas son:

• Proporciona la capacidad de buscar en muchos idiomas.


• Indexa cualquier archivo basado en texto, tal como HTML, o cualquier
archivo que se pueda convertir en texto.
• Clasifica la búsqueda de manera que se muestren primero los mejores
resultados.
• Realiza búsqueda booleana y por frase.
• Permite búsqueda por campo, por ejemplo, las búsquedas se pueden enviar
por títulos, autores, contenidos, etc.
• Permite búsquedas en un gran rango de fechas para que los usuarios
puedan tener acceso a información sujeta a plazos determinados.

Su funcionamiento consiste como primer pasó la creación de un índice que no es


más que toda la información de nuestro sitio compilada en una base de datos. Este índice
debe contener un analizador o extractor por cada tipo de documento, Lucene emplea por
defecto el HTML parser, el cual recibe como parámetros la URL de ubicación del archivo,
extrae el texto y lo almacena en un objeto string, el cual si está indexado y almacenado
significa que se puede buscar y mostrar el contenido posteriormente, luego de esto es
convertido en token, unidad básica de indexación, en este proceso se quitan todas las
palabras vacías como: un, la, el, etc., luego se saca la raíz de la palabra, proceso conocido
como stemming, para finalmente transformar el texto en letras minúsculas, este proceso se
repite hasta que el índice ha reducido su tamaño con los elementos principales (Akamai,
2009).

7
Lucene es un buscador sintáctico por naturaleza, para proporcionarle
funcionalidades semánticas se necesita de una extensión llamada SIREN “Semantic
Information Retrieval Engine” (Hidalgo, 2016).

1.3 PROBLEMA

1.3.1 PLANTEAMIENTO DEL PROBLEMA

En la actualidad cuando los usuarios emiten una búsqueda de información por


internet, puede observar diferentes resultados los cuales no siempre son los esperados.

A continuación pondremos en consideración una lista de problemas percibidos por


los usuarios y por los buscadores de información.

• Los resultados de las búsquedas de información que emiten los usuarios, en


su mayoría no son los que desea hallar.
• Los buscadores de información actuales, no se adecuan a las necesidades
de los usuarios y algunos cobran dinero para satisfacer las mismas.
• Los resultados en el proceso de búsqueda, en su mayoría son repetitivos y
originan un mismo lugar, por ejemplo, muestran el mismo sitio web, como si
fuera otro.
• Muestran masiva cantidad de información, pero de lo que no se desea, esto
por derivaciones al proceso de una búsqueda de información, como por
ejemplo se busca café y muestran otras que derivan como leche, chocolate y
otros.
• Cuando el buscador no encuentra resultados, sobre la demanda de los
usuarios, muestra como resultado otros tipos de información que los
usuarios no desean, ni se aproximan a la búsqueda requerida.
• El tiempo de búsqueda es otro factor a observar, puesto que al buscar los
resultados adecuados, este demanda mucho tiempo.

1.3.2 FORMULACIÓN DEL PROBLEMA

¿El comportamiento semántico y el lenguaje natural, mejorará las búsquedas de la


información en la web?

8
1.4 OBJETIVOS

1.4.1 OBJETIVO GENERAL

Realizar un buscador inteligente basado en el comportamiento semántico y


lenguaje natural que mejore los resultados, en un proceso de búsqueda de información,
que emite un usuario.

1.4.2 OBJETIVOS ESPECÍFICOS

• Mostar resultados, en un proceso de búsqueda de la información, adecuada


a los requerimientos de los usuarios.
• Encontrar el estudio del significado de las palabras, para mejorar los
procesos de búsqueda de información, tal que los sistemas computacionales
puedan interpretar de la mejor manera el lenguaje humano.
• Optimizar los resultados, de un proceso de búsqueda de información, tal
que los resultados de la información no sean repetitivos.
• Mostrar en los resultados de un proceso de búsqueda de información, con la
mayor parte de coincidencias exactas.
• Mostrar y mejorar los procesos de búsqueda de información, de tal forma
que se aproxime a la demanda del usuario.
• Ayudar a reducir los tiempos, en el proceso de búsqueda de información.

1.5 HIPÓTESIS

Un Buscador Inteligente basado en propiedades de la semántica como la


ontología, indexación booleana e inferencia bayesiana, mejora los resultados en un
proceso de búsqueda de información de acuerdo a las necesidades del usuario.

1.5.1 VARIABLES OPERACIONALES

1.5.1.1 VARIABLES INDEPENDIENTES

La Ontología, la Indexación Booleana y la Inferencia Bayesiana.

9
1.5.1.2 VARIABLE DEPENDIENTE

Mejorar los resultados en un proceso de búsqueda de información de acuerdo a


las necesidades del usuario.

1.6 JUSTIFICACIÓN

1.6.1 JUSTIFICACIÓN SOCIAL

Los usuarios visualizaran resultados óptimos, mejorando la calidad y exactitud de


las búsquedas de información, además se aportara a reducir el tiempo que emplean los
usuarios en una búsqueda de información, también poder contribuir a la sociedad en estos
aspectos importante.

Se impulsa al desarrollo del software libre para respetar la libertad de los usuarios
y la comunidad.

1.6.2 JUSTIFICACIÓN ECONÓMICA

La implementación del presente trabajo de investigación genera beneficios


económicos para las entidades, empresas y usuarios, que podrán administrar mejor su
tiempo lo cual como es mencionado el tiempo es dinero.

Los costos del trabajo de investigación llevada a cabo, son los suficientes para
realizar la mejor investigación, además se optara en el desarrollo por el software libre con
el fin de que los usuarios tengan la libertad de ejecutar, copiar, distribuir, estudiar, modificar
y mejorar el software y no tendrá ningún costo económico por realizar la operaciones en el
sistema.

1.6.3 JUSTIFICACIÓN TECNOLÓGICA

El trabajo aportara de gran manera a la tecnología, lograra que los usuarios


puedan satisfacer las necesidades que tienen en cuanto al emitir un proceso de búsqueda
de información, lo cual al proponer las propiedades de la semántica como: la ontología,
lenguaje natural, indexación booleana e inferencia bayesiana. Se mostrara un avance

10
tecnológico con estas herramientas, así explotando las ventajas y facilidades que tiene
dichas herramientas.

1.6.4 JUSTIFICACIÓN CIENTÍFICA

Al realizar el trabajo de investigación, permite dar un aporte al conocimiento, el


cual llevara a la comprensión, al estudio de las tecnologías principales y adecuadas, a que
los sistemas computacionales comprendan de mejor manera las necesidades de los
usuarios y dejando un precedente para los futuros investigadores.

1.7 ALCANCES Y LÍMITES

1.7.1 ALCANCES

• Comunicativo: Debe comprender las necesidades, objetivos y preferencias


del usuario, ya que de dicha comunicación o interacción pueda llevar a cabo
su función de forma eficiente. Asimismo, debe poder comunicarse con el
entorno mediante representaciones compartidas de conocimiento.

• Capaz: Debe poder actuar en una determinada clase de mundo. No sólo


debe proporcionar información, sino también un servicio, es decir, debe tener
la capacidad para realizar con la mayor precisión la recuperación de
información.

• Autónomo: Además de comunicarse, debe poder interactuar con el entorno,


tomando decisiones y actuando por sí solo, limitando sus acciones según el
nivel de autonomía permitida por el usuario.

• Adaptable: Debe ser capaz de nuevos cambios y construcciones futuras,


donde evolucione en versiones posteriores y mejoradas.

1.7.2 LÍMITES

• Fuentes: En fuentes de información que se necesita consultar fuentes


primarias, secundarias y hasta terciarias, para esto no se pondrá controlar y
responsabilizarse de fuentes que provienen esta información.

11
• Lenguaje Natural: Es muy complejo y amplio en su estudio, debido al gran
número de sinónimos y palabras polisémicas que contiene. Donde solo se
hará mención a técnicas empleadas para el manejo e interpretación de la
información según el lenguaje natural.

• Imágenes: En este trabajo de investigación no están contempladas las


búsquedas de similitudes entre imágenes, lo cual solo se trabajara con el
lenguaje natural y el comportamiento semántico, no así con el
reconocimiento de patrones con imágenes.

1.8 METODOLOGÍAS

1.8.1 METODOLOGÍA CIENTÍFICA

Para el desarrollo de la presente tesis se utiliza el Método Científico, que


plantea Mario Bunge de una forma rigurosa y ordenada.

Dicho método permite que a partir de situaciones de carácter general se


llegue a identificar una explicación de carácter particular (Bunge, 1959).

En el desarrollo de la investigación se aplica las etapas como:

• Observación y Recolección. La información que se revisa mediante


la literatura existente respecto al tema, para el análisis de la situación
actual del desarrollo semántico, planteando el problema encontrado.

• Planteo de la hipótesis. Se propone que la metodología mejora el


desarrollo del buscador inteligente y perfeccione la calidad de este.

• Diseño. En esta etapa se estructura la metodología para guiar en la


construcción del buscador inteligente, trabajando con algún método más
para su desempeño.

• Prueba. La evaluación de la metodología se realizara con un análisis


comparativo con otras metodologías existentes.

• Conclusiones. En la parte final se menciona las conclusiones

12
obtenidas y las recomendaciones que surgirán para nuevos temas de
investigación, en base al conocimiento obtenido con el estudio.

La técnica específica que desde la de investigación, se recurre al análisis


documental y de investigación del problema, a partir del cual se procederá a la
sistematización de esta información, lo cual dará como resultado final la realización
de su desarrollo, aplicación y prueba (Bunge, 1959).

1.8.2 METODOLOGÍA PARA EL DESARROLLO EN CASCADA

La metodología en cascada dará lugar al ciclo de vida usado en su implantación


denominado ciclo de vida en cascada.

El ciclo de vida en cascada o Waterfall se caracteriza porque todas las fases se


realizan de forma secuencial, es decir, que las etapas se llevan a cabo una después de la
otra, pero eso sí, cada etapa tiene que estar finalizada antes de comenzar la siguiente, a
continuación se detalla cada fase y sus tareas, como se ilustra en la Figura 1.3 (Trigas,
2012).

Las fases que rigen la metodología en cascada son:

1. Requerimientos del sistema.


2. Requerimientos del software.
3. Análisis.
4. Diseño del programa.
5. Codificación.
6. Pruebas.
7. Implantación.

Las tareas que se realizan durante las etapas son:

1. Análisis de requerimientos: Se analizará el problema, se definirán los


requisitos y qué objetivos se tienen que conseguir.
2. Diseño: Toda la información recogida se intenta plasmar mediante una
estructura de datos adecuada, una arquitectura algoritmos a usar, integrales.

13
3. Codificación: El diseño se implementará usando la tecnología escogida
como solución.
4. Prueba: En esta fase se intenta encontrar los errores para corregirlos
además de comprobar si el software cumple con el objetivo inicial.
5. Implantación y mantenimiento: Esta fase servirá para corregir errores que
no se detectaron antes, adaptarse al entorno de trabajo y mejorar la
aplicación.

Figura 1.3 Esquema de la Metodología en Cascada.

La metodología en cascada presenta la ventaja de ser una planificación sencilla, la


calidad obtenida del producto es alta y como en el caso no se necesita de un personal. Sin
embargo tiene el inconveniente de que para el desarrollo es necesario tener todos los
requisitos al principio, en la presente tesis la metodología estará incorporada dentro de la
parte de diseño y prueba que contempla la metodología científica, así para subsanar con el
inconveniente que esta metodología en cascada presenta, juntas se acomodan en el
proyecto, para que se entienda su naturaleza perfectamente, además para ingresar con
todo a la primera etapa teniendo toda la información y requerimiento.

14
CAPÍTULO II

MARCO TEÓRICO

La investigación para el uso de tecnologías, son de vital importancia al momento


de desarrollar sistemas inteligentes, que aportan al tratamiento y mejoren la automatización
de la información. El presente capitulo tiene como objetivo describir el conjunto de
fundamentos teóricos a así como también las técnicas, herramientas y metodologías que
se utilizará para la construcción del buscador inteligente.

2.1 LA WORLD WIDE WEB

Nadie duda que actualmente la fuente de información más grande del


mundo sea la World Wide Web. Según un informe de la consultora internacional IDC
y el fabricante de sistemas de almacenamiento EMC, tal que la cantidad de información
digital creada, capturada y replicada fue de 1288 x 1018 bits, esto equivale a 161 billones
de gigabytes, 3 millones de veces mayor que las de todos los libros escritos (Gantz et
al, 2010).

Con el avance de la tecnología móvil, el incremento de navegantes de internet


aumenta, tal que el proceso de generar más información y colgarlo en la red, va en
crecimiento exponencial, se calcula que el material que se encuentra en la Web equivale
aproximadamente a 15 pilas de libros, cada una extendiéndose desde la Tierra hasta el
Sol. Se estima que para el 2016 el crecimiento de la información va alcanzar a los 20 mil
billones de terabytes fácilmente (Schlichting, 2010).

Los sistemas automáticos que recolectan, procesan y acceden a la información


de la Web no sólo se topan con este crecimiento exponencial sino con otra serie de
características:

• La Web es dinámica. La información en la Web cambia constantemente.


Mantenerse al tanto de los cambios y monitorearlos son dos tareas
importantes a la hora de extraer información de la Web (Brickley, 2004).

15
• La información en la Web es heterogénea. Múltiples páginas Web pueden
presentar la misma información o parecida, utilizando formatos y sintaxis
completamente diferentes, lo que hace que la integración de la
información sea una tarea difícil (Gantz, 2010).

• Es fácil acceder a la cantidad de información en la Web pero requiere de


mucho tiempo y espacio para el procesamiento (Reinsel, 2010).

• La información en la Web abarca todo tipo de aspectos, lo cual da origen a


encontrar información de toda clase (Toncheva, 2010).

• Existen datos de todo tipo en la Web, por ejemplo tablas estructuradas,


textos, datos multimedia como: imágenes, películas, música, etc. (Manfrediz,
2010).

• La mayoría de la información en la Web es semiestructurada debido a la


estructura en red del código HTML y la necesidad de los diseñadores Web
de presentar la información de una manera simple y atractiva para simplificar
la visualización y navegación a los usuarios (Brickley, 2004).

• La mayoría de la información Web está vinculada. Hay vínculos a través de


las páginas de un sitio y hacia otros sitios diferentes. Estos links sirven
como una herramienta de organización de la información y también como
una indicación de confianza con las páginas enlazadas y sitios (Stephen,
2010).

• La mayoría de la información de la Web es redundante. El mismo


fragmento de información o sus variaciones pueden aparecer en muchas
páginas o sitios (McArthur, 2010).

• La Web es ruidosa. Una página Web, generalmente contiene una mezcla de


distintos tipos de información, por ejemplo el contenido principal,
publicidades, paneles de navegación, avisos de copyright, etc. Para una
aplicación en particular, solo una porción de dicha información es útil y el
resto es ruido (Xheneti, 2010).

16
• La Web consiste de una parte superficial y otra profunda. La Web
superficial está compuesta de páginas que pueden ser navegadas
utilizando un simple navegador. Esta Web puede ser alcanzada también
por los buscadores. La Web profunda esta mayormente compuesta de
base de datos que sólo pueden ser accedidas a través de consultas
parametrizadas (McArthur, 2010).

• La Web posee servicios. Muchos sitios Web y páginas permiten al usuario


realizar operaciones con parámetros entrantes, o sea proveen servicios
(Berners 2001).

• La Web es una sociedad virtual. No solamente está formada por datos,


información y servicios, sino también por interacciones entre personas y
organizaciones (Ramanathan, 2004).

Se observa que la Web es un entorno muy rico en información pero


completamente difícil para trabajar. Sin embargo, existen buscadores que, a pesar de
todas estas características, logran procesar su información. Un ejemplo de ellos es Google
que es capaz de indexar alrededor de 20 millones de gigabytes de información en sólo 24
horas y recibe más de 72000 millones de búsquedas diarias de usuarios de todo el mundo
(TN Relaciones, 2016).

En otras palabras los buscadores devuelven como resultado un listado de


páginas que contengan las palabras claves que s e ingresan pero no existe una
interpretación del significado de la consulta o de su correspondiente resultado. Muchas
veces el mayor porcentaje de los resultados suelen ser comerciales y encontrar la
información buscada puede convertirse en una hazaña. Hay que probar distintas
combinaciones de palabras y realizar más de una búsqueda (TSGroup, 2015).

Los creadores del buscador de Google encontraron semántica en la Web al


determinar que si un sitio tiene muchos hipervínculos desde otras páginas, significa
que el mismo debe ser importante. Más importante es aún si una de las páginas que lo
apuntan también tiene muchos hipervínculos desde otras páginas; y así
sucesivamente. Esa semántica implícita en los hipervínculos es una de las
características que le permitió a Google determinar la importancia de las páginas en

17
sus resultados y convertirse en uno de los mejores buscadores de la actualidad. No
obstante, es muy poco el significado que se logra interpretar automáticamente de toda la
información que contiene actualmente la Web (Alejo, 2014).

2.2 DATOS EN LA WEB Y SU SIGNIFICADO

Algunos repositorios en la Web son excelentes fuentes de información como


Wikipedia, el cual es buen ejemplo de un sitio Web donde se puede encontrar
prácticamente porciones de información de casi todos los temas. Artistas, lugares,
animales, eventos históricos, protocolos o cualquier concepto existe en Wikipedia. Sin
embargo, a pesar de tener toda la información necesaria, no podemos realizar, por
ejemplo, una búsqueda en Wikipedia que nos de todas las guerras ocurridas en América
del Sur durante el siglo XX. Wikipedia contiene la información en su base de datos
necesaria para responder a dicha consulta, pero no puede hacerlo porque la información
es texto crudo que carece de significado para las máquinas. A pesar de poder
encontrar las guerras por su nombre, las máquinas no saben realmente cuando
sucedieron porque no pueden comprender el significado del texto asociado que está
escrito en lenguaje natural (Fernández, 2009).

Una rama de la Inteligencia Artificial conocida como Procesamiento del Lenguaje


Natural ha estado trabajando años para lograr que los sistemas interpreten los textos y
lleguen a conclusiones como las enseñadas. Se presentará en las siguientes secciones el
procesamiento del lenguaje natural y sus limitaciones en la actualidad (Alejo, 2014).

2.3 LENGUAJE

El lenguaje se define como “Un conjunto de oraciones, que usualmente es infinito


y se forma con combinaciones de palabras del diccionario. Es necesario que esas
combinaciones sean correctas, con respecto a sintaxis y tengan sentido, con respecto a
la semántica” (Magaña y Pimentel, 2007).

Podemos distinguir entre dos clases de lenguajes: los lenguajes naturales y


lenguajes formales. Los primeros son el medio que utilizamos de manera cotidiana
para establecer nuestra comunicación oral, escrita o señas, con las demás personas.
Algunos ejemplos son el castellano, el inglés o el francés y su origen y desarrollo es

18
natural, es decir, sin el control de ninguna teoría. Las teorías de lenguajes naturales y
las gramáticas, fueron establecidas a priori, esto es, después de que el lenguaje había
ya madurado. Es por ello de la dificultad o imposibilidad de conseguir una formalización
completa. Por otro lado, los lenguajes formales como las matemáticas y la lógica,
fueron desarrollados generalmente a través del establecimiento de una teoría, la cual le
da las bases para dichos lenguajes. Las palabras y oraciones de un lenguaje formal son
perfectamente definidas, una palabra mantiene el mismo significado prescindiendo de su
contexto o uso (La Guía, 2007).

Los billones de documentos en la Web están escritos tanto en lenguaje


naturales como lenguajes formales o en una combinación de ambos (Fernández, 2009).

2.3.1 EL LENGUAJE NATURAL

El uso de procesamiento del lenguaje natural para extraer e interpretar el


significado de la información de la Web resultó ser una tarea poco sencilla y uno de los
problemas más complejos a los que se enfrenta la Inteligencia Artificial. Hay
problemas fundamentales que necesitan resolverse para poder darle a una computadora
la habilidad de representar al mundo y sus diferentes culturas (Magaña y Pimentel, 2007).

Los buscadores que hacen uso de dicha tecnología no logran obtener los
resultados esperados debido a la complejidad, irregularidad y diversidad del lenguaje
humano y a los problemas filosóficos y psicológicos asociados al significado de
frases, oraciones y textos en su conjunto. Como otras limitaciones se destacan la
anáfora, la elipsis, la ambigüedad y la necesidad de encontrar el contexto (Fernández,
2009).

2.3.2 HISTORIA DEL PLN

El procesamiento del lenguaje natural es un área de investigación de la


inteligencia artificial que se encuentra en continuo desarrollo. También se lo conoce de
forma abreviada como PLN o NLP del inglés Natural Language Processing. El objetivo
principal del PLN es lograr un mecanismo para que las máquinas se comuniquen con las
personas y viceversa por medio del lenguaje humano. En definitiva, se busca construir
sistemas que puedan analizar y entender, el lenguaje natural (Contreras, 2001).

19
Durante el período 1940 - 1960, surgieron las primeras aplicaciones del PLN,
teniendo como interés fundamental la traducción automática. Los experimentos en este
sector, se basaban en substituir una palabra por otra generando resultados pobres y
lejos del objetivo buscado. Más adelante el interés del área se fue centrando en la
interpretación del significado de los datos. Se construye, para los a ñ o s setenta, el
primer sistema de preguntas y respuestas, basado en lenguaje natural (Fernández, 2009).

En los próximos años se comienza a aplicar el procesamiento del lenguaje


natural no sólo en campos como la traducción automática sino también en el
reconocimiento del habla, la corrección ortográfica de textos y en el procesamiento y
la recuperación de información (Villena, Crespo, y García, 2012).

Para estos últimos años, se introducen nuevas técnicas de representación del


conocimiento y se comienzan a utilizar como fuente de información los billones de
documentos de la Web. Muchos buscadores se interesan en mejorar las técnicas de
procesamiento y recuperación de la información para brindar un mejor servicio a los
usuarios (Gelbukh, Galicia, y Bolshakov, 1989).

En definitiva, intentan aplicar el procesamiento del lenguaje natural para poder


permitirle al usuario realizar preguntas en lenguaje natural y generar las correspondientes
respuestas procesando e interpretando la información de la Web. Sin embargo, la
complejidad implícita en el tratamiento del lenguaje natural junto a las características que
presenta un entorno enredado como es la Web hace que los resultados de aplicar PLN
sean limitados y, por lo tanto, sus aplicaciones tengan poco éxito. Es así, que si bien en
los últimos años se han obtenido importantes avances en el área, todavía queda mucho
camino por recorrer (Martín, Sonsoles, Valdenebro, y Mensaque, 2004).

2.3.3 NIVELES DEL PLN

El estudio del lenguaje natural se estructura normalmente en 4 niveles de análisis


como se observa en la Figura 2.1, morfológico, sintáctico, semántico y pragmático. Donde
se detalla a continuación de la figura los cuatro niveles de análisis (Sosa, 1997).

20
Figura 2.1 Niveles de Análisis del Procesamiento del Lenguaje Natural.
Fuente (Sosa, 1997)

2.3.3.1 ANÁLISIS MORFOLÓGICO

Su función consiste en detectar la relación que se establece entre las unidades


mínimas que forman una palabra, como puede ser el reconocimiento de sufijos o prefijos.
Este nivel de análisis mantiene una estrecha relación con el léxico, donde el léxico es el
conjunto de información sobre cada palabra que el sistema utiliza para el procesamiento
(Fernández, 2009).

Las palabras que forman parte del diccionario están representadas por una
entrada léxica, y en caso de que ésta tenga más de un significado o diferentes categorías
gramaticales, tendrá asignada diferentes entradas.

En el léxico se incluye la información morfológica, la categoría gramatical,


irregularidades sintácticas y representación del significado. Normalmente el léxico sólo
contiene la raíz de las palabras con formas regulares, siendo el analizador morfológico el
que se encarga de determinar si el género, número o flexión que componen el resto de la
palabra son adecuados (Sosa, 1997).

21
2.3.3.2 ANÁLISIS SINTÁCTICO

Tiene como función etiquetar cada uno de los componentes sintácticos que
aparecen en la oración y analizar cómo las palabras se combinan para formar
construcciones gramaticalmente correctas. El resultado de este proceso consiste en
generar la estructura correspondiente a las categorías sintácticas formadas por cada una
de las unidades léxicas que aparecen en la oración (Sosa, 1997).

2.3.3.3 ANÁLISIS SEMÁNTICO

En muchas aplicaciones del PLN los objetivos del análisis apuntan hacia el
procesamiento del significado. En los últimos años las técnicas de procesamiento sintáctico
han experimentado avances significativos, resolviendo los problemas fundamentales. Sin
embargo, las técnicas de representación del significado no han obtenido los resultados
deseados, y numerosas cuestiones continúan sin encontrar soluciones satisfactorias
(Fernández, 2009).

Definir qué es el significado no es una tarea sencilla, y puede dar lugar a diversas
interpretaciones. A efectos funcionales, para facilitar el procesamiento, la modularidad es
una de las propiedades más deseables. Haciendo uso de esta concepción modular es
posible distinguir entre significado independiente y significado dependiente del contexto
(Fernández, 2009).

El primero, tratado por la semántica, hace referencia al significado que las


palabras tienen por sí mismas sin considerar el significado adquirido según el uso en una
determinada circunstancia. La semántica, por tanto, hace referencia a las condiciones de
verdad de la frase, ignorando la influencia del contexto o las intenciones del hablante. Por
otra parte, el componente significativo de una frase asociado a las circunstancias en que
ésta se da, es estudiado por la pragmática y conocido como significado dependiente del
contexto (Sosa, 1997).

En referencia a la estructura semántica que se va a generar, interesa que exista


una simetría respecto a la estructura sintáctica, o por el contrario que no se dé tal
correspondencia entre ellas. En el primer caso, a partir del árbol generado por el análisis
sintáctico se genera una estructura arbórea con las mismas características, sobre la cual

22
se realizará el análisis semántico. En el segundo caso, en la estructura generada por la
sintaxis se produce un curso de transformaciones sobre las cuales se genera la
representación semántica (Sosa, 1997).

Cada una de las dos opciones anteriores puede implementarse de forma


secuencial o paralela. En la interpretación secuencial, después de haber finalizado la fase
de análisis sintáctico, se genera el análisis semántico. En cambio, desde un procedimiento
en paralelo, el proceso de análisis semántico no necesita esperar a que el analizador
sintáctico haya acabado toda su tarea, sino que puede ir realizando el análisis de cada
constituyente cuando éste ha sido tratado en el proceso sintáctico (Sosa, 1997).

Finalmente en combinación con cada una de las opciones anteriores, se puede


escoger un modelo en el que exista una correspondencia entre reglas sintácticas y
semánticas o, contrariamente, optar por un modelo que no cumpla tal requisito. En caso
afirmativo, para cada regla sintáctica existirá una regla semántica correspondiente.

El significado es representado por formalismos conocidos por el nombre de


knowledge representation. El léxico proporciona el componente semántico de cada palabra
en un formalismo concreto, y el analizador semántico lo procesa para obtener una
representación del significado de la frase (Sosa, 1997).

2.3.3.4 ANÁLISIS PRAGMÁTICO

Añade información adicional al análisis del significado de la frase en función del


contexto donde aparece. Se trata de uno de los niveles de análisis más complejos, la
finalidad del cual es incorporar al análisis semántico la aportación significativa que pueden
hacer los participantes, la evolución del discurso o información presupuesta. Incorpora así
mismo información sobre las relaciones que se dan entre los hechos que forman el
contexto y entre diferentes entidades (Sosa, 1997).

2.3.4 PROBLEMAS Y LIMITACIONES

A diferencia de las máquinas, el hombre usa el mínimo de lenguaje y el


máximo de su cultura e historia contextual para entender y ser entendidos. Esta
diferencia hace que el uso del procesamiento del lenguaje natural se encuentre con

23
una serie de dificultades que limitan la comprensión del lenguaje humano.

La aparición en el texto de un guión puede tener varios significados, uno que


está poniendo en relación dos palabras o también lo podemos hallar dividiendo un
vocablo al final de una línea, indicando que el resto de la voz está en el siguiente
renglón (Fernández, 2009).

La anáfora es un tipo de señalamiento que desempeñan ciertas palabras como


por ejemplo “ésta”, “lo”, “le”, “aquí”, “allí”, etc. para asumir el significado de una parte del
discurso ya emitida (Fernández, 2009).

1. “Juan y Diego son hermanos, el primero es abogado y el segundo


arquitecto”.

2. Primero = Juan, Segundo = Diego

Se distinguen dos tipos de expresiones anafóricas: las endofóricas, es decir, las


que aparecen dentro de los textos y por lo tanto, su antecedente se localiza en el mismo
texto y las exofóricas, cuyo antecedente no es posible ubicarlo dentro del texto
(Fernández, 2009).

Una de las características de las lenguas naturales y tal vez una de las principales
razones para que su análisis sea tan complicado, es que gran parte de lo que se quiere
comunicar está implícito en el discurso (Grishman, 1991).

Otro problema con el que se enfrenta el PLN es la elipsis y se define como


una figura de construcción que consiste en omitir en la oración una o más palabras,
necesarias para la recta construcción gramatical, pero no para que resulte claro el
sentido. Se distinguen tres tipos de elipsis: intrasentenciales, producidas en el interior
de una oración u oraciones coordinadas, los fragmentos ocurren fundamentalmente en
situaciones de diálogo, y elipsis semánticas son aquellas que no se manifiestan como
estructuras incompletas sino como proposiciones semánticamente incompletas (Sosa,
1997).

El punto más importante que causa la dificultad de procesar los millones de textos
en lenguaje natural que contiene la Web está dado por la ambigüedad. Los humanos,

24
procesan el lenguaje y constantemente adivinan el significado del mismo, utilizando todo
el conocimiento del universo, basándose en su cultura para tratar de deducir que es lo que
está siendo comunicado. Como por ejemplo de esto, se plantea una pregunta “¿Hay agua
en la heladera?”, la mayoría de los seres humanos entienden que dicha pregunta se
refiere a si hay algo como agua mineral o una botella con agua dentro de la heladera.
La existencia de moléculas de agua en la lechuga es considerada como una respuesta
graciosa o una burla. Winograd remarca que los humanos relacionan el lenguaje al
conocimiento de circunstancias comunes. En cambio, las máquinas no pueden
determinar qué respuesta devolver, excepto que la pregunta sea completamente explícita
(Winograd y Flores, 1986).

Cuando un humano usa el lenguaje, en situaciones como la anterior, no


necesita ser explícito sino que se asume que el oyente lo entiende. Esta innecesidad
de situar al oyente en el contexto de lo expresado, comprime en un 90% la
comunicación haciendo conciso el uso del lenguaje. Si se tuviese que pedir agua de
forma explícita la pregunta sería la siguiente: “tienes agua que pueda beber en la
heladera, excluyendo las moléculas en cualquier vegetal o fruta o en el hielo o...”.

Las computadoras encuentran realmente difícil descubrir cuando el contexto no


es expresado en detalle. Pero esto también le sucede a la gente adulta cuando quiere
aprender un idioma extranjero. Aunque muchos contextos o circunstancias normales
son transferibles entre culturas, la más pequeña diferencia puede crear problemas de
entendimiento. Encontrar diferentes formas de ver el mundo es algo muy común en el
hombre, de hecho a lo largo de su vida cambia la forma de ver las cosas. Algo que
entendía de una manera un niño, de adulto lo ve distinto (Fernández, 2009).

2.4 EL PLN Y LA WEB

Tradicionalmente, las principales fuentes para la investigación del procesamiento


del lenguaje natural provenían en su mayoría de textos impresos, como por ejemplo
artículos de periódicos o libros. Los mismos eran entornos más acotados donde se tenía
un cierto control del mismo. Con el crecimiento del la Web como un recurso de
información, muchas miradas cambiaron de dirección y el mismo comenzó a ser cada
vez más utilizado en las tareas relativas a PLN.

25
Pero de lograr superar los problemas y limitaciones que enfrenta el
procesamiento del lenguaje natural, ¿alcanza esta técnica para procesar los billones de
documentos de la Web? Definitivamente no. Según Alejo (2014) esto se debe
principalmente a dos razones:

• La Web no sólo contiene textos sino también datos multimedia: sonido e


imágenes. El sonido puede ser abarcado en parte por la rama del
lenguaje natural que estudia el habla humano, no así las imágenes que
muchas veces colaboran indispensablemente con el significado del texto o
de la página.

• Hay mucha semántica en la Web que no está ubicada en los textos sino en
su distribución. Como por ejemplo, imágenes, hay semántica implícita en la
distribución de los datos a lo largo de la página Web. Cuando se extrae la
semántica de dichos datos, se debe tener en cuenta su ubicación en la
página y la estructura de la misma.

2.5 WEB SCRAPING

Las páginas Web están codificadas en una estructura de tipo árbol para
representar la información pero los datos relevantes están mezclados con otros de
distribución, posicionamiento, decoración, navegación y, a veces, formato. Web Scraping
es una técnica de ingeniería inversa de una página HTML en la cual la idea es tomar esa
información desordenada y con ayuda previa suministrada por un humano, lograr
estructurarla en un formato que sea entendible por una aplicación (Alejo, 2014).

Para que una aplicación de Web Scraping pueda identificar cuáles son los datos
relevantes en una página, necesita que un humano le provea de cierta información
previa. Básicamente le debe especificar que información buscar, como encontrarla,
cuales son los patrones repetitivos y donde almacenar los datos extraídos.

La información que suministra el humano puede codificarse directamente en la


aplicación de Web Scraping o ser suministrada mediante una interfaz determinada
previamente a comenzar la extracción. No importa qué modo se utilice sino que antes de
comenzar el Scraping de la página HTML, la aplicación sepa que información extraer y

26
como encontrarla. La misma no debe toparse con sorpresas ni ambigüedades como
en el procesamiento del lenguaje natural ya que no las sabe resolver (EDD, 2015).

Cabe destacar que Web Scraping difiere de Screen Scraping en que un sitio Web
no es una pantalla visible sino un contenido basado en HTML y JavaScript con una
interfaz gráfica por arriba. Por ende, Web Scraping no consiste en trabajar en la
interfaz visual como Screen Scraping, sino en la estructura de objetos por debajo DOM,
Document Object Model, del HTML y JavaScript. Web Scraping también difiere de
Screen Scraping en que este último ocurre muchas veces para la misma pantalla
dinámica, mientras que Web Scraping ocurre una sola vez por página dinámica para
muchas diferentes páginas estáticas (Fernández, 2009).

Probablemente la técnica más común y tradicionalmente utilizada para Web


Scraping es utilizar expresiones regulares que coincidan con los contenidos que uno
quiere y poder extraerlos de manera estructurada. Además de expresiones regulares,
uno puede usar código escrito en lenguajes más avanzados Java o ASP.NET, para
parsear los largos pedazos de texto (Alejo, 2014).

Se puede mencionar dos aplicaciones más conocidas de Web Scraping, en la


Web actual, como Dapper y Yahoo! Pipes.

2.5.1 DAPPER

Dapper es un servicio Web gratuito que sirve para extraer y darle el formato
que se quiera a cualquier dato de la Web. Dapper permite crear un “dapp” que es como
un repositorio de datos para cualquier sitio sin necesidad de programar nada. Dicho dapp
contiene la definición de qué tipo de información se quiere extraer. Por ejemplo, se
puede utilizar para extraer información de una página de autos. Dapper va a utilizar el
dapp para saber qué contenidos debe extraer como, por ejemplo, el modelo del auto, el
fabricante, una imagen, etc. (Marín, 2007).

Dapper extrae la información del sitio en cualquier momento. La página de la cual


Dapper extrae el contenido puede ser modificada en cualquier momento simplemente
suministrándole a Dapper una nueva URL que debe contener la misma estructura que
la original. También es posible programar Dapper para que automáticamente procese

27
con el dapp muchas páginas de a una por vez y extraiga los datos relevantes.

Dapper funciona como un navegador Web que permite ir marcando los textos
y enlaces que más le interesen al usuario de un sitio determinado. Asimismo, permite
enlazar uno o más dapps juntos para armar un resultado más complejo. Por ejemplo, se
puede enlazar la salida de un dapp a otro dapp sin necesidad de programar nada (Marín,
2007).

No solamente es posible crear dapps, sino también utilizar otros ya creados por
diferentes usuarios. Para ello se debe elegir el dapp y luego el formato en el que se
desee obtener la información. El contenido que obtuvo el dapp será transformado al
formato seleccionado. Por ejemplo, si se quiere obtener un resultado RSS con los datos
de un sitio Web de noticias y sabemos que existe un dapp asociado al sitio, simplemente
se puede seleccionar el dapp y luego la salida RSS. La información extraída por cualquier
dapp se puede transformar a varios formatos; RSS Feed, Flash Widget, Google Gadget,
XML, JSON, XSL, HTML, email, entre otros (Fernández, 2009).

Para darle cierto dinamismo al dapp, se le pueden especificar variables de


entrada. Las mismas se asocian a cajas de texto de la página en la cual trabaja el
dapp. Una vez que se ingresa la variable, se obtienen los resultados en el formato
especificado. Al tener la posibilidad de indicar qué datos extraer y de qué sector de la
página, se puede asociar los mismos a un significado determinado. En resumen,
Dapper es una solución para Web Scraping que permite extraer información de
cualquier página y estructurarla bajo ciertas etiquetas semánticas (Fernández, 2009).

2.5.2 YAHOO! PIPES

Pipes se define como herramienta de composición para agregar, manipular y


mezclar contenidos de la Web. Como los famosos tubos de Linux, esta solución
permite combinar comandos simples y obtener la salida según los requerimientos del
usuario. Por ejemplo, se pueden combinar varios Feeds en uno sólo, luego ordenarlo,
filtrar los datos que se quieran y utilizar servicios de terceros para traducirlo. La salida será
finalmente un RSS Feed o JSON. Por ejemplo cómo utilizar un Pipe sería mostrar el
resultado de un Feed. Aunque no tiene utilidad alguna, sirve para explicar el modo en
que trabaja Pipes. Para este ejemplo, se debe seleccionar como parámetro de entrada un

28
Feed y automáticamente se agrega como defecto la salida del tubo (Matos, 2008).

Si se desea hacer un trabajo más específico sobre la salida de datos, la


aplicación permite asociarle metadatos semánticos.

La entrada del Pipe puede no sólo ser de un Feed RSS sino también se
pueden obtener datos de fotos de Flickr, del buscador de Yahoo!, del buscador Google
Base y otras fuentes. Al igual que Dapper, permite entradas de usuario lo que dinamiza el
pipe. Continuando con la comparación entre Dapper y Pipes, este último tiene la
ventaja de poseer como herramienta distintos operadores para filtrar Pipes, unirlos,
separarlos, etc. Sin embargo, como desventaja no permite procesar los datos de
cualquier página de la Web, sino que sus entradas son limitadas.

En resumen, Pipes es una herramienta Web que permite obtener distintos


contenidos, manipularlos y transformarlos en uno nuevo de forma que su significado
lo pueda entender una aplicación. Ofrece una interfaz intuitiva y amigable para el
usuario. Sin embargo, como las fuentes de donde puede leer datos un Pipe es limitada,
el uso más común que ha adoptado esta herramienta es combinar, mezclar, filtrar y
rearmar RSS Feeds (Fernández, 2009).

2.6 APROXIMACIÓN TOP-DOWN

Analizado las técnicas de procesamiento del Lenguaje Natural y Web Scraping,


se puede ver que ambas intentan extraer los datos de la Web tal como se encuentran
almacenados para luego poder interpretarlos o asociarlos a un significado. Este camino,
donde se trata de procesar los datos tal cual se encuentran actualmente, se lo conoce
como aproximación “top-down” porque el trabajo comienza desde arriba, mejorando los
sistemas de extracción y hacen su camino hacia abajo hasta interpretar todos los datos
de las páginas Web sin necesidad de modificarlos (Megabolsa, 2015).

El camino top-down apunta su mirada y esfuerzo a mejorar los sistemas


automáticos que interpretan la información de la Web. Sus seguidores afirman que si un
humano puede entender la información de un sitio Web es que su significado está
implícito en él y, por lo tanto, puede ser interpretado automáticamente por una máquina.
El trabajo debe concentrarse en hacer más inteligentes los agentes automáticos,

29
Spiders, Robots, Scraps, etc. y no en modificar los datos de las páginas Web. El camino
top-down se vale de información preprogramada, conceptos y técnicas como el
procesamiento del lenguaje natural. A veces es necesaria la intervención humana que
guíe o corrija el proceso, pero las aplicaciones que opten por este camino no va a ser, van
a necesitar que se modifique o agregue información semántica a las páginas Web
existentes (Funes, 2015).

El procesamiento del lenguaje natural por lo general no requiere de ayuda


humana y con conocimiento previo logra inferir nuevo conocimiento a partir de los datos
extraídos. En cambio, la técnica de Web Scraping necesita de un humano que no sólo
le diga de donde extraer los datos sino también a qué significado se asocian los
mismos. No hay un procesamiento inteligente de la información extraída. Al depender de
un humano para entender el significado de los datos y su ubicación, se torna imposible
mediante Web Scraping procesar los billones de documentos de la Web en su totalidad, lo
que significa que dicha técnica es viable para procesar sólo una porción de los
mismos. Mientras que el procesamiento del lenguaje natural, al trabajar de forma
automática, permitiría procesar todos los documentos de la Web si se resolviesen sus
problemas actuales (Quero, 2009).

Además, Web Scraping tiene la desventaja de que si cambia la página


original, hay una gran probabilidad que se tenga que cambiar la forma de extraer
dicha información. En cambio el PLN, puede automáticamente procesar los cambios e
incluso aprender de los mismos (Rogers et al, 2007).

Lamentablemente, el procesamiento del lenguaje natural está lejos de cumplir sus


objetivos en la extracción del significado de los datos de la Web. Se deben resolver no
sólo las dificultades propias del lenguaje natural, sino también los significados ocultos
asociados a la ubicación gráfica de los datos en las páginas y a los datos multimedia
que éstas contienen. En este punto, Web Scraping no tiene inconvenientes porque el
usuario entiende la estructura de la página indicando como es la distribución de los
datos y que significa cada uno para poder armar el patrón repetitivo (Rogers et al, 2007).

Se puede concluir que la Web es un entorno complejo donde no se ha


encontrado un camino top-down óptimo y aceptable para extraer el significado de sus

30
datos respetando el formato en que se encuentran. Si se quiere tener una Web en la cual
las máquinas entiendan el significado de sus datos, tal vez sea necesario modificar la forma
en que los mismos se guardan (Soler, 2009).

2.7 APROXIMACIÓN: BOTTOM-UP

Algunos expertos opinan que es posible mantener los datos como se encuentran
almacenados actualmente en la Web y se debe trabajar más en los sistemas inteligentes
que los parsean e interpretan. Es el concepto que define al camino top-down explicado
anteriormente. Mientras que otros expertos optan por modificar los datos de la Web
agregándole información que explique su significado. Este camino opuesto que consiste
en cargar datos semánticos en la Web es conocido como bottom-up, ambas estructuras
son representadas en la Figura 2.2, para tener la idea de intercambio de información con la
web (Fernández, 2009).

Figura 2.2 Distintas Aproximaciones para Estructurar la Información de la Web.


Fuente (Fernández, 2009)

El acercamiento bottom-up comienza desde abajo, modificando el contenido de


las páginas y arma su camino hacia arriba hasta obtener procesos que logren interpretar
el significado de dichas páginas. Por lo general, esta técnica se basa en agregar

31
metadatos semánticos a los sitios Web existentes para facilitar el procesamiento de los
mismos. Estos metadatos pueden estar en las mismas páginas de los sitios o en
cualquier otro objeto de la Web. Sin importar su ubicación, generalmente cumplen con
un formato reconocible y lo suficientemente descriptible para poder darle significado a la
página (Funes, 2015).

A diferencia de top-down, en el camino bottom-up la carga de datos juega un rol


muy importante porque sin ella no es posible extraer la semántica de los datos. El
primer paso y tal vez el más difícil es poblar la Web de datos semánticos para luego
poder continuar con el segundo, extraerlos automáticamente. Una técnica que pueden
adoptar algunos sitios donde el usuario tiene un rol importante en la carga de datos,
como por ejemplo Wikipedia es facilitar una interfaz que los obligue a ingresar los datos
con su semántica implícita de manera de poder generar automáticamente los
metadatos semánticos asociados a dicha información (Van, 2013).

Los opositores al camino bottom-up sostienen que no va a funcionar porque los


sitios Web van permanecer con los datos actuales sin ninguna modificación o
agregado. Su fundamento se basa en que sus administradores no van a querer
reescribirlos para compartir información semántica si no hay aplicaciones que haciendo
uso de dicha información les generen beneficios, por ejemplo, buscadores de uso
global. Por otro lado, sustentan que nadie va a desarrollar una aplicación que procese los
datos semánticos si son pocos los sitios que los contengan. Este problema es equivalente
al que se conoce vulgarmente como “el huevo y la gallina”. Es decir que debido a que la
mayoría de los sitios actuales no poseen información semántica, son escasas las
aplicaciones que hacen uso de ella; y como son pocas las aplicaciones que hacen uso
de la información semántica, son pocos los sitios actuales que la agregan. Hay que
tener en cuenta que tanto reformar un sitio Web como desarrollar una aplicación
semántica requiere un gran costo no sólo monetario sino también de tiempo (Van, 2013).

Sin embargo, en la actualidad el camino bottom-up está obteniendo más


seguidores ya que la aproximación top-down requiere de una tecnología que estamos
lejos de perfeccionar todavía. No hay una solución a corto plazo ni se puede demostrar
que alguna vez la va a haber. Mientras que el camino bottom-up enfrenta problemas con
solución posible como son el tiempo y el dinero. En consecuencia, se concluye que es

32
más viable el camino bottom-up y en el próximo capítulo se estudiarán los metadatos y
las tecnologías que los usan (Fernández, 2009).

2.8 METADATOS

La aproximación bottom-up consiste en agregar metadatos a los sitios Web para


poder darle significado a los datos. De esta manera, los agentes automáticos pueden
procesar los metadatos semánticos e interpretar mejor la información que contiene la Web
(Funes, 2015).

Los metadatos representan datos estructurados sobre los datos. Son información
descriptiva sobre un objeto o recurso tanto si éste existe físicamente como no. Permiten
describir, identificar, localizar, valorar y administrar los objetos descriptos. No siempre es
sencillo establecer una diferenciación clara entre datos y metadatos. Por ejemplo, una
palabra como “edad” es un dato, pero también puede ser un metadato si se encuentra
adjunto a otro dato como “15” ya que describe que ese número no es ni una fecha, ni una
altura, ni una distancia sino que es una edad (Peig, 2004).

En muchas ocasiones, los datos son tanto "datos" como "metadatos". Por ejemplo,
el título de un texto cumple el rol de dato al ser parte del texto y a la vez el rol de metadato
al ser un dato referente al texto. Dado que los metadatos son datos en sí mismos, existe la
posibilidad de definir metadatos sobre metadatos. A pesar de que esto puede parecer
innecesario, los metadatos sobre metadatos pueden llegar a ser de gran utilidad (Peig,
2004).

Los metadatos pueden ser incluidos en la página Web por el mismo administrador,
por los usuarios a través de una interfaz o pueden ser generados por sistemas de
agrupación de información. No importa como sean ingresados los metadatos, sino que
sirvan para ser interpretados por las máquinas; o sea, los metadatos deben utilizar un
lenguaje adecuado para las máquinas e idealmente respetar toda una misma sintaxis y
formato (Cámara, 2004).

Hay varias soluciones propuestas que se rigen por el camino bottom-up. La más
importante y más completa es la propuesta por Tim Berners y Lee, conocida como Web
Semántica. La idea es poblar la Web con una red de nodos tipificados e interconectados

33
mediante clases y relaciones definidas por una ontología compartida por distintos autores.
Para lograrlo, la Web Semántica define un conjunto de componentes que permiten
almacenar la información semántica. Los principales componentes de la Web Semántica
son los metalenguajes y estándares de representación XML, XML Schema, RDF, RDF
Schema y OWL. La solución mantiene los principios que han hecho un éxito de la Web
actual, como son los principios de descentralización, compatibilidad, flexibilidad y máxima
facilidad (Berners y Lee, 2001).

Se analizará también una solución con un dominio más específico presentada por
Microformats que obtuvo mucha aceptación en la comunidad Web durante el último tiempo.
Los microformatos triunfan en muchos aspectos donde la Web Semántica tiene problemas.
No intentan abastecer la visión semántica completa sino que ofrecen una solución más
acotada permitiendo marcar semánticamente los datos más frecuentes en algunas páginas
Web. La sintaxis es simple, fácil de entender y totalmente integrada al actual HTML
(Microformats, 2012).

Ambas soluciones comparten un mismo camino que es utilizar la aproximación


bottom-up para poblar la Web con datos semánticos. Cada una posee ventajas y
desventajas, con características que hacen que su nivel de aceptación esté creciendo o
decreciendo con el tiempo. Se estudiarán y compararán las soluciones remarcando las
mejores características de cada una (Microformats, 2012).

Cabe destacar que existen otras soluciones con dominios aún más acotados que
no se analizarán en la tesis. Entre ellas está Semantic Wiki, una idea que tiene como
objetivo darle significado semántico a los datos de la Wikipedia estructurándolos con
metadatos y generando vínculos entre los mismos (Ariadne, 2004).

2.9 WEB SEMÁNTICA

La Web Semántica fue pensada por Tim Berners y Lee, inventor de la Web, las
URIs, el protocolo HTTP y el lenguaje HTML. Existe un grupo de personas que pertenecen
a la W3C, del inglés, World Wide Web Consortium y se dedican a mejorar, extender y
estandarizar dicho sistema y otros lenguajes, publicaciones y herramientas que ya han sido
desarrolladas. La W3C define a la Web Semántica como “una Web extendida, dotada de
mayor significado en la que cualquier usuario en Internet podrá encontrar respuestas a sus

34
preguntas de forma más rápida y sencilla gracias a una información mejor definida.”. En
otras palabras es una mezcla de información enlazada de manera tal que puede ser
procesada automáticamente por las maquinas en una escala global (W3C, 2013).

La pregunta es cómo lograr una manera eficiente de representar la información en


la Web la cual permita ser localizada y accedida tanto por usuarios interesados como por
aplicaciones de forma automática. Para ello, en la Web Semántica, toda la información
debe ser expresada como declaraciones sobre recursos. Por ejemplo “el libro If Tomorrow
Comes fue escrito por Sidney Sheldon” o “esta página fue creada por X persona” (Lamarca,
2009).

Para poder explotar la Web semántica, se necesitan lenguajes semánticos más


potentes, esto es, lenguajes de marcado capaces de representar el conocimiento
basándose en el uso de metadatos y ontologías. Utilizando anotaciones RDF y RDF
Schema se pueden presentar algunas facetas sobre conceptos de un dominio del
conocimiento y se puede, mediante relaciones taxonómicas, crear una jerarquía de
conceptos. Pero se precisan lenguajes de marcado basados en RDF, con una mayor
expresividad y capacidad de razonamiento para representar los conocimientos que
contienen las ontologías. Además, estos lenguajes deben ser estandarizados y
formalizados para que su uso sea universal, reutilizable y compartido a lo largo y ancho de
la Web. Se necesita un lenguaje común basado en web, con suficiente capacidad
expresiva y de razonamiento para representar la semántica de las ontologías. De esta
forma, la utilización de lenguajes tales como OWL es un paso más en la consecución de la
Web Semántica (Heflin, 2009).

Es necesario, pues, crear una ontología o biblioteca de vocabularios


descriptivos/semánticos, definidos en formato RDF y ubicados en la Web para determinar
el significado contextual de una palabra por medio de la consulta a la ontología apropiada.
De esta forma, agentes inteligentes y programas autónomos podrían rastrear la Web de
forma automática y localizar, exclusivamente, las páginas que se refieran a la palabra
buscada con el significado y concepto precisos con el que interpretemos ese término. Por
lo tanto, para potenciar el uso deontologías en la Web, se necesitan aplicaciones
específicas de búsqueda de ontologías, que indiquen a los usuarios las ontologías y sus
características para utilizarlas en su sistema (HT, Hacia la Web Semántica, 2001).

35
2.9.1 CAPAS DE LA WEB SEMÁNTICA

• Unicode “Universal Code”.- Unicode es una codificación del texto que


permite utilizar los símbolos de diferentes idiomas. Esto permite expresar
información en la Web Semántica en cualquier idioma (Berners, Hendler, y
Lassila, 2001).
• URI “Uniform Resource Identifier”.- URI es el acrónimo de Uniform
Resource Identifier, o en castellano, Identificador Uniforme de Recursos. Es
un poco confusa la diferencia entre URI y URL, por lo que por ahora vamos a
decir que un URL es un recurso que puede ser accedido vía Internet
(Berners, Hendler, y Lassila, 2001).
• XML “Extensible Markup Language”, NS “Namespace” y XML Schema.-
XML proporciona una sintaxis superficial para documentos estructurados,
pero no impone restricciones semánticas en el significado de estos
documentos.XML Schema es un lenguaje que se utiliza para restringir la
estructura de los documentos XML y para ampliar XML con tipos de datos
(Berners, Hendler, y Lassila, 2001).
• RDF “Resource Description Framework”.- RDF es un modelo de datos
para objetos "recursos" y relaciones entre ellos, proporcionando una
semántica simple para éste. Este tipo de modelo de datos puede ser
representado en una sintaxis XML (Berners, Hendler, y Lassila, 2001).
• RDF Schema.- RDF Schema es un vocabulario utilizado para describir
propiedades y clases de recursos RDF, con una semántica para jerarquías
de generalización de dichas propiedades y clases (Berners, Hendler, y
Lassila, 2001).
• OWL (Web Ontology Language).- OWL añade más vocabulario para
describir propiedades y clases permitiendo definir relaciones entre clases,
por ejemplo, desunión. Cardinalidad, por ejemplo, "uno exacto", igualdad,
escritura de propiedades más rica, características de propiedades, por
ejemplo, simetría, y clases enumeradas (Berners, Hendler, y Lassila, 2001).
• Lógica, Prueba y Confianza.- Estas capas hacen usos de los datos de las
capas inferiores para calificar los datos relevantes, aplicar lógica y deducir
nueva información (Berners, Hendler, y Lassila, 2001).

36
A continuación en la Figura 2.3 se detallan cada una de las capas. Cabe destacar
que las capas de lógica, prueba y confianza no han sido desarrolladas en un nivel tan
intenso como las capas inferiores debido a que permanecen en un estado de boceto
(Cacheiro y Lago, 2008).

Figura 2.3 Capas de la Web Semántica.


Fuente (Cacheiro y Lago, 2008)

2.9.2 MAPA CONCEPTUAL DE LA WEB SEMÁNTICA

El mapa conceptual de la Figura 2.4 responde a una organización jerárquica, el


diseño se realizó con el software IMHC Camp Tool, un kit de herramientas orientadas al
diseño, mantenimiento e intercambio de mapas conceptuales, desarrollado por el Institute
for Human and Machine Cognition “IHMC” de la Florida (Rodríguez, Ronda, y León, 2005).

37
Figura 2.4 Mapa Conceptual de la Web Semántica.
Fuente (Rodríguez, Ronda, y León, 2005)

2.9.3 LA SEMÁNTICA EN LA WEB 3.0

Después de haber revisado los diversos conceptos que surgen alrededor de la


Web 2.0, Web 3.0 y Web Semántica, nos preguntamos, ¿cómo se puede lograr la
integración de la personalización en la futura Web? Realmente la personalización va
implícita en la Web 3.0, partiendo de que ésta es una evolución de la Web 2.0 unida a la
Web Semántica. La Figura 2.5 visualizamos que en la Web 2.0 los contenidos son
totalmente adaptables según la información que se pueda obtener del usuario y de su
entorno, y considerando también que uno de los objetivos de la Web Semántica es el poder
ofrecer a las máquinas mayor control sobre los contenidos de la Web, para así facilitar las
tareas a los usuarios, entendemos que el propósito final es proponer información más
concreta a los usuarios de forma más eficiente, como se ha detallado anteriormente, por
tanto personalizar los contenidos (Los Santos, Xóchitl, y Godoy, 2009).

38
Figura 2 5 Evolución de la Web e Incorporación de la Web Semántica en la Web 3.0.
Fuente (Los Santos, Xóchitl, y Godoy, 2009)

Se puede observar cómo ha evolucionado la Web en cuanto a la forma en que


interactúan todos los actores y el contenido. En la Web Semántica, la colaboración entre
usuarios y la información extra, puede ser usada para personalizar los contenidos.

Aunque es difícil poder aventurar cuál es el futuro de la Web, puesto que todo lo
referente a la tecnología evoluciona de forma muy rápida y en direcciones que no se
pueden predecir, intentaremos recoger qué tendencias existen en relación a la Web 3.0 y la
Web Semántica (Zeldman, 2006).

Las tecnologías de la Web 3.0, en su uso de datos semánticos; se han


implementado y usado ahora en una gran escala, principalmente en compañías para
conseguir una manipulación de datos más eficiente, aunque como se ha citado, poco a
poco van apareciendo nuevos servicios apoyados sobre la base semántica, y la tecnología
va evolucionando. En los últimos años, se ha potenciado el desarrollo para trasladar estas
tecnologías de inteligencia semántica al público general (Los Santos, Xóchitl, y Godoy,
2009).

39
El primer paso hacia la "Web 3.0" es el nacimiento de la "Data Web", ya que los
formatos en que se publica la información en Internet son dispares, como XML, RDF y
microformatos; el reciente crecimiento de la tecnología SPARQL, permite un lenguaje
estandarizado y una API para la búsqueda a través de bases de datos en la red. La "Data
Web" permite un nuevo nivel de integración de datos y aplicación inter‐operable, haciendo
los datos tan accesibles y enlazables como las páginas web. La "Data Web" es el primer
paso hacia la completa “Web Semántica”. En la fase “Data Web”, el objetivo es
principalmente, hacer que los datos estructurados sean accesibles utilizando RDF. El
escenario de la "Web Semántica" ampliará su alcance en tanto que los datos estructurados
e incluso, lo que tradicionalmente se ha denominado contenido semi‐estructurado, como
páginas web, documentos, etc., estén disponibles en los formatos semánticos de RDF y
OWL (Los Santos, Xóchitl, y Godoy, 2009)..

2.10 ONTOLOGIAS

Una máquina no puede comprender la información que procesa en ningún sentido


profundo de la expresión; sin embargo si los datos que procesa están estipulados
semánticamente mediante ontologías, es posible que la Inteligencia Artificial simule la
forma de razonar la inteligencia humana (Marín, 2007).

Una ontología se puede ver como un modelo de datos de conocimiento que


especifica una conceptualización, una forma de ver al mundo, contiene definiciones que
nos proveen del vocabulario para referirse a un dominio. Algunas de las características
típicas de las ontologías según Marín (2007) son aplicables a las bibliotecas digitales, como
ser:

• Posibilidad de existencia de ontologías múltiples para combinar dos o más


ontologías que introducen conceptualizaciones específicas.
• Abstracción de las ontologías para la creación de una red de ontologías para
tener una descripción completa del mundo.
• Multiplicidad de la representación. Un concepto puede ser representado de
muchas formas, por lo que pueden coexistir múltiples representaciones de
un mismo concepto.

40
• Mapeo de ontologías para establecer relaciones entre los elementos de una
o más ontologías, para establecer conexiones, especializaciones,
generalizaciones, etc.

2.10.1 MOTOR SEMÁNTICO

Consiste en aplicar la información que se obtenga de la ontología para dar


significado a las preguntas. Deberá ser capaz de determinar con qué clase o clases de la
ontología está relacionada, basándose en la información que proporcione. Como ya se ha
mencionado, el algoritmo de clasificación deberá ser independiente de la ontología usada,
con vistas a futuras ampliaciones del proyecto a otras ontologías (Gómez, Corcho, y
Fernández, 2003).

Además intentan tomar el sentido de una palabra como factor para los algoritmos
de ordenamiento y también pueden ofrecer al usuario posibilidades para desambiguar o
refinar su consulta. Estos son llamados también motores de búsqueda de tercera
generación, los cuales su vez utilizan las otras dos tecnologías de búsqueda textual y de
búsqueda de semántica latente a las que se suman otras específicas llamadas tecnologías
de Web semántica. Las caules son: ontologías, RDF “Resource Description Format”, OWL
“Ontology Web Language”. Las tecnologías de Web semántica se basan en lógicas de
descripción para dar cuenta de manera formal y computable de la semántica de los objetos
de un sistema. Dentro de estos motores de tercera generación o motores de búsqueda
semánticos debemos hacer algunas distinciones (Bosch, 2010).

2.10.1.1 ORIENTADO AL USUARIO

Estos motores nos devuelven enlaces a páginas Web, y pueden usar internamente
tanto tecnologías de Web semántica como de LSI, Entre ellos tenemos a los siguientes:
True Knowledge, Hakia y PowerSet (Bosch, 2010).

2.10.1.2 ORIENTADOS AL SERVICIO WEB

Estos no son para el usuario final, sino que dan enlaces a útiles para los
especialistas que necesitan trabajar en la construcción de recursos de Web semántica,

41
devuelven enlaces a ontologías, archivos en OWL, a instancias de RDF. Entre ellos
tenemos: SOWL, WSE, Watson, Falcons, Sindice y Swoogle (Bosch, 2010).

2.11 METODOLOGÍA CIENTÍFICA

2.11.1 INTRODUCCIÓN A LA METODOLOGÍA CIENTÍFICA

Mientras los animales inferiores sólo están en el mundo, el hombre trata de


entenderlo. Por medio de la investigación científica, el hombre ha alcanzado una
reconstrucción conceptual del mundo que es cada vez más amplia, profunda y exacta. La
ciencia como actividad, como investigación pertenece a la vida social; en cuanto se la
aplica al mejoramiento de nuestro medio natural y artificial, a la invención y manufactura de
bienes materiales y culturales, la ciencia se convierte en tecnología (Bunge, 1959).

Ciencia formal Objeto de estudio; ideal. Los enunciados consisten en relaciones


entre signos. Para demostrar los teoremas se utiliza la lógica. Ciencia fáctica Objeto de
estudio; material. Los enunciados se refieren en su mayoría a entes extra científicos,
sucesos y procesos. Para confirmar sus conjeturas necesitan de la observación y/o
experimento. Los rasgos esenciales del tipo de conocimiento que alcanzan las ciencias
fácticas son la racionalidad y la objetividad. Por conocimiento racional se entiende:

• Que está constituido por conceptos, juicios y raciocinios y no por


sensaciones, imágenes, pautas de conducta, etc.
• El punto de partida del científico son ideas que pueden combinarse de
acuerdo con algún conjunto de reglas lógicas con el fin de producir nuevas
ideas, inferencia deductiva.
• Que esas ideas no se amontonan caóticamente o, simplemente, en forma
cronológica, sino que se organizan en sistemas de ideas, esto es en
conjuntos ordenados de proposiciones, teorías.

Que el conocimiento científico de la realidad es objetivo, significa:

• Que concuerda aproximadamente con su objeto; vale decir que busca


alcanzar la verdad Fáctica.

42
• Que verifica la adaptación de las ideas a los hechos recurriendo a un
comercio peculiar con los hechos, observación y experimento, intercambio
que es controlable y hasta cierto punto reproducible.

Ambos rasgos de la ciencia fáctica, la racionalidad y la objetividad, están


íntimamente soldados (Bunge, 1959).

2.11.2 FUNDAMENTOS DEL MÉTODO CIENTÍFICO

2.11.2.1 RACIONAL

Es racional porque se funda en la razón, es decir, en la lógica, lo cual significa que


parte de conceptos, juicios y razonamientos, vuelve a ellos; por lo tanto, el método
científico no puede tener su origen en las apariencias producidas por las sensaciones, por
las creencias o preferencias personales. También es racional porque las ideas producidas
se combinan de acuerdo a ciertas reglas lógicas, con el propósito de producir nuevas ideas
(Oviedo, 2007).

2.11.2.2 ANALÍTICO

El método científico descompone todo lo que trata con sus elementos; trata de
entender la situación total en términos de sus componentes; intenta descubrir los
elementos que componen cada totalidad y las interrelaciones que explican su integración.
Por tal razón, los problemas de la ciencia son parciales y así con sus soluciones, más aun
los problemas son estrechos al comienzo, pero van ampliándose a medida que la
investigación avanza (Oviedo, 2007).

2.11.2.3 CLARO Y PRECISO

La claridad y la precisión del método científico se consiguen de las siguientes


formas:

Los problemas se formulan de manera clara, para lo cual, hemos de distinguir son
los problemas e, incluiremos en ellos los conceptos o categorías fundamentales (Oviedo,
2007).

43
El método científico inventa lenguajes artificiales utilizando símbolos y signos; a
estos símbolos se les atribuye significados determinados por medio de reglas de
designación (Oviedo, 2007).

2.11.2.4 VERIFICABLE

Todo conocimiento debe aprobar el examen de la experiencia, esto es,


observacional y experimental. Por tal razón la ciencia fáctica es empírica en el sentido de
que la comprobación de sus hipótesis involucra la experiencia; pero no es necesariamente
experimental y, por eso, no es agotada por las ciencias de laboratorio (Oviedo, 2007).

2.11.2.5 EXPLICATIVO

Intenta explicar los hechos en términos de leyes, y las leyes en términos de


principios; además de responder al como son los cosas, responde también a los porqués,
porque suceden los hechos como suceden y no de otra manera. La explicación científica
se realiza siempre en términos de leyes (Oviedo, 2007).

2.11.2.6 OBJETIVO

El método científico busca alcanzar la verdad fáctica mediante la adaptación de


las ideas a los hechos, para lo cual utiliza la observación y la experimentación.

El método parte de los hechos intentando describirlos tales como son para llegar a
formular los enunciados fácticos que se observan con ayuda de teorías se constituye en la
materia prima para la elaboración teórica (Oviedo, 2007).

2.11.3 ESTRUCTURA DEL MÉTODO CIENTÍFICO

Cuando se analiza un determinado fenómeno se procede sistemáticamente,


siguiendo una serie de etapas establecidas en sus pasos fundamentales. Esta secuencia
constituye el denominado método científico, o experimental que se estructura de:

2.11.3.1 OBSERVACIÓN O EXPERIMENTACIÓN

La observación consiste en un examen crítico y cuidadoso de los fenómenos,


notando y analizando los diferentes factores y circunstancias que parecen influenciarlos.

44
La experimentación consiste en la observación del fenómeno bajo condiciones
preparadas de antemano y cuidadosamente controladas. Sin la experimentación la Ciencia
Moderna nunca habría alcanzado los avances que han ocurrido (Oviedo, 2007).

2.11.3.2 ORGANIZACIÓN

Se refiere al análisis de los resultados cualitativos y cuantitativos obtenidos,


compararlos entre ellos y con los resultados de observaciones anteriores, llegando a leyes
que se expresan mediante formulas o en palabras (Oviedo, 2007).

2.11.3.3 HIPÓTESIS Y TEORÍA

En este paso se propone explicaciones tentativas o hipótesis, que deben ser


probadas mediante experimentos. Si la experimentación repetida no las contradice pasan a
ser teorías. Las teorías mismas sirven como guías para nuevos experimentos y
constantemente están siendo sometidas a pruebas. En la teoría, se aplica razonamientos
lógicos y deductivos al modelo (Oviedo, 2007).

2.11.3.4 VERIFICACIÓN Y PREDICCIÓN

El resultado final es la predicción de algunos fenómenos no observados todavía o


la verificación de las relaciones entre varios procesos. El conocimiento que un físico o
investigador adquiere por medios teóricos a su vez puede ser utilizado por otros científicos
para realizar nuevos experimentos para comprobar el modelo mismo, o para determinar
sus limitaciones o fallas. El físico teórico entonces revisa y modifica su modelo de modo
que esté de acuerdo con la nueva información. En esta interrelación entre la
experimentación y la teoría lo que permite a la ciencia progresar continuamente sobre una
base sólida (Oviedo, 2007).

2.12 TECNOLOGÍAS DE SOFTWARE

En la tecnología de software podemos mencionar a la Ingeniería de Software


como una disciplina de la ingeniería que comprende todos los aspectos de la
producción de software desde las etapas iníciales de la especificación del sistema,
hasta el mantenimiento de éste después de que se utiliza (Alfonso, Botía, y Mora,
2005).

45
En la ingeniería de software se aplican métodos y técnicas para resolver los
problemas que se presentan durante la gestión del proyecto. Dichos métodos, son
enfoques estructurados, cuyo propósito es facilitar la producción de software.

La Ingeniería de software provee de métodos para la gestión de proyectos de


software, cada método es un enfoque estructurado, cuyo principal propósito es facilitar
la producción de software de alta calidad y cada método busca que el software cumpla
con los atributos de un buen software, que no están asociados directamente con la
funcionalidad, más bien reflejan su comportamiento durante su ejecución (Alfonso,
Botía, y Mora, 2005).

Los atributos esenciales de un buen software según Mora (2005) son:

• Mantenibilidad: El sistema tiene que tener la posibilidad de evolucionar


para cumplir las necesidades de cambio de los clientes, debido a la
dinámica del entorno de los negocios.

• Confiabilidad: Para afirmar que un sistema es confiable, debe tener un


gran número de características como la fiabilidad, protección y
seguridad.

• Eficiencia: Un sistema debe aprovechar al máximo los recursos como la


memoria y los ciclos de procesamiento, entre otros.

• Usabilidad: El software debe ser fácil de utilizar, sin esfuerzo adicional,


por parte del usuario.

La ingeniería de abarca un conjunto de aéreas del conocimiento que son la


base fundamental para el desarrollo del proyecto estas se pueden decir que son (Mora,
2005):

• Requerimientos: Un requerimiento se define como una exigencia que


debe ser cumplida para dar solución a un problema del mundo real.
Contiene aéreas como: especificaciones de requerimientos, análisis
validación, clasificación, negociación, etc.

46
• Diseño: Es el proceso de definir la arquitectura, componentes, interfaces
y a otras características relativas al sistema como tal. Fundamentos,
claves en el diseño, estructura y calidad, son algunas de las aéreas
secundarias que comprende el diseño del software.

• Construcción: Se refiere a la creación detallada de un sistema software


a través de la combinación de codificación verificación pruebas de
unidad pruebas de integración y depuración.

• Pruebas: Consiste en la verificación dinámica del comportamiento de un


software ante un conjunto limitado de casos de prueba, contiene áreas
como: niveles de pruebas, técnicas de pruebas, etc.

• Mantenimiento: Las actividades de mantenimiento comienzan


teóricamente cuando el producto final el liberado, pero en la práctica
empieza desde etapas mucho más tempranas, debido a los cambios en
la necesidad del usuario a las que la aplicación debe adaptarse.

2.12.1 INGENIERÍA DE SOFTWARE

La Ingeniería de requerimientos proporciona el mecanismo apropiado pa ra


entender lo que el cliente quiere, analizar las necesidades, evaluar la factibilidad,
negociar una solución razonable, especificar la solución sin ambigüedades, validar la
especificación, y administrar los requisitos conforme estos se transforman en un
sistema operacional (Lacayo, 2013).

2.12.1.1 CARACTERÍSTICAS DE LOS REQUERIMIENTOS

Las características de un requerimiento son sus propiedades principales.


Un conjunto de requerimientos en estado de madurez, deben presentar una serie
de características tanto individualmente como en grupo. A continuación se presentan
las más importantes según Alfonso (2005):

• Necesario: Un requerimiento es necesario si su omisión provoca una


deficiencia en el sistema a construir, y además su capacidad,
características físicas o factor de calidad no pueden ser

47
reemplazados por otras capacidades del producto o del proceso.

• Conciso: Un requerimiento es conciso si es fácil de leer y entender.


Su redacción debe ser simple y clara para aquellos que vayan a
consultarlo en un futuro.

• Completo: Un requerimiento está completo si no necesita ampliar


detalles en su redacción, es decir, si se proporciona la información
suficiente para su comprensión.

• Consistente: Un requerimiento es consistente si no es


contradictorio con otro requerimiento.

• No ambiguo: Un requerimiento no es ambiguo cuando tiene una sola


interpretación. El lenguaje usado en su definición, no debe causar
confusiones al lector.

• Verificable: Un requerimiento es verificable cuando puede ser


cuantificado de manera que permita hacer uso de los siguientes
métodos de verificación: inspección, análisis, demostración o pruebas.

El proceso que sigue la ingeniera de requerimientos propuesto por Botía


(2005), se lleva a cabo a través de las siguientes siete funciones:

• Inicio: Se identifica una necesidad o un problema en las operaciones


que realiza una organización, teniendo que conseguir una comprensión
básica del problema.

• Obtención: Se recopila información de la forma en que actualmente se


trabaja, también se debe realizar la recopilación de requisitos.

• Elaboración: Se enfoca en el desarrollo de un modelo técnico refina do


de las funciones, características y restricciones del software. Se
identifican las relaciones y la colaboración entre clases y se produce
una variedad de diagramas complementarios.

48
• Negociación: Generalmente los usuarios sobrevaloran lo que se
puede lograr, o se proponen requisitos que entran en conflicto entre
sí. Por tanto el ingeniero de requisitos debe conciliar estos conflictos por
medio de un proceso de negociación y encontrar un equilibrio de dichos
requerimientos y asignarles una prioridad para su elaboración.

• Especificación: Describe la función y el desempeño de un


sistemas basado en computadora, y las restricciones que regirán su
desarrollo. La especificación sirve como base para las actividades de
ingeniería de software subsecuentes, pero pueden ser modificadas
en las iteraciones posteriores.

• Validación: Examina la especificación para asegurar que todos los


requisitos de software, se han establecido de manera precisa; Para
tal validación se incluyen a los Ing. de software, clientes y usuarios.

• Gestión: La gestión de requisitos permite identificar, controlar, rastrear


los cambios en los requerimientos del sistema, ya que dichos
requerimientos pueden ir cambiando durante el desarrollo del sistema.

2.12.2 INGENIERÍA DE USABILIDAD

El estándar ISO 9241 define la usabilidad como: "El grado en el que un


producto puede ser utilizado por usuarios específicos para conseguir objetivos
específicos con efectividad, eficiencia y satisfacción en un determinado contexto de
uso" (Ferrari, Mariño, y Sonia, 2014).

La usabilidad se centra en la experiencia y el rendimiento que un usuario


puede aprovechar de un sistema, para lograr sus objetivos tales como obtener
información que pueda ser útil. Para ello, el sistema debe contar con ciertos atributos
que están ligados a la usabilidad, los cuales según Nielsen Jacob (1990) son:

• Facilidad de aprendizaje: Se refiere a que el usuario aprenda la


funcionalidad básica del sistema, por cuenta propia, como para ser capaz de
realizar correctamente tareas dentro del sistema.

49
• Eficiencia: El número de transacciones por unidad de tiempo que el usuario
puede realizar usando el sistema. Lo que se busca es la máxima velocidad
de realización de tareas del usuario. Cuando mayor es la usabilidad del
sistema, más rápido es el usuario al utilizarlo, y el trabajo se realiza con
mejor rapidez.

2.12.2.1 IMPORTANCIA DE USABILIDAD

Durante el desarrollo la usabilidad evita el sobre diseño y reduciendo el número de


cambios posteriores requeridos en el producto. Los sistemas usables son más fáciles de
aprender y de utilizar, por tanto implican un menor coste de implantación, requieren menos
capacitación y menos mantenimiento (Mascheroni et al , 2012)

Los sistemas que mejor se ajustan a las necesidades del usuario, mejoran la
productividad y la calidad de acciones y las decisiones, reduciendo el esfuerzo. En casos
opuestos los sistemas difíciles de usar disminuyen la motivación y pueden incrementar la
posibilidad de un abandono del sistema. Tales situaciones suponen perdidas en los
tiempos de uso y no son explotados en su totalidad (Whiteside, Bennet, y Holtzblatt, 1988).

50
CAPÍTULO III

MARCO APLICATIVO

3.1 INTRODUCCIÓN

La presente tesis debe cumplir los objetivos establecidos, llegando correctamente


al análisis, el diseño del programa, implementación y funcionamiento; también que cumpla
los requerimientos de hardware y de software, en su desarrollo.

En este capítulo se trabaja con la herramienta metodológica en cascada, para el


desarrollo del buscador inteligente, con el fin de que los aspectos fundamentales y
positivos, proporcionen la construcción, pruebas e implementación del buscador inteligente,
con calidad y eficiencia.

Los aspectos fundamentales en la metodología en cascada con que se trabajo, en


la elaboración del prototipo, da la guía en forma ordenada, para el desarrollo, además
conforma una explicación detallada de cada evento a realizar, donde las etapas se muestra
en la Figura 3.1 con los siguientes pasos a seguir:

Figura 3.1 Etapas de la Metodología en Cascada.

51
La metodología en cascada ayuda en el análisis, la elaboración y construcción del
prototipo, dado que se verá crecer el desarrollo en cada etapa. Asimismo nos permite
alinear el software con el principal objetivo, ya que puede introducir cambios funcionales al
momento de construir y probar el prototipo.

Esta metódica de trabajo promueve la innovación, motivación y compromiso que


forma parte del proyecto, así mismo encontrar un ámbito propicio para desarrollar las
capacidades que requiere el proyecto.

Los siguientes puntos a considerar, se realiza mediante el estudio de las


tecnologías, para llegar a concluir su desarrollo.

• Cumplimento de expectativas: Se establece las expectativas indicando el


valor que le aporta cada requerimiento al proyecto, también se estima y con
esta información establece su prioridad. De manera regular, en los
demos comprueba que efectivamente los requisitos se han cumplido y
transmite feedback al equipo.
• Flexibilidad a cambios: La capacidad de reacción ante los cambios de
requerimientos generados por necesidades en la evoluciones a una versión
nueva, tomando este concepto la metodología en cascada no está diseñada
para adaptarse y ser flexible a los cambios de requerimientos, tal que
conlleva avanzar al siguiente nivel si se termino el anterior proceso.
• Mayor calidad del software: La metódica de desarrollo y la necesidad de
obtener una versión funcional después de cada iteración, ayuda a la
obtención de un software de calidad.
• Mayor productividad: Se consigue obtener motivaciones, para aprovechar
los tiempos en producción y los alcances, así construir una mejor
productividad en el proyecto.
• Predicciones de tiempos: Mediante estas metodologías se conoce la
velocidad media del trabajo, con lo que, es posible estimar fácilmente para
cuando se dispondrá de una determinada funcionalidad que todavía está en
marcha.

52
• Reducción de riesgos: El hecho de llevar a cabo las funcionalidades de
más valor en primer lugar y de conocer la velocidad del avanza en el
proyecto, permite despejar riesgos eficazmente de manera anticipada.

Con estos conocimientos y métricas del desarrollo se empieza a elaborar el


prototipo, tomando en cuanta ya lo mencionado para la su construcción y desarrollo.

3.2 REQUERIMIENTOS DEL SISTEMA

Realizando el análisis de requerimiento del sistema, se considero necesario los


siguientes componentes para la ejecución del sistema:

3.2.1 CONEXIÓN A INTERNET

Es necesario la conexión a internet, ya que en los procesos de verificación y de


análisis de cada documento encontrado en la red, serán estudiados e incorporados al
motor de búsqueda, para luego recuperarlos según el requiriendo del usuario, sin esta no
se podrá hacer la recuperación de la información. Además está programada la interfaz de
usuario vía on-line.

3.2.2 SERVIDOR DE PRUEBA

El servidor proporcionara la conexión al motor de búsqueda, además de solicitar


algunas consultas en caso de necesitar a una base de datos. En la etapa de pruebas es
importante contar con un servidor ya que se probara el sistema, con un conjunto de
usuarios, dando pie a sacar resultados y así contar con muestras del avance de el prototipo
en funcionamiento.

3.2.3 ESTACIÓN DE TRABAJO

Es un ordenador o computadora de escritorio potente, que pueda trabajar con el


software y que soporte las tecnologías para el desarrollo, así acomodarla para el tipo de
trabajo que necesitamos, que son la de desarrollo y programación. Es importante contar
con una computadora de última generación ya que el software que se instalara requiere
mínimamente arrancar de la mejor manera para luego trabajar sin dificultad ni lentitud.

53
3.3 REQUERIMIENTOS DEL SOFTWARE

Las herramientas para el desarrollo se muestran en la Tabla 3.1, donde cada


componente que se instalara para desarrollar el prototipo queda explicado a continuación:

Tabla 3.1 Herramientas de Desarrollo

LOGO HERRAMIENTA DESCRIPCIÓN

Plataforma libre y de código abierto que


permite la construcción y la edición de la
• Protégé 3.4
ontología, el cual los conceptos de
Taxonomía son incorporados.

El JDK nos permitirá hacer el desarrollo


para crear las aplicaciones y componentes
• Java SE 8
utilizando el lenguaje de programación
Java.

NetBeans IDE 8.1 proporciona


analizadores de código y editores para

• NetBeans IDE 8.1 trabajar con la última versión de Java 8,


también para manejar herramientas
HTML5 / JavaScript, Maven, Java EE con
PrimeFaces; mejoras en la compatibilidad
con PHP y manejo de Hibernate.

Facilita el mapeo de atributos entre una


base de datos relacional tradicional y el
modelo de objetos de una aplicación,
• Hibernate
mediante archivos declarativos XML, que
permiten establecer estas relaciones,
trabaja con la plataforma Java.

54
Herramienta de software para la gestión y
construcción de proyectos Java, de
construcción simple, basado en un
formato XML, sus dependencias de otros
módulos y componentes externos, y el
• Maven
orden de construcción de los elementos.
Viene con objetivos predefinidos para
realizar ciertas tareas claramente
definidas, como la compilación del código
y su empaquetado.

Es un framework de código abierto de


desarrollo de aplicaciones para la
plataforma Java. Ofrece mucha libertad a
• Spring Framework los desarrolladores en Java y soluciones
muy bien documentadas y fáciles de usar
para las prácticas comunes, hecha para la
web.

Servidor de aplicaciones que implementa


las tecnologías definidas en la plataforma
Java EE y permite ejecutar aplicaciones
• GlassFish
que siguen esta especificación, tomando
como base de desarrollo el Application
Server de Sun, Es gratuito, de código.

Librería de componentes para


JavaServerFaces (JSF) de código
• PrimeFaces abierto que cuenta con un conjunto de
componentes enriquecidos que facilitan la
creación de las aplicaciones web.

55
• Microsoft .NET MySQL Workbench es un gestor de base
Framework 4 de datos sencillo de usar y increíblemente
Client Profile rápido. También es uno de los motores de
base de datos más usados en Internet, la
• Visual C++ principal razón de esto es que es gratis.
Redistributable for
Visual Studio 2013

• MySQL
Workbench 6.3

3.4 ANÁLISIS

En esta etapa la observación y recolección de la información, presenta la


consideración de los puntos que ayuden a observar el comportamiento del sistema en
cuestión a una búsqueda semántica, recolectando información precisa y valiosa para
observar sus propiedades semánticas e incluyendo parte del lenguaje natural, con la que
interactúen y sean beneficiosas en el avance del proyecto.

En la recolección de la información se establece todo lo investigado, el cual servirá


para el desarrollo del prototipo, con las etapas de diseño y pruebas. Así dentro del análisis
es importante mencionar que los requerimientos se basan en la observación y
comportamiento del prototipo para luego concluir con el propósito.

3.4.1 RECUPERACIÓN DE LA INFORMACIÓN

Para realizar la recuperación de la información en la web ponemos en


consideración por su complejidad de la operación los siguientes componentes:

• Una colección de documentos: Un repositorio de donde se va a proceder


a recuperar la información, cuyos documentos pueden ser estructurados y/o
contener un descriptor de metadatos.
• Un lenguaje de consulta: Que son las palabras o términos de interés para
el usuario, a partir de los cuales se procederá a filtrar los documentos.

56
• Una aplicación: Encargada de gestionar los diferentes procesos como:
organización, selección y presentación de los documentos.
• Un gestor del repositorio: Programa encargado de las funciones básicas
del conjunto de documentos.
• Proceso de emparejamiento: Un evaluador que será el encargado de
determinar aquellos documentos que mejor asemejen a la consulta del
usuario.
• Proceso de relevancia: Aquel que determina el orden en que deben
aparecer los documentos encontrados.

Se busco nuevas formas para discriminar de manera efectiva los documentos


relevantes con aquellos que no lo son en un proceso de búsqueda. Dichas formas para la
recuperación de información, están sujetas a dos modelos con las cuales se trabajara que
son la Búsqueda exacta y al Búsqueda aproximada.

3.4.2 BÚSQUEDA EXACTA

En este enfoque se realiza una comparación exacta entre la consulta y los


documentos, los resultados son valores binarios 1 y 0. Cuando el resultado es 1 significa
que el documento satisface la búsqueda y es 0 cuando el documento carece de
información inherente a la búsqueda. Los documentos se listan en el mismo orden en que
fueron encontrados, para este tipo de recuperación tomamos en cuenta el modelo de
indexación booleana, que nos permite extraer y evaluar la información.

3.4.2.1 MODELO DE INDEXACIÓN BOOLEANA

Este modelo beneficia al indexar los documentos a partir de valores booleanos.


Esta representación es uno de los más utilizados debido a su simplicidad, utiliza la lógica
proposicional, algebra booleana y la teoría de conjuntos para expresar las consultas del
usuario. Su funcionamiento básicamente consiste en crear una matriz de términos y
documentos como muestra la Tabla 3.2, en donde las columnas 𝑡𝑡𝑖𝑖 contienen la lista de
términos por los cuales se va a discriminar un documento y las filas 𝑑𝑑𝑘𝑘 corresponde a cada
documento, la intersección entre el término 𝑡𝑡𝑖𝑖 y el documento 𝑑𝑑𝑘𝑘 se rellenan con unos
cuando el término 𝑡𝑡𝑖𝑖 está presente en el documento 𝑑𝑑𝑘𝑘 y cero cuando se produce lo
contrario.

57
Tabla 3.2 Matriz de Términos - Documentos

3.4.3 BÚSQUEDA APROXIMADA

Este tipo de recuperación es una variación al modelo booleano donde la


relevancia entre los documentos y la consulta de los usuarios ya no estaba limitada a un
verdadero o falso “0,1”, se optó por expresar la relevancia con cualquier valor real, teniendo
como mínimo valor el número cero, el cual representa la inexistencia de relevancia de un
documento y como límite superior un valor extraído experimentalmente

Además, dicho límite superior sirve como umbral en donde cualquier documento
que alcance o sobrepase dicho umbral será considerado altamente relevante, para este
estudio tomamos en consideración tres modelos que nos ayudan a la recuperación de
información.

También mencionar que los modelos pueden formar parte de un solo modelo,
donde en el momento de elaborar una consulta o búsqueda, estos modelos pueden
trabajar en forma separada o grupal dependiendo a la consulta.

3.4.3.1 MODELO DE BÚSQUEDA PROBABILÍSTICA

En este modelo utiliza la probabilidad como criterio de búsqueda. Los términos en


cada documento se muestra en la Tabla 3.3, a diferencia de la matriz propuesta en el
modelo de indexación booleana, la búsqueda probabilística asocia un peso 𝑤𝑤𝑖𝑖𝑗𝑗 que no es
más que la probabilidad de que el término 𝑡𝑡𝑖𝑖 aparezca en un documento relevante 𝑑𝑑𝑗𝑗, lo
cual se puede expresar matemáticamente de la siguiente forma: 𝑃𝑃 (𝑅𝑅\𝑡𝑡𝑖𝑖 𝑑𝑑𝑗𝑗) siendo R la
relevancia; o puede ser todo lo contrario, puede expresar la poca relevancia del documento
𝑑𝑑𝑗𝑗 con el término 𝑡𝑡𝑖𝑖 que matemáticamente se expresa como: 𝑃𝑃 (−𝑅𝑅\𝑡𝑡𝑖𝑖 𝑑𝑑𝑗𝑗). En definitiva este
modelo se encarga de determinar que tan probable es que el documento x con el término y
sea relevante para el usuario.

58
Tabla 3.3 Matriz de Búsqueda Probabilística

3.4.3.2 MODELO DE INFERENCIA BAYESIANA

En este modelo se utiliza una Red Bayesiana; un grafo acíclico, que significa que
no tiene ciclos; que para cada vértice v, no hay un camino directo que empiece y termine
en v; dirigido en el cual cada nodo representa variables aleatorias y los arcos que unen los
nodos entre sí representan relaciones de causa, por otra parte una probabilidad condicional
representa la fuerza de inferencia entre las variables. Para un sistema de RI, una Red
Bayesiana se estructura de la siguiente manera:

Los nodos raíz representan los documentos sobre los cuales se va a realizar la
búsqueda, los nodos hijos de cada nodo raíz “Documento 𝑑𝑑𝑗𝑗” representan los términos 𝑡𝑡𝑖𝑖
presentes en cada documento.

Los nodos terminales en cambio simbolizan la consulta del usuario, o en su


defecto la raíz de los términos presentes en la consulta del usuario; lo expuesto
anteriormente se puede observar en la Figura 3.2, además que todos los arcos que unen
los nodos padres “documentos” con los nodos hijos “términos de los documentos”
representan una probabilidad condicional de que el término esté presente en el documento.

Finalmente la relevancia es medida en base al apoyo evidencial de las


observaciones de cada documentos con respecto a la consulta.

59
Figura 3.2 Red Bayesiana para la Recuperación de la Información

3.4.3.3 MODELO VECTORIAL

El funcionamiento básico es tomado del modelo booleano, con marcadas mejoras.


La representación lógica de los documentos en el modelo booleano consistía en un vector
binario, en cambio en el modelo vectorial se trabaja con un vector de pesos 𝑤𝑤𝑖𝑖𝑗𝑗, el cual
indica el grado de relevancia del término 𝑡𝑡𝑖𝑖 en el documento 𝑑𝑑𝑗𝑗, esta relevancia suele estar
sujeta a la frecuencia con que el término 𝑡𝑡𝑖𝑖 aparece en el documento 𝑑𝑑𝑗𝑗. La naturaleza del
peso 𝑤𝑤𝑖𝑖𝑗𝑗 puede ser de varios tipos: binario, entero o real. Estos vectores de peso se van
creando por cada documento en cuestión, hasta formar una matriz como la que se ilustra
en la Tabla 3.4.

Tabla 3.4 Matriz de Frecuencia de Términos

60
3.4.4 ONTOLOGÍAS

Las ontologías ayuda a interpretar la existencia del ser, en las ciencias de la


computación y el área de la inteligencia artificial implícito el lenguaje natural, trabaja
utilizando especificaciones formales de un conjunto de términos, el cual permite interpretar
y relacionar estos términos entre sí definiendo el concepto en el vocabulario. Siendo esta
una herramienta para la interpretación de conocimientos a través de conceptos.

El uso de las ontologías presenta etapas o fases de las cuales se ve en la Figura


3.3, así se interpreta la actitud y el funcionamiento de esta herramienta semántica.

Figura 3.3 Fases de las Ontologías

3.4.4.1 ACCIONES ONTOLÓGICAS

En términos generales las ontologías contemplan las siguientes acciones:

• Clases, subclases o conceptos: Los conceptos son la idea básica que se


intenta formalizar al momento de interpretar los términos.
• Slots o propiedades, también llamados roles: Delimitan las propiedades y
características de cada concepto describiendo sus rasgos y atributos.
• Restricciones: Describen los valores que una propiedad puede tomar.
• Instancias: Representan objetos determinados de un concepto.

61
• Axiomas: Son teoremas que se declaran sobre relaciones que deben
cumplir los elementos de la ontología.

3.5 DISEÑO DEL PROGRAMA

3.5.1 DISEÑO ONTOLÓGICO

Los criterios de diseño que se presentan a continuación fueron propuestos por


Thomas R. Gruber, quien ha desarrollado trabajos sobre definición de ontologías en el área
de la Inteligencia Artificial.

Los Criterios de Diseño representan las siguientes características:

• Claridad: Las definiciones deben ser objetivas e independientes del


contexto social.
• Coherencia: Los axiomas que define deben ser lógicamente consistentes.
• Extensibilidad: La ontología debe prestarse para definir nuevos términos
basada en el vocabulario existente.
• Sesgo de codificación mínima: Se produce cuando una serie de opciones
de representación se realizó únicamente a conveniencia de la notación o
ejecución.
• Compromiso ontológico mínimo: La ontología debe hacer la menor
cantidad posible de afirmaciones sobre el mundo que está modelando.

3.5.2 HERRAMIENTA PARA LA CONSTRUCCIÓN ONTOLÓGICA

Protégé.- Es una plataforma de código abierto con un conjunto de herramientas


para la construcción de modelos de dominio y las aplicaciones basadas en el conocimiento
con ontologías. También implementa un amplio conjunto de estructuras de modelado del
conocimiento y las acciones que apoyan la creación, visualización y manipulación de
ontologías en diversos formatos de representación.

La plataforma de Protégé soporta dos formas de modelado de conocimiento,


Marcos “frames” y Lógica de descripción “DL”.

62
El editor Protégé-Frames permite construir y poblar las ontologías que están
basados en marcos, de acuerdo con la Open Knowledge Base protocolo de conectividad
“OKBC”. En este modelo, una ontología consta de un conjunto de clases organizadas en
una jerarquía de subsunción para representar los conceptos más destacados de un
dominio, un conjunto de espacios asociados a las clases para describir sus propiedades y
relaciones, y un conjunto de instancias de dichas clases ejemplares individuales de los
conceptos que contienen valores específicos por sus propiedades.

El editor Protégé-OWL permite a los usuarios construir ontologías para la Web


Semántica, en particular en el lenguaje de la Web del W3C “OWL”. Una ontología OWL
puede incluir descripciones de las clases, las propiedades y sus instancias. Teniendo en
cuenta como una ontología, la semántica formal de OWL especifica cómo derivar sus
consecuencias lógicas, hechos, es decir, literalmente, no presentes en la ontología, sino
que entraña la semántica. Estas vinculaciones pueden basarse en un solo documento o
varios documentos distribuidos que se han combinado con mecanismos definidos.

Sus principales características incluyen:

1. Modelo de conocimiento extensible para permitir a los usuarios redefinir las


primitivas de representación.
2. Una salida de formato de archivo personalizable para adaptarlo a cualquier
lenguaje formal.
3. Una interfaz de usuario personalizable.
4. Un plug-in con arquitectura potente para permitir la interacción con otras
aplicaciones.

Siendo la ontología de este proyecto, un modelo consistente con frames y OWL se


utilizará Protégé en la versión 3.4 como el editor de ontologías. En él se hará la edición de
la ontología, creada para realizar el motor del prototipo de buscador semántico.

3.5.3 ARQUITECTURA PROTÉGÉ

Siendo la ontología una herramienta importante para el proyecto, se aplica el


modelo consistente con frames, así para este propósito se utiliza Protégé como constructor
y editor de ontologías en este proyecto.

63
En él se observara cual su arquitectura para empezar a crear y realizar el motor
semántico para el prototipo del buscador semántico.

La arquitectura de protégé, tienen tres niveles, como indica la Figura 3.4, indica la
interfaz donde mediante un ingreso de datos, se podrá ingresar al nivel del núcleo para así
especificar con que propiedad trabajara, luego en almacenamiento persistente, aplicara el
mateo de cada documento incorporado a la plataforma, para luego recuperarlo en formatos
de interpretación, para su publicación y muestra en la interfaz.

Figura 3.4 Arquitectura de Protégé

3.5.4 MODELO Y ARQUITECTURA DEL PROTOTIPO

La arquitectura propuesta para el prototipo del Buscador Inteligente, donde se


tendrá acceso a una página, el en cual se podrá introducir las consultas que se desea, las
cuales serán tomadas para procesarlas y generar un código XML, el cual será llevado
hasta la plataforma de los agentes.

64
Se cuenta con el proceso de cargar la página del buscador cuando el usuario
acceda a su consulta; cabe anotar que en la misma página donde realiza la consulta se
mostrará posteriormente los resultados obtenidos.

Se observa en la Figura 3.5 en funcionamiento de los recursos propuestos


anteriormente, donde así partirá desde la consulta del usuario, luego obteniendo los
términos a manejar con las clases o subclases ontológicas, permite realizar consultas al
motor Protégé, con una relación a la BD, una vez obtenida la información, la salida
adquiere el procesamiento y transformación, para la revelación de los resultados.

Figura 3.5 Arquitectura del Prototipo

65
3.6 CODIFICACIÓN

3.6.1 CONSTRUCCIÓN DE ONTOLOGÍAS

1. Determine el dominio y alcance de la ontología.- Es muy importante


determinar el sector específico para el cual se va a desarrollar la ontología,
ya que ese será el dominio. El alcance de la misma, depende de qué es lo
que se quiere resolver con ella, es decir, qué información contendrá la
ontología para responder a las búsquedas de quienes la usen.
2. Considere la reutilización de ontologías existentes.- Revise en el medio
si ya existen ontologías referentes al dominio que usted desea trabajar, esto
le puede ayudar a enriquecer su ontología u ofrecer una base para iniciar la
construcción de la suya.
3. Enumere términos importantes para la ontología.- Liste los conceptos
que considere pertinentes para formar su ontología, por ahora no es
necesario preocuparse por las relaciones entre conceptos, recuerde que la
ontología se va arreglando a través del tiempo.
4. Definir las clases y la jerarquía de clases.- Se seleccionan términos que
describan de forma general los conceptos enumerados en el paso 3, éstos
serán los nombres de las clases.
5. Definir las propiedades de las clases.- Los slots son propiedades que
poseen los conceptos, atributos que se les puede asociar.
6. Definir las facetas de los slots.- Los slots tienen diferentes facetas que
describen los tipos de valores que puede admitir el slot. Por ejemplo tipo de
valor, valores admitidos, número de valores, entre otros.
7. Crear instancias.- Utilizados para representar valores específicos de
objetos de una clase.

3.6.1.1 CONSTRUCCIÓN Y EDICIÓN ONTOLÓGICA CON PROTÉGÉ

El desarrollo de la ontología para el prototipo en este proyecto, se basó en la


“ordenación”. Se trata de la ciencia de la clasificación o llamada también taxonomía,
“Computing Classification System”.

66
La construcción y edición de la ontología se desarrolló en Protégé versión 5.0, el
cual los conceptos de Taxonomía son incorporados, donde se llevó a cabo con los
siguientes pasos:

PASO 1. ENTORNO DE TRABAJO PROTÉGÉ

La pestaña Classes, es donde se empieza a colocar los conceptos que definirán


el dominio de la ontología. Aparece una Clase predeterminada Thing, debajo de ella se puede
introducir el dominio con el cual se trabajara inicialmente para el prototipo, como muestra la
Figura 3.6, donde se observa un único botón habilitado: Add subclass, ingresando se puede
añadir clases y subclase. En la interfaz también podemos ver dos ventanas, Annotations
y Description, que permiten, para cada clase, agregar anotaciones y descripciones
respectivamente.

Figura 3.6 Nuevo Proyecto para Desarrollar Ontologías en Protégé 5.0.

67
PASO 2. CREACIÓN DE LA CLASES PRINCIPAL

Para ilustrar la construcción de las ontologías, se ingresa a la opción Add


subclass, donde se toma como clase principal “Mamíferos”, y luego se acepta, se puede
observar el procesos en la Figura 3.7.

Figura 3.7 Creación de la Clases Principal.

PASO 3. CONSTRUCCIÓN DE LA CLASE Y SUBCLASES ONTOLÓGICAS

Una vez creada la clase principal del dominio, se selecciona esta y se nota que se
habilitan tres botones, el primero como ya se vio permite agregar una subclase, el segundo
permite agregar una clase equivalente y el tercero permite eliminar una clase. A cada clase
hay que asignarle un nombre y de manera automática se da una URL, esto es debido a
que cada concepto se está almacenando en un lenguaje estándar para ser manipulado, se
observar en la Figura 3.8, el armado de la siguiente estructura de dominio ontológico.

Figura 3.8 Construcción de la Clase y Subclases Ontológicas.

68
PASO 4. AGREGAR INSTANCIAS

El siguiente paso de esta ontología es agregar instancias, es decir objetos que


prueben la validez de la ontología, para ello se ingresa a la pestaña de Individuals, donde
se agrega un individuo o instancia, se usa el botón de agregar individuos, marcado en la
imagen, como se observa en la Figura 3.9.

Figura 3.9 Agregar Instancias.

PASO 5. CULMINACIÓN DE LA ESTRUCTURA ONTOLÓGICA

Las instancias que se agregan no están asociadas a ninguna clase en particular,


para asignarlas hay que regresar a la pestaña de Classes, seleccionar la clase a la que se
desea agregar individuos y seleccionar la opción Members para integrarlos, como se ilustra
en la Figura 3.10.

Figura 3.10 Estructura Ontológica Concluida.

69
PASO 5. FORMATO DE LA ONTOLOGÍA CONSTRUIDA Y GUARDAR

Resource Description Framework, RDF/XML.- Con este lenguaje de


representación se desarrolla por el World Wide Web Consortium “W3C”, el cual sirve para
la representación de los metadatos.

Web Ontology Language, OWL/XML.- Con este lenguaje de marcado para


publicar y compartir datos usando ontologías en la World Wide Web “WWW”. OWL está
construido sobre RDF.

Sin entrar en muchos detalles sobre el estándar, lo que estos dos formatos
principales nos quieren decir es que las ontologías van más allá del contenido de
información, se toma también en cuenta la estructura y contexto del modelo generado, el
cual se puede compartir e implementar en diferentes tecnologías. De preferencia hay que
seleccionar el formato OWL/XML.

Finalmente, hay que salvar la ontología hecha, para ello se ingresa a File -> Save
as, lo que nos presenta una ventana con diferentes formatos para salvar el archivo, tal
como se ve en la Figura 3.11.

Figura 3.11 Formato de la Ontología.

Una vez seleccionado el formato, podemos asignar nombre y guardar el archivo, el


cual se almacenará con la extensión “nombre.owl”.

70
3.6.2 CONSTRUCCIÓN DE BD EN MYSQL

A continuación, se describe cada tabla de la base de datos, que permitirá el


manejo y la obtención en base a consultas, las cuales se relacionaran con el motor del
prototipo, con el fin de mostrar los resultados adecuados para el usuario.

Administrador.- La tabla ADMINISTRADOR permitirá el empleo de


funcionalidades orientadas a la valoración de preguntas, comentarios, niveles de
privacidad en preguntas publicadas como (privada, pública), entre otros y además el control
de usuarios en la red como edición y censura.

Este permitiría aumentar la relevancia en las valoraciones que haga un usuario


dependiendo de la cantidad y tipo de acciones que lleve a cabo en el servidor, también
para los permisos en acciones dentro del sistema, tal como la configuración en la base de
datos.

Control de Búsquedas.- La tabla CONTROL_BÚSQUEDAS gestiona las


preguntas publicadas en el buscador. Se permitirá el alta de búsquedas, la modificación de
las mismas, y su baja en algunos casos. La categorización de preguntas se basará en la
ontología correspondiente, pudiéndose acceder a ellas a través de ontologías de un
directorio. Además posteriormente para otras versiones se podrá incorporar posteriormente
el idioma en el cual se busca.

Motor Semántico.- La tabla ONTOLOGÍA consiste en aplicar la información que


se obtenga de la ontología para dar significado a las preguntas. Será capaz de determinar
con qué clase o clases de la ontología está relacionada, basándose en la información que
proporcione Protégé sobre dicha búsqueda. Como ya se ha mencionado, el algoritmo de
clasificación deberá ser independiente de la ontología usada, con vistas a futuras
ampliaciones del proyecto a otras ontologías.

Preguntas para Búsquedas.- La tabla BUSQUEDAS será un servicio que


permitirá obtener un listado de preguntas almacenadas en el servidor, siguiendo el
estándar del buscador usará técnicas de Web semántica, apoyado en el Motor Semántico,
nos sirve para la creación de un índice de preguntas basado en la ontología
correspondiente.

71
Las claves de búsqueda serán a su vez procesadas por el clasificador semántico
para poder obtener un listado de preguntas relacionadas con la búsqueda, ordenado por
relevancia. Con el objetivo de mantener la escalabilidad, será necesario indicar, a parte de
las claves de búsqueda, el dominio sobre el que se quiere buscar, especificado por la
ontología (Protégé).

Ya descritas las tablas de la BD, se muestra la Figura 3.12, donde se visualiza el


modelo relacional, al cual se acudirá en una consulta, para interpretar mejor la búsqueda y
poder asegurar el resultado final de la mejor forma.

Figura 3.12 Diagrama Modelo Entidad Relación.

3.7 PRUEBA

Para emitir pruebas en el buscador, se empieza por identificar algunos símbolos y


operadores, donde se identifican al momento de emitir una búsqueda, el motor de
búsqueda hace más eficiente esta consulta. Siguiendo este criterio podemos hacer la
prueba con los siguientes casos:

72
3.7.1 BÚSQUEDA EXACTA

En este caso podemos escribir una frase entre comillas "escribir frase así" para
buscar las palabras exactas en el mismo orden, se puede observar en la Figura 3.13.

Figura 3.13 Resultados de Búsqueda Exacta.

3.7.2 BÚSQUEDA POR TIPO DE ARCHIVO

Para buscar tipos de archivos específicos, como PDF, PPT, XLS o DOC, se debe
mencionar el tipo al final de las búsquedas, por ejemplo "mamíferos en pdf", luego solo se
observara el resultado, como en la Figura 3.14.

Figura 3.14 Resultados por Tipo de Archivo.

73
3.7.3 BÚSQUEDAS CON MAYÚSCULAS O MINÚSCULAS

Las búsquedas no distinguen mayúsculas de minúsculas. Obtendrás los mismos


resultados al buscar tanto por minúsculas como mayúsculas, ver Figura 3.15.

Figura 3.15 Resultado de Mayúsculas y Minúsculas.

3.7.4 BÚSQUEDAS CON O SIN ORTOGRAFÍA

Los navegadores ya tienen el corrector ortográfico se puede utilizar


automáticamente la ortografía más común de una palabra, tanto si la escribes
correctamente como si no, además el motor de búsqueda obtendrá los mismos resultados
en caso de que se utilice acentos como en el caso que no se utilice, ver Figura 3.16.

Figura 3.16 Resultados sin Ortografía.

74
3.8 IMPLANTACIÓN

3.8.1 INTERFACE DE USUARIO

Las pantallas de interacción del sistema con el usuario es una parte esencial ya
que en la metodología en cascada plantea que el proyecto sea eficiente, concreto y una
buena interface de uso, con el fin de que el usuario maneje de forma fácil, que encuentre
los resultados de la mejor manera, rápida y entendible.

INICIO: En esta pantalla se da la bienvenida al sistema como muestra la Figura


3.11, el cual se pone al tanto a los usuarios con un resumen de lo que se trata el buscador
inteligente, además compartimos la experiencia social, económica, tecnológica y científica
planteada en el capítulo I, también damos algunos beneficios importantes que te brinda el
buscador inteligente.

Figura 3.17 Página Inicio del Buscador Inteligente.

75
BUSCADOR: Una vez ingresado a la vista del Buscador Inteligente, ya se puede
realizar una búsqueda en esta pestaña, también describe con que tecnologías realizamos
el Buscador Inteligente y como está compuesto, como muestra la Figura 3.12.

Figura 3.18 Página para la Búsqueda de Información.

76
RESULTADO: En esta pantalla una vez emitida la consulta por el usuario, se
muestra los resultados obtenidos por el motor de búsqueda según lo deseado, luego el
usuario podrá ingresar a cualquiera de las opciones que brinda el buscador, al ingresar les
derivara al sitio o a la página web de destino, como se ve en la Figura 3.13.

Figura 3.19 Resultados de la Búsqueda de Información.

77
CAPÍTULO IV

PRUEBA DE HIPÓTESIS

4.1 INTRODUCCIÓN

Los capítulos anteriores han mostrado como puede estimarse los resultados a
partir de los datos contenidos en una muestra, también mencionar que a partir de una
colección de documentos, llegar a concluir la recuperación de la información, el cual fueron
descritas en la ontología y las otras propiedades propuestas.

Debido a los costos para realizar las pruebas, se determino realizar las pruebas
mediante un servidor local, donde inicialmente se tomo 10 usuarios por día, para que
puedan utilizar el sistema, como también aun el sistema no es conocido, se definió hacerlo
de esta manera durante 8 días, para probar el funcionamiento y estimar los resultados.

La Figura 4.1 muestra cómo vamos a aceptar o rechazar la hipótesis, siguiendo


todo lo escrito y trazado en los capítulos anteriores.

Figura 4.1 Hipótesis por Demostrar.

La presente tesis usara como prueba de demostración, el estadístico ji-cuadrado


o chi cuadrado, que tiene distribución de probabilidad del mismo nombre, sirve para
someter a prueba la hipótesis referida a distribuciones de frecuencias.

78
En términos generales, esta prueba contrasta frecuencias observadas con las
frecuencias esperadas de acuerdo con la hipótesis nula. Describe el uso del estadístico chi
cuadrado para probar la asociación entre dos variables utilizando una situación hipotética y
datos simulados.

Luego se describe su uso para demostrar nuestra hipótesis, cuando se pretende


representar la distribución real de los datos de una muestra determinada. A esto se le llama
evaluar la bondad de un ajuste. Probar la bondad de un ajuste es ver en qué medida se
ajustan los datos observados a una distribución teórica o esperada. Para esto, se utiliza
una segunda situación hipotética y datos simulados, con esa justificación aplicamos la
demostración.

4.2 PRUEBA DE DEMOSTRACIÓN

Para aprobar o rechazar la hipótesis, se hace un estudio con 10 usuarios, donde


cada usuario podrá utilizar el sistema, de dos formas, durante 8 días, en los cuales
accederá a la recuperación de la información ya sea directa o por aproximación, los
resultados obtenidos se muestran en la Tabla 4.1. Determinando si los resultados
obtenidos son consistentes con los esperados.

Tabla 4.1 Resultados Obtenidos.

79
4.2.1 SOLUCIÓN

Plantear las Hipótesis Nula H0 y Alternativa H1

Recordamos que la presente tesis tiene como hipótesis:

80
• H0: Un Buscador Inteligente basado en propiedades de la semántica como la
ontología, indexación booleana e inferencia bayesiana, mejora los resultados
en un proceso de búsqueda de información de acuerdo a las necesidades del
usuario.

Invirtiendo la hipótesis tenemos:

• H1: Un Buscador Inteligente basado en propiedades de la semántica como la


ontología, indexación booleana e inferencia bayesiana, no mejora los
resultados en un proceso de búsqueda de información de acuerdo a las
necesidades del usuario.

Al determinar la prueba chi cuadrado, se debe probar que la hipótesis nula H0,
refuta la hipótesis alternativa H1.

Ajustes de datos

Los datos obtenidos en la muestra, son ajustados y resueltos en forma general,


con el fin que los resultados se acomoden al modelo propuesto para su verificación y
demostración.

En la Tabla 4.2 se puede observar los resultados obtenidos en la muestra de cada


usuario, donde se calcula los resultados totales de los usuarios que ingresaron al sistema
durante el proceso de búsqueda.

Tabla 4.2 Resultados Totales de la Muestra.

81
Ajustar el nivel de significación al 5%, debido a que los proyectos se adecuan a
este valor, al momento de realizar los cálculos correspondientes.

α = 0.05

El valor de la población es multinomial, donde cada usuario se clasifica según sus


prioridades y según los casos donde realizan sus búsquedas, tal como se procese a la
recuperación de la información.

Los dos procesos en los cuales el motor semántico puede definir cuál es el más
práctico para esa consulta o búsqueda, se puede decir que se toma el valor K = 2, por la
observación del comportamiento en los procesos ejecutados.

Frecuencia observada FOi

Tabla 4.3 Frecuencia Observada FOi.

Frecuencia Esperada FEi

FEi = n (Pi)

Tabla 4.4 Frecuencia Esperada FEi.

Por el estadístico Chi Cuadrado

82
Grado de libertad

GL = K - (m - 1)

Dado que la cantidad de categorías es m = 0; porque no está estimado ningún


parámetro, reemplazando tememos:

GL = 1

Tabla Distribución Chi Cuadrado X2

P = Probabilidad de encontrar un valor mayor o igual que el chi cuadrado tabulado,


ν = Grados de Libertad

Siguiendo la Tabla 4.5 de la distribución chi cuadrado se obtiene el valor, tomando


en cuenta los valore ya resueltos.
2
Tabla 4.5 Distribución Chi Cuadrado X .

Donde en la representación de la Figura 4.2 se delimita el grado de aceptación de


la hipótesis, según el valor obtenido por las muestras:

X2 = 3.8415

83
Figura 4.2 Regiones de Aceptación.

4.2.2 CONCLUSIÓN

X2muestral ≤ X2

Como el 0.002 no es mayor de 3.8415, no se rechaza H 0 y por lo tanto se


concluye que con α = 0.05 el Buscador Inteligente, mejora los resultado de búsqueda.

84
CAPÍTULO V

CONCLUSIONES Y RECOMENDACIONES

5.1 CONCLUSIONES

El objetivo de este trabajo era realizar un buscador inteligente, que se base en el


comportamiento semántico y el lenguaje natural, el cual mejore los procesos de búsqueda
de información, que emiten los usuarios en la web, el cual se llego a cumplir con lo
mencionado a continuación.

La aplicación del comportamiento semántico, mejoró los resueltos obtenidos en


los procesos de búsqueda, gracias a la construcción y edición de las ontologías, el cual se
adecuan a los requerimientos de los usuarios al momento de emitir la búsqueda de
información. Además permite que los resultados que se generen por una consulta sean
mucho más sesgados y precisos, simplificando la tarea, entre los resultados que el
buscador arroja, pasándole esta tarea al motor de búsqueda aprovechando la capacidad
de cálculo de éstas.

Las ontologías se muestran como una forma coherente y completa, para


representar el conocimiento en un dominio específico, el beneficio de las ontologías radica
en que tienen abundante poder expresivo en la lógica de descripción, pueden tener la
extensión que sea suficiente para representar el conocimiento que se desee. Además
aplicando las ontologías se lleva a la representación del conocimiento, el cual una maquina
o un sistema computacional lo pueda procesar e interpretar, con este fin se concluye que el
manejo de las ontologías mejora la interpretación del lenguaje humano.

Para reducir los resultados repetitivos en un proceso de búsqueda, se incorporo


dentro del motor de búsqueda las aplicaciones de los modelos de recuperación de la
información, estos generan un resultado de aproximación, tal que en el momento de
mostrar los resultados se determina cuales son los apropiados, con el propósito de aceptar
o rechazar el documento a ser analizado.

85
Los modelos de recuperación de la información, proceden al estudio y estimación
del documento, donde para ser un resultado valido, tiene que pasar por este análisis,
concluyendo que para ser mostrado debe tener la mayor parte de coincidencias exactas,
tomando los términos de la consulta que incorpora el usuario y el documento encontrado
en la web.

Según lo investigado y aplicando la tecnología necesaria para el desarrollo del


buscador inteligente, se mejoro el proceso de una búsqueda, tal que presenta resultado
adecuados, además el sistema tiene una interfaz amigable y fácil de usar, así se llega a
satisfacer la demanda de los usuarios al momento de emitir su búsqueda.

Por último en una consulta emitida por el usuario, se extrae de forma rápida los
resultados, así llegando a que el usuario visualice en tiempo breve sus peticiones, lo cual
gracias a la estructura propuesta para la construcción y desarrollo hace que el proceso ese
cortó en base al tiempo.

5.2 RECOMENDACIONES

Queda mucho trabajo por hacer para expandir completamente el uso de la Web
Semántica, como el desarrollo de buscadores semánticos que logren identificar cualquier
dato en formato XML, almacenarlo, interpretarlo para luego devolverlo en forma de
resultados más precisos. También desarrollar otras herramientas que hagan uso de los
datos guardados en el formato XML, para así transformarlos de datos existentes en las
páginas Web.

Incentivar a Conferencias tomando en consideración el uso de la Web Semántica


a nivel mundial. Deben ser orientadas no sólo a personas en el área de la informática sino
también a empresarios y comerciantes, para que descubran las ventajas de la tecnología, y
así promuevan sus negocios en este ámbito que llega a ser muy beneficioso.

En lo posible no trabajar con demasiadas herramientas ya que pueden


presentarse problemas al momento de integrarlas, además pueden consumir muchos
recursos en tiempo y hardware, es bueno enfocarse siempre en una sola forma de obtener
resultados, ya que cada estudio presenta diferente forma de elaboración y no siempre se
puede adecuar a lo que ya se tiene .

86
Ampliar el dominio específico de las ontologías desarrolladas, de tal forma que
pueda abarcar la gran mayoría de temas del material bibliográfico disponible en la web, el
cual el manejo de las ontologías es una herramienta muy útil al momento de interpretar el
lenguaje humano.

En el desarrollo del prototipo, han quedado varias ideas en el tintero, que no han
sido implementadas finalmente. Como en la usabilidad de la aplicación, tal que se puede
mejorar la experiencia del administrador del buscador. Para un nuevo caso de estudio y
tener una nueva versión del prototipo se puede incorporar, la parte de multimedia
reconocimientos de imagen, voz y videos, donde no se contempló dese el inicio de la tesis
estos temas.

87
BIBLIOGRAFÍA

Abián, M. (2009). Buscadores Semánticos: Comprender para encontrar. Recuperado el 11


de 2015, de Parte Dos: http://www.wshoy.sidar.org/index.php?2009/07/01/46-
buscadores-semanticos-comprender-para-encontrar-parte-2.

Abián, M. (2009). Buscadores Semánticos: HAKIA por dentro y por fuera. Recuperado el 10
de 2015, de Primera Parte: http://www.wshoy.sidar.org/index.php?2009/07/01/46-
buscadores-semanticos-comprender-para-encontrar-parte-1.

Abián, M. (2005). El Futuro de la Web. Recuperado el 09 de 2015, de http://www.java


hispano.org/tutorials.item.action?id=55.

Akamai (2009). Como se hace la búsqueda. Recuperado el 11 de 2015, de http://spanish


.akamai.com/enes/html/technology/how_search_works.html.

Alejo, C. (2014). PROYECTO: Sistema de Gestión y Difusión de Información Vía Web.


Colegio de Ciencias de la Computación – La Paz. FCPN. Universidad Mayor de
San Andrés. La Paz – Bolivia.

Alfonso, I., Botía, A., y Mora, F. (2005). Ingeniería del Software. Madrid - España.

Ariadne. (2004). Foundation for the European Knowledge Tool. Metadatos. Recuperado el
11 de 2015, de http://www.ariadne-eu.org/en/publications/metadata/index.html.

Berners, T., y Lee. (2001). The Semantic Web: A new form of Web content that is
meaningful to computers will unleash a revolution of new possibilities.

Berners, T., Hendler, J., y Lassila, O. (2001). The Semantic Web. Recuperado el 04 de
2016, de http://www-sop.inria.fr/acacia/cours/essi2006/Scientific%20American_%
20Feature%20Article_%20The%20Semantic%20Web_%20May%202001.pdf.

Bosch, M. (2010). Los motores de búsqueda semánticos: un viejo debate y nuevos


problemas. Entre la asignación de descriptores y el tratamiento automático del
lenguaje natural. Barcelona - España.

88
Brickley, D., Ramanathan, V., y Guha. (2004). RDF Vocabulary Description Language 1.0:
RDF Schema, World Wide Web Consortium.

Bunge, M. (1959). La Ciencia. Su metodología y Su Filosofía. Buenos Aires - Argentina.

Cacheiro, M. L., y Lago, B. (2008). La Web Semántica. Utah - EEUU.

Cámara, J. C. (2004). Learning Metadata Standards. UPF. Recuperado el 04 de 2016, de


http://www.iua.upf.es/~jblat/material/doctorat/students/jccbis/Tecnologias_XML.htm

Castro, L. (2015). Qué es Wolfram-Alpha y cómo funciona. Recuperado el 11 de 2015, de


http://aprenderinternet.about.com/od/PaginasWeb/a/Wolfram-Alpha.htm.

Contreras, H. (2001). TESIS: Procesamiento del Lenguaje Natural basado en una


“gramática de estilos” para el idioma español. Recuperado el 11 de 2015, de
Facultad de Ingeniería. Universidad de los Andes. : http://www.saber.ula.ve/bitstre
am/123456789/13157/1/hc_propuestatesis.pdf.

Cutting, D. (2011). Apache Lucene. Recuperado el 11 de 2015, de http://lucene.apache


.org/.

EDD. (2015). Introducción a la extracción de datos de sitios web: scraping. Recuperado el


03 de 2016, de Escuela de datos: http://es.schoolofdata.org/introduccion-a-la-
extraccion-de-datos-de-sitios-web-scraping/.

Fernández, D. (2009). TESIS: La Naturaleza de la Información Semántica en la Web.


Facultad de Ingeniería. Universidad de Buenos Aires. Buenos Aires - Argentina.

Ferrari, A., Mariño, S. I., y Sonia, I. (2014). Guía de evaluación de la usabilidad para
herramientas de minería de datos. Recuperado el 04 de 2016, de http://www.no
solousabilidad.com/articulos/usabilidad_mineria_datos.htm.

Funes, D. (2015). Aproximación top-down y bottom-up. Recuperado el 02 de 2016, de http:/


/www.davidfunesbiomed.es/2015/06/aproximacion-top-down-y-bottom-up.html.

Gantz, F. J., Reinsel, D., Christopher, C., Schlichting, W., McArthur, J., y Stephen, M.
(2010). Forecast of Worldwide Information Growth Through.

89
Gelbukh, A., Galicia, H., y Bolshakov, I. (1989). Three dictionary-based techniques of
disambiguation. TAINA-98, International Workshop on Artificial Intelligence, CIC-
IPN. México D.F.

GNU. (2001). Qué es el software libre? Recuperado el 03 de 2016, de Sistema Operativo


GNU: http://www.gnu.org/philosophy/free-sw.es.html.

Gómez, P. A., Corcho, O., y Fernández, L. M. (2003). Ontological Engineering: Advanced


information and knowledge processing. Berlin – Alemania.

Grishman, R. (1991). Introducción a la lingüística computacional.

Heflin, J. (2009). OWL Web Ontology Language Use Cases and Requirements, W3C
Recommendation, Word Wide Web Consortium. Recuperado el 11 de 2015, de
http://www.w3.org/TR/webont-req/.

Hernández, M., y Villa, G. (2009). Tendencias en los buscadores: Web semántica.


Recuperado el 10 de 2015, de http://www.noticieeero.org/?p=1111.

Hidalgo, L. (2016). TESIS: Trabajo de grado previo a la obtención del Título de Ingeniero
en Sistemas y Computación. Riobamba – Ecuador.

HT. (2001). Hacia la Web Semántica. Recuperado el 12 de 2015, de Hipertexto: http://www


.hipertexto.info/documentos/web_semantica.htm.

IEBS. (2012). Las 8 Grandes Ventajas de las Metodologías Ágiles. Recuperado el 02 de


2016, de Comunidad IEBS: http://comunidad.iebschool.com/iebs/agile-scrum/que-
es-agile/.

Klein, P. (2009). Hakia, el buscador semántico. Buscar más allá de Google. Recuperado el
11 de 2015, de http://www.pauklein.com/hakia-el-buscador-semantico/.

La Guía. (2007). Los tipos de lenguaje. Recuperado el 11 de 2015, de http://lengua.laguia


2000.com/general/los-tipos-de-lenguaje.

Lacayo, P. (2013). Introducción a la Ingeniería de software (Primera Parte).

90
Lamarca, L. M. (2009). RDF. Recuperado el 10 de 2015, de http://www.hipertexto.info
/documentos/rdf.htm.

Los Santos, A. A., Xóchitl, N. M., y Godoy, D. A. (2009). Web 3.0: integración de la Web
Semántica y la Web 2.0.

Magaña, C., y Pimentel, M. (2007). Lenguajes Naturales.

Marín, C. (2007). Ingeniería Naval (Informática). Recuperado el 02 de 2016, de https://


carlosmarinvargas.wordpress.com/category/dapper/.

Martín, A., Sonsoles, C., Valdenebro, A., y Mensaque, J. (2004). Biblioteca Universidad de
Sevilla - History PLN. Sevilla – España.

Mascheroni, M., Greiner, C., Petris, R., y Dapozo, G. M., E. (2012). Calidad de software e
Ingeniería de Usabilidad.

Matos, P. R. (2008). Cómo sacarle provecho a Yahoo Pipes? . Recuperado el 02 de 2016,


de http://www.maestrosdelweb.com/como-sacarle-provecho-a-yahoo-pipes/.

Megabolsa. (2015). El proceso de toma decisiones: top-dowm y bottom-up. Recuperado el


02 de 2016, de http://www.megabolsa.com/2015/08/30/el-proceso-de-toma
decisiones-top-dowm-y-bottom-up/.

Microformats. (2012). microformats.org turns 9 - upgrade to microformats and more.


Recuperado el 04 de 2016, de http://microformats.org/.

Moreno, J. (2015). Palabras Polisemicas. Recuperado el 11 de 2015, de https://jackmoreno


.com/2015/06/03/100-ejemplos-de-palabras-polisemicas/.

Moya, R., y Saravia, G. (2002). Probabilidades e Inferencia Estadística. Perú.

Nielsen, J., y Molich, R. (1990). Heuristic evaluation of user interfaces, Proceedings of the
CHI’90. New York.

Oviedo, J. (2007). El método Científico. Venezuela.

91
Peig, E. (2004). TESIS DOCTORAL Interoperabilidad de Metadatos en Sistemas
Distribuídos. UPF. Recuperado el 03 de 2016, de http://www.tdx.cbuc.es/TDX-
0316104-132946/.

Protégé. (2007). The Protégé Ontology Editor and Knowledge Acquisition System.
Recuperado el 03 de 2016, de http://protege.stanford.edu/.

Quero, J. M. (2009). Intoducion a la nanotecnología Dpto. Ingeniería Electrónica.


Recuperado el 02 de 2016, de http://www.gte.us.es/ASIGN/SEA/Nanotecnologias.
pdf.

Rivera, J. (2015). Prueba Chi Cuadrado. Recuperado el 04 de 2016, de http://es.slideshare


.net/armando310388/prueba-chicuadrado.

Rodríguez, G., y Zayas, M. L. (2011). Buscadores Web y Redes Semánticas. Recuperado


el 10 de 2015, de http://www.it.uc3m.es/~jvillena/irc/practicas/09-10/08mem.

Rodríguez, P., Ronda, K., y León, R. (2005). Web Semántica: un nuevo enfoque para la
organización y recuperación de información en la web. Recuperado el 03 de 2016,
de http://bvs.sld.cu/revistas/aci/vol13_6_05/aci030605.htm.

Rogers, B., Pennathur, S., Adams, J., y Taylor, F. (2007). Nanotechnology Understanding
Small Systems.

Soler, I. E. (2009). Galo Nanotecnología : el desafío del siglo XXI.

Sosa, E. (1997). Procesamiento del lenguaje natural: revisión del estado actual, bases
teóricas y aplicaciones (Parte I). Recuperado el 12 de 2015, de http://www.elprofes
ionaldelainformacion.com/contenidos/1997/enero/procesamiento_del_lenguaje_nat
ural_revisin_del_estado_actual_bases_tericas_y_aplicaciones_parte_i.html.

Suárez, F. (2010). Implementación de un Buscador Semántico Utilizando Kim, Gate Y


Freeling Para La Recuperación De Objetos De Aprendizaje (OA) Del DSPACE-
UTPL. Loja – Ecuador.

TN Relaciones. (2016). Buscadores Generales. Recuperado el 03 de 2016, de http://www.


tnrelaciones.com/anexo/buscadores/.

92
Trasada, S. G. (2015). Publicidad en internet Display vs. Búsqueda. Recuperado el 04 de
2016, de http://trazada.com/publicidad-en-internet-display-vs-busqueda/.

Trigas, M. (2012). Desarrollo detallado de la fase de aprobación de un proyecto informático


mediante el uso de metodologías ágiles. Madrid - España.

Van, A. (2013). La diferencia entre la previsión "Top-Down" (de arriba abajo), "Bottom-Up"
(de abajo arriba), "Middle-Out" (desde el centro) y Previsión Colaborativa.
Recuperado el 03 de 2016, de http://www.forecast-solutions.com/blog/item/18-la-
diferencia-entre-la-prevision-top-down-de-arriba-abajo-bottom-up-de-abajo-arriba-
middle-out-desde-el-centro-y-prevision-colaborativa.html.

Villena, R. J., Crespo, G. R., y García, R. (2012). Procesamiento del Lenguaje Natural.

W3C. (2013). (W3C) y el International Digital Publishing Forum (IDPF) exploran una posible
fusión. Recuperado el 02 de 2016, de W3c El Wide Web Consortium: http://www
.w3c.es/.

Whiteside, J., Bennet, J., y Holtzblatt, K. (1988). Usability Engineering:Our Experience and
Evolution.

Winograd, T., y Flores, F. (1986). Understanding computers and cognition.

Zeldman, J. (2006). ¿Qué es la Web 3.0? Conceptos.

93
GLOSARIO DE TÉRMINOS

Baidu.- Ees un motor de búsqueda en idioma chino con sede en Pekín fundado a
finales de 1999 por Robin Li y Eric Xu.

Yandex.-es el nombre de un buscador web de Rusia, y a su vez el portal web más


visitado del país, cuyos sitios web atraen en jornada laboral a una audiencia de más de 12
millones de usuarios.

Scrum.- Es una metodología ágil y flexible para gestionar el desarrollo de


software.

Sprint.- Es un bloque de tiempo (time-box) de un mes o menos durante el cual se


crea un incremento de producto “Terminado”, utilizable y potencialmente desplegable.

Ambiguo.- Es ambiguo cuando tiene una sola interpretación.

Backlog.-se refiere generalmente a una acumulación con el tiempo de trabajo en


espera de ser hecho o pedidos para ser cumplido.

Software.- Interfaz computacional en la que interactúa un usuario con un


computador, una maquina o un robot.

Prototipo.- Modelo de prueba y testeo que se realiza previo a la elaboración de un


producto final.

Repositorio.- depósito o archivo es un sitio centralizado donde se almacena y


mantiene información digital, habitualmente bases de datos.

Booleana.- aquel que puede representar valores de lógica binaria, esto es 2


valores, valores que normalmente son 0 y 1.

Bayesiana.- es una de las diferentes interpretaciones del concepto


de probabilidad. La interpretación bayesiana de la probabilidad puede ser vista como una
extensión de la lógica proposicional que permite razonar con hipótesis, es decir, las
proposiciones cuya verdad o falsedad son inciertas.

94
Ontología.- nos ayuda a interpretar la existencia del ser, en las ciencias de la
computación y el área de la inteligencia artificial, trabaja utilizando especificaciones
formales de un conjunto de términos.

Slots.- Delimitan las propiedades y características de cada concepto describiendo


sus rasgos y atributos.

Protégé.- Es una plataforma de código abierto con un conjunto de herramientas


para la construcción de modelos de dominio y las aplicaciones basadas en el conocimiento
con ontologías.

Taxonomía.- Se trata de la ciencia de la clasificación.

Polisémicas.- Son todas aquellas palabras que poseen más de una significado,
El significado de una palabra puede variar según el contexto.

Waterfall.- También denominada, el ciclo de vida en cascada, se caracteriza


porque todas las fases se realizan de forma secuencial

Arbórea.- se denomina también etimología al estudio del origen de las palabras y


sus cambios estructurales y de significado.

Feedback.- retroalimentación en la cual se ha de valorar si la información obtenida


se adecua a lo esperado.

Ambigüedad.- Es cuando una palabra, un sintagma, o una oración, es susceptible


de dos o más significados o interpretaciones.

Parsear.- Es sacar información de un html y la otra da la idea de analizar el


código para ver si está correctamente escrito.

Subsunción.- Incluir algo como un componente en una sintaxis o clasificación


mas abarcadora.

Acíclico.- Es cuando no tiene ciclos.

95
ANEXOS

96
ANEXO A

ÁRBOL DE PROBLEMAS

97
ANEXO B

ÁRBOL DE OBJETIVOS

98
ANEXO C

MATRIZ DE PLANIFICACIÓN (MARCO LÓGICO)

99
DOCUMENTACIÓN

100

You might also like