Está en la página 1de 16

Representacin del Conocimiento

Ontologas - Introduccin

Ontologas

El objeto de estudio de la ciencia de la Ontologa es el estudio de las


categoras que existen en un dominio
El resultado de este estudio es lo que denominamos una ontologa
Una ontologa es un catlogo de los tipos de cosas que asumimos que
existen en un dominio D desde la perspectiva de alguien que usa un
lenguaje L con el propsito de hablar de D
Los elementos de una ontologa representan predicados, constantes,
conceptos y relaciones pertenecientes a un lenguaje L cuando se usa
para comunicar informacin sobre D
Una ontologa es pues un vocabulario

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

1 / 16

Representacin del Conocimiento

Ontologas - Introduccin

Ontologas

La capacidad de obtener deducciones a partir de la informacin que


representa la ontologa viene dada por el uso de una lgica
La lgica por si misma no habla sobre nada, es neutra respecto al
significado, es su combinacin con una ontologa lo que le da a un
formalismo lgico la capacidad de expresar significados, por ejemplo:
PQ
P
Q
Este razonamiento no habla sobre nada en concreto salvo que
asignemos significados a los tomos (P = llueve, Q = me mojo)

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

2 / 16

Representacin del Conocimiento

Ontologas - Introduccin

Ontologas - Antecedentes

El desarrollo de las ontologas entronca directamente con la Filosofa


Aristteles acu el trmino Categora como la palabra para describir
las diferentes clases en las que se dividan las cosas del mundo
El trmino ontologa es relativamente moderno (s. XIX), proviene del
griego Ontos (Ser) y Logos (Palabra)
Este se empez a utilizar para distinguir el estudio de la
categorizacin del ser de la categorizacin que se hacia en biologa
De hecho el trabajo de categorizacin surge en muchas reas de la
ciencia (filosofa, biologa, medicina, lingstica, ...)

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

3 / 16

Representacin del Conocimiento

Ontologas - Introduccin

Ontologas - Motivacin
Cuales son los puntos interesantes que motivan el uso de las ontologas?
Permiten compartir la interpretacin de la estructura de la
informacin entre personas/agentes
El establecer una ontologa sobre un dominio permite que dos agentes
puedan entenderse sin ambigedad y sepan a que se refieren
Permiten reusar el conocimiento
Hacer una descripcin 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 descripcin

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

4 / 16

Representacin del Conocimiento

Ontologas - Introduccin

Ontologas - Motivacin

Separan el conocimiento del dominio del conocimiento


operacional
Permite hacer independientes las tcnicas y algoritmos para solucionar
un problema del conocimiento concreto del problema
Permiten analizar el conocimiento del dominio
Una vez tenemos una especificacin del conocimiento podemos
analizarlo utilizando mtodos formales (para comprobar si es correcto,
completo, ...)

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

5 / 16

Representacin del Conocimiento

Ontologas - Introduccin

Componentes de una Ontologa

En nuestra rea de trabajo (Inteligencia Artificial), una ontologa ser


una descripcin formal explicita de los conceptos de un dominio
(Clases)
Estas clases se describirn a partir de propiedades que representarn
las caractersticas, atributos y relaciones de las clases
Adicionalmente estas caractersticas tendrn restricciones (tipo,
cardinalidad, ...)
Finalmente tendremos instancias (elementos identificables) que
constituirn los individuos concretos que representa la ontologa

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

6 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Desarrollo de una Ontologa

Desarrollar una ontologa requerir:


Definir las clases que forman el dominio
Organizar las clases en una jerarqua taxonmica
Definir las propiedades de cada clase e indicar las restricciones de sus
valores
Asignar valores a las propiedades para crear instancias

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

7 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Metodologas de construccin de Ontologas

No existe una metodologa establecida sobre como desarrollar


ontologas, veremos una metodologa informal:
Ontology Development 101: A Guide to Creating Your First
Ontology, Noy & McGuinness, (2000)
Debemos tener en cuenta:
1

2
3

No existe un modo correcto de modelar un dominio. La mejor solucin


depender de la aplicacin/problema concreto
El desarrollo de una ontologa es un proceso iterativo
Los elementos de la ontologa deberan ser cercanos a los conceptos y
relaciones que se usan para describir el dominio (generalmente se
corresponden a nombres y verbos que aparecen en frases que describen
el dominio)

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

8 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Fases de desarrollo de una ontologa

Fase 1: Determinar el dominio y la cobertura de la ontologa


Qu dominio cubrir la ontologa?
Para qu usaremos la ontologa?
A que tipos de preguntas ha de poder responder la ontologa?
Quin usar y mantendr la ontologa?

Fase 2: Considerar la reutilizacin de ontologas existentes


Las ontologas se construyen para comunicar conocimiento en
dominios, por lo que se construyen con la idea de comparticin. No es
necesario rehacer un trabajo que ya esta hecho, si existe una ontologa
sobre el dominio en el que trabajamos, podemos incorporarla

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

9 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Fases de desarrollo de una ontologa

Fase 3: Enumerar los trminos importantes en la ontologa


Escribir una lista de trminos que podemos usar para referirnos a
nuestro dominio, elaborando frases que podramos utilizar para
preguntarnos cosas sobre l o para explicar a alguien informacin
sobre l.
Que propiedades tiene esos trminos?
Que nos gustara decir sobre ellos?

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

10 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Fases de desarrollo de una ontologa

Fase 4: Definir las clases y su jerarqua


Podemos tomar diferentes aproximaciones
De arriba a abajo: Definimos los conceptos mas generales y vamos
especializndolos
De abajo a arriba: Definimos las clases mas especificas y vamos
agrupndolas segn propiedades comunes generalizando
Combinacin de ambas: Definimos los conceptos mas importantes y
especializamos y generalizamos para completar la ontologa

Ninguno de estos mtodos es esencialmente mejor y depende del


dominio

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

11 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Fases de desarrollo de una ontologa

Fase 5: Definir las propiedades de las clases


Debemos describir la estructura interna de las clases
Determinaremos una lista de caractersticas y en que clases debemos
tenerlas
Podemos tener muchos tipos de propiedades
Propiedades descriptivas, cualidades
Propiedades identificadoras, nombres
Partes
Relaciones con instancias de otras clases

Las propiedades deberan asignarse a la clase mas general, el resto las


obtendrn va herencia

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

12 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Fases de desarrollo de una ontologa

Fase 6: Definir las caractersticas de las propiedades


Cardinalidad (nmero de valores permitidos)
Tipo, valores
Valores por defecto
Obligatoriedad
Si es una relacin definir la cardinalidad y el rango

Fase 7: Crear instancias


Si es necesario (en algn momento lo ser) crear las instancias que
formarn parte de la ontologa

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

13 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Consejos para el desarrollo de una ontologa (1)

No incluir versiones singulares y plurales de un trmino (la mejor


poltica es usar solamente nombres en singular o plural)
Los nombres no son las clases, debemos distinguir la clase del nombre
que le damos. Podemos tener sinnimos, pero todos representan a la
misma clase
Asegurarnos de que la jerarqua est correctamente construida
Observar las relaciones de transitividad y comprobar si son correctas
Evitar ciclos en la jerarqua

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

14 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Consejos para el desarrollo de una ontologa (2)


Todas las subclases de una clase deben estar al mismo nivel de
generalidad
No hay un criterio respecto al nmero de clases, la experiencia dice
que un nmero entre dos y doce es habitual, mas clases indicara que
tenemos que estructurarlas aadiendo mas niveles
Cuando introducir nuevas clases?
Suele ser incmodo navegar por jerarquas o muy planas o muy
profundas, se debera elegir un punto intermedio, unas indicaciones
seran:
Las nuevas clases tienen propiedades adicionales que no tiene la
superclase
Tienen restricciones diferentes
Participan en relaciones diferentes

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

15 / 16

Representacin del Conocimiento

Ontologas - Desarrollo

Consejos para el desarrollo de una ontologa (3)


Decidir si hemos de usar una propiedad o crear una clase
A veces un atributo es suficientemente importante como para
considerar que sus valores diferentes corresponden a objetos diferentes
Decidir donde esta el nivel de las instancias
Pensar cual es nivel mnimo de granularidad que necesitamos
Limitar el mbito de la ontologa
La ontologa o necesita incluir todas las clases posibles del dominio,
solo las necesarias para la aplicacin que se desarrolla
Tampoco necesitamos incluir todos los
atributos/restricciones/relaciones posibles

Javier Bjar c b e a (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2006/2007

16 / 16

También podría gustarte