Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz...

106
Tema 5: Aprendizaje M. A. Guti´ errez Naranjo F. J. Mart´ ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de Sevilla Sistemas Inteligentes

Transcript of Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz...

Page 1: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Tema 5: Aprendizaje

M. A. Gutierrez NaranjoF. J. Martın MateosJ. L. Ruiz Reina

Dpto. Ciencias de la Computacion e Inteligencia ArtificialUniversidad de Sevilla

Sistemas Inteligentes

Page 2: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendizaje

◮ Definiciones de aprendizaje:◮ Cualquier cambio en un sistema que le permita realizar la

misma tarea de manera mas eficiente la proxima vez (H.Simon)

◮ Modificar la representacion del mundo que se esta percibiendo(R. Michalski)

◮ Realizar cambios utiles en nuestras mentes (M. Minsky)

◮ Aprendizaje automatico: construir programas que mejoranautomaticamente con la experiencia

◮ Ejemplos de tareas:◮ Construccion de bases de conocimiento a partir de la

experiencia◮ Clasificacion y diagnostico◮ Minerıa de datos, descubrir estructuras desconocidas en

grandes grupos de datos◮ Resolucion de problemas, planificacion y accion

Page 3: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Tipos de aprendizaje y paradigmas

◮ Tipos de aprendizaje◮ Supervisado: A partir de un conjunto de datos (conjunto de

entrenamiento)de los que conocemos como se comportanrespecto a lo que sequiere modelar, se aprende(computacionalmente) un modelocon el que pretendemospredecir el comportamiento sobreinstancias nuevas

◮ No supervisado◮ Con refuerzo

◮ Paradigmas◮ Aprendizaje por memorizacion◮ Aprendizaje inductivo◮ Clasificacion (Clustering)◮ Aprendizaje por analogıa◮ Descubrimiento◮ Redes neuronales

Page 4: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo: prediccion de precios de pisos

◮ Predecir el precio de un piso en funcion de sus caracterısticas(numero de habitaciones, distancia al centro, renta per capitadel barrio,. . . )

◮ Datos:0.00632 18.00 2.310 0 0.5380 6.5750 65.20 4.0900 1 296.0 15.30 396.90 4.98 24.00

0.02731 0.00 7.070 0 0.4690 6.4210 78.90 4.9671 2 242.0 17.80 396.90 9.14 21.60

0.02729 0.00 7.070 0 0.4690 7.1850 61.10 4.9671 2 242.0 17.80 392.83 4.03 34.70

0.03237 0.00 2.180 0 0.4580 6.9980 45.80 6.0622 3 222.0 18.70 394.63 2.94 33.40

0.06905 0.00 2.180 0 0.4580 7.1470 54.20 6.0622 3 222.0 18.70 396.90 5.33 36.20

0.02985 0.00 2.180 0 0.4580 6.4300 58.70 6.0622 3 222.0 18.70 394.12 5.21 28.70

0.08829 12.50 7.870 0 0.5240 6.0120 66.60 5.5605 5 311.0 15.20 395.60 12.43 22.90

0.14455 12.50 7.870 0 0.5240 6.1720 96.10 5.9505 5 311.0 15.20 396.90 19.15 27.10

0.21124 12.50 7.870 0 0.5240 5.6310 100.00 6.0821 5 311.0 15.20 386.63 29.93 16.50

...

...

...

...

Page 5: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificacion

◮ En un problema de clasificacion, en lugar de valores continuosen la variable respuesta, tendremos k valores discretosC = {c1, . . . , ck} (denominados clases).

◮ Se trata de aprender un modelo que nos permita asignarle unaclase (clasificar) a nuevos datos.

◮ Ejemplo: El problema de predecir el genero de una planta deiris a partir del conjunto de datos del ejemplo 2 es unproblema de clasificacion

Page 6: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificacion

◮ En este caso:◮ El conjunto de entrenamiento tiene la forma

D = {(x (j), c(j)) : j = 1, . . . ,N}, donde x (j) ∈ An, c(j) ∈ C

◮ Principalmente, hablaremos de clasificacion binaria yconsideraremos C = {0, 1} (a veces C = {+,−})

◮ Se trata de encontrar una funcion h : An → C que se ajuste alconjunto de entrenamiento y que nos sirva para clasificarnuevas instancias

Page 7: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo: clasificacion de la flor de iris

◮ Hay tres generos de la planta de iris (setosa, virgınica yversicolor); se pretende poder clasificarla en funcion demedidas (anchura y longitud) de su sepalo y petalo

◮ Datos:5.1 3.5 1.4 0.2 Iris-setosa

4.9 3.0 1.4 0.2 Iris-setosa

4.7 3.2 1.3 0.2 Iris-setosa

...

...

7.0 3.2 4.7 1.4 Iris-versicolor

6.4 3.2 4.5 1.5 Iris-versicolor

6.9 3.1 4.9 1.5 Iris-versicolor

...

...

6.3 3.3 6.0 2.5 Iris-virginica

5.8 2.7 5.1 1.9 Iris-virginica

7.1 3.0 5.9 2.1 Iris-virginica

...

...

Page 8: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendizaje supervisado (ejemplo)

◮ Conjunto de entrenamiento◮ Ejemplos: dıas en los que es recomendable (o no) jugar al tenis◮ Representacion como una lista de pares atributo–valor

Ej. Cielo Temperatura Humedad Viento JugarTenisD1 Soleado Alta Alta Debil -D2 Soleado Alta Alta Fuerte -D3 Nublado Alta Alta Debil +D4 Lluvia Suave Alta Debil +. . .

◮ Objetivo: Dado el conjunto de entrenamiento, aprender elconcepto “Dıas en los que se juega al tenis”

◮ Problema: ¿Como expresar lo aprendido?◮ En este tema, veremos algoritmos para aprender arboles de

decision, reglas, modelos probabilısticos, ...

Page 9: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Arboles de decision

◮ Ejemplos de arboles de decision

Cielo

LluviaSoleado Nublado

+Viento

Debil

+

Humedad

Alta

+− −

Normal Fuerte

Page 10: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Arboles de decision

◮ Ejemplos de arboles de decision

Color

Rojo Verde Azul

Forma

Redondo Cuadrado

Grande

Tamano

Pequeno

Grande

Tamano

Pequeno

+ −

+ −

+

Page 11: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Arboles de decision

◮ Arboles de decision◮ Nodos interiores: atributos◮ Arcos: posibles valores del nodo origen◮ Hojas: valor de clasificacion (usualmente + o −, aunque podrıa

ser cualquier conjunto de valores, no necesariamente binario)◮ Representacion de una funcion objetivo

◮ Disyuncion de reglas proposicionales:

(Cielo=Soleado ∧ Humedad=Alta → JugarTenis= −)∨ (Cielo=Soleado ∧ Humedad=Normal → JugarTenis=+)∨ (Cielo=Nublado → JugarTenis= +)∨ (Cielo=Lluvioso ∧ Viento=Fuerte → JugarTenis= −)∨ (Cielo=Lluvioso ∧ Viento=Debil → JugarTenis= +)

◮ Capaz de representar cualquier subconjunto de instancias

Page 12: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendizaje de arboles de decision

◮ Objetivo: aprender un arbol de decision consistente con losejemplos, para posteriormente clasificar ejemplos nuevos

◮ Ejemplo de conjunto de entrenamiento:

Ej. Cielo Temperatura Humedad Viento JugarTenisD1 Soleado Alta Alta Debil -D2 Soleado Alta Alta Fuerte -D3 Nublado Alta Alta Debil +D4 Lluvia Suave Alta Debil +. . .

Page 13: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3

Algoritmo ID3

ID3(Ejemplos, Atributo-objetivo, Atributos)1. Si todos los Ejemplos son positivos, devolver un nodo

etiquetado con +2. Si todos los Ejemplos son negativos, devolver un nodo

etiquetado con -3. Si Atributos esta vacıo, devolver un nodo etiquetado con el valor

mas frecuente de Atributo-objetivo en Ejemplos.4. En otro caso:4.1. Sea A el atributo de Atributos que MEJOR clasifica Ejemplos4.2. Crear Arbol, con un nodo etiquetado con A.4.3. Para cada posible valor v de A, hacer:

* Anadir un arco a Arbol, etiquetado con v.

* Sea Ejemplos(v) el subconjunto de Ejemplos con valor delatributo A igual a v.

* Si Ejemplos(v) es vacıo:- Entonces colocar debajo del arco anterior un nodo etiquetado

con el valor mas frecuente de Atributo-objetivo en Ejemplos.- Si no, colocar debajo del arco anterior el subarbol

ID3(Ejemplos(v), Atributo-objetivo, Atributos-{A}).4.4 Devolver Arbol

Page 14: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

¿Como saber que atributo clasifica mejor?

◮ Entropıa de un conjunto de ejemplos D (resp. de unaclasificacion):

Ent(D) = − |P||D| · log2

|P||D| −

|N||D| · log2

|N||D|

donde P y N son, respectivamente, los subconjuntos deejemplos positivos y negativos de D◮ Notacion: Ent([p+, n−]), donde p = |P | y n = |N|

◮ Intuicion:◮ Mide la ausencia de “homegeneidad” de la clasificacion◮ Teorıa de la Informacion: cantidad media de informacion (en

bits) necesaria para codificar la clasificacion de un ejemplo

Page 15: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

¿Como saber que atributo clasifica mejor?

Intuitivamente, el grado de dispersion (entropıa) de los conjuntosD1 y D2 obtenidos usando el atributo B es menor que si usamos elatributo A

Page 16: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

¿Como saber que atributo clasifica mejor?

Ejemplos:

◮ Ent([9+, 5−]) = − 914 · log2

914 − 5

14 · log2514 = 0.94

◮ Ent([k+, k−]) = 1 (ausencia total de homogeneidad)

◮ Ent([p+, 0−]) = Ent([0+, n−]) = 0 (homogeneidad total)

Page 17: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ganancia de informacion

◮ Preferimos nodos con menos entropıa (arboles pequenos)

◮ Entropıa esperada tras usar un atributo A en el arbol:

v∈Valores(A)

|Dv |

|D|· Ent(Dv )

donde Dv es el subconjunto de ejemplos de D con valor delatributo A igual a v

◮ Ganancia de informacion esperada tras de usar un atributo A:

Ganancia(D,A) = Ent(D)−∑

v∈Valores(A)

|Dv |

|D|· Ent(Dv )

◮ En el algoritmo ID3, en cada nodo usamos el atributo conmayor ganancia de informacion (considerando los ejemploscorrespondientes al nodo)

Page 18: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Conjunto de entrenamiento:

Ej. Cielo Temperatura Humedad Viento JugarTenisD1 Soleado Alta Alta Debil -D2 Soleado Alta Alta Fuerte -D3 Nublado Alta Alta Debil +D4 Lluvia Suave Alta Debil +D5 Lluvia Baja Normal Debil +D6 Lluvia Baja Normal Fuerte -D7 Nublado Baja Normal Fuerte +D8 Soleado Suave Alta Debil -D9 Soleado Baja Normal Debil +D10 Lluvia Suave Normal Debil +D11 Soleado Suave Normal Fuerte +D12 Nublado Suave Alta Fuerte +D13 Nublado Alta Normal Debil +D14 Lluvia Suave Alta Fuerte -

Page 19: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

Normal

Humedad

Alta

[3+, 4−] [6+, 1−]

Viento

Fuerte Debil

[6+, 2−] [3+, 3−]

TemperaturaCielo

[2+, 2−] [4+, 2−] [3+, 1−]

BajaSuaveAltaLluvia

[2+, 3−] [3+, 2−][4+, 0−]

Soleado Nublado

Page 20: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Entropıa inicial: Ent([9+, 5−]) = 0.94

◮ Seleccion del atributo para el nodo raız:

◮ Ganancia(D,Humedad) =0.94− 7

14 · Ent([3+, 4−])− 714 · Ent([6+, 1−]) = 0.151

◮ Ganancia(D,Viento) =0.94− 8

14 · Ent([6+, 2−])− 614 · Ent([3+, 3−]) = 0.048

◮ Ganancia(D,Cielo) =0.94− 5

14 · Ent([2+, 3−])− 414 · Ent([4+, 0−])

− 514 · Ent([3+, 2−]) = 0.246 (mejor atributo)

◮ Ganancia(D,Temperatura) =0.94− 4

14 · Ent([2+, 2−])− 614 · Ent([4+, 2−])

− 414 · Ent([3+, 1−]) = 0.02

◮ El atributo seleccionado es Cielo

Page 21: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Arbol parcialmente construido:

?

Cielo

Soleado Nublado Lluvia

+ ?

Page 22: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Seleccion del atributo para el nodo Cielo=Soleado

◮ DSoleado = {D1,D2,D8,D9,D11} con entropıaEnt([2+, 3−]) = 0.971◮ Ganancia(DSoleado,Humedad) =

0.971− 35 · 0− 2

5 · 0 = 0.971 (mejor atributo)◮ Ganancia(DSoleado,Temperatura) =

0.971− 25 · 0− 2

5 · 1− 15 · 0 = 0.570

◮ Ganancia(DSoleado,Viento) =0.971− 2

5 · 1− 35 · 0.918 = 0.019

◮ El atributo seleccionado es Humedad

Page 23: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Seleccion del atributo para el nodo Cielo=Lluvia:

◮ DLluvia = {D4,D5,D6,D10,D14} con entropıaEnt([3+, 2−]) = 0.971◮ Ganancia(DLluvia,Humedad) =

0.971− 25 · 1− 3

5 · 0.918 = 0.820◮ Ganancia(DLluvia,Temperatura) =

0.971− 35 · 0.918− 2

5 · 1 = 0.820◮ Ganancia(DLluvia,Viento) =

0.971− 35 · 0− 2

5 · 0 = 0.971 (mejor atributo)

◮ El atributo seleccionado es Viento

Page 24: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 1)

◮ Arbol finalmente aprendido:

Cielo

LluviaSoleado Nublado

+Viento

Debil

+

Humedad

Alta

+− −

Normal Fuerte

Page 25: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 2)

◮ Conjunto de entrenamiento:

Ej. Color Forma Tamano ClaseO1 Rojo Cuadrado Grande +O2 Azul Cuadrado Grande +O3 Rojo Redondo Pequeno -O4 Verde Cuadrado Pequeno -O5 Rojo Redondo Grande +O6 Verde Cuadrado Grande -

Page 26: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 2)

◮ Entropıa inicial en el ejemplo de los objetos, Ent([3+, 3−]) = 1

◮ Seleccion del atributo para el nodo raız:◮ Ganancia(D,Color) =

1− 36 ·Ent([2

+, 1−])− 16 ·Ent([1

+, 0−])− 26 ·Ent([0

+, 2−]) = 0.543◮ Ganancia(D,Forma) =

1− 46 · Ent([2+, 2−])− 2

6 · Ent([1+, 1−]) = 0◮ Ganancia(D,Tamano) =

1− 46 · Ent([3+, 1−])− 2

6 · Ent([0+, 2−]) = 0.459

◮ El atributo seleccionado es Color

Page 27: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 2)

◮ Arbol parcialmente construido:

?

Color

Rojo Verde Azul

− +

Page 28: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 2)

◮ Seleccion del atributo para el nodo Color=Rojo:

◮ DRojo = {O1,O3,O5} con entropıa Ent([2+, 1−]) = 0.914◮ Ganancia(DRojo,Forma) =

0.914− 13 · Ent([1+, 0−])− 2

3 · Ent([1+, 1−]) = 0.247◮ Ganancia(DRojo,Tamano) =

0.914− 23 · Ent([2+, 0−])− 1

3 · Ent([0+, 1−]) = 0.914

◮ El atributo seleccionado es Tamano

Page 29: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo ID3 (ejemplo 2)

◮ Arbol finalmente aprendido:

Grande

Color

Rojo Verde Azul

−Tamano

Pequeno

+

+ −

Page 30: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Busqueda y sesgo inductivo

◮ Busqueda en un espacio de hipotesis◮ Espacio de todos los arboles de decision◮ Un unico arbol candidato en cada paso◮ Sin retroceso (peligro de optimos locales), busqueda en

escalada◮ Decisiones tomadas a partir de conjuntos de ejemplos

◮ Sesgo inductivo◮ Se prefieren arboles mas cortos sobre los mas largos◮ Sesgo preferencial, implıcito en la busqueda◮ Principio de la navaja de Occam

Page 31: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

La navaja de OccamGuillermo de Occam (1288-1349)

Lex parsimoniae

Entia non sunt multiplicanda prae-

ter necessitatem (No ha de presu-

mirse la existencia de mas cosas

que las absolutamente necesarias)

Guillermo de Occam

La navaja de Occam

En igualdad de condiciones la solucion mas sencilla esprobablemente la correcta

Page 32: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algunas cuestiones practicas a resolver en aprendizajeautomatico

◮ Validar la hipotesis aprendida

◮ ¿Podemos cuantificar la bondad de lo aprendido respecto de laexplicacion real?

◮ Sobreajuste◮ ¿Se ajusta demasiado lo aprendido al conjunto de

entrenamiento?

Page 33: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Medida del rendimiento del aprendizaje

◮ Conjunto de entrenamiento y conjunto de prueba◮ Aprender con el conjunto de entrenamiento◮ Medida del rendimiento: proporcion de ejemplos bien

clasificados en el conjunto de prueba

◮ Repeticion de este proceso◮ Curva de aprendizaje◮ Estratificacion: cada clase correctamente representada en el

entrenamiento y en la prueba

◮ Validacion cruzada◮ Dividir en k partes, y hace k aprendizajes, cada uno de ellos

tomando como prueba una de las partes y entrenamiento elresto. Finalmente hacer la media de los rendimientos.

◮ En la practica: validacion cruzada, con k = 10 y estratificacion

Page 34: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Sobreajuste y ruido

◮ Una hipotesis h ∈ H sobreajusta los ejemplos deentrenamiento si existe h′ ∈ H que se ajusta peor que h a losejemplos pero actua mejor sobre la distribucion completa deinstancias.

◮ Ruido: ejemplos incorrectamente clasificados. Causasobreajuste

◮ Ejemplo: supongamos que por error, se incluye el ejemplo<Azul,Redondo,Pequeno> como ejemplo negativo

◮ El arbol aprendido en este caso serıa (sobrejustado a losdatos):

Color

Rojo Verde Azul

Grande

−Tamano

+ −

Pequeno

+

Color

Rojo Verde Azul

Forma

CuadradoGrande

−Tamano

+ − − +

RedondoPequeno

Page 35: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Sobreajuste y ruido

◮ Otras causas de sobreajuste:◮ Atributos que en los ejemplos presentan una aparente

regularidad pero que no son relevantes en realidad◮ Conjuntos de entrenamiento pequenos

◮ Maneras de evitar el sobreajuste:◮ Parar el desarrollo del arbol antes de que se ajuste

perfectamente a todos los datos◮ Podar el arbol a posteriori

◮ Poda a posteriori, dos aproximaciones:◮ Transformacion a reglas, podado de las condiciones de las

reglas◮ Realizar podas directamente en el arbol◮ Las podas se producen siempre que reduzcan el error sobre un

conjunto de prueba

Page 36: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Podado de arboles

Algoritmo de poda para reducir el error1. Dividir el conjunto de ejemplos en Entrenamiento y Prueba2. Arbol=arbol obtenido por ID3 usando Entrenamiento3. Continuar=True4. Mientras Continuar:

* Medida = proporcion de ejemplos en Prueba correctamenteclasificados por Arbol

* Por cada nodo interior N de Arbol:- Podar temporalmente Arbol en el nodo N y sustituirlo por una

hoja etiquetada con la clasificacion mayoritaria en ese nodo- Medir la proporcion de ejemplos correctamente clasificados en

el conjunto de prueba.

* Sea K el nodo cuya poda produce mejor rendimiento

* Si este rendimiento es mejor que Medida, entoncesArbol = resultado de podar permanentemente Arbol en K

* Si no, Continuar=Falso5. Devolver Arbol

Page 37: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Atributos con valores continuos

◮ Reemplazamos los atributos continuos por atributos booleanosque se crean dinamicamente, introduciendo umbrales C .◮ A continuo◮ A<C booleano, toma el valor SI cuando el valor es menor que

C y NO en otro caso.

Page 38: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Atributos con valores continuos

Temperatura 50 52 60 68 70 78 84

Clase + + - - - + +

◮ Los candidatos a umbral C son los valores adyacentes condistinta clase

◮ 56 = (52 + 60)/2 y 74=(70 + 78)/2.

◮ Seleccionamos el umbral con maxima ganancia

◮ El nuevo atributo A<C compite con los restantes.

◮ El proceso se realiza a cada paso eligiendo el mejor umbral enel conjunto de entrenamiento.

Page 39: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Otras cuestiones practicas del algoritmo ID3

◮ Extensiones del algoritmo:◮ Atributos con valores contınuos (ampliacion)◮ Otras medidas para seleccionar atributos◮ Otras estimaciones de error◮ Atributos sin valores◮ Atributos con coste

◮ Algoritmos C4.5 y C5.0 (Quinlan)

Page 40: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Cambiando la salida: reglas proposicionales

◮ Reglas de clasificacion:◮ R1: Si Cielo=Soleado ∧ Humedad=Alta

Entonces JugarTenis= −◮ R2: Si Astigmatismo=+ ∧ Lagrima=Normal

Entonces Lente=Rigida

◮ Ventaja de usar el formalismo de reglas◮ Claridad◮ Modularidad◮ Expresividad: pueden representar cualquier conjunto de

instancias◮ Metodos generalizables a primer orden de manera natural◮ Formalismo usado en sistemas basados en el conocimiento

◮ Reglas y arboles de decision◮ Facil traduccion de arbol a reglas, pero no a la inversa

Page 41: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendizaje de reglas

◮ Objetivo: aprender un conjunto de reglas consistente con losejemplos◮ Una regla cubre un ejemplo si el ejemplo satisface las

condiciones◮ Lo cubre correctamente si ademas el valor del atributo en la

conclusion de la regla coincide con el valor que el ejemplotoma en ese atributo

◮ Una medida del ajuste de una regla R a un conjunto deejemplos D:◮ Frecuencia relativa: p/t (donde t = ejemplos cubiertos por R

en D, p = ejemplos correctamente cubiertos). Notacion:FR(R ,D)

◮ Algoritmos de aprendizaje de reglas:◮ ID3 + traduccion a reglas◮ Cobertura◮ Algoritmos geneticos

Page 42: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Un conjunto de entrenamiento

Ej. Edad Dignostico Astigmatismo Lagrima LenteE1 Joven Miope - Reducida NingunaE2 Joven Miope - Normal BlandaE3 Joven Miope + Reducida NingunaE4 Joven Miope + Normal RıgidaE5 Joven Hipermetrope - Reducida NingunaE6 Joven Hipermetrope - Normal BlandaE7 Joven Hipermetrope + Reducida NingunaE8 Joven Hipermetrope + Normal RıgidaE9 PrePresbicia Miope - Reducida NingunaE10 PrePresbicia Miope - Normal BlandaE11 PrePresbicia Miope + Reducida NingunaE12 PrePresbicia Miope + Normal RıgidaE13 PrePresbicia Hipermetrope - Reducida NingunaE14 PrePresbicia Hipermetrope - Normal BlandaE15 PrePresbicia Hipermetrope + Reducida NingunaE16 PrePresbicia Hipermetrope + Normal Ninguna

Page 43: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Un conjunto de entrenamiento

Ej. Edad Dignostico Astigmatismo Lagrima LenteE17 Presbicia Miope - Reducida NingunaE18 Presbicia Miope - Normal NingunaE19 Presbicia Miope + Reducida NingunaE20 Presbicia Miope + Normal RıgidaE21 Presbicia Hipermetrope - Reducida NingunaE22 Presbicia Hipermetrope - Normal BlandaE23 Presbicia Hipermetrope + Reducida NingunaE24 Presbicia Hipermetrope + Normal Ninguna

◮ R2: Si Astigmatismo=+ ∧ Lagrima=NormalEntonces Lente=Rigida

◮ R2 cubre E4, E8, E12, E16, E20 y E24, de los cuales cubrecorrectamente E4, E8, E12 y E20

Page 44: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendiendo reglas que cubren ejemplos

◮ Aprender una regla para clasificar Lente=Rigida◮ Si ?

Entonces Lente=Rigida◮ Alternativas para ?, y frecuencia relativa de la regla resultante

Edad=Joven 2/8Edad=PrePresbicia 1/8Edad=Presbicia 1/8Diagnostico=Miopıa 3/12Diagnostico=Hipermetropıa 1/12Astigmatismo=− 0/12Astigmatismo=+ 4/12 *Lagrima=Reducida 0/12Lagrima=Normal 4/12 *

◮ Regla parcialmente aprendida◮ Si Astigmatismo=+

Entonces Lente=Rigida

Page 45: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendiendo reglas que cubren ejemplos

◮ Continuamos para excluir ejemplos cubiertos incorrectamente◮ Si Astigmatismo=+ ∧ ?

Entonces Lente=Rigida◮ Alternativas para ?, y frecuencia relativa de la regla resultante

Edad=Joven 2/4Edad=PrePresbicia 1/4Edad=Presbicia 1/4Diagnostico=Miopıa 3/6Diagnostico=Hipermetropıa 1/6Lagrima=Reducida 0/6Lagrima=Normal 4/6 *

◮ Regla parcialmente aprendida◮ Si Astigmatismo=+ ∧ Lagrima=Normal

Entonces Lente=Rigida

Page 46: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendiendo reglas que cubren ejemplos

◮ Continuamos para excluir ejemplos cubiertos incorrectamente◮ Si Astigmatismo=+ ∧ Lagrima=Normal ∧ ?

Entonces Lente=Rigida◮ Alternativas para ?, y frecuencia relativa de la regla resultante

Edad=Joven 2/2 *Edad=PrePresbicia 1/2Edad=Presbicia 1/2Diagnostico=Miopıa 3/3 *Diagnostico=Hipermetropıa 1/3

◮ Regla finalmente aprendida (no cubre incorrectamente ningunejemplo)◮ Si Astigmatismo=+ ∧ Lagrima=Normal ∧

Diagnostico=MiopiaEntonces Lente=Rigida

Page 47: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aprendiendo reglas que cubren ejemplos

◮ Queda un ejemplo con Lente=Rigida no cubierto por R2◮ Comenzamos otra vez con “Si ? Entonces Lente=Rigida”,

pero ahora con D ′ = D \ {E4,E12,E20}

◮ Reglas finalmente aprendidas para Lente=Rigida:◮ R1: Si Astigmatismo= + ∧ Lagrima=Normal ∧

Diagnostico=MiopiaEntonces Lente=Rigida

◮ R2: Si Edad=Joven ∧ Astigmatismo= + ∧Lagrima=Normal

Entonces Lente=Rigida◮ Cubren correctamente los 4 ejemplos de Lente=Rigida (y se

solapan)

◮ Ahora se podrıa continuar para aprender reglas queclasifiquen:◮ Lente=Blanda◮ Lente=Ninguna

Page 48: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo de aprendizaje de reglas por cobertura

Algoritmo de aprendizaje por coberturaAprendizaje-por-Cobertura(D,Atributo,v)1. Hacer Reglas-aprendidas igual a vacıo2. Hacer E igual a D3. Mientras E contenga ejemplos cuyo valor de Atributo es v, hacer:3.1 Crear una regla R sin condiciones y conclusion Atributo=v3.2 Mientras que haya en E ejemplos cubiertos por R incorrectamente

o no queden atributos que usar, hacer:3.2.1 Elegir la MEJOR condicion A=w para anadir a R, donde A es

un atributo que no aparece en R y w es un valor de losposibles que puede tomar A

3.2.2 Actualizar R anadiendo la condicion A=w a R3.3 Incluir R en Reglas-aprendidas3.4 Actualizar E quitando los ejemplos cubiertos por R4. Devolver Reglas-Aprendidas

◮ Algoritmo para aprender un conjunto de reglas (a partir de D)◮ Reglas para predecir situaciones en las que un Atributo dado

toma un valor v

Page 49: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Control en el algoritmo de cobertura

◮ Bucle externo:◮ Anade reglas (la hipotesis se generaliza)◮ Cada regla anadida cubre algunos ejemplos correctamente◮ Elimina en cada vuelta los ejemplos cubiertos por la regla

anadida◮ Y se anaden reglas mientras queden ejemplos sin cubrir

◮ Bucle interno:◮ Anade condiciones a la regla (la regla se especializa)◮ Cada nueva condicion excluye ejemplos cubiertos

incorrectamente◮ Y esto se hace mientras haya ejemplos incorrectamente

cubiertos

◮ Cobertura frente a ID3◮ Aprende una regla cada vez, ID3 lo hace simultaneamente◮ ID3: elecciones de atributos◮ Cobertura: elcciones de parejas atributo-valor

Page 50: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Algoritmo de cobertura (propiedades)

◮ Diferentes criterios para elegir la mejor condicion en cadavuelta del bucle interno:◮ Se anade la condicion que produzca la regla con mayor

frecuencia relativa (como en el ejemplo)◮ Se anade la que produzca mayor ganancia de informacion:

p · (log2p′

t′− log2

pt)

donde p′/t ′ es la frecuencia relativa despues de anadir lacondicion y p/t es la frecuencia relativa antes de anadir lacondicion

◮ Las reglas aprendidas por el algoritmo de cobertura se ajustanperfectamente al conjunto de entrenamiento (peligro desobreajuste)◮ Podado de las reglas a posteriori◮ Eliminar progresivamente condiciones hasta que no se

produzca mejora◮ Criterio probabilıstico para decidir la mejora

Page 51: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Vision estadıstica del aprendizaje

◮ Continuamos tratando cuestiones relacionadas con elaprendizaje a partir de observaciones

◮ Como en los casos anteriores, el problema se plantea con unconjunto de entrenamiento d y con un conjunto de hipotesisH, candidatas a ser aprendidas

◮ En este caso, nos moveremos en un dominio descrito porvariables aleatorias◮ El conjunto de datos d representa una serie de evidencias

observadas (instancias concretas de algunas de las variablesaleatorias D)

◮ Las hipotesis de H son modelos probabilısticos de comofunciona el dominio (por ejemplo, distintas distribuciones deprobabilidad)

Page 52: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Vision estadıstica del aprendizaje

◮ A diferencia de los temas anteriores, las decisiones sobre queaprender se tomaran, esencialmente, calculando probabilidadescondicionadas

◮ No necesariamente se descarta una hipotesis que seainconsistente con d , sino que busca la hipotesis mas probable,dadas las observaciones de d

◮ Ej.: buscar hipotesis que maximizan P(h|d ), para h ∈ H◮ Por tanto, sera esencial el uso del teorema de Bayes (de hecho,

este tipo de aprendizaje se denomina “aprendizaje bayesiano”).

◮ Ademas, incorpora el conocimiento a priori del que se dispone:

◮ Probabilidades de la forma P(d |h) y P(h), esencialmente

Page 53: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Formulacion de la regla de Bayes

◮ De P(a ∧ b) = P(a|b)P(b) = P(b|a)P(a) podemos deducir lasiguiente formula, conocida como regla de Bayes

P(b|a) =P(a|b)P(b)

P(a)

◮ Regla de Bayes para variables aleatorias:

P(Y |X ) =P(X |Y )P(Y )

P(X )

◮ recuerdese que esta notacion representa un conjunto deecuaciones, una para cada valor especıfico de las variables

◮ Version con normalizacion:P(Y |X ) = α · P(X |Y )P(Y )

◮ Generalizacion, en presencia de un conjunto e de observaciones:P(Y |X , e) = α · P(X |Y , e)P(Y |e)

Page 54: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

El marco general del aprendizaje bayesiano

◮ Sea H un conjunto de hipotesis, D una v.a. que representa losdatos observables.

◮ La informacion de entrada es:◮ Los datos observados, d◮ La probabilidades a priori de las hipotesis, P(h)◮ La verosimilitud de los datos bajo las hipotesis, P(d |h)

◮ El aprendizaje bayesiano consiste en calcular la probabilidadde cada hipotesis de H (dados los datos) y predecir valoresdesconocidos a partir de esas probabilidades◮ Por el teorema de Bayes, P(h|d ) se calcula de la siguiente

manera:P(h|d ) = αP(d |h)P(h)

◮ Donde α es la constante que normaliza P(d |h)P(h) para todoslos h ∈ H (es decir, para que sumen 1)

Page 55: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo de uso de la regla de Bayes

◮ Sabemos que la probabilidad de que un paciente de meningitistenga el cuello hinchado es 0.5 (relacion causal)

◮ Tambien sabemos la probabilidad (incondicional) de tenermeningitis ( 1

50000) y de tener el cuello hinchado (0.05)

◮ Estas probabilidades provienen del conocimiento y laexperiencia

◮ La regla de Bayes nos permite diagnosticar la probabilidad detener meningitis una vez que se ha observado que el pacientetiene el cuello hinchado

P(m|h) =P(h|m)P(m)

P(h)=

0.5× 150000

0.05= 0.0002

◮ Alternativamente, podrıamos haberlo hecho normalizando◮ P(M|h) = α〈P(h|m)P(m);P(h|¬m)P(¬m)〉◮ Evita P(h) pero obliga a saber P(h|¬m)

Page 56: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Relaciones causa-efecto y la regla de Bayes

◮ Modelando probabilısticamente una relacion entre una Causay un Efecto:◮ La regla de Bayes nos da una manera de obtener la

probabilidad de Causa, dado que se ha observado Efecto:

P(Causa|Efecto) = α · P(Efecto|Causa)P(Efecto)

◮ Nos permite diagnosticar en funcion de nuestro conocimientode relaciones causales y de probabilidades a priori

Page 57: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo

◮ Consideremos la siguiente informacion sobre el cancer demama en mujeres de mas de 40 anos◮ Un 1% de las que se hacen un chequeo tienen cancer de mama◮ Un 80% de las que tienen cancer de mama se detectan con

una mamografıa◮ El 9.6% de las que no tienen cancer de mama, al realizarse

una mamografıa se le diagnostica cancer erroneamente

Page 58: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo

◮ Pregunta 1: ¿cual es la probabilidad de tener cancer si lamamografıa ası lo diagnostica?◮ Variables aleatorias: C (tener cancer de mama) y M

(mamografıa positiva)◮ P(C |m) = αP(C ,m) = αP(m|C )P(C ) =

α〈P(m|c)P(c);P(m|¬c)P(¬c)〉 = α〈0.8 · 0.01; 0.096 · 0.99〉 =α〈0.008; 0.09504〉 = 〈0.0776; 0.9223〉

◮ Luego el 7.8% de las mujeres diagnosticadas positivamentecon mamografıa tendran realmente cancer de mama

Page 59: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Ejemplo

◮ Pregunta 2: ¿cual es la probabilidad de tener cancer si tras dosmamografıas consecutivas en ambas se diagnostica cancer?◮ Variables aleatorias: M1 (primera mamografıa positiva) y M2

(segunda mamografıa positiva)◮ Vamos a asumir independencia condicional de M1 y M2 dada C◮ Por tanto, P(C |m1,m2) = αP(C ,m1,m2) =

αP(m1,m2|C )P(C ) = αP(m1|C )P(m2|C )P(C ) =α〈P(m1|c)P(m2|c)P(c);P(m2|¬c)P(m2|¬c)P(¬c)〉 =α〈0.8 · 0.8 · 0.01; 0.096 · 0.096 · 0.99〉 = 〈0.412; 0.588〉

◮ Luego aproximadamente el 41% de las mujeres doblementediagnosticadas positivamente con mamografıa tendranrealmente cancer de mama

Page 60: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificadores bayesianos

◮ Volvamos un momento a problemas de clasificacion deinstancias definidas mediantes valores de atributos◮ Como en el tema de arboles de decision, o el de redes

neuronales que veremos mas adelante

◮ Supongamos un conjunto de atributos A1, . . . ,An cuyosvalores determinan un valor en un conjunto finito V deposibles “clasificaciones”

◮ Tenemos un conjunto de entrenamiento D con una serie detuplas de valores concretos para los atributos, junto con suclasificacion v

◮ Queremos aprender un clasificador tal que clasifique nuevasinstancias dadas por su tupla de valores para los n atributos〈a1, . . . , an〉, devolviendo ası su clasificacion v

Page 61: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificadores bayesianos

◮ Podemos disenar un modelo probabilıstico para un problemade clasificacion de este tipo, tomando los atributos y laclasificacion como variables aleatorias

◮ El valor de clasificacion asignado a una nueva instancia〈a1, . . . , an〉, notado vMAP vendra dado por

argmaxvj∈V

P(vj |a1, . . . , an)

◮ Aplicando el teorema de Bayes podemos escribir

vMAP = argmaxvj∈V

P(a1, . . . , an|vj)P(vj)

◮ Y ahora, simplemente estimar las probabilidades de la formulaanterior a partir del conjunto de entrenamiento

◮ Problema: necesitarıamos una gran cantidad de datos paraestimar adecuadamente las probabilidades P(a1, . . . , an|vj)

Page 62: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificadores Naive Bayes

◮ Podemos simplificar el aprendizaje suponiendo que losatributos son (mutuamente) condicionalmente independientesdado el valor de clasificacion (de ahı lo de “naive”)

◮ La situacion se representa entonces por la red:

V

A A A1 n2

◮ En ese caso, tomamos como valor de clasificacion:

vNB = argmaxvj∈V

P(vj)∏

i

P(ai |vj)

Page 63: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificadores Naive Bayes

◮ Para el proceso de aprendizaje, solo tenemos que estimar lasprobabilidades P(vj) y P(ai |vj) (que son muchas menos queen el caso general)

◮ Podemos obtener estimaciones de estas probabilidadesmediante calculo de sus frecuencias en el conjunto deentrenamiento

P(vj) =#(V = vj)

NP(ai |vj) =

#(Ai = ai ,V = vj)

#(V = vj)

donde N es el numero total de ejemplos, #(V = vj) es elnumero de ejemplos clasificados como vj y#(Ai = ai ,V = vj) es el numero de ejemplos clasificadoscomo vj cuyo valor en el atributo Ai es ai .

◮ Notese que a diferencia de otros metodos (como ID3) no hayuna busqueda en el espacio de hipotesis: simplementecontamos frecuencias

Page 64: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador Naive Bayes: en ejemplo

◮ Vamos a aplicar el clasificador a un ejemplo ya conocido,usado en el tema de arboles de decision:Ej. Cielo Temperatura Humedad Viento JugarTenisD1 Soleado Alta Alta Debil -D2 Soleado Alta Alta Fuerte -D3 Nublado Alta Alta Debil +D4 Lluvia Suave Alta Debil +D5 Lluvia Baja Normal Debil +D6 Lluvia Baja Normal Fuerte -D7 Nublado Baja Normal Fuerte +D8 Soleado Suave Alta Debil -D9 Soleado Baja Normal Debil +D10 Lluvia Suave Normal Debil +D11 Soleado Suave Normal Fuerte +D12 Nublado Suave Alta Fuerte +D13 Nublado Alta Normal Debil +D14 Lluvia Suave Alta Fuerte -

Page 65: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador Naive Bayes: en ejemplo

◮ Supongamos que queremos predecir si un dıa soleado, detemperatura suave, humedad alta y viento fuerte es buenopara jugar al tenis

◮ Segun el clasificador Naive Bayes:

vNB = argmaxvj∈{+,−}

P(vj)P(soleado|vj )P(suave|vj )P(alta|vj )P(fuerte|vj )

◮ Ası que necesitamos estimar todas estas probabilidades, lo quehacemos simplemente calculando frecuencias en la tablaanterior:◮ p(+) = 9/14, p(−) = 5/14, p(soleado|+) = 2/9,

p(soleado|−) = 3/5, p(suave|+) = 4/9, p(suave|−) = 2/5,p(alta|+) = 3/9, p(alta|−) = 4/5, p(fuerte|+) = 3/9 yp(fuerte|−) = 3/5

Page 66: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador Naive Bayes: en ejemplo

◮ Por tanto, las dos probabilidades a posteriori son:

P(+)P(soleado|+)P(suave|+)P(alta|+)P(fuerte|+) = α0.007P(−)P(soleado|−)P(suave|−)P(alta|−)P(fuerte|−) = α0.041

◮ Ası que el clasificador devuelve la clasificacion con mayorprobabilidad a posteriori, en este caso la respuesta es − (no esun dıa bueno para jugar al tenis)

◮ Si queremos el valor de probabilidad asociado, normalizamos(sumamos los valores anteriores, y dividimos cada uno por lasuma). Ası, quedarıa:

P(+|soleado, suave, alta, fuerte) = 0.14637P(−|soleado, suave, alta, fuerte) = 0.85363

Page 67: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Detalles tecnicos sobre las estimaciones

◮ Tal y como estamos calculando las estimaciones, existe elriesgo de que algunas de ellas sean excesivamente bajas

◮ Si realmente alguna de las probabilidades es baja y tenemospocos ejemplos en el conjunto de entrenamiento, lo masseguro es que la estimacion de esa probabilidad sea 0

◮ Esto plantea dos problemas:◮ La inexactitud de la propia estimacion◮ Afecta enormemente a la clasificacion que se calcule, ya que se

multiplican las probabilidades estimadas y por tanto si una deellas es 0, anula a las demas

◮ Una primera manera de abordar el problema: usar logaritmosde las probabilidades.◮ Los productos se transforman en sumas

vNB = argmaxvj∈V

[log(P(vj )) +∑

i

log(P(ai |vj))]

Page 68: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Detalles tecnicos sobre las estimaciones◮ Problema en la estimaciones:

◮ Probabilidades nulas o casi nulas, por ausencia en el conjuntode entrenamiento de algunos valores de atributos en algunascategorıas

◮ Sobreajuste

◮ Idea: suponer que tenemos m ejemplos adicionales, cuyosvalores se distribuyen teoricamente a priori de alguna manera:lo que se denomina m-estimacion o estimacion suavizada:

n′ +m · p

n +m◮ n es el numero total de observaciones correspondiente a una

clasificacion◮ n′ es el numero de observaciones, de esas, que tienen como

valor de atributo el correspondiente al que se esta estimando◮ p es una estimacion a priori de la probabilidad que se quiere

calcular. En ausencia de otra informacion, podrıa ser p = 1/k ,donde k es el numero de valores del atributo

◮ m es una constante (llamada tamano de muestreo equivalente)que determina el peso de p en la formula anterior

Page 69: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Solucion habitual: suavizado de Laplace

◮ Una de las tecnicas mas usadas para eliminar el problemaanterior, especialmente cuando se da el conocido comozero-frequency problem, es aplicar un caso particular de laestimacion anterior, denominado suavizado de Laplace:

n′ + k

n + k · |Ai |

con |Ai | el no valores distintos que puede tomar el atributo Ai .

Page 70: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Naive Bayes: aplicaciones y comparativa

◮ A pesar de su aparente sencillez, los clasificadores Naive Bayestienen un rendimiento comparable al de los arboles dedecision, las reglas o las redes neuronales

◮ Algunas aplicaciones interesantes:◮ Clasificacion de textos◮ Filtros anti-spam◮ Perfiles de usuarios web

Page 71: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificacion mediante vecino mas cercano

◮ Una tecnica alternativa a construir el modelo probabilıstico escalcular la clasificacion directamente a partir de los ejemplos(aprendizaje basado en instancias)

◮ Idea: obtener la clasificacion de un nuevo ejemplo a partir delas categorıas de los ejemplos mas “cercanos”.

◮ Debemos manejar, por tanto, una nocion de “distancia” entreejemplos.

◮ En la mayorıa de los casos, los ejemplos seran elementos de Rn

y la distancia, la euclıdea.◮ Pero se podrıa usar otra nocion de distancia

Page 72: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

El algoritmo k-NN

◮ El algoritmo k-NN (de “k nearest neighbors”):◮ Dado un conjunto de entrenamiento (vectores numericos con

una categorıa asignada) y un ejemplo nuevo◮ Devolver la categorıa mayoritaria en los k ejemplos del

conjunto de entrenamiento mas cercanos al ejemplo que sequiere clasificar

Page 73: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador basado K vecinos mas proximos (KNN)

◮ Basado en el refran: Dime con quien andas, y te dire comoeres.

◮ Caracterısticas:◮ Metodo no parametrico. No hacemos asunciones sobre la

distribucion de los datos.◮ Es un metodo perezoso. No existe una fase explıcita de

entrenamiento o es mınima. Esto supone que la fase deentrenamiento es muy rapida, pero que seran necesario todoslos datos de entrenamiento (o gran parte de ellos) para hacerla prediccion.

Page 74: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador por el vecino mas proximo

◮ Supone que solo vamos a considerar un vecimo: K = 1.

◮ Fase de entrenamiento:◮ Guardamos el conjunto de entrenamiento y las etiquetas

asociadas a cada muestra.

◮ Fase de prediccion (con nuevas muestras):◮ Data una muestra x, buscamos entre el conjunto de

entrenamiento la muestra mas cercana xi y asociamos a x laetiqueta yi

Page 75: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clasificador por K vecinos mas proximos

◮ Suponemos ahora un K arbitrario (K > 1).

◮ Fase de entrenamiento:◮ Guardamos el conjunto de entrenamiento y las etiquetas

asociadas a cada muestra.

◮ Fase de prediccion (con nuevas muestras):◮ Dada una muestra x, buscamos entre el conjunto de

entrenamiento las K muestras mas cercanas. Se asociara a lamuestra x la etiqueta que mayor numero de votos obtengaentre las K muestras mas cercanas.

Page 76: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

KNN: Algunas observaciones

◮ Mejora: considerar la distancia a la muestra x para dar mayoro menor valor a la votacion.

◮ Si tenemos a atributos y n muestras el tiempo de predicciones de orden O(an). Con estructuras como KD-tree podemosreducir el tiempo de prediccion a costa de aumentar el tiempode entrenamiento (construir el KD-tree).

◮ La eleccion del parametro k es crıtica. Con k grandes la cargacomputacional puede ser excesiva y ademas pierde el sentidode la idea: dime con quien andas y te dire como eres.

Page 77: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

El concepto de distancia

◮ La idea basica de k-NN consiste en comparar la instancia quese desea clasificar con todas las instancias ya conocidas, enterminos de su proximidad con cada una de ellas. Por tanto,necesitamos formalizar la idea de proximidad: ¿cuales seranlos k vecinos mas proximos al que tratamos de clasificar?¿Podemos definir una funcion tal que dados dos pacientes x ey digamos que estan a distancia d(x , y)?

◮ El concepto de distancia sera especıfico en cada problema:◮ Expresara la medida de similitud◮ La distancia mas usada es la euclıdea sobre valores numericos,

pero no siempre es la mejor.

Page 78: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Medidas de proximidadCaracterısticas

◮ (SIM) Simetrıa: d(x , y) = d(y , x) ∀x , y

◮ (DNN) Definida no negativa: d(x , y) ≥ 0 ∀x , y

◮ (DTR) Desigualdad triangular:d(x , z) ≤ d(x , y) + d(y , z) ∀x , y , z

◮ (REF) Reflexividad: d(x , x) = 0 ∀x

◮ (IND) Indistinguibilidad: d(x , y) = 0 ⇒ x = y ∀x , y

◮ Otras...

Page 79: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Medidas de proximidadTipos

◮ Premetrica: DNN + REF

◮ Semimetrica: DNN + REF + IND + SIM

◮ Pseudometrica: DNN + REF + SIM + DTR

◮ Quasimetrica: DNN + REF + IND + DTR

◮ Pseudoquasimetrica: DNN + REF + DTR

◮ Metrica: DNN + REF + IND + SIM + DTR

◮ Intuicion para metricas debiles: Energıa consumida para ir deun punto a otro

Page 80: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Distancias mas usadas

◮ Distancias mas usadas en la practica:

◮ Euclıdea: de(x , y) =√

∑ni=1(xi − yi )2

◮ Manhattan: dm(x , y) =∑n

i=1 |xi − yi |◮ Hamming: numero de componentes en las que se difiere.

◮ La euclıdea se usa cuando cada dimension mide propiedadessimilares y la Manhattan en caso contrario; la distanciaHamming se puede usar aun cuando los vectores no seannumericos.

◮ Normalizacion: cuando no todas las dimensiones son delmismo orden de magnitud, se normalizan las componentes(restando la media y dividiendo por la desviacion tıpica)

◮ Estas distancias tambien son utiles para el algoritmok-medias que se aplica como tecnica de clustering.

Page 81: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering

◮ Se trata de dividir un conjunto de datos de entrada ensubconjuntos (clusters), de tal manera que los elementos decada subconjunto compartan cierto patron o caracterısticas apriori desconocidas

◮ Aprendizaje no supervisado: no tenemos informacion sobreque cluster corresponde a cada dato.

Page 82: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering

. . . in cluster analysis a group of objects is split up into a numberof more or less homogeneous subgroups on the basis of an oftensubjectively chosen measure of similarity (i.e., chosen subjectivelybased on its ability to create “interesting” clusters), such that thesimilarity between objects within a subgroup is larger than thesimilarity between objects belonging to different subgroups.(Backer & Jain, 1981)

Page 83: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

ClusteringClustering de particion estricta

Dado un conjunto de ejemplos D = {~x1, . . . , ~xj , . . . , ~xN} con~xj = (xj1 , . . . , xjm) ∈ R

m, el clustering de particion estricta Hardpartitional clustering busca una particion de D en K clusters,P = {C1, . . . ,CK} con K ≤ N tal que

◮ Ci 6= ∅ para i ∈ {1, . . . ,K}

◮⋃K

i=1 Ci = D

◮ Ci ∩ Cj = ∅ para todo i , j ∈ {1, . . . ,K} con i 6= j .

Page 84: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

ClusteringClustering jerarquico

Dado un conjunto de ejemplos D = {~x1, . . . , ~xj , . . . , ~xN} con~xj = (xj1 , . . . , xjm) ∈ R

m, el clustering jerarquico Hierarchicalclustering busca construir una particion anidada de D conestructura de arbol, H = {P1, . . . ,PQ} con Q ≤ N tal que siCi ∈ Pm y Cj ∈ Pl con m > l entonces Ci ⊂ Cj o Ci ∩ Cj = ∅, paratodo i , j ,m, l ∈ {1, . . . ,Q}, i 6= j . Cada Pi es una particion de D.

Page 85: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Aplicaciones

◮ Ingenierıa. Reconocimiento biometrico, analisis de la senal deradares, eliminacion de ruido...

◮ Computacion. Web mining, segmentacion de imagenes, ...

◮ Biotecnologıa. Identificacion de la funcion de genes yproteınas, taxonomıas,...

◮ Ciencias sociales. Patrones en los modelos decomportamiento, patologıas criminales,...

◮ Economıa. Tipos de clientes, reconocimiento de patrones,...

Page 86: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering de particion estrictaUn algoritmo clasico: k-medias

◮ Entrada: un numero k de clusters, un conjunto de datos{~xj}

Nj=1 y una funcion de distancia

◮ Salida: un conjunto de k centros m1, . . . ,mk

K-MEDIAS(k,DATOS,distancia)1. Inicializar m i (i=1,...,k) (aleatoriamente o con algun

criterio heurıstico)2. REPETIR (hasta que los m i no cambien):

2.1 PARA j=1,...,N, HACER:Calcular el cluster correspondiente a x j, escogiendo,de entre todos los m i, el m h tal quedistancia(x j,m h) sea mınima

2.2 PARA i=1,...,k HACER:Asignar a m i la media aritmetica de los datosasignados al cluster i-esimo

3. Devolver m 1,...,m n

Page 87: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

La distancia en las tecnicas de clustering

◮ La idea basica del clustering consiste en agrupar las instanciassegun su proximidad, esto es, dos instancias perteneceran almismo cluster si estan proximas y perteneceran a clustersdistintos si estan lejanas. Por tanto, necesitamos aplicar laidea de proximidad que analizamos para k-NN.

◮ ¿Cuando diremos que dos pacientes se parecen? Como en elalgoritmo anterior, dados dos pacientes x e y diremos queestan a distancia d(x , y), y el concepto de distancia seraespecıfico en cada problema.

◮ Aplicaremos distancias similares a las comentadasanteriormente.

Page 88: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Idea grafica intuitiva en el algoritmo de k-medias

■■■

■ ■

Iteracion 1

Iteracion 3

Iteracion 0

Iteracion 2

Page 89: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Diversas cuestiones sobre el algoritmo k-medias

◮ Inicializacion: aleatoria o con alguna tecnica heurıstica (porejemplo, partir los datos aleatoriamente en k clusters yempezar con los centros de esos clusters)

◮ En la practica, los centros con los que se inicie el algoritmotienen un gran impacto en la calidad de los resultados que seobtengan

Page 90: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquico

◮ Como hemos visto, el clustering de particion estricta divideal conjunto de datos en clusters que no tienen ningunaestuctura interna.

◮ En cambio, el clustering jerarquico da estructura interna alos clusters. De hecho, de manera recursiva, cada cluster estadividido en clusters internos, en una estructura anidada que vadesde un cluster general conteniendo a todos los individuos,hasta clusters que contienen un unico elemento.

Page 91: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquico

Dependiendo del orden en que se cree la jerarquıa de clusters, losalgoritmos de clustering jerarquico se dividen en dos tipos:

◮ Clustering jerarquico aglomerativo: Partimos de clustersconteniendo un unico ejemplo y vamos agrupando losclusters, obteniendo agrupamientos cada vez de mayortamano hasta obtener un cluster final con todos losindividuos.

◮ Clustering jerarquico divisor: Empezamos con un cluster contodos los individuos y vamos realizando particiones de losclusters obtenidos hasta obtener clusters conteniendo ununico ejemplo.

Page 92: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquico

Con independencia de que se use clustering aglomerativo o divisor,los resultados suelen representarse con una estructura de arbolllamada dendrodrama:

La raız representa el conjunto completo y cada una de las hojasrepresenta una instancia.

Page 93: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquicoEjemplo de dendrograma

Page 94: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquicoComplejidad

Consideremos un problema de clustering jerarquico con N puntos

◮ Los metodos de Clustering jerarquico divisor tienen queconsiderar 2N−1 − 1 posibles maneras de dividir el conjuntoinicial en dos subconjuntos.

◮ Los metodos de Clustering jerarquico aglomerativo debenconsiderar la distancia entre pares de puntos, de orden O(N2).

◮ Por tanto Clustering jerarquico aglomerativo se usan muchomas que los de tipo divisor.

◮ Por este motivo, no entraremos en detalle sobre el clusteringaglomerativo divisor o disociativo. No obstante, puedeencontrar mas informacion en esta url.

Page 95: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquico aglomerativo

El esquema general de Clustering jerarquico aglomerativo es elsiguiente:

1. Inicializamos el algoritmo con N clusters individuales.Calculamos la matriz de proximidad (basada en algunadefinicion de distancia) para los N clusters.

2. En la matriz de proximidad, buscamos la menor distanciaentre clusters. Segun definamos la distancia entre clusters,tendremos diferentes algoritmos. Combinamos en un unicocluster aquellos que esten a distancia mınima.

3. Actualizamos la matriz de proximidad considerando los nuevosclusters.

4. Repetimos los pasos 2 y 3 hasta que quede un unico cluster.

Page 96: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Distancias entre conjuntos

◮ Single linkage: La distancia entre dos clusters es la distanciaentre los objetos mas cercanos de los diferentes clusters.Dos clusters pueden estar conectados debido al ruido. Noobstante, funciona bien si los clusters estan suficientementeseparados.

◮ Complete linkage: La distancia entre dos clusters es ladistancia entre los objetos mas lejanos de los diferentesclusters. Es efectiva cuando los clusters son pequenos ycompactos.

◮ Group average linkage algorithm: La distancia entre dosclusters es la distancia media de todos los pares de puntosprocedentes de diferentes clusters. Tambien se conocecomo Unweighted pair group method average (UPGMA)

Page 97: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Clustering jerarquico aglomerativo

Estrategia de la distancia mınima o similitud maxima(amalgamiento simple: single linkage)

Un algoritmo de construccion:

Entrada: un conjunto de clusters de ejemplos (cada cluster contiene ununico ejemplo) y una matriz inicial de distancias entre pares de ejemplos.

1. Se eligen los dos clusters mas cercanos y se considera una nuevafamilia en la que ese par es sustituido por un cluster que contiene aambos.

2. Se actualiza la matriz de distancias calculando los valores para cadapar de clusters en la nueva familia (en cada paso, el numero total declusters disminuye en una unidad).

3. Se vuelve al paso 1 hasta que exista un unico cluster

Page 98: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

Se parte de una poblacion de 7 individuos.

Clusters iniciales: ∆0 = {{a}, {b}, {c}, {d}, {e}, {f }, {g}}

Matriz de distancias iniciales de la poblacion es:

a b c d e f g

a 0

b 2.15 0

c 0.7 1.53 0

d 1.07 1.14 0.43 0

e 0.85 1.38 0.21 0.29 0

f 1.16 1.01 0.55 0.22 0.41 0

g 1.56 2.83 1.86 2.04 2.02 2.05 0

Page 99: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

◮ Nivel K = 1: clusters mas proximos {c} y {e} (0.21)

Entonces ∆1 = {{a}, {b}, {{c}, {e}}, {d}, {f }, {g}}

Matriz de distancias actualizada:

a b {c , e} d f g

a 0

b 2.15 0

{c , e} 0.7 1.38 0

d 1.07 1.14 0.29 0

f 1.16 1.01 0.41 0.22 0.41 0

g 1.56 2.83 1.86 2.04 2.05 0

Page 100: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

◮ Nivel K = 2: clusters mas proximos {d} y {f } (0.22)

Entonces ∆2 = {{a}, {b}, {{c}, {e}}, {{d}, {f}}, {g}}

Matriz de distancias actualizada:

a b {c , e} {d , f } g

a 0

b 2.15 0

{c , e} 0.7 1.38 0

{d , f } 1.07 1.01 0.29 0

g 1.56 2.83 1.86 2.04 0

Page 101: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

◮ Nivel K = 3: clusters mas proximos {{c}, {e}} y {{d}, {f }}(0.29)

Entonces ∆3 = {{a}, {b}, {{{c}, {e}}, {{d}, {f}}}, {g}}

Matriz de distancias actualizada:

a b {{c , e}, {d , f }} g

a 0

b 2.15 0

{{c , e}, {d , f }} 0.7 1.01 0

g 1.56 2.83 1.86 0

Page 102: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

◮ Nivel K = 4: clusters mas proximos {a} y{{{c}, {e}}, {{d}, {f }}} (0.7)

Entonces ∆4 = {{{a}, {{{c}, {e}}, {{d}, {f}}}}, {b}, {g}}

Matriz de distancias actualizada:

{a, {{c , e}, {d , f }}} b g

{a, {{c , e}, {d , f }}} 0

b 1.01 0

g 1.56 2.83 0

Page 103: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Estrategia de la distancia mınima o similitud maxima

◮ Nivel K = 5: clusters mas proximos{{a}, {{{c}, {e}}, {{d}, {f }}}} y {b} (1.01)

Entonces ∆5 = {{{{a}, {{{c}, {e}}, {{d}, {f}}}}, {b}}, {g}}

Matriz de distancias actualizada:

{{a, {{c , e}, {d , f }}}, b} g

{{a, {{c , e}, {d , f }}}, b} 0

g 1.56 0

◮ Nivel K = 6: clusters mas proximos{{{a}, {{{c}, {e}}, {{d}, {f }}}}}, {b}} y {g} (1.56)

Entonces∆6 = { {{{{a}, {{{c}, {e}}, {{d}, {f}}}}, {b}}, {g}} }

Representacion grafica mediante un arbol de clasificacion:dendograma.

Page 104: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Otras estrategias◮ Estrategia de la distancia maxima o similitud mınima

(amalgamiento completo: complete linkage).

d(Ci ,Cj) = max{d(xl , xm) | xl ∈ Ci ∧ xm ∈ Cj}

◮ Estrategia minimizacion de la distancia o similitud promediono ponderada. Sean dos clusters Ci y Cj . Supongamos que Ci

esta compuesto, a su vez, por dos clusters Ci1 y Ci2 . Entoncesse considera la siguiente distancia:

d(Ci ,Cj) =d(Ci1 ,Cj) + d(Ci2 ,Cj)

2◮ Estrategia de minimizacion de la distancia o similitud

promedio ponderada. Sean dos clusters Ci y Cj . Supongamosque Ci esta compuesto, a su vez, por dos clusters Ci1 y Ci2 .Supongamos que Ci1 tiene ni1 elementos, Ci2 tiene ni2 y Cj

tiene nj elementos.

d(Ci ,Cj) =ni1 · d(Ci1 ,Cj) + ni2 · d(Ci2 ,Cj)

ni1 + ni2

Page 105: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Bibliografıa

◮ Mitchell, T.M. Machine Learning (McGraw-Hill, 1997)◮ Cap. 3: “Decision tree learning”◮ Cap. 10: “Learning Sets of Rules”

◮ Russell, S. y Norvig, P. Artificial Intelligence (A modernapproach) (Second edition) (Prentice Hall, 2003)◮ Cap. 18: “Learning from observations”◮ Cap. 19: “Knowledge in learning”

◮ Russell, S. y Norvig, P. Inteligencia artificial (Un enfoquemoderno) (Tercera edicion) (Pearson-Prentice Hall, 2010)

◮ Witten, I.H. y Frank, E. Data mining (Second edition)(Morgan Kaufmann Publishers, 2005)◮ Cap. 3, 4, 5 y 6.

Page 106: Tema 5: AprendizajeTema 5: Aprendizaje M. A. Guti´errez Naranjo F. J. Mart´ın Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de

Bibliografıa

◮ Xu, R y Wunsch II, D.C. Clustering (IEEE Press, 2009)

◮ Russell, S. y Norvig, P. Artificial Intelligence (A modernapproach) (Second edition) (Prentice Hall, 2003)◮ Cap. 20: “Statistical Learning” (disponible on-line en la web

del libro)

◮ Mitchell, T.M. Machine Learning (McGraw-Hill, 1997)◮ Cap. 6: “Bayesian Learning”