Verificación de Bases de Conocimiento Basada en Algebra de Grafos

Transcripción

Verificación de Bases de Conocimiento Basada en Algebra de Grafos
VERIFICACION DE BASES DE CONOCIMIENTO BASADA
EN ALGEBRA DE GRAFOS
Dramis, L., Britos, P., Rossi, B. y García Martínez, R.
Centro de Ingeniería de Software e Ingeniería del Conocimiento. Instituto Tecnológico de Buenos Aires
[email protected]
1. APROXIMACIÓN INTUITIVA
El conjunto de toda la información relevante sobre un universo dado, disponible en un momento
determinado, y la estructura que subyace a esta información, constituye un estado consistente de ese
universo. Estos estados consistentes se representan mediante grafos dirigidos y etiquetados.
La representación basada en grafos de los estados consistentes de un universo comprende sólo el
aspecto estático del mismo. Más importante es el aspecto dinámico, o sea, la posibilidad de
modificar estos estados de acuerdo a las acciones desarrolladas en ese universo sobre los objetos
que forman parte de él.
Este aspecto dinámico se puede describir mediante la especificación de los estados modificados que
puede alcanzar ese universo si se llevan a cabo tales acciones, para cada estado consistente del
mismo.
Denominamos E0 → E1 a la relación que representa la operación disponible para actualizar el estado
E0 del universo.
Cada una de estas operaciones se describe mediante una producción de grafos.
Se debe definir para cada operación del universo una producción de grafos, cuya parte izquierda
contenga aquellos nodos y/o arcos a eliminar, y cuya parte derecha contenga los nodos y/o arcos a
agregar al aplicar la producción a un estado consistente dado del universo.
2. APROXIMACIÓN INFORMAL
Una regla de transformación de grafos o producción (L, K, R) consiste en tres grafos L, K y R. Una
producción (L, K, R) es aplicable a un grafo G si G contiene un subgrafo que es una imagen de L.
Una producción (L, K, R) es aplicable a un grafo G si L es un subgrafo de G.
El grafo L constituye la parte izquierda de la producción, y formula las condiciones bajo las cuales
resulta aplicable la producción, o sea, es un subconjunto del conjunto de objetos (nodos y arcos) del
universo. El grafo de contacto K, que generalmente es un subgrafo de L y de R, describe los
subobjetos de la parte izquierda que se deben preservar en el proceso de aplicación de la producción.
Por lo tanto, la diferencia entre L y K: L-K, contiene a todos aquellos subobjetos que se deben
eliminar al aplicar la producción. Análogamente, la diferencia R-K contiene a todos aquellos
subobjetos que se deberán agregar al aplicar la producción. Este grafo intermedio K describe el
contexto en el cual se integran los subobjetos agregados.
3. DEFINICIONES
3.1. CATEGORÍAS
Una categoría Cat consiste de una colección de objetos: Obj(Cat), una colección de morfismos
(funciones, relaciones binarias, etc) para cada par de objetos A, B ∈ Obj(Cat): Cat(A, B) y un
operador de composición “o” para cada terna de objetos A, B, C ∈ Obj(Cat):
Cat(A, B)xCat(B, C) → Cat(A, C).
Esta sujeta a las siguientes condiciones:
1. Existencia de identidades: Para cada objeto A ∈ Obj(Cat), existe un morfismo identidad idA ∈
Cat(A, A), tal que para todo morfismo g ∈ Cat(A, B): g o idA = g y para todo morfismo f ∈
Cat(B, A): idA o f = f.
2. Asociatividad de la composición: Para todo morfismo f ∈ Cat(A, B), g ∈ Cat(B, C), y h ∈
Cat(A, B), h o (g o f) = (h o g) o f.
3.2. MONOMORFISMO
Un morfismo f : B → C en una categoría Cat es un monomorfismo, si para todo par de morfismos g,
h ∈ Cat(A, B), la igualdad f o g = f o h, implica g = h (noción de función inyectiva).
A
g
B
f
h
C
3.3. PRODUCCIÓN
Una producción p = (L ← K → R) en una categoría Cat consiste en un par de objetos (L, R),
llamados parte izquierda y parte derecha de la producción, un objeto K llamado objeto interfaz y
dos monomorfismos K → L y K → R.
3.4. PUSHOUT
El diagrama conmutativo
f
A
B
g
g´
C
D
f´
Es un diagrama de Pushout si, para todo diagrama conmutativo
f
A
B
g
i
C
D
j
Existe un único morfismo k: D → X tal que k o g’ = i y k o f’ = j
f
A
B
C
g´
D
g
f´
i
k
j
X
Dados dos conjuntos B y C con sus componentes correspondientes dados por dos morfismos:
f:A→Byg:A→C
para un objeto A, es posible unirlos o pegarlos sobre sus componentes correspondientes.
El objeto D de un diagrama de pushout se llama objeto pushout y es único. El objeto C en un
diagrama de pushout se llama conmplemento pushout de los morfismos f y g.
3.5. DOBLE PUSHOUT
Los diagramas de pushout se pueden componer tanto horizontal como verticalmente. Si (1) y (2)
son diagramas de pushout, entonces (1)+(2) también es diagrama de pushout.
A
D
(1)
B
E
(2)
C
F
3.6. DERIVACIÓN DIRECTA
Dada una producción p = (L ← K → R) en una categoría Cat, un objeto D, llamado objeto contexto
y un morfismo K → D.
Una derivación directa de un objeto G a un objeto H via p: G ⇒ H, viene dada por los dos
diagramas de pushouts (1) y (2) en Cat siguientes:
L
(1)
G
K
R
(2)
D
H
Los morfismos L → G y R → H se llaman ocurrencia de L en G y de R en H.
3.7. DERIVACIÓN
Una secuencia de derivaciones directas, o simplificando, una derivación de de un objeto G a un
objeto H: G ⇒ H, indica que G ≅ H, (isomorfismo, noción asociada a función biyectiva), o que
existe una secuencia de n >= 1 derivaciones directas.
pn
p1 p2
G = G0 ⇒ G1 ⇒ ....... ⇒ Gn = H
La idea de una producción es reemplazar la parte izquierda L por la parte derecha R, donde el
objeto interface K junto con los monomorfismos K → L y K → R designan los subobjetos comunes
a L y R que se preservan al aplicar la producción.
Los pushouts del doble diagrama se pueden interpretar como el pegado (o plegado) de los objetos L
y D sobre K para obtener G, y de R y D sobre K para obtener H. Esto nos permite obtener una
visión simétrica de la derivación directa, donde dado el objeto contexto D y el morfismo K → D,
además de la producción p, tanto el objeto G como el H quedan unívocamente determinados (por
isomorfismo).
3.8. DERIVACIÓN DIRECTA INVERSA
Dada una producción p = (L←K→R) y una derivación directa p: G ⇒ H, la producción inversa p-1
= (R ← K → L) da lugar a una derivación directa inversa p-1 : G ⇒ H.
(I)
R
H
(2)
K
(1)
D
L
G
La derivación directa inversa p-1 : G ⇒ H viene dada por el doble diagrama de pushout (I) usando
los mismos diagramas de pushout que en la derivación directa, pero en orden opuesto.
3.9. APLICACIÓN DE UNA PRODUCCIÓN
Dada una producción p = (L ← K → R) en una categoría Cat, un objeto G y una ocurrencia L → G
de L en G, la producción p se llama aplicable a G vía L → G si se cumplen las dos condiciones
siguientes:
1. Existen un objeto D y dos morfismos K → D y D → G tales que el diagrama (1) resulta un
diagrama de pushout (D se llama complemento pushout de L respecto de G y K).
2. Existe un objeto H que es el pushout de K → R y K → D, de modo que el diagrama (2) resulta
un diagrama de pushout.
L
G
(1)
K
D
(2)
R
H
Aún si la categoría Cat tiene pushouts, el complemento pushout sólo existe bajo ciertas condiciones.
Las condiciones de existencia de complementos pushout, se denominan condiciónes de contacto.
3.10. SINGLE PUSHOUT
El enfoque llamado single pushout estudia la generalización del enfoque anterior, doble pushout,
relajando las condiciones de aplicación de las producciones. Como no existe la condición de
contacto, este enfoque permite identificar objetos que sean candidatos a ser eliminados , y elimina
los arcos que queden pendientes, garantizando así que el resultado siempre sea un grafo.
Este enfoque interpreta una producción del enfoque doble pushout con dos morfismos (totales) de
grafos, como un único morfismo (parcial) de la parte izquierda a la parte derecha de la producción.
La noción de un diagrama de doble pushout para el proceso de transformación se puede reemplazar
por un único diagrama de pushout.
4. APLICACIÓN A LA VERIFICACIÓN DE BASES DE CONOCIMIENTOS
Los usos principales de los grafos en las ciencias de la computación son la representación de
estados y de estructuras. El enfoque algebraico (doble pushout) es un marco teórico muy adecuado
para el estudio de la inferencia en bases de conocimiento, pues la correspondencia que existe entre
las reglas una base de conocimiento, y las producciones de un sistema de reescritura(), se aprovecha
para trasladar los resultados teóricos de la concurrencia en la transformación de grafos a la
ejecución paralela de sistemas de producción.
Esta modelización de la inferencia se basa en la representación del estado de una base de
conocimiento mediante un grafo, y en el estudio de los cambios de estado de la base de
conocimiento (inferencia) mediante transformaciones de este grafo. El enfoque algebraico permite
además la especificación de la estructura de una base de conocimiento mediante un grafo, así como
la verificación de propiedades estructurales de una base de conocimiento (subsumción de reglas),
mediante las transformaciones de este grafo.
4.1. VERIFICACIÓN DE BASES DE CONOCIMIENTO
El concepto de verificación de bases de conocimientos se corresponde con el de control de calidad
del software tradicional. Se diferencian principalmente por las anomalías que se pueden presentar.
Las principales anomalías son las siguientes: inconsistencia, redundancia, circularidad, presencia de
objetos innecesarios y ambigüedades.
4.2. UN EJEMPLO DE APLICACIÓN EN DETECCION DE AMBIGÜEDADES EN UNA
BASE DE CONOCIMIENTO
Vamos a analizar el problema de la detección de ambigüedades mediante el uso de transformación
algebraica de grafos.
Definición: Sea K un sistema de clasificación, y sean A y B dos premisas clase del sistema K, si
existe un conjunto de premisas C tal que de él se deriven A y B, entonces A y B son
premisas ambiguas en el sistema K.
Hasta ahora, el problema de formalizar mecanismos de detección de ambigüedades en bases de
conocimientos,, ha sido tratado mediante la técnica de ,marcado de grafos.
A continuación se presentan definiciones formales basadas en un modelo simple de base de
conocimiento y sistema de inferencia.
Dado un conjunto F de símbolos (proposiciones), y un conjunto R de símbolos (identificadores de
reglas), una base de conocimiento es un conjunto de reglas K = {R: A → C} donde A ∈ F y C ∈ F.
Para toda regla r ∈ K de la forma .F1, ..., Fn → F, se definen las funciones lhs(r) = { F1, ..., Fn} y
rhs(r) = { F}.
Interpretación (Definición): Una interpretación I sobre una base de conocimiento K = {R: A → C}
es una asignación de valores de verdad a cada proposición F ∈ F.
Cubrimiento (Definición): La regla r: F1, ..., Fn → F cubre a la proposición F en la interpretación I
si la fórmula F1 ∧ ... ∧ Fn es cierta en I
Ejemplo: Dada una base de conocimiento que contenga las reglas
P, Q → R
R, S → T
(r1)
(r2)
la regla r1 cubre a R en toda interpretacion en la que las proposiciones P
y Q sean ciertas mientras que r2 cubre a toda interpretacion en la R y S
sean ciertas
Subsumción (Definición): Una regla r ∈ K subsume a (o es más general que) una regla s ∈ K si
rhs(r) = rhs(s) y para toda interpretación I tal que K es cierta en I, lhs(r)
es cierta en I siempre que lhs(s) sea cierta en I.
Ejemplo: La regla r1 subsume a la regla r2 con respecto a toda base de
conocimiento que contenga reglas
P, Q → S
P, Q, S → S
(r1)
(r2)
ya que, en toda intepretacion en la que la base de conocimientos sea
cierta y r2 cubra a S, entonces P, Q y R son ciertas, S tambien es cierta,
y r1 tambien cubre a S en esa interpretacion.
La subsumción puede ser local a las reglas participantes, o global a la
base de conocimiento.
Ejemplo: La regla r2 subsume a la regla r3 con respecto a toda base de
conocimiento que contenga reglas
P, Q → R
(r1)
R, S → T
(r2)
P, Q, S → T (r3)
ya que, en toda intepretacion en la que la base de conocimientos sea
cierta y r3 cubra a T, entonces las proposiciones P, Q, S y T son ciertas,
la proposición R tambien es cierta, y r2 tambien cubre a T en esa
interpretacion.
Arbol de reglas (Definición): Un árbol de reglas en una base de conocimiento K es un conjunto de
reglas {r0, ..., rk} de K (k ≥ 0) tal que para todo i hay un j para el que
rhs(ri) ⊆ lhs(rj), donde 0 ≤ i < j ≤k.
Ejemplo: El conjunto de reglas {r1, r2, r3, r4} siguiente forman un arbol
de reglas:
X
r4
P, Q
S, T
R
(r1)
U
(r2)
U, V
W (r3)
R, W
X
R
W
r1
(r4)
P
r3
Q
U
V
r2
S
T
Corte de un árbol de reglas (Definición): El corte de un árbol de reglas {r0, ..., rk} en K (k>=0),
denotado por cut(r0, ..., rk), es el conjunto de proposiciones: lhs(r0) ∪ ...
∪ lhs (rk) \ rhs(r0) \ ... rhs (rk) siendo ∪ unión de conjuntos, y \
diferencia de conjuntos.
Ejemplo: El corte del arbol de reglas {r1, r2, r3, r4} del ejemplo anterior
es {P, Q, S, T, V}
El corte de un arbol de reglas elementales {r} es entonces lhs(r) \ rhs(r)
y esto es igual a lhs(r), siempre que la base de conocimiento sea
aciclica.
Plegado de reglas (Definición): El plegado de las reglas:
r1: B1,..., Bm,...,Bn → A1
y r2: B1,..., Bm → A2
en una base de conocimiento K es la nueva regla:
r1↑ r2 : A2, Bm+1,....., Bn → A1
Ejemplo: El corte del arbol de reglas
P, Q → R
S, T → U
U, V→ W
R, W → X
(r1)
(r2)
(r3)
(r4)
Se puede obtener mediante las tres operaciones de plegado de reglas:
r1↑ r4
r2↑ r3
r3↑ r4
X
X
X
⇒
⇒
⇒
r4
R
X
r4
r4
W
R
R
W
S T V
r1
P
Q U
r2
S
r4
r3
r1
r3
r1
V
P
Q S T V
P
P, Q → R
(r1)
S, T, V → W (r2)
R, W → X
(r4)
P Q S T V
P, Q, S, T, V → X ( r1↑ (( r2 ↑ r3) ↑ r4))
Q
P, Q → R
(r1)
S, T, V → X (( r2 ↑ r3) ↑ r4)
T
Ambigüedad (Definición): Dos premisas A y B son ambiguas, si existe un grupo de premisas C tal
que existen o se pueden construir por plegado, reglas de la forma C →
A y C → B y en la misma interpretación, la regla C → A cubre a la
proposición A y C → B cubre a la proposición B.
Redundancia (Definición): La redundancia se define como generalización de la subsumción, o sea,
subsumción en ambos sentidos. La regla r ∈ K es redundante a la regla
s ∈ K si r subsume a s y s subsume a r.
4.2.1. REPRESENTACIÓN BASADA EN GRAFO DE UNA BASE DE CONOCIMIENTO
La estructura de una base de conocimiento se puede representar sin pérdida de información
mediante un grafo o un hipergrafo. Se pueden representar proposiciones mediante nodos y reglas
mediante hiperarcos. En este caso, de representación basada en hipergrafos, las producciones
resultan más simples.
P
P, Q → R
P, Q, V → U
R, W → S
R, S → T
S, U → T
(r1)
(r2)
(r3)
(r4)
(r5)
R
r4
r1
Q
W
V
r3
S
T
r2
U
r5
Representaciones similares a estas han sido utilizadas directamente para la verificación de bases de
conocimientos o en forma de redes de Petri, donde los lugares representan hechos y las transiciones
representan reglas de conocimiento.
Una forma equivalente consiste en representar proposiciones mediante nodos y reglas mediante
hiperarcos. La representación basada en hipergrafos resulta mas compacta que la representación
basada en grafos, y las producciones son mas simples y su aplicación resulta mas efeciente. La
representación correspondiente al ejemplo anterior es:
r1
P
r4
R
S
W
Q
T
r3
V
r2
U
r5
4.2.2. VERIFICACIÓN A POSTERIORI DE BASES DE CONOCIMIENTO – EL SISTEMA
DE PRODUCCIÓN
Bajo la representación basada en hipergrafos, se pueden detectar y eliminar todas las reglas
subsumidas localmente mediante la aplicación iterativa de las dos producciones siguientes (las
siguientes producciones son esquemas de producción, donde los puntos suspensivos significan cero
o más nodos).
p1
⇒
...
p2
⇒
...
...
...
...
...
Estas producciones describen modificaciones locales de la estructura de la base de conocimiento. El
enfoque algebraico extendido (single pushout) permite la especificación de modificaciones globales
de una base de conocimiento, gracias al efecto que produce la eliminación de un nodo en un
hipergrafo (la eliminación simultánea de todos los hiperarcos incidentes en el nodo).
El primer paso consiste en extender la representación de la estructura de la base de conocimiento,
haciendo explícito el corte de todos los árboles de reglas, mediante la aplicación iterativa de las
cuatro producciones siguientes. La aplicación de las mismas se sujeta a las siguientes dos
condiciones: 1) que el hiperarco negro que agrega la producción no exista previamente en el
hipergrafo; 2) que no exista en el hipergrafo otro hiperarco icidente en el nodo común a los dos
hiperarcos de la parte izquierda de la producción
p3
⇒
p4
⇒
...
...
...
...
...
...
...
p5
⇒
p6
⇒
...
...
...
...
...
...
...
...
...
Lo que estas cuatro producciones explicitan es el plegado de todas las reglas de la base de
conocimiento. Bajo esta nueva representación (hipergrafo de orden superior), los hiperarcos blancos
representan reglas de la base de conocimiento, y los negros, cortes de árboles de reglas.
Una vez explicitado el corte de todos los árboles de reglas de la base de conocimiento, se pueden
detectar y eliminar todas las reglas subsumidas globalmente mediante la aplicación iterativa de las
dos siguientes producciones:
p7
⇒
...
...
p8
⇒
...
...
...
...
...
...
...
La verificación se realiza entonces mediante la aplicación iterativa de las ocho producciones.
Cuando ya no se pueda aplicar ninguna de estas producciones, se extrae la base de conocimiento
final, libre de reglas redundantes y subsumidas.
4.2.3. VERIFICACIÓN DE PREMISAS AMBIGUAS
Sean C1 ∈ F y C2 ∈ F, C = {C1, C2} y A ∈ F y B ∈ F. Sean r1 ∈ K: r1 = {C1, C2 →A) y r2 ∈ K: r2 =
{C1, C2 →B). Entonces A y B son premisas ambiguas.
Las siguientes producciones vinculan con un arco ambiguo (un arco con una “o” superpuesta)
aquellos nodos (asociados a premisas ambiguas) para los cuales existan arcos que los tengan como
nodos consecuentes, y que verifiquen tener los mismos nodos antecedentes.
B
A
C1
...
C1
...
A
C1
C2
B
A
C2
A
C1
p10
⇒
C2
B
...
p9
⇒
C2
...
C2
...
C2
A
C1
p11
⇒
...
A
C1
Luego de aplicar iterativamente estas tres producciones, se extrae una base de conocimiento libre de
premisas ambiguas.
5. CONCLUSIONES
Se ha explorado la aplicabilidad del álgebra de grafos a la especificación de formalismos que
permitan detectar problemas en bases de conocimiento. En particular se ha podido definir un
sistema de producción de grafos que detecta ambigüedades sintetizando el procedimiento definido
por Loveland y Valtorta. Se continuará este trabajo tratando de establecer sistemas de producción
que permita detectar reglas de punto muerto y reglas redundantes.
6. REFERENCIAS
Ferruglio, G. 1992. Transformación Algebraica de Grafos en Inteligencia Artificial. Editor FCEyN
Loveland, D. y Valtorta, M. Detecting Ambiguity. Proceedings IJCAI´95. Pág. 182-184. Amherst.

Documentos relacionados