Ontologias
-
Upload
sonia-maria -
Category
Documents
-
view
212 -
download
0
description
Transcript of Ontologias
UNIVERSIDAD NACIONAL DE LOJA
AREA DE ENERGIA LAS INDUSTRIAS Y LOS RECURSOS
NATURALES NO RENOVABLES
INGENIERIA EN SISTEMAS
INTELIGENCIA ARTIFICIAL
“WEB SEMÁNTICA Y ONTOLOGIAS”
Integrantes:
José Fernando Castillo Alba Jesennia Marible Iñiguez Banegas
Jennifer Jomaira Loayza Castro Sonia María Miranda Costa Gabriela Maria Narváez Chamba
Modulo: X Paralelo: “A”
Docente:
Ing. Luis Antonio Chamba Eras
LOJA-ECUADOR
2012
WEB SEMÁNTICA Y ONTOLOGÍAS
1. Definición de terminología
1.1. Ontología
El siguiente concepto de ontología, es el más aceptado que es definido por Thomas
Gruber:
“Una Ontología es una especificación formal y explícita de una
conceptualización compartida.”
Dónde:
Conceptualización: significa modelo abstracto de un fenómeno, que puede ser visto como un conjunto de reglas informales que restringen su estructura, que por lo general se expresa como un conjunto de conceptos (entidades, atributos, procesos), sus definiciones e interrelaciones.
Formal: implica una organización teórica de términos y relaciones usados como herramienta para el análisis de los conceptos de un dominio
Explícita: se refiere a la especificación de los conceptos y a las restricciones sobre éstos.
Compartida: significa que captura un conocimiento consensual que es aceptado por una comunidad.
Es así que se define a una ontología es una descripción (como la especificación formal
de un programa) de conceptos y relaciones que pueden existir para un agente o una
comunidad de agentes[1].
Las siguientes de definiciones son aportes de los compañeros de clase:
Relaciones componentes del entorno
Descripción de conceptos, relaciones
Explicita y formal de conceptos en un dominio
Modelo abstracto de un dominio de un mundo posible
Estándar los términos y sus relaciones en un dominio
Describir todo lo que pueda ser representado computacionalmente
1.2. Elementos
Se presentan a continuación los componentes de las ontologías que se describen a
continuación:
Clases: Una clase es un conjunto de objetos (físicos, tareas, funciones). Cada
objeto en una clase es una instancia de esa clase
Axioma: Elementos que permiten el modelado de verdades que se cumplen
siempre en la realidad. Los axiomas pueden ser estructurales y/o no
estructurales
Instancias o individuos: Son objetos, miembros de una clase, que no pueden
ser divididos sin perder su estructura y características funcionales.
Relaciones: Se establecen entre conceptos de una ontología para representar
las interacciones entre éstos. Pueden ser agrupados en clases. Algunas de las
relaciones más utilizadas son:
Instancia de: Asocian objetos a clases.
Relaciones temporales:Implican precedencia en el tiempo.
Relaciones topológicas: Establecen conexiones espaciales entre
conceptos.
Frame: Un objeto que incluye clases, instancias y relaciones.
Conceptualización: Conjunto de conceptos, relaciones, objetos y restricciones
que caracterizan un domino.
Taxonomía: Conjunto de conceptos organizados jerárquicamente. Las
taxonomías definen las relaciones entre los conceptos, pero no los atributos de
éstos.
Vocabulario: Conjunto de palabras con una explicación y documentación que
persigue la universalidad y el formalismo en el contexto de un dominio. [1]
Propiedad (Atributo, Slot): Característica que permite describir más
detalladamente la clase y sus instancias. Establece que la clase o concepto
posee una propiedad que se concretará mediante un valor. Los valores de las
propiedades o atributos pueden ser tipos básicos como cadenas de caracteres o
números, pero también pueden ser otras clases o instancias.
Herencia: Propiedad de la relación 'es_un' que permite que las clases
relacionadas (heredadas) cuenten con los atributos de la clase con la cual se
relacionan (clase padre).
Herencia múltiple: Se da cuando una clase dada hereda o cuenta con las
propiedades de dos clases padre con las que establece dos relaciones del tipo
'es_un'[2].
Los más importantes para la utilización de las ontologías son: clases, relaciones,
atributos e instancias.
2. ¿Por qué desarrollar una ontología?
A continuación se citan algunas razones porque es necesario desarrollar
ontologías:
Compartir un entendimiento común de una estructura de información entre
personas o agentes software
Posibilitar la reutilización de conocimiento de un dominio
Separar el conocimiento de un dominio del conocimiento operacional, o
analizar el conocimiento de un dominio
Hacer explícitas suposiciones de un dominio[1].
Permitir la reutilización de conocimiento de un dominio
Analizar el conocimiento de un dominio
Permiten compartir la interpretación de la estructura de la información entre
personas/agentes.
El establecer una ontología sobre un dominio permite que dos agentes puedan
entenderse sin ambigüedad y sepan a qué se refieren
Permiten reusar el conocimiento
Hacer una descripción de un dominio permite que esta pueda ser usada por
otras aplicaciones que necesiten tratar con ese conocimiento
Hacen que nuestras suposiciones sobre el dominio se hagan explicitas
Facilita replantearse las suposiciones sobre el dominio y ayuda a que otros
puedan entender su descripción[3].
3. Ejemplo de ontología
En el Fig.1 se puede ver la representación de clases y subclases de una ontología
de periféricos de ordenador [4].
Figura 1: Ontología sobre periféricos de ordenador
Dominio: Hardware
Que representan: La clasificación de los periféricos del computador
Perifericos
Entrada
Teclado Ratón
Almacenamiento
Discos duros
Seagate Maxtor
Cintas backup
Salida
Monitores Altavoces
4. Metodología para desarrollar ontologías
La metodología ENTERPRISE está constituida por cuatro pasos y considera además un
conjunto de guías o recomendaciones de diseño que se deben tener presentes en cada
paso del método:
1. Identificar el propósito y el alcance de la ontología. Se señala claramente
el propósito para el que se desea construir la ontología así como el alcance de
la misma
2. Construir la ontología. Este paso considera tres aspectos necesarios para la
construcción de la ontología, a saber:
a. Capturar el conocimiento:Se identifican los conceptos claves y sus
relaciones en el dominio.
b. Codificar el conocimiento:Se representa en un lenguaje formal la
conceptualización capturada en el paso anterior.
c. Integrar el conocimiento: Se examinan las ontologías existentes y se
verifica si pueden ser integradas a la que se está
3. Evaluar la ontología. Se hace un juicio técnico a la ontología considerando la
conceptualización, el ambiente, el software y la documentación, con respecto
a una referencia. Esta referencia puede ser: requisitos de especificación,
preguntas de competencias y/o el mundo
4. Documentar la ontología. Se documenta adecuadamente el conocimiento
expresado en la ontología, para así garantizar que sea apropiadamente
compartido y reutilizado [1].
5. Creación ontología en Protégé
Parte 1:
a. Implementar el esquema de la figura 2 incluyendo los datos
Figura 2: Estructura Jerárquica de Personas y Vehículos
b. Agregar las siguientes instancias:
PERSONAS
JUAN
Slot Value Type Range
nombre Juan
apellidos Lopez Perez
dirección C/ del medio, nro 5
edad 25 1 - 100
MARIA
Slot Value Type Range
nombre María
apellidos Borrell Almunia
dirección C/ de la izquierda, nro 3
edad 32 1 - 100
LUIS
Slot Value Type Range
nombre Luis
apellidos Aznar Oreja
dirección C/ de la derecha, nro 7
edad 58 1 - 100
COCHES
COCHE 1
Slot Value Type Range
matricula V-6543-DP
modelo SEAT TOLEDO
num_puertas 5 2 - 5
color Azul
COCHE 3
Slot Value Type Range
matricula B-2563-ED
modelo RENAULT 5
num_puertas 2 2 - 5
color verde metalizado
MOTOS
MOTO 1 MOTO2
Slot Value Type
matricula V-2000-A
modelo KAWASAKI 1000
color negra
c. Ingrese la siguiente información
"Juan es el dueño del coche3"
"Jose es el dueño del coche1 y coche 2"
"María es la dueña de la moto1"
“Luis es el dueño de la mato 2”
Parte 2
Sobre la estructura anterior contestar a las siguientes preguntas (almacenar
cada consulta en la biblioteca de consultas de Protégé):
Consulta 1: Devuelve la información de aquellas motos de color blanco
Consulta 2: Devuelve el nombre de todos los propietarios
Consulta 3: Indica los vehículos cuya matrícula contiene un 2
Consulta 4: Devuelve los vehículos del propietario que vive en la calle “del
medio”
DESARROLLO
La práctica sobre ontologías fue desarrollada con la herramienta Protégé, la cual
permite crear ontologías. A continuación se describe cada una de las actividades
realizadas:
Al ejecutar a Protégé, se muestra un cuadro de dialogo con la opción de abrir un
documento existente o de crear un proyecto nuevo. Al escoger la segunda opción se
muestra una segunda ventana en donde se debe escoger el tipo de proyecto (ver
figura 3); para la práctica realizada se creó un proyecto de tipo RDF Files.
Figura 3: Elección del tipo de proyecto
Slot Value Type
matricula V-2001-B
modelo VESPINO GL
color blanca
Para implementar la figura 2 en Protége primeramente se crearon las clases. Por
ejemplo para la clase PERSONA:
En el Class Browser, seleccionar la clase THING, clic derecho y escoger la
opción Create Class (figura 4). A continuación en la parte derecha, Class
Editor, se establece:
o Name: PERSONA.
o Role: CONCRETE (para todas las clases y subclases)
Figura 4: Creación de Clases en Protégé
EL proceso antes descrito se repite para la crear la clase Vehículo y las subclases
Motos y Coches. Una vez creadas todas las clases se debe añadir los slots respectivos.
Por ejemplo para la clase Vehículo se debe:
Seleccionar la clase Vehículo y en la parte Template Slots del Class Editor, hacer
clic en el icono , esto desplegará la ventana que se muestra en la figura 5 en
donde se debe definir:
o Name: Nombre del slot, en el caso de Vehículo uno de los slots es “matricula”
o Value Type: “String”, que es el tipo de Valor que recibe el slot “matricula”.
o Cardinality: “Requeried”, esto hace que obligatoriamente se deba establecer un
valor para el slot “matricula”
Figura 5: Ventana que permite agregar los slots a la Clase Vehículo
Para el caso del slot “Propietario” el valor que recibirá es de tipo “Instance” por lo
tanto además de lo antes descrito se debe establecer que clases se van instanciar.
Como se puede observar en la figura 2, una PERSONA es propietaria de un VEHICULO,
entonces en la parte de Allowed Clasess se debe añadir la clase PERSONA (ver figura
6)
Figura 6: Definición del Atributo Propietario
De igual forma se procede con los demás slots. Finamente, ir a la pestaña Instances,
que permite la creación de las diferentes instancias para cada una de las clases. Por
ejemplo para crear la instancia JOSÉ de la clase PERSONA:
Seleccionar la clase PERSONA y clic en el icono de Instance Browser,
inmediatamente aparecerá en la parte derecha los slots de la clase PERSONA
(nombre, apellido, dirección, edad) que debenser llenados con la información de la
instancia JOSE (figura 7)
Figura 7: Creación de la Instancia José de la clase Persona
Una vez creadas todas las instancias de las diferentes clases de acuerdo a la
información proporcionada. Se puede proceder a la PARTE 2 de la práctica que es la
realización de Consultas
La figura 8 muestra la estructura de la consulta: La información de aquellas
motos de color blanco y el resultado que es “VESPINO GL”
Figura 8: Resulta y estructura de la consulta 1
La figura 9 muestra el resultado y la estructura de la consulta: Devuelve el
nombre de todos los propietarios
Figura 9: Resulta y estructura de la consulta 2
La figura 10 muestra el resultado y la estructura de la consulta: Indica los
vehículos cuya matrícula contiene un 2
Figura 10: Resulta y estructura de la consulta 3
La figura 11 muestra el resultado y la estructura de la consulta: Devuelve los
vehículos del propietario que vive en la calle “del medio”
Figura 11: Resulta y estructura de la consulta 4
6. Proyecto Ontologías
“USO DE LA HERRAMIENTA PROTÉGÉ PARA LA CREACION DE UNA ONTOLOGÍA
QUE REPRESENTE LOS ESTILOS DE APRENDIZAJE PREDOMINANTES EN LOS
ESTUDIANTES DE SEGUNDO MÓDULO DE INGENIERÍA EN SISTEMAS”
REFERENCIAS BIBLIOGRÁFICAS
[1]. GARCÍA PEÑALVO Francisco José. Web Semántica y Ontologías[Online].
España. Disponible en:
http://zarza.fis.usal.es/~fgarcia/doctorado/iuce/WSemantica.pdf
[2]. CONTRERAS Jesús. Tutorial Ontologías [Online]. España. Disponible en:
http://www.sedic.es/gt_normalizacion_tutorial_ontologias.pdf
[3]. BEJAR Javier. Representación del Conocimiento [Online]. Disponible en:
http://www.lsi.upc.edu/~bejar/ia/transpas/teoria/3-RC3-Ontologias.pdf
[4]. PEDRAZA-JIMÉNEZ Rafael; CODINA Lluís y ROVIRA Cristòfol. Web semántica y
ontologías en el procesamiento de la información documental [Online].España,
2007. Disponible en:
http://www.lluiscodina.com/webSemanticaOntologias2007.pdf
[5]. UNIVERSIDAD POLITÉCNICA DE VALENCIA, FACULTAD DE INFORMÁTICA.
Sistemas de Representación y Procesamiento Automático del
Conocimiento[Online]. España, 2003. Disponible en:
http://personales.upv.es/ccarrasc/extdoc/p1_2_parte.pdf