Lógicas Descriptivas y Ontologías - LDC

Anuncio
Lógicas Descriptivas y
Ontologías
Edna Ruckhaus
Universidad Simón Bolívar
Dpto. Computación y T.I.
Transparencias de Ian Horrocks:
http://www.cs.man.ac.uk/~horrocks/Slides/
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Agenda
 Lógicas
Descriptivas
 Ontologías
 Lenguajes de Ontologías en la Web (OWL)
 Ejemplo de Modelos
 Razonamiento sobre Ontologías
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Lenguajes de Ontologías
• Un lenguaje de ontología
– usualmente introduce
• Conceptos: clases, entidades
• Propiedades de los conceptos: atributos, slots,
roles.
• Relaciones entre conceptos.
• Restricciones de integridad
– pueden ser
• simples: solo conceptos.
• frame-based: solo conceptos y propiedades.
• logic-based: conceptos, propiedades y restricciones
– expresados a traves de diagramas.
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Diferencias-Ontologías, TaxonomíasModelos de Datos
Fuerte Semántica
(Logic-Based)
Logica Modal
Logica de Primer Orden
Teoría Local de Dominios
Description Logic
DAM+OIL, OWL
UML
Modelos Conceptuales
(Frame-Based)
RDF/S, F-logic
ERE
Thesaurus (conceptos tienen un significado)
ER
Taxonomías (es subclasificacion de)
Modelo Relacional
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Débil Semántica
(Simples)
Conocimiento Representado en la
Ontología-Inferencia
Una ontología puede verse como un conjunto de
axiomas básicos y es posible inferir nuevos
teoremas.
•
Card(Profesor, Cursar)=(1,3)
• "x( x Î Profesor Þ 1 £ |{(x,y,z,j)/ (x,y,z,j) Î Cursar}|
•
£
3)
"x( x Î Profesor
Þ not ($ x1( x1 Î Profesor and x1¹x and x.Carnet=x1.Carnet)))
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Conocimiento Representado en la
Ontología-Inferencia
Supongamos que estamos en una institución donde no hay
personal administrativo ni obrero, y los profesores no
pueden ser estudiantes
• Entonces se puede inferir
Profesor U Estudiante Í Comunidad Universitaria
|Profesor| + |Estudiante| = |Comunidad Universitaria|
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ontología en la Lógica de Primer Orden
•
•
•
•
Una ontología puede ser formalizada como un conjunto de
restricciones que deben ser respetadas.
La interpretación de una ontología es definida como una
colección de todas las estructuras que respetan el conjunto de
restricciones impuestas.
Desde el punto de vista formal, una ontología corresponde a un
conjunto de fórmulas de la Lógica de Primer Orden. Ese conjunto
de fórmulas se denominan teoría.
Las interpretaciones legales de una ontología son todos los
modelos de la teoría de la Lógica de Primer Orden.
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ontología-Sistema Axiomático
Teoría
Teoremas
Axiomas
Una ontología o teoría se compone de un conjunto de axiomas y
reglas
deSep-Dic
inferencia
que caracterizan a un conjunto de teoremas.
Trimestre
2005 - Edna Ruckhaus
Ontología-Sistema Axiomático
Axioma
Regla Inferencia
Teorema
Class(Thing)
Dado P,Q se puede inferir P &Q
Si P &Q es verdad, entonces P es
verdad y Q es verdad
Class(Person)
Dado P se puede inferir P v Q
Si X es un miembro de
Class(Parent), entonces X es
miembro de Class(Person)
Class(Parent)
Dado P &Q se puede inferir P
Si X es un miembro de Class(Child),
entonces X es miembro de
Class(Person)
Class(Child)
P v ¬P
Si X es un miembro de Class(Child),
entonces
NameOf(X,Y) y Y es un string
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ontología-Sistema Axiomático
Axioma
Si SubClass(X,Y), entonces X es un
subconjunto de Y
SubClass(Person,Thing)
SubClass(Parent,Person)
SubClass(Child,Person)
ParentOf(Parent,Child)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Regla Inferencia
Teorema
Si Person(JS), entonces
¬ParentOf(JS,JS)
Ontología-Sistema Axiomático
Axioma
NameOf(Person,String)
AgeOf(Person,Integer)
Si X es un miembro de
Class(Parent) y Y es un miembro
de Class(Child), entonces
¬(X=Y)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Regla Inferencia
Teorema
Cómo Implementar una Ontología?
• Prolog
• Datalog
• Description Logic
Trimestre Sep-Dic 2005 - Edna Ruckhaus
¿Qué son Lógicas Descriptivas?
•
Una familia de formalismos basados en lógica para la
Representación de Conocimiento
– Describen al dominio en función de conceptos (classes), roles
(relationships) e individuos
•
Se distinguen por:
– Semántica formal (model theoretic)
• Fragmentos decidibles de FOL
– Proveen servicios de inferencia
• Procedimientos de decisión sólidos y completos para
problemas claves (satisfiability, subsumption)
• Sistemas implementados (optimizados)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Tbox (esquema)
Man
≡ Human ⊓ Male
Happy-Father
≡ Man ⊓ ∃ has-child.
Female
⊓…
Abox (datos)
John : Happy-Father
<John, Mary> : has-child
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Interfaz
Base de Conocimiento
Sistema de Inferencia
Arquitectura DL
Familia de Lógicas Descriptivas
•
•
DLs son una familia de formalismos basados en lógica
para KR
Lenguajes particulares se caracterizan por:
– Conjunto de constructores para construir conceptos y roles
complejos a partir de otros más simples
– Conjuntos de axiomas para dar aserciones acerca de
conceptos, roles e individuos
•
ALC es el DL más simple; es proposicionalmente cerrado
– Constructores incluyen booleanos and (⊓) , or (⊔ ), not (¬), y
– Restricciones acerca de “sucesores” en los roles usando ∃ y
∀
• E.g., concepto que describe “happy fathers” se puede
escribir:
Man ⊓ ∃hasChild.Female ⊓ ∃hasChild.Male
⊓ ∀hasChild.(Rich ⊔ Happy)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Constructores de conceptos y roles en
DL
• Otros constructores en DLs, incluyen:
– Restricciones numéricas (restricciones de cardinalidad) sobre
roles, e.g., ≥3 hasChild, ≤1 hasMother
– Restricciones numéricas calificadas, e.g., ≥ 2hasChild.Female,
≤1hasParent.Male
– Nominales (conceptos singleton), e.g., {Italy}
– Dominios concretos (tipos de datos), e.g., hasAge.(≥ 21),
earns spends.<
– Roles Inversos, e.g., hasChild- (hasParent)
– Roles Transitivos, e.g., hasChild* (descendant)
– Composición de roles, e.g., hasParent o hasBrother (uncle)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Bases de Conocimiento DL
•
Una base de conocimiento DL K = <T , A>
– T (Tbox) es un conjunto de axiomas de la forma:
• C ⊑ D (inclusión de concepto)
• C ≡ D (equivalencia de concepto)
• R ⊑ S (inclusión de rol)
• R ≡ S (equivalencia de rol)
– A (Abox) es un conjunto de axiomas de la forma:
• x ∈ D (instanciación de concepto)
• <x,y> ∈ R (instanciación de rol)
•
Dos tipos de axiomas en Tbox:
– “Definitions”
• C ⊑ D o C ≡ D donde C es un nombre de concepto
• Definiciones pueden ser cíclicas
– Axiomas Generales de Inclusión (GCIs)
• C ⊑ D donde C es un concepto arbritario
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ejemplo Ontología
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Lenguajes de ontologías Web
•
Basado en “Frames y reglas. SHOE. Extensión HTML,
luego se basó en XML.
•
Basados en Redes Semánticas y “Frames”. RDF(S)
•
Basados en “Frames” y Lógicas Descriptivas. DAML,
DAML+OIL, OIL, OWL.
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Lenguajes de Ontologías Web
•
Lenguajes basados en XML para facilitar la descripción de contneido
– RDF → RDF Schema (RDFS)
•
RDFS se reconoce como un Lenguaje de Ontologías
– Classes y properties
– Sub/super-classes (y properties)
– Range y domain (de properties)
•
Pero RDFS débil Para describir los recursos en detalle, e.g.:
– No hay restricciones de range y domain localizados
– No hay restricciones de participación/cardinalidad
– No hay properties transitive, inverse o symmetrical
•
Y RDF(S) tiene una semántica no estándar con “higher order”
– Es difícil proveer soporte para razonamiento
Trimestre Sep-Dic 2005 - Edna Ruckhaus
OWL como DL: Constructores de Clases
•
Tipos de datos XMLS como clases en ∀P.C and ∃P.C
– E.g., ∃hasAge.nonNegativeInteger
•
Anidamiento de constructores
– E.g., Person ⊓ ∃hasChild.(Doctor ⊔ ∃hasChild.Doctor)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
OWL como DL: Axiomas
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Semántica OWL DL
•
Correspondencia OWL a DL equivalente (SHOIN(Dn)):
– Facilita proveer servicio de razonamiento (usando sistemas
DL)
– Se provee semántica bien definida
•
La semántica DL se define mediante interpretaciones:
I = (ΔI, .I), donde
– ΔI es el dominio de interpretación (conjunto no vacío)
–
.I
es una función de interpretación que realiza las
correspondencias:
• Concepto (class) nombre A → subconjunto AI de ΔI
• Rol (property) nombre R → relación binaria RI sobre ΔI
• Individuo nombre i → iI elemento de ΔI
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Semántica DL
•
Función de interpretación .I se extiende a expresiones de
conceptos:
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ejemplo de Interpretación
Δ = {v, w, x, y, z}
AI = {v, w, x}
BI = {x, y}
RI = {(v, w), (v, x), (y, x), (x, z)}
AI
v
w
•
¬B=
•
A⊓B=
•
•
•
•
¬A⊔B=
∃RB=
∀RB=
∃ R (∃ R A) =
•
∃ R ¬ (A ⊔ B) =
•
•
≤1RA=
≥1RA=
Trimestre Sep-Dic 2005 - Edna Ruckhaus
x
y
z
BI
Semántica de la Base de Conocimiento
•
Una interpretación I satisface (modela) un axioma A (I ⊨ A):
– I ⊨ C ⊑ D ssi CI ⊆ DI
– I ⊨ C ≡ D ssi CI = DI
– I ⊨ R ⊑ S ssi RI ⊆ SI
– I ⊨ R ≡ S ssi RI = SI
– I ⊨ R+ ⊑ R ssi (RI)+ µ RI
– I ⊨ x ∈ D ssi xI ∈ DI
– I ⊨ <x,y> ∈ R ssi (xI,yI) ∈ RI
•
I satisface un Tbox T (I ⊨ T ) ssi I satisface cada axioma A en T
•
I satisface un Abox A (I ⊨ A) ssi I satisface cada axioma A en A
•
I satisface un KB K (I ⊨ K) ssi I satisface ambos T y A
Trimestre Sep-Dic 2005 - Edna Ruckhaus
DL vs. BD
•
DL KB no define un modelo, es un conjunto de
restricciones que definen un conjunto de modelos
– Si no hay restricciones (KB vacío) significa que cualquier
modelo es posible
– Más restricciones significa menos modelos
– Demasiadas restricciones puede significar que no hay
modelo posible (KB inconsistente)
•
•
DBs (y sistemas KR basados en “frames” y reglas) asumen
que el DB/KB define un solo modelo
Suposición de nombre único
• Nombres diferentes se interpretan como individuos
diferentes
•
Suposición mundo cerrado vs. mundo abierto
• El dominio consiste solo de los individuos nombrados en
el DB/KB
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Ejemplo de múltiples modelos
KB = {}
KB = {a:C, b:D, c:C, d:E}
KB = {a:C, b:D, c:C, d:E, b:C}
KB = {a:C, b:D, c:C, d:E, b:C
D ⊑ C}
KB = {a:C, b:D, c:C, d:E, b:C
D ⊑ C, E ⊑ C}
KB = {a:C, b:D, c:C, d:E, b:C
D ⊑ C, E ⊑ C, d:¬ C}
Trimestre Sep-Dic 2005 - Edna Ruckhaus
I1:
Δ = {v, w, x, y, z}
CI = {v, w, y}
DI = {x, y} EI = {z}
aI = v bI = x
cI = w dI = y
I3:
Δ = {v, w, x, y, z}
CI = {v, w, y}
DI = {x, y} EI = {z}
aI = v bI = y
cI = w dI = z
I2:
Δ = {v, w, x, y, z}
CI = {v, w, y}
DI = {x, y} EI = {z}
aI = v bI = x
cI = w dI = z
I4:
Δ = {v, w, x, y, z}
CI = {v, w, x, y}
DI = {x, y} EI = {z}
aI = v bI = x
cI = y dI = y
Ejemplo de Un Modelo
KB = {}
I:
Δ = {}
KB = {a:C, b:D, c:C, d:E}
I:
Δ = {a, b, c, d}
CI = {a, c}
DI = {b} EI = {d}
aI = a
bI = b
cI = c
dI = d
KB = {a:C, b:D, c:C, d:E, b:C}
KB = {a:C, b:D, c:C, d:E, b:C
E ⊑ C}
Trimestre Sep-Dic 2005 - Edna Ruckhaus
I:
Δ = {a, b, c, d}
I:
Δ = {a, b, c, d}
CI = {a, b, c}
DI = {b} EI = {d}
aI = a
bI = b
cI = c
dI = d
CI = {a, b, c, d}
DI = {b} EI = {d}
aI = a
bI = b
cI = c
dI = d
Tareas de Inferencia
•
Conocimiento está correcto (captura intuiciones)
– C incluye D w.r.t. K ssi para cada modelo I de K, CI ⊆ DI
•
Conocimiento es mínimamente redundante (no hay sinónimos)
– C es equivalente a D w.r.t. K ssi para cada modelo I de K, CI = DI
•
Conocimiento es significativo(clases pueden tener instancias)
– C es satisfiable w.r.t. K ssi existe algún modelo I de K s.t. CI ≠ ∅;
•
Consulta conocimiento
– x es una instancia de C w.r.t. K ssi para cada modelo I de K, xI ∈ CI
–
•
<x,y> es una instancia de R w.r.t. K ssi para, cada modelo I de K,
(xI,yI) ∈ RI
Consistencia del KB
– Un KB K es consistente ssi existe algún modelo I de K
Trimestre Sep-Dic 2005 - Edna Ruckhaus
¿Por qué razonamiento sobre
ontologías?
•
Dado el papel clave de las ontologías en muchas aplicaciones, es
importante proveer herramientas y servicios para ayudar a usuarios a:
– Diseñar y mantener ontologías de calidad, e.g.:
• Significativas — Todas las clases deben poder tener instancias
• Correcta — Capturan la intuición de los expertos en el dominio
• Mínimamente redundante — sin sinónimos no intencionales
• Axiomatización detallada — descripciones detalladas
– Contestar consultas acerca de las clases e instancias de las
ontologías, e.g.:
• Encontrar clases más general/específica
• Recuperar los individuos/tuplas que satisfacen una consulta
• Recuperar las clases más específicas a las cuales pertenece un
individuo (realization)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Razonamiento utilizando técnicas DL
•
Tareas de razonamiento reducibles a KB (un)satisfiability
– C ⊑ D ssi C ⊓ ¬D) es not satisfiable
– C ≡ D ssi C ⊑ D y D ⊑ C
– C y D son disjuntos ssi C ⊓ D es not satisfiable
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Razonamiento utilizando técnicas DL
•
Sistemas DL actuales usan algoritmos tableaux (muy
optimizados) para decidir satisfiability (consistency) de KB
• Algoritmos Tableaux tratan de construir un ejemplo concreto
(modelo) consistente con axiomas KB:
– Comienzan a partir de hechos ground (Axiomas ABox)
– Construyen el modelo mediante:
• Descomposición sintáctica utilizando reglas de expansión
tableaux
• Infieren restricciones sobre (elementos del) modelo
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Qué tiene Description Logic que no
tiene Datalog?
•
•
•
•
•
Negación.
Disjunción.
Cuantificador universal en el cuerpo de una regla.
Cuantificador existencial en la cabeza de una regla.
Restricciones de cuantificación y cardinalidad.
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Qué tiene Datalog que no tiene
Description Logic ?
•
•
Predicados n-arios.
Reglas que rompen el modelo de árbol:
– tio(x,y):-padre(x,z),hermano(z,y)
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Qué tiene Datalog y Description Logic ?
•
•
•
•
•
•
Conjunción en la cabeza de las reglas.
Cuantificación universal en la cabeza de las reglas.
Cuantificación existencial en el cuerpo de las reglas.
Predicados unarios y binarios.
Predicados/roles con inversas.
Predicados transitivos, simétricos
Trimestre Sep-Dic 2005 - Edna Ruckhaus
Descargar