Sie sind auf Seite 1von 26

Aprendizaje Automtico Introduccin

Aprendizaje Automtico
Las tcnicas que hemos visto hasta ahora nos permiten crear sistemas
que resuelven tareas que necesitan inteligencia
La limitacin de estos sistemas reside en que slo resuelven los
problemas ya previstos
Slo podemos considerar que un sistema es realmente inteligente si es
capaz de observar su entorno y aprender de l
La autentica inteligencia reside en adaptarse, tener capacidad de
integrar nuevo conocimiento, resolver nuevos problemas, aprender de
errores
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 1 / 26
Aprendizaje Automtico Introduccin
Objetivos
No se pretende modelar el aprendizaje humano
Busca aumentar las capacidades de los programas de IA (SBC,
planicacin, TLN, bsqueda, ...):
Su lmite est en el conocimiento que se les ha introducido
No resuelven problemas mas all de esos lmites
Es imposible prever todos los problemas desde el principio
Buscamos dar a programas la capacidad de adaptarse sin tener que
ser reprogramados
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 2 / 26
Aprendizaje Automtico Introduccin
Funciona?
Does Machine Learning Really Work? Tom Mitchell. AI Magazine 1997
Donde y para que se puede usar el aprendizaje automtico?
Tareas difciles de programar (adquisicin de conocimiento,
reconocimiento de caras, voz, ...)
Aplicaciones auto adaptables (interfaces inteligentes, spam lters,
sistemas recomendadores, ...)
Minera de datos/Descubrimiento de conocimiento (anlisis de datos
inteligente)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 3 / 26
Aprendizaje Automtico Introduccin
Tipos de aprendizaje
Aprendizaje inductivo: Creamos modelos de conceptos a partir de
generalizar ejemplos simples. Buscamos patrones comunes que
expliquen los ejemplos.
Aprendizaje analtico o deductivo: Aplicamos la deduccin para
obtener descripciones generales a partir de un ejemplo de concepto y
su explicacin.
Aprendizaje gentico: Aplica algoritmos inspirados en la teora de la
evolucin para encontrar descripciones generales a conjuntos de
ejemplos.
Aprendizaje conexionista: Busca descripciones generales mediante
el uso de la capacidad de adaptacin de redes de neuronas articiales
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 4 / 26
Aprendizaje Automtico Aprendizaje inductivo
Aprendizaje inductivo
Es el rea con mas mtodos
Objetivo: Descubrir leyes generales o conceptos a partir de un
nmero limitado de ejemplos (bsqueda de patrones comunes)
Su funcionamiento reside en la observacin de similaridades entre
ejemplos
Sus mtodos se basan en el razonamiento inductivo
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 5 / 26
Aprendizaje Automtico Aprendizaje inductivo
Razonamiento Inductivo vs Deductivo
Razonamiento Inductivo
Obtiene conclusiones generales de informacin especca
El conocimiento obtenido es nuevo
No preserva la verdad (nuevo conocimiento puede invalidar lo obtenido)
No tiene una base terica bien fundamentada
Razonamiento Deductivo
Obtiene conocimiento mediante el uso de mecanismos bien establecidos
Este conocimiento no es nuevo (ya est presente implcitamente)
Nuevo conocimiento no invalida el ya obtenido
Se fundamenta en la lgica matemtica
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 6 / 26
Aprendizaje Automtico Aprendizaje inductivo
Aprendizaje inductivo
Desde un punto de vista formal sus resultados no son vlidos
Suponemos que un nmero limitado de ejemplos representan las
caractersticas de lo que queremos aprender
Un solo contraejemplo puede invalidar el resultado
Gran parte del aprendizaje humano es inductivo!
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 7 / 26
Aprendizaje Automtico Aprendizaje inductivo
Aprendizaje como bsqueda
Podemos plantear el aprendizaje inductivo como una bsqueda
heurstica
El objetivo es descubrir una funcin/descripcin que resuma las
caractersticas de un conjunto de ejemplos
El espacio de bsqueda son todos los posibles conceptos que podemos
construir
Deniramos el problema como:
Espacio de bsqueda: Lenguaje de descripcin de conceptos =
Conjunto de conceptos que podemos describir
Operadores de bsqueda: Operadores heursticos que permiten
explorar el espacio de conceptos posibles
Funcin heurstica: Funcin de preferencia que gua en el proceso
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 8 / 26
Aprendizaje Automtico Aprendizaje inductivo
Tipos de aprendizaje inductivo
Aprendizaje Inductivo Supervisado
Para cada ejemplo se indica a que concepto pertenece
El aprendizaje se realiza por contraste entre conceptos
Un conjunto de heursticas permitirn generar diferentes hiptesis
Existir un criterio de preferencia (sesgo) que permitir escoger la
hiptesis mas adecuada a los ejemplos
Resultado: El concepto o conceptos que mejor describen a los ejemplos
Aprendizaje Inductivo no Supervisado
No existe una clasicacin de los ejemplos
Se busca descubr la manera mas adecuada de particionar los ejemplos
El aprendizaje se gua por la similaridad/disimilaridad entre ejemplos
Existirn criterios heursticos de preferencia que guen la bsqueda
Resultado: Una particin de los ejemplos y una descripcin de la
particin
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 9 / 26
Aprendizaje Automtico rboles de decisin
rboles de decisin
Podemos plantear el aprender un concepto como averiguar que
preguntas hay que hacer para distinguirlo de otros
Tomamos como representacin un rbol que almacena esas preguntas
Cada nodo del rbol es una pregunta sobre un atributo
La bsqueda se realizar entre todos los posibles rboles
Esta representacin es equivalente a una FND (2
2
n
)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 10 / 26
Aprendizaje Automtico rboles de decisin
rboles de decisin
Para reducir el coste computacional hemos de imponer un sesgo (que
tipo de conceptos preferimos)
Decisin: rbol que represente la mnima descripcin del concepto
objetivo dadas las instancias ejemplo
Justicacin: Un rbol as ser el que mejor podr predecir nuevas
instancias (reducimos la probabilidad de que haya condiciones
innecesarias)
Navaja de Occam: Dadas dos teoras igualmente predictivas es
preferible la mas simple
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 11 / 26
Aprendizaje Automtico rboles de decisin
Algoritmos de rboles de decisin
El primer algoritmo de rboles de decisin fue ID3 (Quinlan 1986)
Se encuadra dentro de la familia de algoritmos Top Down Induction
Decision Trees (TDIDT)
ID3 realiza una bsqueda mediante Hill-Climbing en el espacio de
rboles
Se elige en cada nivel del rbol un atributo y se particiona el conjunto
de ejemplos segn sus valores, se repite recursivamente el proceso con
cada particin
La eleccin del atributo se hace mediante una funcin heurstica
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 12 / 26
Aprendizaje Automtico rboles de decisin
Teora de la Informacin
La teora de la informacin estudia entre otras cosas los mecanismos
de codicacin de mensajes y el coste de su transmisin
Si denimos un conjunto de mensajes M = {m
1
, m
2
, ..., m
n
}, cada
uno de ellos con una probabilidad P(m
i
), podemos denir la cantidad
de informacin (I) contenida en un mensaje de M como:
I(M) =
n

i =1
P(m
i
)log(P(m
i
))
Este valor se puede interpretar como la informacin necesaria para
distinguir entre los mensajes de M (Cuantos bits de informacin son
necesarios para codicarlos)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 13 / 26
Aprendizaje Automtico rboles de decisin
Cantidad de Informacin como Heurstica
Podemos hacer la analoga con la codicacin de mensajes
suponiendo que las clases son los mensajes y la proporcin de
ejemplos de cada clase su probabilidad
Podemos ver un rbol de decisin como la codicacin que permite
distinguir entre las diferentes clases
Buscamos el mnimo cdigo que distingue entre las clases
Cada atributo se deber evaluar para decidir si se le incluye en el
cdigo
Un atributo ser bueno si permite distinguir mejor entre las diferentes
clases
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 14 / 26
Aprendizaje Automtico rboles de decisin
Cantidad de Informacin como Heurstica
En cada nivel del rbol debemos evaluar que atributo permite
minimizar el cdigo (reduce el tamao del rbol)
Este atributo ser el que haga que la cantidad de informacin que
quede por cubrir sea la menor
La eleccin de un atributo debera hacer que los subconjuntos que
genera el atributo sean mayoritariamente de una clase
Necesitamos una medida de la cantidad de informacin que no cubre
un atributo (medida de Entropa, E)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 15 / 26
Aprendizaje Automtico rboles de decisin
Ganancia de informacin
Cantidad de Informacin (X - ejemplos, C - clasicacin)
I(X, C) =

c
i
C

c
i
X
log(
c
i
X
)
Entropa (A - atributo, [A(x) = v
i
] - ejemplos con valor v
i
)
E(X, A, C) =

v
i
A
[A(x) = v
i
]
X
I([A(x) = v
i
], C)
Ganancia de Informacin
G(X, A, C) = I(X, C) E(X, A, C)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 16 / 26
Aprendizaje Automtico rboles de decisin
Ganancia de informacin
C1 C2 C3
C1 C2 C3 C1 C2 C3 C1 C2 C3
A=v3 A=v1
A=v2
I(X,C)
E(X,A,C)
G(X,A,C)= I(X,C) E(X,A,C)
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 17 / 26
Aprendizaje Automtico rboles de decisin
Algoritmo ID3
Algoritmo: ID3 (X: Ejemplos, C: Classicacin, A: Atributos)
si todos los ejemplos son de la misma clase
entonces
retorna una hoja con el nombre de la clase
sino
Calcular la funcin de cantidad de informacin de los ejemplos (I)
para cada atributo en A hacer
Calcular la funcin de entropia (E) y la ganancia de informacin (G)
Escoger el atributo que maximiza G (a)
Eliminar a de la lista de atributos (A)
Generar un nodo raz para el atributo a
para cada Particin generada por los valores v
i
del atributo a hacer
rbol
i
=ID3(X(a=v
i
), C(a=v
i
),A-a)
Generar una nueva rama con a=v
i
y rbol
i
retorna El nodo raz para a
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 18 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (1)
Tomemos el siguiente conjunto de ejemplos
Ej. Ojos Cabello Estatura Clase
1 Azules Rubio Alto +
2 Azules Moreno Medio +
3 Marrones Moreno Medio
4 Verdes Moreno Medio
5 Verdes Moreno Alto +
6 Marrones Moreno Bajo
7 Verdes Rubio Bajo
8 Azules Moreno Medio +
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 19 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (2)
I(X, C) = 1/2 log(1/2) 1/2 log(1/2) = 1
E(X, ojos) = (azul ) 3/8 (1 log(1) 0 log(0))
+ (marrones) 2/8 (1 log(1) 0 log(0))
+ (verde) 3/8 (1/3 log(1/3) 2/3 log(2/3))
= 0,344
E(X, cabello) = (rubio) 2/8 (1/2 log(1/2) 1/2 log(1/2))
+ (moreno) 6/8 (1/2 log(1/2) 1/2 log(1/2))
= 1
E(X, estatura) = (alto) 2/8 (1 log(1) 0 log(0))
+ (medio) 4/8 (1/2 log(1/2) 1/2 log(1/2))
+ (bajo) 2/8 (0 log(0) 1 log(1))
= 0,5
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 20 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (3)
Como podemos comprobar, es el atributo ojos el que maximiza la funcin.
G(X, ojos) = 1 0,344 = 0,656
G(X, cabello) = 1 1 = 0
G(X, estatura) = 1 0,5 = 0,5
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 21 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (4)
Este atributo nos genera una particin que forma el primer nivel del rbol.
OJOS
MARRONES
VERDES
AZULES
1,2,8
+
3,6

4,7

5
+
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 22 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (5)
Ahora solo en el nodo correspondiente al valor verdes tenemos mezclados
objetos de las dos clases, por lo que repetimos el proceso con esos objetos.
Ej. Cabello Estatura Clase
4 Moreno Medio
5 Moreno Alto +
7 Rubio Bajo
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 23 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (6)
I(X, C) = 1/3 log(1/3) 2/3 log(2/3) = 0,918
E(X, cabello) = (rubio) 1/3 (0 log(0) 1 log(1))
+ (moreno) 2/3 (1/2 log(1/2) 1/2 log(1/2))
= 0,666
E(X, estatura) = (alto) 1/3 (0log(0) 1 log(1))
+ (medio) 1/3 (1 log(1) 0 log(0))
+ (bajo) 1/3 (0 log(0) 1 log(1))
= 0
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 24 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (7)
Ahora el atributo que maximiza la funcin es ojos.
G(X, cabello) = 0,918 0,666 = 0,252
G(X, estatura) = 0,918 0 = 0,918
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 25 / 26
Aprendizaje Automtico rboles de decisin
Ejemplo (8)
El rbol resultante es ya totalmente discriminante.
4

5
+
OJOS
MARRONES
VERDES
AZULES
1,2,8
+
3,6

ESTATURA
ALTO MEDIO BAJO
cbea (LSI - FIB) Aprendizaje Automtico IA - Curso 2005/2006 26 / 26