inteligencia artificial, aprendizaje y minería de datos

Anuncio
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 1
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL,
APRENDIZAJE
Y
MINERÍA DE DATOS
Antonio José Gómez Flechoso
(http://www.gsi.dit.upm.es/~anto)
Madrid, Junio 1998
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 2
Junio 1998
Antonio J. Gómez Flechoso
ÍNDICE
Inteligencia Artificial: definición, evolución histórica (resolución problemas,
SBC, aprendizaje, ...)
Aprendizaje: definición, interés, tipos, métodos, ...
• Redes neuronales
• Algoritmos genéticos
• Aprendizaje simbólico: árboles de decisión, inducción de reglas
Descubrimiento en bases de datos (KDD) y minería de datos
• FZFOIL
• Ejemplo de aplicación
Resumen y conclusiones
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 3
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL
Definición
¿Qué es IA?
♦ IA / aplicaciones:
Manera de hacer que las máquinas ejecuten tareas inteligentes
♦ IA / ciencia (investigación psicológica):
Estudio de la naturaleza de la inteligencia mediante el uso de modelos computacionales
♦ IA / negocio !!!
¿Qué es inteligencia?
calculadoras mecánicas → lenguajes simbólicos → sistemas expertos → aprendizaje
automático → ?
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 4
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL
Perspectiva histórica
V a.C (griegos): sueño de mecanizar procesos del pensamiento
1950: ¿pueden pensar las máquinas? → Test de Turing
(1951: UNIVAC I, primer ordenador comercial, 159000 $)
1956: conferencia de Dartmouth, “nacimiento” de la IA
años 60:
• sistemas simbólicos en dominios de conocimiento concretos
• Solucionador General de Problemas (GPS) de Newell, Shaw y Simon (1959)
descripción dominio
problema concreto
GPS
solución
final años 70:
• importancia del conocimiento frente a mecanismos generales de inferencia
• Sistemas Basados en Conocimiento (SBC) y Sistemas Expertos (SE)
problema concreto
SE, SBC
(conocimiento
dominio)
solución
+
explicación
+
justificación
años 80 - actualidad:
• renacimiento de computación neuronal
• consolidación de técnicas anteriores
• importancia creciente de aprendizaje simbólico y conexionista
ingenieros conocimiento
HERRAMIENTAS
expertos
Aplicación:
- prototipo
- sistema
- sistema integrado
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 6
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL
Resolución de problemas
Problema =
=
Espacio del problema (estados y operadores cambio estado)
+
Estado inicial (EI)
+
Estados finales (EF)
Resolución de problemas = búsqueda soluciones
• búsqueda en espacio del problema
• búsqueda de conocimiento
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 7
Junio 1998
Antonio J. Gómez Flechoso
Resolución de problemas
Mucho conocimiento
del dominio
Poco conocimiento
del dominio
Espacio problema
Espacio problema
EI
EI
EF
EF
búsqueda ciega
búsqueda heurística
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 8
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL
Búsqueda heurística
HEURÍSTICO:
♦ Diccionario:
Que sirve para inventar
♦ En IA:
• Como adjetivo: por contraste a “algorítmico” en determinados teoremas
Enfoque algorítmico: ir sacando todo lo posible hasta, eventualmente, obtener una
solución (búsqueda exhaustiva o “a ciegas”).
Enfoque heurístico: “imaginar” una posible solución y tratar de demostrarla.
• Como sustantivo: “truco” o regla empírica que ayuda a encontrar la solución de un
problema.
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 9
Junio 1998
Antonio J. Gómez Flechoso
La búsqueda heurística permite abordar problemas NP-completos:
• Ajedrez:
árbol de búsqueda = 10120 nodos
máquina a 3 nodos/ns ⇒ 1021 años para generar todo el árbol
• Damas: 1040 nodos
• Viajante de comercio: n! posibilidades (para n ciudades)
• 8-puzzle: 9! = 362880,
(“16-puzzle”: 16!)
Tipos de búsqueda heurística:
♦ Exploración de alternativas (método del gradiente, primero el mejor, algoritmo
A*).
♦ Búsqueda con adversarios (búsqueda MINIMAX).
♦ Análisis de medios-fines (definido en el GPS).
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 10
Junio 1998
Antonio J. Gómez Flechoso
Búsqueda heurística: exploración de alternativas (funcíón evaluación)
f(estadoj) = nj
f suele ser una medida de la distancia al objetivo, ejemplo (8-puzzle):
fev1 = nº piezas situadas correctamente
fev2 = distancia de Manhattan
2
3
1
8
4
7
6
5
1
7
2
3
1
8
4
8
6
5
7
2
3
4
6
5
fev1(Ei) = 6
fev1 = 7
fev1(Ef) = 8
fev2(Ei) = 2
fev2 = 1
fev2(Ef) = 0
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 11
Junio 1998
Antonio J. Gómez Flechoso
Búsqueda heurística: exploración de alternativas (estrategias de búsqueda)
♦ Método del gradiente: maximizar/minimizar fev desde estado inicial
(aplicable en 8-puzzle, finales de ajedrez, búsqueda de mínimos locales, etc)
♦ Búsqueda primero-el-mejor: gradiente + backtracking
(permite superar mínimos locales; pero no considera camino recorrido)
♦ Algoritmo A*: consideración camino recorrido + primero-el-mejor
f(n) = g(n) + h(n)
g(n) = coste real del camino hasta nodo n
h(n) = coste estimado del camino óptimo desde n hasta meta
(h = 0 ⇒ búsqueda en extensión;
g = 0 ⇒ búsqueda “primero-el-mejor”)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 12
Junio 1998
Antonio J. Gómez Flechoso
Búsqueda heurística: búsqueda con adversarios
♦ Representación mediante árboles Y-O:
• enlaces O: movimientos realizables en un momento
• enlaces Y: movimientos del adversario
• nodos hojas: ganar (+1), perder (-1) o empatar (0).
♦ Estrategia MINIMAX:
• cada vez que juega MAX, elegir rama en que todas las jugadas de MIN dan la victoria
a MAX
A = MAX
B = MIN
f(n)
-1
+1
+1
0
+1
-1
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 13
Junio 1998
Antonio J. Gómez Flechoso
Búsqueda heurística: análisis de medios-fines
• Estrategia más general, basada en psicología cognitiva. Definida inicialmente en el
contexto del GPS (1957).
• Distingue los medios u operadores y los fines o meta.
• Proceso:
1 - analizar continuamente diferencias entre estado inicial y meta
2 - ordenar diferencias de mayor a menor importancia
3 - consultar tabla con operadores para reducir cada diferencia:
3.a) operador aplicable ⇒ aplicarlo e iterar en 3 (mientras haya diferencias)
3.b) operador no aplicable ⇒ submeta = “alcanzar estado para aplicar operador”
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 14
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL
Sistemas Basados en Conocimiento (SBC)
Años 70: Surge paradigma de sistema experto (sistemas que emulen a expertos
humanos, en actividades muy concretas y restringidas) y paradigma del conocimiento (lo que caracteriza a un experto es su conocimiento del problema, no
su capacidad general de resolver problemas).
Ejemplos:
• MYCIN (1974): diagnóstico y tratamiento de algunas enfermedades infecciosas
• PROSPECTOR (1978): descubrimiento de yacimientos de minerales
• XCON (1980): configuración de sistemas informáticos VAX y PDP.
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 15
Junio 1998
Antonio J. Gómez Flechoso
Sistemas expertos
Definición:
“Un sistema experto es un programa inteligente, que usa procedimientos de conocimiento e inferencia para solucionar problemas que son suficientemente difíciles como
para requerir experiencia humana en su solución. El conocimiento necesario para operar
en tal nivel, añadido a los procedimientos de inferencia utilizados, puede ser considerado como un modelo de la experiencia de los mejores operadores en dicho campo”.
Módulo de
aprendizaje
Ingeniero
de
Conocimiento
Base de
Conocimiento
Motor de
Inferencia
Base de
Hechos
Subsistema de
explicación
Interfaz
datos
externos
Experto
Interfaz
usuario
final
Usuario
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 16
Junio 1998
Antonio J. Gómez Flechoso
MYCIN (ejemplo de S.E.)
Ejemplo de reglas:
SI:
1. la infección es bacteremia primaria y
2. la toma de material de cultivo es una toma estéril y
3. la puerta de entrada del organismo es tracto gastrointestinal
ENTONCES: hay bastante evidencia (0.7) de que la identidad del organismo
sea Bacteriodes
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 17
Junio 1998
Antonio J. Gómez Flechoso
MYCIN (ejemplo de S.E.)
Fragmento de consulta:
• M: ¿Nombre del paciente?
• U: Pedro Alonso
• M: ¿Edad?
• ...
• M: ¿Qué organismo es el causante de la infección?
• U: No sé
• M: ¿Crece el organismo en medio aerobio?
• U: Sí
• M: ¿Cuál se supone que ha sido la puerta de entrada?
• ...
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 18
Junio 1998
Antonio J. Gómez Flechoso
MYCIN (ejemplo de S.E.)
Fragmento de diálogo:
• M: ¿La meningitis se ha contraído en un hospital?
• U: ¿Por qué?
• M: Ello me ayudaría a determinar los organismos, ya que he concluido que:
1. la infección es meningitis
2. el tipo de infección es bacteriana
3. En la historia del paciente no hubo neurocirugía
4. La edad del paciente es superior a 10 días
Por tanto, si
5. El paciente contrajo la infección en un hospital, entonces (regla 545) los organismos causantes podrían ser: E.Coli(0.75), Estafilococo coagulante (0.3) o Pseudomonas aeruginosa (0.3)
• U: ¿Cómo 2?
• M: Por las reglas: regla 500 (0.51), regla 526(0.98), regla 501 (0.59), regla 504 (0.97).
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 19
Junio 1998
Antonio J. Gómez Flechoso
Adquisición de conocimiento en S.E.
Diálogo con experto humano:
• Se precisa ingeniero de conocimiento
• Proceso lento y laborioso
• Dificultad de los expertos para explicar sus mecanismos inductivos/deductivos/abductivos
Inducción automática:
• El experto interactúa con procedimientos de inducción
• El experto refina reglas y su propio conocimiento
• Facilidad de los expertos para enseñar a través de ejemplos
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 20
Junio 1998
Antonio J. Gómez Flechoso
INTELIGENCIA ARTIFICIAL: APRENDIZAJE
Perspectiva histórica
Años 50: interés por aprendizaje de las máquinas (codificaciones numéricas y
ajustes de parámetros) relacionado con reconocimiento de patrones.
Años 60: aprendizaje de conceptos y adquisición de lenguajes
Final años 70: formación de clasificaciones, aprendizaje por descubrimiento,
razonamiento basado en casos, etc. Los S.E. permiten probar métodos existentes y provocan nuevas necesidades (“cuello de botella” de Feigenbaum y
ampliación del alcance de los S.E.)
Últimos años: inducción automática de conocimiento en Bases de Datos (minería de datos).
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 21
Junio 1998
Antonio J. Gómez Flechoso
APRENDIZAJE
Definición
Definiciones conductistas
Aprendizaje: capacidad de experimentar cambios adaptativos para mejorar rendimiento
Sistema
aprendiz
rendimiento
Crítico o
maestro
t
Definiciones cognoscitivas o simbólicas
Aprendizaje: construcción/modificación de conceptos o de representación conocimiento
Sistema
aprendiz
Crítico o
maestro
Base
Conocimiento
Órganos
ejecución
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 22
Junio 1998
Antonio J. Gómez Flechoso
Interés del aprendizaje en ordenadores
Científico:
• no hay inteligencia sin aprendizaje
• teorías del aprendizaje natural
Ingenieril:
• adquisición de conocimiento para SBC
• inducción de conocimiento en grandes BD (data mining)
• visión artificial, reconocimiento lenguaje natural, enseñanza inteligente asistida por
ordenador, ...
Dificultad del aprendizaje en ordenadores:
• Falta de paradigmas constructivos (al menos para enfoques simbólicos)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 23
Junio 1998
Antonio J. Gómez Flechoso
Métodos de aprendizaje [Michalski, 87]
1.- Implantación directa (“rote learning”):
- programación
- memorización
2.- Instrucción
3.- Deducción
4.- Analogía
5.- Inducción:
- con ejemplos
- por observación y descubrimiento
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 24
Junio 1998
Antonio J. Gómez Flechoso
Sistemas con aprendizaje inductivo
Sistemas conexionistas: redes neuronales
Sistemas evolucionistas: algoritmos genéticos
Sistemas simbólicos: aprendizaje de conceptos
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 25
Junio 1998
Antonio J. Gómez Flechoso
Sistemas Conexionistas: Redes Neuronales
Neurona formal (McCulloch y Pitts, 43)
a1
W1
n
a2
an
W2
∑
...
i=1
s=
0 si Σai wi < θ
1 si Σai wi ≥ θ
Wn
Aprendizaje por “correlación” (Hebb, 49)
• el cerebro aprende modificando las conexiones entre neuronas
• las neuronas están conectadas por sinapsis que se pueden adaptar/modificar
• cuando una neurona funciona bien se refuerza
• cuando dos neuronas se activan a la vez, se refuerza la conexión entre ellas
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 26
Junio 1998
Antonio J. Gómez Flechoso
Redes neuronales
Algoritmo de aprendizaje para el perceptrón (Rossenblatt, 58): entrenamiento
incremental-proporcional
Algoritmo de descenso de gradiente (LMS) y estructura ADALINE (Widrow y
Hoff, 60)
Condiciones de convergencia del perceptrón (Minsky y Papert, 69):
• redes monocapa (ej. perceptrón) sólo pueden aprender conceptos con separabilidad
lineal (función OR, AND, ...),
• pero no puede aprender el XOR por ejemplo,
• se puede añadir una segunda capa (capa AND) y una tercera (capa OR) para conseguirlo, pero NO SE SABE CÓMO ENTRENAR REDES MULTICAPA
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 27
Junio 1998
Antonio J. Gómez Flechoso
Redes neuronales: separabilidad
ESTRUCTURA
TIPO REGIÓN DE
DECISIÓN
PROBLEMA
OR EXCLUSIVO
REGIONES
GENERALES
PROBLEMA
GENERAL
monocapa
Partición de
espacio por
hiperplano
A
B
B
B
A
A
dos capas
A
B
Regiones convexas
(abiertas o cerradas)
B
B
A
A
tres capas
A
B
Arbitraria
B
B
A
A
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 28
Junio 1998
Antonio J. Gómez Flechoso
Redes Neuronales: red de Hopfield (1982)
O1
O2
O3
Feed back
(flujo realimentado)
w11
w21
w31
w12
w22
w32
x1
w13
w23
w33
x2
capacidad = 0.15 * N
x3
Funcionamiento:
- se programan los pesos wij (no se entrena)
- se mete una entrada (x1 x2 ... xn) y se deja que la red evolucione
- la red converge hacia un invariante (O1 O2 ... On)
Aplicaciones: memorias asociativas, memorias direccionables por contenido
Ejemplo: reconocimiento de personas a partir de fotos distorsionadas
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 29
Junio 1998
Antonio J. Gómez Flechoso
Redes Neuronales: redes multicapa (PMC)
¡Universalidad!
entradas
capa
entrada
salidas
capa
oculta
capa
salida
flujo de información (feed forward)
Retropropagación (Backpropagation): basade en descenso de gradiente
1. Inicializar pesos y umbrales (valores aleatorios)
2. Presentar entradas (e1 e2 ... en) y salidas deseadas (d1 d2 ... dm)
3. Calcular salida (s1 s2 ... sm)
4. Adaptar pesos y umbrales y volver a paso 2
wij(t+1) = wij(t) + η δj x’i
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 30
Junio 1998
Antonio J. Gómez Flechoso
Redes Neuronales: aspectos prácticos
preprocesado (ej. reescalado)
codificación datos salida: que valores de salida no alcancen límites de función
no lineal: -0.9 (en vez de -1); 0.9 (en vez de 1); 0.1 (en vez de 0)
nº capas: 3 (con tres se tiene universalidad)
nº nodos en capa oculta: ensayo y error (datos entrenamiento, validación y
test)
si demasiadas neuronas ⇒ memorización
si nº adecuado:
⇒ generalización correcta
si pocas neuronas:
⇒ no converge
mínimos locales: pueden evitarse con conjuntos aleatorios de pesos iniciales
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 31
Junio 1998
Antonio J. Gómez Flechoso
Sistemas Evolucionistas: Algoritmos Genéticos
Se basan en ideas sobre la evolución de las especies (selección natural, herencia, mutaciones, etc.) aplicadas sobre una población artificial de individuos,
para conseguir su adaptación al entorno.
♦ Tipo de individuos de la población depende del problema.
♦ Cada individuo tendrá un valor (fuerza), para medir su adaptación al entorno.
♦ Evolución = búsqueda en paralelo de individuos bien adaptados
• Operadores genéticos (selección, entrecruzamiento y mutación)
• Criterios para variar la fuerza de cada individuo
Aplicaciones:
• Optimización: maximización/minimización de funciones
• Aprendizaje inductivo: clasificadores, reglas de producción
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 32
Junio 1998
Antonio J. Gómez Flechoso
Algoritmos genéticos
Operadores:
• Entrecruzamiento:
A∧B∧C→D
A∧B∧Y→Z
X∧Y→Z
X∧C→D
• Inversión:
A∧B∧C→D
A∧C∧B→D
• Mutación:
A∧B∧C→D
• ...
A∧C∧M→D
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 33
Junio 1998
Antonio J. Gómez Flechoso
Sistemas Simbólicos: aprendizaje de conceptos
Representación del conocimiento fácil de entender: representaciones estructuradas, ejemplos, lógica (de proposiciones, de primer orden, borrosa, ...)
Aprendizaje = aprendizaje de conceptos
Concepto = clase de entidades con algún principio común (y con descripción simple)
♦ Adquisición de conceptos:
- árboles de decisión (ID3)
- búsqueda de descripciones (AQ11, INDUCE, FOIL)
♦ Formación de conceptos (inducción a partir de la observación)
- agrupamiento conceptual (CLUSTER)
- descubrimiento cuantitativo (BACON, RX)
- descubrimiento cualitativo (AM, EURISKO)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 34
Junio 1998
Antonio J. Gómez Flechoso
Árboles de decisión: ID3 (Quinlan, 79)
Problema:
• dado E = {ei} con ei = {v(a1), v(a2) ... cj}
• generar árbol de decisión mínimo en el que los nodos son atributos y los arcos valores
de atributos
Ejemplo:
ALTURA
bajo
alto
alto
bajo
alto
alto
alto
bajo
PELO
OJOS
rubio
verdes
rubio oscuros
castaño verde
negro
verde
negro
verde
rubio
verde
negro
oscuro
rubio
oscuro
CLASE
+
+
+
-
PELO
negro
−
rubio
castaño
+
OJOS
verdes
+
oscuros
−
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 35
Junio 1998
Antonio J. Gómez Flechoso
ID3: definición de entropía
Entropía (H) = información necesaria para describir un conjunto
Por ejemplo:
clase C1 con n1 ejemplos
Entropía = - (p1 log2 p1 + p2 log2 p2)
clase C2 con n2 ejemplos
siendo: p1 = n1 / (n1 + n2 )
p2 = n2 / (n1 + n2 )
Entropía
1
p1 = n1 / (n1 + n2 )
0
0.5
1
Ejemplo:
n+ = 3
n- = 5
H = - ( 3/8 log2 (3/8) + 5/8 log2 (5/8) ) = 0.954 bits
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 36
Junio 1998
Antonio J. Gómez Flechoso
ID3: Ejemplo
H = 0.954
H = 0.954
PELO
ALTURA
alto
negro
bajo
n+ = 2
n- = 3
n+ = 1
n- = 2
n+ = 0
n- = 3
H=0
H = 0.971
H = 0.918
G = 0.954 - 5/8 · 0.971 - 3/8 · 0.918 = 0.003 bits
castaño
rubio
n+ = 2
n- = 2
n+ = 1
n- = 0
H=0
H=1
G = 0.954 - 4/8 ·1 = 0.5 bits
OJOS
verdes
oscuros
...
G = 0.347 bits
Mejor atributo: PELO
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 37
Junio 1998
Antonio J. Gómez Flechoso
Definiciones lógicas: FOIL
FOIL: First Order Inductive Learner ([Quinlan, 90])
♦ Búsqueda por especialización en grafos refinados
♦ Aplicable sobre BD relacionales
♦ Definición lógica de relación objetivo, formada por cláusulas de Horn
p(V1, ..., Vk) :- L1, L2, ..., Ln
Algunas definiciones preliminares
♦ Satisfacción de L = q(V1, ..., Vn):
|=t (L) ⇔ <t(V1), ... t(Vn)> ∈ Q
♦ Conjunto cubierto por C = [L0 :- L1, ... Ln]:
Tc(C) = {t | |=t(L1∧...∧Ln)}
♦ Consistencia:
C consistente ⇔ (∀t ∈ T−) (¬ |=t(L1∧...∧Ln))
♦ Completitud:
C completa
⇔ (∀t ∈ T+) (|=t(L1∧...∧Ln))
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 38
Junio 1998
Antonio J. Gómez Flechoso
FOIL: Ejemplo
Ejemplo de los grafos orientados:
0
7
1
3
2
4
6
5
• A partir de:
conectado(X,Y) = {(0,1),(0,3), (1,2), ...}
alcanzable(X, Y) = {(0,1), (0,2), ...}
• FOIL induce:
alcanzable(X,Y) :- conectado(X,Y)
alcanzable(X,Y) :- conectado(X,Z), alcanzable(Z,Y)
8
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 39
Junio 1998
Antonio J. Gómez Flechoso
FOIL: planteamiento
Dados:
♦ Q = {qi(V1, ..., Vri)}
(predicados definidos extensionalmente)
♦ p(X1, ..., Xk) ∈ Q
(predicado “p” a definir intensionalmente)
♦ T = {T+, T -} = {t}, t = <a1... ak> (definición extensional de “p”)
Problema:
Encontrar una o varias cláusulas de Horn:
p(X1, ..., Xk) :- L1, ..., Ln
con Li de alguna de las formas: Xj = Vm, Xj ≠ Vm,
tales que definan intensionalmente T
q(V1,..., Vr),
¬q(V1,..., Vr)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 40
Junio 1998
Antonio J. Gómez Flechoso
FOIL: algoritmo
Definicion& FOIL (T+,T-, p, q1, q2...);
Clausula& construyeC(TR,T-,p, ...);
D0:= FALSE;
C:= p;
TC0 = ∅;
repetir
repetir
Li = buscaAntecedente();
Clausula C = construyeC();
Di = Di-1 ∨ C;
/* nueva cláusula */
TCi = TCi-1 ∪ TC(C)
hasta completa(Di);
Ci =Ci-1 ∨ ¬Li;
/*nuevo antec*/
Ti+1 = actualizarT(Ti, Li);
hasta consistente(Ci);
return Ci;
return Di;
Bucle externo: definición completa
Bucle interno: cláusula consistente
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 41
Junio 1998
Antonio J. Gómez Flechoso
FOIL: heurísticos
FOIL: Heurísticos
♦ Para evaluar literales:
Ganancia(Li) = Ni++ ⋅ (Info(Ti) - Info(Ti+1))
siendo:
Info(Ti) = −log2(Ni+/(Ni+ + Ni-))
♦ Para buscar literales:
• Li debe tener al menos una variable existente (en la cláusula en construcción)
• Restricción de argumentos de Li en definiciones recursivas
• Uso de “literales determinados”
• Poda alpha-beta para simplificar la búsqueda
• Definiciones inconsistentes y/o incompletas (principio de Rissanen: LDI < LDE)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 42
Junio 1998
Antonio J. Gómez Flechoso
DESCUBRIMIENTO DE CONOCIMIENTO EN BD (KDD)
Procesos de KDD
Interpretación/
Evaluación
Minería de datos
Conocimiento
Transformación
Patrones
Preprocesado
Datos
transformados
Selección
Datos
preprocesados
Datos
objetivo
Base de
Datos
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 43
Junio 1998
Antonio J. Gómez Flechoso
DESCUBRIMIENTO DE CONOCIMIENTO EN BD (KDD)
Factores para análisis automático de datos
Incremento de la potencia de los ordenadores:
• Potencia de cálculo
• Capacidad de almacenamiento de datos
Incremento del ritmo de adquisición de datos:
• Abaratamiento de discos y sistemas de almacenamiento masivo
• Automatización en adquisición de datos (¡información se duplica cada 20 meses!)
Nuevos métodos de aprendizaje y representación del conocimiento
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 44
Junio 1998
Antonio J. Gómez Flechoso
DESCUBRIMIENTO DE CONOCIMIENTO EN BD (KDD)
Limitaciones del aprendizaje sobre BD
Datos dinámicos
→ funcionamiento incremental
Datos incompletos
→ capacidad de manejar datos incompletos
Ruido e incertidumbre
→ robustez ante el ruido
→ manejo de incertidumbre
Tamaño de las BD
→ eficiencia algorítmica
→ conocimiento previo
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 45
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL (FUZZY FOIL)
♦ Mejoras en heurísticos de evaluación
• Nuevos heurísticos de evaluación (función Interés)
• Proyección de conjuntos de entrenamiento
♦ Introducción de conocimiento de base (relaciones intensionales)
♦ Extensión hacia la lógica borrosa:
• Aplicable sobre BD relacionales borrosas
• Induce conocimiento con incertidumbre
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 46
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL: EVALUACIÓN DE LITERALES
Medida de interés (RI) (Piatetsky-Shapiro,89)
Sea A → B una regla lógica
Entonces
N
≡ tamaño conjunto entrenamiento (nº tuplas)
NA, NB
≡ nº tuplas satisfacen condición A, B
NA∧Β
≡ nº tuplas satisfacen condición A∧B
Requisitos de RI:
•
A y B independientes ⇒ RI = 0
•
NA, NB ↓ ⇒ RI ↑
•
NA∧B ↑ ⇒ RI ↑
RI 1 = N A ∧ B – ( N A ⋅ N B ) ⁄ N
N A ∧ B – (N A ⋅ N B) ⁄ N
RI 2 = ---------------------------------------------------------------------------------------------N A ⋅ N B ⋅ (1 – N A ⁄ N ) ⋅ (1 – N B ⁄ N )
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 47
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL: EVALUACIÓN DE LITERALES (2)
Interés* = Interés + conjuntos proyectados
T1[i] = TC(Ci-1) ⊆ T1
Ni+ = Ti+
T1
Ni− = Ti−
T1[i]
T1[i+1]
Ni[i+1]+ = Ti[i+1]+
Ni[i+1]− = Ti[i+1]−
Ti+1
Ti
Li
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 48
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL: ejemplo
Relación “jefe_de”
Relación “padre_de”
a1
a2
a3
a4
a1
a2
a3
a4
b1
b2
b3
b4
b1
b2
b3
b4
c5
c1
d4
d1
c1
d1
c4
c3
c2
d2
d3
c4
c3
c2
d2
d3
Relaciones:
enfermo = <b3>, <b4>, <c3>, <c4>, <c5>, <d2>, <d3>, <d4>
padre_de = <a1,b1>, <a1,b2>, <a2,b1>, <a2,b2>, <b1,c1>, <b1, c2>, ...
jefe_de = <a1,b1>, <b1,c1>, <c1,d1>, <c2,d1>, <a2,b2>, <a3,b2>, <a4,b3>, ...
fumador = <b3>, <b4>, <d2>
barbudo = <a3>, <b3>, <b4>, <c1>, <c2>, <c4>, <d1>, <d2>
c5
d4
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 49
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL: resultados del ejemplo
♦ Regla inducida por FOIL:
enfermo(A):- jefe_de(B,A), enfermo(B), ¬fumador(B)
enfermo(A):- fumador(A)
enfermo(A):- jefe_de(B,A), enfermo(B), padre_de(B,A)
(consistente pero incompleta: no cubre 2 tuplas ⊕)
♦ Regla inducida modificando FOIL con función Interés:
enfermo(A):- padre_de(B,A), barbudo(B), fumador(A)
enfermo(A):- padre_de(B,A), enfermo(B)
(consistente y completa, pero compleja)
♦ Regla inducida modificando FOIL con función Interés*:
enfermo(A):- padre_de(B,A), enfermo(B)
enfermo(A):- fumador(A)
(consistente, completa y sencilla)
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 50
Junio 1998
Antonio J. Gómez Flechoso
LÓGICA BORROSA Y MUNDO REAL
Complejidad del mundo real = volumen + incertidumbre ⇒ Compromiso
información / incertidumbre
♦ Conceptos humanos ≈ conjuntos borrosos [Zadeh,65]
♦ Lenguaje humano impreciso (incompatibilidad precisión / significación)
Lógica borrosa [Zadeh,75] (isomorfa con conjuntos borrosos)
♦ Necesaria para inferencias imprecisas
♦ Método natural de representar el mundo real
Sistemas expertos borrosos, BD relacionales borrosas, etc
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 51
Junio 1998
Antonio J. Gómez Flechoso
FZFOIL: Ejemplo borroso
*padre_de (persona,persona)
enfermo (persona)
*jefe_de (persona,persona)
a1,b1
a2,b2
a2,b3
a3,b2
a3,b3
a4,b3
b1,c1
b2,c2
b3 : 0.9
b4 : 0.72
c3 :0.9
c4 :0.8
c5 :0.88
d2 :0.9
d3 :0.85
b2,c3
b2,c4
b3,c2
b3,c3
b3,c4
b4,c4
b4,c5
c1,d1
c2,d1
c3,d2
c3,d3
c3,d4
c4,d2
c4,d3
c4,d4
c5,d4
a1,b1
b3,c3
a2,b1
b4,c4
a1,b2
b4,c5
*I_nieto_de(persona, persona)
a2,b2
c1,d1
nieto_de(A,B):-
a3,b3
c2,d1
a3,b4
c2,d2
a4,b3
c2,d3
a4,b4
c4,d2
b1,c1
c4,d3
b1,c2
c5,d4
padre_de(C,A), padre_de(B,C)
d4 : 0.75
[D1] {8.951 bits} TC: [6.58/7.04]; TR: [0.12]
*barbudo (persona)
[C1] {7.953 bits} [6.70/19.00]-> [5.04/5.37]
a3 :0.4
enfermo (A) :-
a4 :0.7
b4 :0.88
c1 :0.9
c2 :0.5
c4 :0.95
*fumador (persona)
b3 :0.95
padre_de (B A),
d1 :0.6
d2 :1
b2,c3
ALGO_enfermo (B).
[C2] {3.584 bits} [1.62/13.00]-> [1.54/1.67]
enfermo (A) :MUY_fumador (A).
b4 :0.8
d4 :0.75
d2 :0.4
c1 :0.2
a2 :0.3
RESULTADOS: PROYECTO SEIC (1)
SEIC (Servicio de Información Ciudadana) “PASO, PC-183”
Problema “Usos y Demandas”: Análisis inteligente de consultas de usuarios
Datos de entrada: 40000 consultas, con 14 atributos:
• Ubicación de PIC (Alonso Martínez, Atocha Renfe, Callao, Av. América, etc)
• Mes: “Julio”, “Agosto”, “Septiembre”, “Octubre”, “Noviembre”
• Día del mes: [1 ... 31]
• Día de semana: “Lunes”, ..., “Domingo”
• Origen/destino: “Aquí”, “Calle”, “Cruce”, “Estación metro”
• Modo transporte: “Cualquiera”, “sólo bus”, “sólo metro”
• Criterio de camino: “Óptimo”, “mín. transbordos”, “mín. tiempo”,
• etc.
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 53
Junio 1998
Antonio J. Gómez Flechoso
RESULTADOS: PROYECTO SEIC (2)
Selección y preprocesado: muestreo y 10 atributos ordinarios (2 borrosos)
Transformación de los datos:
• 8 relaciones ordinarias: destino, origen, fecha, rest_tte, rest_optim, etc.
• 6
relaciones
borrosas:
cuando_mañana,
cuando_tarde,
duración_larga, duración_corta, duración_media
cuando_noche,
µ
1
0
Noche
2
4
Mañana
6
8
Tarde
Noche
10 12 14 16 18 20 22 24
Hora_día
Relaciones intensionales:
bus_mintransbordos(X):rest_tte(X,Y), Y=”solo_bus”, rest_optim(X,Z), Z=”min_transbordos”
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 54
Junio 1998
Antonio J. Gómez Flechoso
RESULTADOS: PROYECTO SEIC (3)
Algunas definiciones borrosas:
[C1] {17.062 bits} [694.00/1694.00]→ [346.28/772.71]
min_tiempo ( A ) :cuando_tarde ( A B C ),
¬ =_const ( C Viernes )...
[C1] {5.392 bits} [232.00/1232.00]→ [232.00/232.00]
bus_mintransbordos ( A ) :sólo_bus ( A ).
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 55
Junio 1998
Antonio J. Gómez Flechoso
RESULTADOS: PROYECTO SEIC (4)
♦ A igualdad de longitud de las definiciones, las definiciones borrosas son más
completas y, en ocasiones, más consistentes que las definiciones ordinarias.
♦ Las definiciones borrosas generalizan mejor y, en ocasiones, también son más
precisas.
♦ Las definiciones borrosas son más fáciles de interpretar desde el punto de vista
humano.
♦ El coste computacional asociado a la evaluación de relaciones borrosas no tiene
por qué ser superior.
Inteligencia Artificial, Aprendizaje y Minería de Datos. Pág. 56
Junio 1998
Antonio J. Gómez Flechoso
RESUMEN Y CONCLUSIONES
♦ KDD se perfila como la aplicación dominante de la IA en poco tiempo
♦ Dentro de KDD, la minería de datos es una parte fundamental
♦ La minería de datos se basa en métodos de aprendizaje tradicionales, especialmente sistemas simbólicos (programación lógica inductiva).
♦ Las bases de datos, y el mundo real en general, presentan nuevos retos para los
sistemas de aprendizaje.
♦ La lógica borrosa (y otras teorías sobre incertidumbre) ofrece mecanismos para
modelar la complejidad del mundo real
Descargar