Está en la página 1de 25

Dr. Ing.

Ernesto Ocampo Edye

Muy utilizado y popular Aproxima funciones que toman valores discretos. La funcin aprendida se representa como un rbol Robusto a datos con ruido Aprende expresiones disyuntivas: los rboles aprendidos se pueden tambin representar como reglas if-then (intuitivas) Numerosas aplicaciones: diagnsticos mdicos, causas de fallo en equipos, evaluacin de riesgos de crditos en la concesin de prstamos... Arbol de clasificacin
2012 2

Cada nodo (no terminal) especifica un test de algn atributo de la instancia Cada rama corresponde a un posible valor del atributo Cada nodo terminal indica la clase en la que se clasifica Instancias no vistas se clasifican recorriendo el rbol: pasndoles el test en cada nodo, por orden desde el nodo raz hasta algn nodo hoja, que da su clasificacin
2012 3

Tarea: decidir si se va a jugar al tenis. Criterio: se va a jugar al tenis ...


si va a llover solo si no hay mucho viento. si va a estar soleado pero no muy hmedo. si va a estar nublado. no en cualquier otro caso.

2012

if (outlook == SUNNY){ if (humidity == HIGH) return NO; else if (humidity == NORMAL) return YES; } else if (outlook == OVERCAST){ return YES; } else if (outlook == RAIN){ if (wind == STRONG) return NO; else if (wind == WEAK) return YES; 2012 }

Clasificar las maanas de sbado en si son o no adecuadas para jugar al tenis

Instancia: Outlook=Sunny, Temperature=Hot, Humidity=High, Wind=Strong Entra por el camino izquierdo y se predice PlayTennis=No
2012 6

El rbol representa una disyuncin de conjunciones de restricciones sobre los valores de los atributos de las instancias Un camino = una conjuncin de tests de atributos Todo el rbol = disyuncin de estas conjunciones Este rbol es:

(Outlook=Sunny ^ Humidity=Normal) v (Outlook=Overcast) v (Outlook=Rain ^ Wind=Weak)


2012 7

R1: If (Outlook=Sunny) AND (Humidity=High) then PlayTennis=No R2: If (Outlook=Sunny) AND (Humidity=Normal) then PlayTennis=Yes R3: If (Outlook=Overcast) then PlayTennis=Yes R4: If (Outlook=Rain) AND (Wind=Strong) then PlayTennis=No R5: If (Outlook=Rain) AND (Wind=Weak) then PlayTennis=Yes
2012 8

Instancias representadas como pares atributo-valor Funcin objetivo con valores discretos (clasificacin)... ...pero extensiones a valores continuos: rboles de regresin Robustez a errores, tanto en la variable respuesta como en los atributos Puede haber datos faltantes para algunas instancias en los valores de los atributos Dominios complejos donde no existe una clara separacin lineal Se necesita suficiente informacin de entrenamiento
9

2012

Arboles de clasificacin: valores de salida discretos


CLS, ID3, C4.5, ID4, ID5, C4.8, C5.0

Arboles de regresin: valores de salida continuos


CART, M5, M5

2012

10

Basado en el algoritmo CLS (Concept Learning Systems) [Hunt et al., 1966], que usaba slo atributos binarios Bsqueda vida Construir el rbol de arriba a abajo, preguntando: Qu atributo seleccionar como nodo raz? Se evala cada atributo para determinar cun bien clasifica los ejemplos l solo Se selecciona el mejor como nodo Repetir usando los ejemplos asociados con el nodo Parar cuando el rbol clasifica correctamente los ejemplos o cuando se han usado todos los atributos Etiquetar el nodo hoja con la clase de los ejemplos
2012 11

Paso clave: cmo seleccionar el atributo? Nos gustara el ms til para clasificar ejemplos; el que los separa bien ID3 escoge la variable ms efectiva usando la ganancia de informacin (maximizarla) Mide cun bien un atributo separa los ejemplos de entrenamiento de acuerdo a su clasificacin objetivo, y selecciona el mejor. Reduccin esperada en entropa (incertidumbre), causada al particionar los ejemplos de acuerdo a este atributo
2012 12

Medida de la homogeneidad de un conjunto de muestras. En teora de la informacin: medida de la incertidumbre sobre una fuente de mensajes. Sea una fuente S que puede producir n mensajes diferentes {m1, m2,, mn}. Los mensajes son independientes, y la probabilidad de producir el mensaje mi es pi. Para tal fuente S con distribucin de probabilidades de los mensajes P= (p1,p2,pn), la entropa H(P) es: E(P) =

Si un conjunto T de registros de una base de datos se particiona en k clases {C1, C2, , Ck} sobre la base de un cierto atributo, entonces la cantidad media de informacin necesaria para identificar la clase de un registro es E(PT), donde PT es la distribucin de probabilidades de las clases: 1 2 , ,,

Dado un conjunto S con ejemplos positivos y negativos de un concepto objetivo, (problema de 2 clases) la entropa del conjunto S con repecto a esta clasificacin binaria es E(S) = - p(P)log2 p(P) p(N)log2 p(N) La clase C1 corresponde a P positivos- y la clase C2 corresponde a N negativos - .

La entropa es 0 si la salida es ya conocida o el mensaje es invariante. La entropa es mxima si no tenemos conocimiento alguno sobre el sistema (o si cualquier resultado es igualmente posible)
Entropa de un sistema de clase 2

OUTLOOK Sunny Sunny Overcast Rainy Rainy Rainy Overcast Sunny Sunny Rainy Sunny Overcast Overcast Rainy

TEMPERATUREHUMIDITY WINDY Hot High FALSE Hot High TRUE Hot High FALSE Mild High FALSE Cold Normal FALSE Cold Normal TRUE Cold Normal TRUE Mild High FALSE Cold Normal FALSE Mild Normal FALSE Mild Normal TRUE Mild High TRUE Hot Normal FALSE Mild High TRUE

PLAY No No Yes Yes Yes No Yes No Yes Yes Yes Yes Yes No

Para los datos de playTennis, donde play es el atributo de salida, tenemos para el conjunto de datos completo: 5 9 , 14 14 Usando la ecuacin de la entropa tenemos: E(T) = E(
log

log

= 0.94

Particionamos el conjunto sobre la base de un atributo de entrada X, en subconjuntos T1, T2,, Tn. La informacin necesaria para identificar la clase de un elemento de T es la media ponderada de la informacin necesaria para identificar la clase de un elemento de cada subconjunto: E(X,T) =

Ganancia de Informacin = E(T) E(X,T) ID3 calcula la ganancia de informacin para cada atributo y selecciona el que tenga mayor ganancia
2012 19

La ganancia de informacin mide la reduccin esperada de la entropa, o incertidumbre.

Gain( S , A) = Entropy ( S )

vValues ( A )

Sv Entropy ( Sv ) S

Values(A) es el conjunto de todos los posibles valores del atributo A , y Sv el subconjunto de S para el cual el atributo A tiene valor v Sv = {s in S | A(s) = v}. El primer trmino es entonces solamente la entropa del conjunto S original. El segundo trmino es el valor esperado de la entropa luego de particionar S utilizando el atributo A

Calcular la ganancia de informacin debida a particionar el conjunto de acuerdo al atributo Temperature Temperature tiene tres valores
Cold Mild Hot |TCold| = 4, |TMild| = 6, |THot| = 4

E(temperature,T)

= TCold)+ TMild) + Thot)

Ganancia (temperature, T) = ??
2012 21

OUTLOOK Rainy Rainy Overcast Sunny Sunny Sunny Overcast Overcast Rainy Sunny Rainy Sunny Overcast Rainy 2012

TEMPERATURE HUMIDITY Cold Normal Cold Normal Cold Normal Cold Normal Hot High Hot High Hot High Hot Normal Mild High Mild High Mild Normal Mild Normal Mild High Mild High

WINDY FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE

PLAY Yes No Yes Yes No No Yes Yes Yes No Yes Yes Yes No

22

Calcular la ganancia de informacin debida a particionar el conjunto de acuerdo al atributo Temperature Temperature tiene tres valores
Cold Mild Hot |TCold| = 4, |TMild| = 6, |THot| = 4

E(temperature,T)

= TCold)+ TMild) + Thot)

Ganancia (temperature, T) = 0.940-0.911=0.029 bits


2012 23

2012

24

2012

25

También podría gustarte