73
Introducci ´ on a la Ingenier ´ ıa del Conocimiento 2006-07 Aprendizaje de reglas: Programaci´ on L´ ogica Inductiva Miguel A. Guti´ errez Naranjo Dpto. Ciencias de la Computaci´ on e Inteligencia Artificial Universidad de Sevilla IIC 2006-2007 RGNC Aprendizaje de ... 1

Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Introduccion a la Ingenierıa del Conocimiento 2006-07

Aprendizaje de reglas: Programacion Logica Inductiva

Miguel A. Gutierrez Naranjo

Dpto. Ciencias de la Computacion e Inteligencia ArtificialUniversidad de Sevilla

IIC 2006-2007 RGNC Aprendizaje de ... 1

Page 2: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

¿Que es el Aprendizaje Automatico?

B Any change in a system that allows it to perform better thesecond time on repetition of the same task or on another taskdrawn from the same population (Simon, 1983).

B El Aprendizaje Automatico estudia como construir programasque mejoren automaticamente con la experiencia.

B ¿Por que estudiar Aprendizaje Automatico?

uRecientes avances en la teorıa y los algoritmos.

uCrecimiento desbordante de datos “en lınea” (on line).

u Se dispone de maquinas suficientemente potentes.

u Interes por parte de la industria.

IIC 2006-2007 RGNC Aprendizaje de ... 2

Page 3: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Algunos ejemplos (I)

B Minerıa de datos (Data mining): Uso de datos historicos paramejora de decisiones:

Datos medicos −→ Decisiones medicas

B Conduccion autonoma de vehıculos: Aprenden a conducirse enautopistas en funcion de la informacion visual que reciben.

B Reconocimiento del habla.

B Juegos

B Programas que se modifican a sı mismos segun las costumbresdel usuario:

IIC 2006-2007 RGNC Aprendizaje de ... 3

Page 4: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Un problema de minerıa de datos

B Dados:uDatos de 9714 pacientes, describiendo datos sobre embarazo y alum-

bramiento.

uCon 215 caracterısticas de cada paciente.

B Objetivo:

uAprender a predecir clases de pacientes con alto riesgo de cesarea.

B Una de las 18 reglas aprendidas:

u Si la madre es primeriza, los ultrasonidos en el segundo trimestre dan

resultados anormales, etc . . .

u Entonces sera necesaria cesarea

IIC 2006-2007 RGNC Aprendizaje de ... 4

Page 5: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Analisis del riesgo en un credito

B Reglas aprendidas a partir de la sıntesis de datos:B Primera regla:

u Si bancos–con–deudas > 2 y Reincidencias > 1, entonces Aceptar= No

B Segunda regla:

u Si Bancos–con–deudas = 0 y Ingresos > 150.000, entonces Aceptar=

B ...

IIC 2006-2007 RGNC Aprendizaje de ... 5

Page 6: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Hacia donde vamos (I)

B Hoy: La punta del iceberg

uRedes neuronales

uArboles de decision

uProgramacion logica inductiva

uRegresion

u . . .

B Aplicados a bases de datos bien estructuradas

B Interes por parte de la industria

IIC 2006-2007 RGNC Aprendizaje de ... 6

Page 7: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Hacia donde vamos (II)

B Oportunidades para el futuro:

B Aprendizaje a partir de datos de varias fuentes simultaneas:Bases de datos internas, web,. . .

B Aprendizaje por experimentacion activa

B Aprendizaje de decisiones en lugar de predicciones

B Aprendizaje acumulativo de larga duracion

B ¿Lenguajes de programacion con aprendizaje incorporado?

IIC 2006-2007 RGNC Aprendizaje de ... 7

Page 8: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Disciplinas relacionadas

B Inteligencia Artificial

B Metodos bayesianos

B Teorıa de la complejidad

B Ingenierıa del conocimiento

B Teorıa de la informacion

B Filosofıa

B Psicologıa y neurobiologıa

B Estadıstica

B . . .

IIC 2006-2007 RGNC Aprendizaje de ... 8

Page 9: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Problema de aprendizaje

B Aprendizaje: Mejora de alguna tarea mediante la experiencia

B Tarea (T ): Lo que se debe aprender

B Experiencia (E): La que se tiene en relacion a lo que se debeaprender

B Rendimiento (R): Medida de la calidad de lo aprendido

B Se dice que un sistema aprende de la experiencia, si elrendimiento R de la tarea T aprendida crece al crecer E.

IIC 2006-2007 RGNC Aprendizaje de ... 9

Page 10: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Problema de aprendizaje

B ¿Que experiencia?

B ¿Que debe aprender?

B ¿Como representamos el conocimiento?

B ¿Que algoritmo usaremos para aprenderlo?

B ¿Como se mide la mejora?

IIC 2006-2007 RGNC Aprendizaje de ... 10

Page 11: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos

B Una forma de aprender a jugar al ajedrez (de mejorar nuestrojuego), es jugar contra nosotros mismos. Normalmente la formade saber si hemos aprendido es jugar contra otros.

B Caracterizacion de este problema de aprendizaje

u T : Jugar al ajedrez

u E: Conjunto de partidas jugadas contra uno mismo

uR: Porcentaje de partidas ganadas contra otro jugador

IIC 2006-2007 RGNC Aprendizaje de ... 11

Page 12: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos

B Una forma de que un sistema aprenda a reconocer palabras enun texto manuscrito, puede ser a partir de una base de datoscon imagenes de palabras manuscritas y sus correspondientestranscripciones.

B La forma de saber si el sistema ha aprendido a reconocer pal-abras, sera darle un texto manuscrito y ver cuantas transcrip-ciones correctas hace.

B Caracterizacion de este problema de aprendizaje

u T : Reconocer palabras manuscritas

u E: Base de datos de palabras con sus transcripciones

uR: Porcentaje de palabras reconocidas

IIC 2006-2007 RGNC Aprendizaje de ... 12

Page 13: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos

B Se puede ensenar a un vehıculo a conducir automaticamente,guiandose por lo que ve (usando sensores de vision), y sumin-istrandole una base de datos en la que se hayan registrado lasimagenes tomadas mientras un conductor humano conducıa elvehıculo, junto con las correspondientes acciones que hizo.

B Caracterizacion de este problema de aprendizaje

u T : Conducir un vehıculo

u E: Base de datos de imagenes, y las acciones correspondientes, reg-

istradas durante conduccion por parte de un conductor humano

uR: Distancia recorrida sin comenter ningun error

IIC 2006-2007 RGNC Aprendizaje de ... 13

Page 14: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

¿Que estudiar en A. A.?

B ¿Que algoritmos pueden aproximar funciones correctamente?

B ¿Como influye el numero de ejemplos en la exactitud?

B ¿Como influye la complejidad de la representacion de lashipotesis?

B ¿Como influye el ruido?

B ¿Cuales son los lımites teoricos del aprendizaje?

B ¿Como puede ayudar el conocimiento a priori?

B ¿Que esquemas del aprendizaje biologico podemos adoptar?

B ¿Como pueden los sistemas alterar su propia representacion?

IIC 2006-2007 RGNC Aprendizaje de ... 14

Page 15: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Un ejemplo: Los trenes de Ryszard Michalski

uBuscamos una explicacion que nos permita distinguir entre los trenes

que van al este y los trenes que van al oeste.

1. TRAINS GOING EAST 2. TRAINS GOING WEST

1.

2.

3.

4.

5.

1.

2.

3.

4.

5.

IIC 2006-2007 RGNC Aprendizaje de ... 15

Page 16: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos

B Ejemplos positivos

eastbound(east1). eastbound(east2). eastbound(east3).

eastbound(east4). eastbound(east5).

B Ejemplos negativos

eastbound(west6). eastbound(west7). eastbound(east8).

eastbound(west9). eastbound(west10).

B Espacio y sistemas de busqueda

B Conocimiento basicouTren 1:

short(car_12). load(car_11,rectangle,3). wheels(car_11,2). ...

...

uTren 2: ...

IIC 2006-2007 RGNC Aprendizaje de ... 16

Page 17: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Sesion

[theory]

[Rule 1] [Pos cover = 5 Neg cover = 0]

eastbound(A) :-

has_car(A,B), short(B), closed(B).

[pos-neg] [5]

[Training set performance]

Actual

+ -

+ 5 0 5

Pred

- 0 5 5

5 5 10

Accuracy = 1.0

[Training set summary] [[5,0,0,5]]

[time taken] [0.13]

IIC 2006-2007 RGNC Aprendizaje de ... 17

Page 18: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

¿Que es un concepto?

B Un concepto es el conjunto de todas sus instancias(G. Leibnitz)

u La Humanidad es el conjunto de todos los hombres.

u La sociedad andaluza es el conjunto de habitantes de Andalucıa.

u La relacion mayor que definida sobre el conjunto de los numeros reales

es el conjunto de pares (x, y) tales que x es mayor que y.

IIC 2006-2007 RGNC Aprendizaje de ... 18

Page 19: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Aprendizaje de conceptos

B Para conocer un conjuntos tenemos dos tipos de definiciones:

Extensiva: Enumerando uno tras otro sus elementos

Vocales = {a, e, i, o ,u}Intensiva: Dando una propiedad que tengan todos aquellosy solo aquellos elementos del conjunto

ParesN = {n ∈ N|∃m ∈ N(n = 2×m)}

IIC 2006-2007 RGNC Aprendizaje de ... 19

Page 20: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Graficamente

U

E+

E−

H1 H3 H4 H2

⊕ ⊕

⊕⊕

◦◦

◦◦

◦◦

◦◦

'

&

$

%

'

&

$

%

'

&

$

%

'

&

$

%

'

&

$

%

IIC 2006-2007 RGNC Aprendizaje de ... 20

Page 21: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Un ejemplo

E+ = {2, 4, 6, 8}E− = {11, 17}

H1 =E+

H2 = N−E−

H3 = {n ∈ N |n es par }H4 = {n ∈ N |n ≤ 10}

IIC 2006-2007 RGNC Aprendizaje de ... 21

Page 22: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Dos problemas

Solo conocemos una cantidad finita de instancias (positivas y negativas)del concepto.

¿Como podemos obtener conocimiento general ?

⇒ Abduccion

¿Como podemos estar seguros de nuestro conocimiento?

⇒ Justificacion

IIC 2006-2007 RGNC Aprendizaje de ... 22

Page 23: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Abduccion (Peirce y Polya)

Charles S. Peirce:

La abduccion es el proceso de formar hipotesis explicativas.

La abduccion es la unica operacion logica que introduce nuevas ideas.

• The surprising fact C is observed.• But if A were true, C would be a matter of course.• Hence, there is reason to suspect that A is true.

G. Polya contrasta dos tipos de argumentos:

El silogismo demostrativo, en donde de A→ B y B falso, concluimos ¬AEl silogismo heurıstico en donde de A→ B y B verdadero, se sigue que A es mascreıble.

IIC 2006-2007 RGNC Aprendizaje de ... 23

Page 24: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Reglas de inferencia (C. S. Peirce)

DEDUCCION

• Regla: Todas las judıas de esta bolsa son blancas

• Premisa: Estas judıas proceden de esta bolsa

• Conclusion: Estas judıas son blancas

INDUCCION

• Premisa: Estas judıas proceden de esta bolsa

• Conclusion: Estas judıas son blancas

• Regla: Todas las judıas de esta bolsa son blancas

ABDUCCION

• Regla: Todas las judıas de esta bolsa son blancas

• Conclusion: Estas judıas son blancas

• Premisa: Estas judıas proceden de esta bolsa

IIC 2006-2007 RGNC Aprendizaje de ... 24

Page 25: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Justificacion

David Hume, en suTreatise on Human Nature defendio que la ideade ley causal es algo que existe solo en la mente y no hay necesidadlogica inherente a las leyes causales.

Kark R. Popper apunto el hecho de que las hipotesis cientıficas nopueden ser verificadas de manera conclusiva. Solo pueden ser falsifi-cadas de manera conclusiva.

R. Carnap desarrollo teorıas estadısticas para confirmar hipotesiscientıficas expresadas en logica de primer orden.

IIC 2006-2007 RGNC Aprendizaje de ... 25

Page 26: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Aprendizaje de conceptos

B El aprendizaje de conceptos estudia como conseguir la definicionde una categorıa a partir de ejemplos positivos y negativos deesa categorıa.

B El aprendizaje de conceptos estudia como inferir automatica-mente una funcion general sobre el conjunto de ejemplos quetome valores booleanos y caracterice los ejemplos conocidos.

f : Ejemplos −→ {0, 1}

B Dos objetivos:

uCompresion de la informacion

uCapacidad predictiva

IIC 2006-2007 RGNC Aprendizaje de ... 26

Page 27: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplo

Problema: Un amigo nuestro practica deportes acuaticos. Unos dıaslos practica y otros no. Nos gustarıa saber si hoy va a ir a practicarlos ono.

o o o O o o o

Universo: Conjunto de todos los dias posibles

Objetivo: Conjunto de todos los dias que practica deporte

Funcion objetivo: Funcion caracterıstica del conjunto objetivo

Hacer deporte : Dıas −→ {0, 1}

IIC 2006-2007 RGNC Aprendizaje de ... 27

Page 28: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema de la representacion

¿Como representamos un dıa?

Pares atributo–valor

Seleccion de atributos: Cielo, Temperatura, Humedad, VientoAgua, Prevision

Seleccion de valores:

Cielo: Soleado, lluvioso. Viento: Fuerte, debil, sin viento.Temperatura: Alta, templada, frıa. Agua: Caliente, templada, frıa.Humedad: Alta, normal, baja. Prevision: Cambio, Sigue igual.

IIC 2006-2007 RGNC Aprendizaje de ... 28

Page 29: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplo

Conjunto de entrenamiento:

Cielo Temperatura Humedad Viento Agua Prevision Hacer DeporteSoleado Templada Normal Fuerte Templada Sigue igual SıSoleado Templada Alta Fuerte Templada Siguel igual SıLluvioso Frıa Alta Fuerte Templada Cambio NoSoleado Templada Alta Fuerte Frıa Cambio Sı

¿Cuando hacemos deporte?

¿Podemos definir el concepto Hacer Deporte?

IIC 2006-2007 RGNC Aprendizaje de ... 29

Page 30: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema del aprendizaje de conceptos (I) (Inf.)

Dados:

• Un universo o conjunto de instancias X (Dıas posibles, cada unodescrito por los atributos Cielo, Temperatura, Humedad, Vien-to, Agua y Prevision).

• Una funcion de clasificacion definida sobre X desconocida:

c : X −→ Clasif

donde Clasif es el conjunto de posibles clasificaciones que tieneuna instancia. En nuestro ejemplo podemos considerar

Clasif={Sı, No} o Clasif = {0, 1}

IIC 2006-2007 RGNC Aprendizaje de ... 30

Page 31: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema del aprendizaje de conceptos (Inf.)

• Un conjunto de entrenamiento (conocido)

D = {(x1, c(x1)), (x2, c(x2)), . . . , (xn, c(xn))}formado por pares (xi, c(xi)) donde xi ∈ X y c(xi) es la clasifi-cacion de la instancia xi por la funcion c.

Encontrar:

• Una funcion objetivo

h : X −→ Clasif

tal que si (xi, c(xi)) ∈ D entonces h(xi) = c(xi)

IIC 2006-2007 RGNC Aprendizaje de ... 31

Page 32: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Hipotesis

La Hipotesis del Aprendizaje Inductivo:

Cualquier hipotesis que aproxime la funcion ob-jetivo sobre un conjunto suficientemente grandede ejemplos de entrenamiento tambien aproxi-mara la funcion objetivo sobre el resto de losejemplos.

IIC 2006-2007 RGNC Aprendizaje de ... 32

Page 33: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema de la representacion

Seguimos con nuestro ejemplo

Muchas representaciones posibles

Pares valor–atributo

Hipotesis: Conjuncion de restricciones sobre las instancias de losatributos

Cada restriccion puede ser:

• Un valor especıfico (p. e. Agua = Templada)

• Cualquier valor (p. e. Agua = ?)

• No se permite ningun valor (p. e. Agua = ∅)

IIC 2006-2007 RGNC Aprendizaje de ... 33

Page 34: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema de la representacion

B Podemos considerar que los dıas para hacer deporte son aquellosen los que

Cielo = Soleado yTemperatura = Da igual yHumedad = Da igual yViento = Fuerte yAgua = Da igual yPrevision = Sigue igual

B O con una representacion mas compacta

(Soleado,?,?,Fuerte,?,Sigue igual)

IIC 2006-2007 RGNC Aprendizaje de ... 34

Page 35: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Programacion Logica Inductiva

ProgramacionLogica

Inductiva

AprendizajeAutomatico

ProgramacionLogica

• Formacion dehipotesis a partirde observaciones

• Sıntesis de nuevosconocimientos a partirde la experiencia

• Representacion formal

• Orientacion semantica

• Tecnicas

��

��

��

��+

��������

IIC 2006-2007 RGNC Aprendizaje de ... 35

Page 36: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Desarrollo reciente

B Los sistemas de ILP han sido usados con exito en una granvariedad de dominios, incluyendo

Ecologıa

Ingenierıa

Biologıa molecular

Procesamiento del lenguaje natural

Control del trafico

...

IIC 2006-2007 RGNC Aprendizaje de ... 36

Page 37: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema de la representacion (I)

Pares atributo–valor (Logica proposicional)

Hipotesis:

• Disyuncion de conjunciones de pares atributo–valor

(Cielo=Soleado ∧ Humedad=Normal)∨ (Cielo=Nublado)∨ (Cielo=Lluvioso ∧ Viento=Debil)

• Como conjunto de reglas

◦ Si Cielo=Soleado y Humedad=Normal entonces Hacer deporte

◦ Si Cielo=Nublado entonces Hacer deporte

◦ Si Cielo=Lluvioso y Viento=Debil entonces Hacer deporte

IIC 2006-2007 RGNC Aprendizaje de ... 37

Page 38: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

El problema de la representacion (II)

B Como arbol de decision

Cielo

Nublado

Humedad

NormalAlta

No Si

Viento

Fuerte Debil

No Si

Si

LluviosoSoleado

IIC 2006-2007 RGNC Aprendizaje de ... 38

Page 39: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Limitaciones

B Limitaciones:

Una representacion formal limitada (lenguaje de paresatributo–valor equivalente al de la logica proposicional)

Dificultad del manejo del conocimiento base

IIC 2006-2007 RGNC Aprendizaje de ... 39

Page 40: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Programacion Logica Inductiva (I)

B DadosuB Conocimiento basico

uD Conjunto de entrenamiento, con D = {〈xi, c(xi)〉}niuH Espacio de hipotesis

B . . . tales que . . .

uB ∪D 6` �u (∃i ∈ {1, . . . , n})[B 6` 〈xi, c(xi)〉]

B Encontrar h ⊆ H tal que

uB ∪D ∪ h 6` �u (∀i ∈ {1, . . . , n})[B ∪H ` 〈xi, c(xi)〉]

IIC 2006-2007 RGNC Aprendizaje de ... 40

Page 41: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos de ILP (I)

Representacion estandar:

Ejemplos: Atomos cerrados de la relacion hija(X,Y).

Conocimiento base: Definiciones de las relaciones progenitor(X,Y) y mujer(X) (Atomos cer-

rados o definiciones de predicados).

Conjunto de entrenamiento Conocimniento basehija(maria,ana) ⊕ progenitor(ana,maria) mujer(ana)hija(eva,tomas) ⊕ progenitor(tomas,eva) mujer(maria)hija(tomas,ana) progenitor(ana,tomas) mujer(eva)hija(eva,ana)

Hipotesis inducida:

hija(X,Y)←− mujer(X), progenitor(Y,X)

IIC 2006-2007 RGNC Aprendizaje de ... 41

Page 42: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos de ILP (II)

0

1 2

3 4

5

6

7

8

H0 =

{camino(X,Y)← enlace(X,Y)camino(X,Y)← enlace(X,Z),camino(Z,Y)

IIC 2006-2007 RGNC Aprendizaje de ... 42

Page 43: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos de ILP (III)

E⊕ = {par(0), par(s(s(0))), par(s(s(s(s(0))))), ...}E = {par(s(0)), par(s(s(s(0)))), par(s(s(s(s(s(0)))))), ...}

Hipotesis:

H0 =

{par(0) ←par(s(s(X))) ← par(X)

IIC 2006-2007 RGNC Aprendizaje de ... 43

Page 44: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Metodos (I)

Ascendente:

Comenzamos por una hipotesis demasiado especıfica, i.e., que no cubretodos los ejemplos positivos y por tanto, debe ser generalizada.

• Tecnicas:

◦ Resolucion inversa (CIGOL)

◦Menor generalizacion (Golem)

◦ ...

IIC 2006-2007 RGNC Aprendizaje de ... 44

Page 45: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Metodos (II)

Descendente:

Comenzamos por una hipotesis demasiado general, i.e., que cubre al-guno de los ejemplos negativos y por tanto, debe ser especializada.

• Tecnicas:

◦ Inferencia de modelos (MIS)

◦Metodo extensional (Foil)

◦ ...

IIC 2006-2007 RGNC Aprendizaje de ... 45

Page 46: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

CIGOL (S. Muggleton y W. Buntine, 1988)

Sistema interactivo

Metodo ascendente

Basado en resolucion inversa

Entrada

∗ Ejemplos∗ Conocimiento base∗ Respuestas a preguntas

-

Salida

∗ Clausulas de Horn-

IIC 2006-2007 RGNC Aprendizaje de ... 46

Page 47: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Resolucion

C1 ≡ q ← A C2 ≡ p← q, B

C ≡ p← A, B

@@@@@@@@@@@@@@

��

��

��

��

��

��

��

IIC 2006-2007 RGNC Aprendizaje de ... 47

Page 48: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Operadores en CIGOL (I)

C1 ≡ q ← A C2 ≡ p← q, B

C ≡ p← A, B

@@@@@@@@@@@@

���

��

��

��

���

Absorcion:q ← A p← A,B

q ← A p← q, BIdentificacion:

p← A,B p← q, B

q ← A p← q, B

IIC 2006-2007 RGNC Aprendizaje de ... 48

Page 49: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Operadores en CIGOL (II)

W–operadores

C1 ≡[p← r, A,B]q ← A,B C ≡

[r ← A]p← A, q C2 ≡

[q ← r, A, C]q ← A,C

B1 ≡[p← A,B]p← A,B B2 ≡

[q ← A,C]p← A,C

@@@@@@@@

��

��

��

��

@@@@@@@@

��

��

����

Intra–construccion:p← A,B p← A,Cq ← A,B p← A, q q ← A,C

Inter–construccion:p← A,B q ← A,Cp← r, A,B r ← A q ← r, A, C

IIC 2006-2007 RGNC Aprendizaje de ... 49

Page 50: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Operadores en CIGOL (III)

El operador de truncamiento

{L1} {L} {L2}

� �

σ1 τ1 τ2 σ2

@@@@@@@@

��

��

��

��

@@@@@@@@

��

��

����

IIC 2006-2007 RGNC Aprendizaje de ... 50

Page 51: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con CIGOL (I)

Concatenacion de listas| ?- cigol. OPERADORES

!- conc([s],[t],[s,t]). Truncamiento. . .

I know:

conc([s],[t],[s,t]).

!- conc([],[a],[a]). Truncamiento. . .

Is conc(A,[B],[C|D]) always true? n. Superado el tiempo lımite. . . 100000 ms. para Absorcion

I know:conc([],[a],[a]).

conc([s],[t],[s,t]).not(conc(A,[B],[C|D])).

IIC 2006-2007 RGNC Aprendizaje de ... 51

Page 52: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con CIGOL (II)

!- conc([],[1,2],[1,2]). Truncamiento. . . L1=conc([],[a],[a])

Is conc([],[A|B],[A|B]) always true? y. L2=conc([],[1,2],[1,2])I know:

conc([],[A|B],[A|B]).

conc([s],[t],[s,t]).not(conc(A,[B],[C|D])).

!- conc([1],[2,3],[1,2,3]). Truncamiento

. . . L1=conc([s],[t],[s,t])L2=conc([1],[2,3],[1,2,3])

IIC 2006-2007 RGNC Aprendizaje de ... 52

Page 53: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con CIGOL (III)

Is conc([A],[B|C],[A,B|C]) always true? y. Absorcion. . . conc([],[A|B],[A|B])

conc([A],[B|C],[A,B|C])

conc([],[A1|B1],[A1|B1]) conc([A2|B2],C2,[A2|D2]):- conc(B2,C2,D2)

conc([A],[B|C],[A,B|C])

τ1 =

{A1 → BB1 → C

}τ2 =

A2 → AB2 → []C2 → [B|C]D2 → [B|C]

@@@@@@@@@@@

��

��

��

��

���

New clauses:[(conc([A|B],C,[A|D]):- conc(B,C,D)]cover new facts: conc([A,B],[C|D],[A,B,C|D])] ...

Are new clauses always true: y.

IIC 2006-2007 RGNC Aprendizaje de ... 53

Page 54: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con CIGOL (IV)

. . .I know:

conc([],[A|B],[A|B]).conc([A|B],C,[A|D]):- conc(B,C,D).not(conc(A,[B],[C|D])).

!- conc([],[],[]). Truncamiento

. . .Is conc([],A,A) always true? y.

. . .I know:

conc([],A,A).conc([A|B],C,[A|D]):- conc(B,C,D)not(conc(A,[B],[C|D])).

IIC 2006-2007 RGNC Aprendizaje de ... 54

Page 55: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Golem (S. Muggleton y C. Feng, 1990)

La menor generalizacion general

Plotkin (1970) y Reynolds (1970) dotan al conjunto de terminos de unlenguaje de estructura de retıculo mediante la relacion de θ–subsuncion.

Un concepto C subsume a otro D si D ⊂ C

La clausula C1 θ–subsume a la clausula C2 si existe una sustitucion θtal que C1θ ⊂ C2

Forman retıculo, i.e., dadas C1 y C2 existe un unico inf (C1, C2) yun unico sup(C1, C2) que llamaremos menor generalizacion generalde C1 y C2.

IIC 2006-2007 RGNC Aprendizaje de ... 55

Page 56: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Golem (mgg)

Menor generalizacion general (mgg):

Sea ψ : TERM × TERM → VAR

mgg(f(t1, . . . , tn), g(s1, . . . , sn)) =

f(mgg(t1, s1), . . . ,mgg(tn, sn)) Si f = g

ψ(f(t1, . . . , tn), g(s1, . . . , sn)) e.o.c.

mgg(p(t1, . . . , tn), q(s1, . . . , sn)) =

p(mgg(t1, s1), . . . ,mgg(tn, sn)) Si p = q

No definida e.o.c.

mgg(C1, C2) = {mgg(l1, l2) : l1 ∈ C1, l2 ∈ C2}

IIC 2006-2007 RGNC Aprendizaje de ... 56

Page 57: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Menor generalizacion (I)

Ejemplo 1:

expr(una,mujer)expr(una,nina)

}=⇒ expr(una,X)

Ejemplo 2:

expr(el,hombre) ← masc(el), masc(hombre)expr(un,nino) ← masc(un), masc(nino)

}

=⇒ expr(X,Y)← masc(X), masc(Y)

IIC 2006-2007 RGNC Aprendizaje de ... 57

Page 58: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Menor generalizacion (II)

Ejemplo 3:

T O+ O−

masc(el)← fem(la)←masc(un)← fem(una)←masc(nino)← fem(nina)←masc(hombre)← fem(mujer)←

expr(el,nino)←expr(una,mujer)←expr(el,hombre)←

expr(el,mujer)←expr(una,nino)←expr(un,nina)←

H0 =

{expr(X,Y)← masc(X), masc(Y)expr(X,Y)← fem(X), fem(Y)

IIC 2006-2007 RGNC Aprendizaje de ... 58

Page 59: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con Golem (I.a)

Logica proposicional

Lenguaje:

• Dos sımbolos proposicionales: p y q

• Cinco conectivas: ¬, ∨, ∧, → y ↔.

Definicion:

1. p es una formula.

2. q es una formula.

3. Si F es una formula, tambien (¬F ).

4. Si F y G son formulas, entonces tambien lo son (F ∨G), (F ∧G), (F → G) y (F ↔ G).

IIC 2006-2007 RGNC Aprendizaje de ... 59

Page 60: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con Golem (I.b)

EjemplosO+ O−

f([q,→, [¬, q]]). f([¬, [¬, p]]).f([p,∧, q]). f([q,∨, p]).f([¬, p]). f([[¬, q],∨, [p,∨, q]]).f([q,∧, p]). f([p,∨, [¬, p]]).f([[¬, p],∧, [¬, q]]). f([p,→, q]).f([p,↔, q]). f(p).f(q). f([¬, q]).f([q,↔, p]). f([p,∨, q]).f([[¬, p],↔, [p,∧, q]]). f([q,→, p]).f([p,↔, [¬, p]]).

f([¬,¬]). f([p,↔,∧]).f([q,∨,∨]). f([∨,↔, p]).f([¬,∨, p]). f([↔,↔,↔]).f([¬,→, q]). f([p, p, [p,↔, q]]).f([q, q, p]). f([¬, p, [¬, p]]).f([p,→,→]). f([[¬, q],↔, [p,∨,∧]]).f([p, p, q]).f([∧, p, p]).f([p,∧,∨]).f([¬,∧, q]).

Respuesta:f(q).f(p).f([¬, A]) : −f(A).f([A,→, B]) : −f([¬, A]), f(B).f([A,∧, B]) : −f([¬, A]), f(B).f([A,↔, B]) : −f([¬, A]), f(B).f([A,∨, B]) : −f(A), f(B).

IIC 2006-2007 RGNC Aprendizaje de ... 60

Page 61: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con Golem (II.a)

Lenguaje natural

Lenguaje

• Ocho determinantes (d): el, la, los, las, un, una, unos, unas.

• Ocho nombres comunes (n): hombre, hombres, mujer, mujeres, nino, ninos, nina, ninas.

• Ocho adjetivos (a): moreno, morena, morenos, morenas, rubio, rubia, rubios, rubias.

• Ocho nombres propios (np): Pepe, Paco, Antonio, Eduardo, Marıa, Ana, Rosa, Julia.

Conocomiento base (Clasificacion):

cl(paco,[np,m,s])

cl(rubias,[a,f,p])

IIC 2006-2007 RGNC Aprendizaje de ... 61

Page 62: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Ejemplos con Golem (II.b)

Ejemplos: Estructura: (np), (d)+(n), (d)+(n)+(a)

O+: sn([la,nina,morena])

O−: sn([una,ninos,moreno])

Respuesta:

sn([la,mujer]).

sn([una,mujer]).

sn([A, nina]) : −cl(A, [d, f, s]).sn([A]) : −cl(A, [np,B, s]).sn([A,B]) : −cl(A, [d,m, s]), cl(B, [n,m, s]).sn([A,B]) : −cl(A, [d, C, p]), cl(B, [n,C, p]).

sn([A,B,C]) : −cl(A, [d,D,E]), cl(B, [n,D,E]), cl(C, [a,D,E]).

IIC 2006-2007 RGNC Aprendizaje de ... 62

Page 63: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Aplicacion con Golem (I)

Prediccion de la estructura secundaria de las proteinas(OUCL en cooperacion con Imperial Cancer Research Fund)

Dada la estructura primaria de una proteina (secuencia de aminoacidos),

• Encontrar la estructura secundaria

• Predecir si los residuos individuales formaan una helice levogira

Ejemplos: 12 proteinas no homologas (1612 residuos)

Conocimiento base: Propiedades fısicas y quımicas de los residuos individualesy su posicion relativa dentro de la proteina

Sistema: GOLEM

21 clausula producidas, cada una de unos 15 literales

Su precision sobre un test independiente fue del 82 %, mientras que la precision delmejor metodo convencional fue del 73 %

IIC 2006-2007 RGNC Aprendizaje de ... 63

Page 64: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Aplicacion con Golem (II)

Prediccion y Comparacion de la accion de farmacos

Ejemplos: 44 farmacos que se ajustan a la plantilla A

Conocimiento base: Propiedades quımicas de los sustituyentes

Sistema ILP: GOLEM

Las clausulas inducidas fueron consideradas como una teorıa nove-

dosa por los quımicos

La correlacion entre el resultado de la prediccion y la accion real

de los farmacos estudiados fue mejor que la alcanzada por metodos

de regresion.

IIC 2006-2007 RGNC Aprendizaje de ... 64

Page 65: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Aplicacion con Golem (III)

Clasificacion biologica de la calidad del agua de un rıo

Dada una lista de indicadores biologicos tomados en distintas muestras de agua ysus niveles de abundancia, clasificarlos en una de las cinco clases B1a, B1b, B2,B3, B4.

Ejemplos: 300 muestras de la cuenca superior de un rıo de Gran Bretana, clasifi-cados por expertos.

Conocimiento base: Relaciones entre los niveles de abundancia.

Sistemas: GOLEM, CLAUDIEN

Reglas descubiertas interesantes (segun evaluacion experta):

b1b(X)← ancilidae(X,A), gammaridae(X,B), . . . , greater than(D,B).

IIC 2006-2007 RGNC Aprendizaje de ... 65

Page 66: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Invencion de predicados (I)

Derivadas de potencias de una variable

Conocimiento base: Para toda potencia de una variable x, xm, existe un unico monomio en

esa variable, axb, que representa la derivada de dicha potencia respecto de la variable.

Ejemplos:d x2

dx= 2x

d x5

dx= 5x4

Hipotesis:d xm

dx= mxm−1

IIC 2006-2007 RGNC Aprendizaje de ... 66

Page 67: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Invencion de predicados (I)

| ?- cigol. OPERADORES!- deriv([1,X,2],[2,X,1]). Truncamiento

. . .I know:

deriv([1,A,2],[2,A,1]).

!- deriv([1,X,5],[5,X,4]). Truncamiento

. . . L1=deriv([1,X,2],[2,X,1])L2=deriv([1,X,5],[5,X,4])

Is deriv([1,A,B],[B,A,C]) always true? n. Intra–construccion

deriv([1,X,2],[2,X,1])deriv([1,X,5],[5,X,4])

IIC 2006-2007 RGNC Aprendizaje de ... 67

Page 68: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Invencion de predicados (II)

p116(2,1) deriv([1,A,B],[B,A,C]):-p116(B,C) p116(5,4)

deriv([1,X,2],[2,X,1]) deriv([1,X,5],[5,X,4]

ε τ1 τ2 ε

cccccccccc

##

##

##

##

##

cccccccccc

##

##

##

##

##

deriv([1,A,B],[B,A,C]:- p116(B,C).p116(2,1).p116(5,4).

What shall I call p116? ’menos 1’. . .

I know:deriv([1,A,B],[B,A,C]:- menos 1(B,C).menos 1(2,1).menos 1(5,4).not(deriv([1,A,B],[B,A,C])).

IIC 2006-2007 RGNC Aprendizaje de ... 68

Page 69: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

KDD

El Descubrimiento de conocimiento en basesde datos es el proceso de identificar en los datosestructuras validas, novedosas, potencialmenteutiles y en ultima instancia comprensibles

(U. Fayyad)

IIC 2006-2007 RGNC Aprendizaje de ... 69

Page 70: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

KDD: Fases

B Dominio de la aplicacion

uConocimiento de la aplicacionuObjetivos del proceso

B Creacion de la base de datos

B Preproceso y limpieza de datos

B Reduccion de variables y datos

B Eleccion del modelo resultante: Resumen, clasificacion, regre-sion, . . .

B Minerıa de datos (Aprendizaje, ILP, ...)

B Interpretacion

B Uso del conocimiento adquirido

IIC 2006-2007 RGNC Aprendizaje de ... 70

Page 71: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Bibliografıa

B Lavrac, N. y Dzeroski, S. Inductive Logic Programming Techniquesand Applications Ellis Horwood Ltd., 1994

B Nienhuys–Cheng, S-H. y De Wolf, R. Foundations of InductiveLogic Programming Springer–Verlag, 1997

B Lavrac, N. y Dzeroski, S. Relational Data Mining Springer., 2001

B . . .

B Network of Excellence in Inductive Logic Programming ILPnet2

u http://www.cs.bris.ac.uk/ ILPnet2/

B Otros enlacesu http://www.cs.us.es/cursos/ra/enlaces/

IIC 2006-2007 RGNC Aprendizaje de ... 71

Page 72: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Bibliografıa

B Mitchell, T. M. Machine Learning McGraw–Hill, 1997. CapıtuloII.u http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/mitchell/ftp/mlbook.html

B Lecturas recomendadasuMarkov, Z Machine Learning Course

http://www-it.fmi.uni-sofia.bg/markov/courses/ml.html

uBratko, I. PROLOG Programming for Artificial Intelligence Tercera Edi-

cion. Addison–Wesley, 2001. Capıtulo XVIII

u Langley, P Elements of Machine Learning Morgan Kaufmann Publishers,

1996. Capıtulo I

IIC 2006-2007 RGNC Aprendizaje de ... 72

Page 73: Miguel A. Guti errez Naranjo - Universidad de Sevilla · 2012-04-10 · Introduccion a la Ingenier a del Conocimiento 2006-07 Aprendizaje de reglas: Programaci on L ogica Inductiva

Bibliografıa

B Mitchell, T. M. Machine Learning McGraw–Hill, 1997. CapıtuloII.

B M. Anthony y N. Biggs Computational Learning Theory CambridgeUniversity Press, 1992. Capıtulo I.

B Lecturas recomendadasuA.Aliseda–Llera Seeking Explanations: Abduction in Logic, Philosophy os

Science and Artificial Intelligence ILLC Dissertation Series, 1997. Capıtulo

I

u P. Flach Conjectures. An inquiry concerning the logic of induction ITK Dis-

sertation series, 1995. Capıtulo II

uM.A. Gutierrez Naranjo Operadores de generalizacion para el aprendizaje clausal

Tesis doctoral, 2002. Capıtulo II

IIC 2006-2007 RGNC Aprendizaje de ... 73