Árboles de decisión - coordinación de ciencias...

86
Introducci ´ on ´ Arboles de Decisi ´ on Algoritmo ID3 omo le hace Atributos num ´ ericos y manejo de ruido Ruido y Sobreajuste ´ Arboles de Regresi ´ on y de Modelos Extensiones ´ Arboles de decisi ´ on Hugo Jair Escalante 1,2,3 , Eduardo Morales 1 1 INAOE, 2 CINVESTAV, M´ exico 3 ChaLearn, USA [email protected] https://ccc.inaoep.mx/ ~ hugojair/ 1 / 86

Upload: others

Post on 18-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de decision

Hugo Jair Escalante1,2,3, Eduardo Morales1

1INAOE, 2CINVESTAV, Mexico3ChaLearn, USA

[email protected]://ccc.inaoep.mx/~hugojair/

1 / 86

Page 2: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Contenido

1 Introduccion

2 Arboles de DecisionAlgoritmo ID3Como le haceAtributos numericos y manejo de ruidoRuido y SobreajusteArboles de Regresion y de ModelosExtensiones

2 / 86

Page 3: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Introduccion

Aprendizaje Basado en similitud (SBL)

El aprendizaje basado en similitudes se encarga del estudiode metodos que resuelven problemas de aprendizaje conbase en casos similares que se encuentran en los datos deentrenamiento. Principales variantes:• Arboles de decision• Reglas de clasificacion• Aprendizaje basado en instancias

3 / 86

Page 4: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Introduccion

Aprendizaje Basado en Similitudes (SBL)

AtributosPeludo? Edad? Tamano? Clasesi viejo grande leonno joven grande no leonsi joven mediano leonsi viejo pequeno no leonsi joven pequeno no leonsi joven grande leonno joven pequeno no leonno viejo grande no leon

4 / 86

Page 5: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Introduccion

Arbol de Decision

5 / 86

Page 6: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Introduccion

Reglas de Clasificacion

If Tamano = mediano If Tamano = pequenoThen leon Then no leon

If Tamano = grande If Tamano = grandeand Peludo = si and Peludo = noThen leon Then no leon

6 / 86

Page 7: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Introduccion

Aprendizaje basado en instancias

7 / 86

Page 8: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

Un arbol de decision es un modelo codificado mediante unaestructura de arbol donde:• Los nodos intermedios hacen preguntas sobre los

valores de los atributos que describen a los datos• Los nodos hoja estan asociados a las clases del

problema abordado

8 / 86

Page 9: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

Puede ser re- representado como un conjunto de reglas tipoif-then

9 / 86

Page 10: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

En general los arboles de decision representan unadisyuncion de conjunciones:• Cada path desde la raız hacia una hoja representa una

conjuncion sobre los valores de los atributos• El arbol es en si mismo una disyuncion sobre dichas

conjunciones

10 / 86

Page 11: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• El arbol es construido a partir de ejemplos deentrenamiento (D = {(xi , yi)}1,...,m)• Se busca que el arbol se ajuste a la mayor cantidad

posible de ejemplos de entrenamiento• Una vez construido, un ejemplo nuevo que se quiere

clasificar se pasa a traves del arbol y se le asigna laclase correspondiente al nodo hoja a donde este llega

11 / 86

Page 12: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• Desarrollados desde principios de los 60’s: CLS (Huntet al., 1966), ID3 (Quinlan, 1979), CART (Breiman etal., 1984), ACLS (Niblett et al., 1982), ASSISTANT(Cestnik et al., 1987), C4.5 (Quinlan, 1993), etc.• Muchos convertidos en herramientas comerciales:

RuleMaster (1984), Ex-Tran (1984), Expert-Ease(1983), y C5/See5 (2000).• Existen en la mayorıa de los ambientes de KDD.

X. Wu, et al. Top 10 algorithms in data mining. Knowl Inf Syst. 14:(1):1–37, 2008

12 / 86

Page 13: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

A pesar de ser modelos estudiados desde hace muchotiempo, hoy en dıa variantes basadas en estos seencuentran entre los mas usados por su efectividad:• Random forest• XGBoost with trees

De igual forma, son de los modelos mas atractivos paraimplementar en la toma de decisiones dentro de la industria.

Jamie Shotton et al. Real-Time Human Pose Recognition in Parts from Single Depth Images. CVPR 2016

Mario A. Saucedo-Espinosa, Hugo Jair Escalante, Arturo Berrones: Detection of defective embedded bearingsby sound analysis: a machine learning approach. J. Intelligent Manufacturing 28(2): 489-500 (2017)

13 / 86

Page 14: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• El aprendizaje de arboles de decision es sencillo, facilde implementar y poderoso.• Un arbol recibe un objeto o situacion descrita por un

conjunto de atributos y regresa una decision• Por simplicidad se consideran primero solo simples

funciones Booleanas (“verdadero/falso”)• Nodos internos Corresponden a pruebas en el valor

de uno de los atributos y las ramas estan etiquetadascon los posibles valores de la prueba.• Cada hoja especifica el valor de la clase.

14 / 86

Page 15: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Expresividad

• Son completamente expresivos dentro de la clase delenguajes proposicionales; cualquier funcion Booleanapuede ser descrita por un arbol de decision• Representan una disyuncion de conjunciones de

condicionales en los valores de los atributos de lasinstancias.

• Cada ruta desde la raız y hacia una hoja corresponde auna conjuncion de pruebas sobre atributos.

• Para muchas funciones, los arboles son relativamentepequenos, pero para otras funciones requieren un arbolexponencialmente grande

15 / 86

Page 16: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• Un ejemplo es descrito por los valores de los atributos yel valor del predicado meta (clase)• Si el predicado es verdadero, entonces el ejemplo es

positivo, sino el ejemplo es negativo• En caso de existir mas clases, los ejemplos de una sola

clase son positivos y el resto de los ejemplos sonconsiderados negativos• El conjunto de ejemplos (datos), se divide

aleatoriamente en un subconjunto de entrenamiento(con el que se construye la hipotesis) y uno de prueba(con el que se prueba la hipotesis)

16 / 86

Page 17: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

Mas formalmente:

1 Junta una gran cantidad de ejemplos2 Dividelos en dos conjuntos disjuntos: entrenamiento y

prueba3 Usa el algoritmo de aprendizaje para generar una

hipotesis H4 Mide el porcentaje de clasificacion correcta de H en el

conjunto de prueba5 Repite los pasos 1 - 4 para diferentes tamanos de

conjuntos seleccionados aleatoriamente

17 / 86

Page 18: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• Encontrar un arbol puede ser trivial, pero nonecesariamente es bueno para predecir casos no vistos• El extraer un patron significa el poder describir una gran

cantidad de ejemplos en forma concisa• Sigue un principio general en los algoritmos de

induccion llamado: Ockham’s razor (muchas vecesescrito como Occam): dar preferencia a hipotesis massimples que sean consistentes con todas lasobservaciones.• Encontrar el arbol mas pequeno es intratable, por lo que

se usan heurısticas para encontrar arboles pequenos

18 / 86

Page 19: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• Idea: probar primero el atributo mas “importante”• Este particiona ejemplos y cada subconjunto en un

nuevo problema con menos ejemplos y un atributomenos

Esqueleto de casi todos los metodos para inducir arboles dedecision. Enfoque top-down greedy

19 / 86

Page 20: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision

Induccion de Arboles de Decision

• Idea: probar primero el atributo mas “importante”• Este particiona los ejemplos y cada subconjunto en un

nuevo problema con menos ejemplos y un atributomenos• Este proceso recursivo tiene 4 posibles resultados:

1 Si existen ejemplos positivos y negativos, escoge elmejor atributo

2 Si todos los ejemplos son positivos (o negativos),termina y regresa True (o False)

3 No quedan ejemplos, regresa un default con base en laclasificacion mayoritaria de su nodo padre

4 No hay mas atributos, pero seguimos con ejemplospositivos y negativos. Posible solucion: toma la clasemayoritaria

20 / 86

Page 21: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Algoritmo ID3

Algoritmo ID3

Esqueleto de casi todos los metodos para inducir arboles dedecision

funcion Arbol-decision(ejemplos,atributos,default)regresa un arbol de decision

entradas:ejemplos: conjunto de ejemplosatributos: conjunto de atributosdefault: valor de default para el predicado meta

if ejemplos = vacıo then regresa defaultelse if todos los ejemplos tienen la misma clasificacion

then regresa la clasificacionelse if atributos = vacıothen regresa VALOR-MAYORITARIO(ejemplos)else Mejor← ESCOGE-ATRIBUTO(atributos, ejemplos)

Arbol← nuevo arbol de decision con Mejor como raızpara cada valor vi de Mejor do

ejemplosi ←{ejemplos con Mejor = vi}Subarbol← ARBOL-DECISION(ejemplosi ,

atributos - mejor,VALOR-MAYORITARIO(ejemplos))

anade una rama a Arbol con etiqueta vi ysubarbol Subarbol

endreturn Arbol

21 / 86

Page 22: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Algoritmo ID3

Algoritmo ID3

if ejemplos = vacıo then regresa defaultelse if todos los ejemplos tienen la misma clasificacion

then regresa la clasificacionelse if atributos = vacıothen regresa VALOR-MAYORITARIO(ejemplos)else Mejor← ESCOGE-ATRIBUTO(atributos, ejemplos)

Arbol← nuevo arbol de decision con Mejor como raızpara cada valor vi de Mejor do

ejemplosi ← {ejemplos con Mejor = vi}Subarbol← ARBOL-DECISION(ejemplosi ,

atributos - mejor,VALOR-MAYORITARIO(ejemplos))

anade una rama a Arbol con etiqueta vi ysubarbol Subarbol

endreturn Arbol

22 / 86

Page 23: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Algoritmo ID3

Induccion de Arboles de Decision

Slide from I. Guyon.

23 / 86

Page 24: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Algoritmo ID3

Tabla de Ejemplo

Ambiente Temp. Humedad Viento Clasesoleado alta alta no Nsoleado alta alta si Nnublado alta alta no Plluvioso media alta no Plluvioso baja normal no Plluvioso baja normal si Nnublado baja normal si Psoleado media alta no Nsoleado baja normal no Plluvioso media normal no Psoleado media normal si Pnublado media alta si Pnublado alta normal no Plluvioso media alta si N

24 / 86

Page 25: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Algoritmo ID3

Arbol de Salida

25 / 86

Page 26: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

¿Como le hace?

• La medida en ESCOGE-ATRIBUTO debe ser maximacuando el atributo discrimine perfectamente ejemplospositivos y negativos, y mınima cuando el atributo nosea relevante• Una posibilidad es usar una medida basada en

cantidad de informacion (basado en la teorıa deShannon y Weaver ’49)• La cantidad de informacion mide la (im)pureza en una

coleccion arbitraria de ejemplos• La cantidad de informacion (medida en bits) recibida

respecto a la ocurrencia de un evento es inversamenteproporcional a la probabilidad de ocurrencia de dichoevento

26 / 86

Page 27: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Entropıa

Si se tienen vi posibles respuestas con probabilidadesP(vi), el contenido de informacion es:

I(P(v1), . . . ,P(vn)) = −n∑

i=1

P(vi)log2P(vi)

Nos representa el contenido promedio de informacion paralos diferentes eventos.

27 / 86

Page 28: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Funcion de Entropıa

28 / 86

Page 29: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Entropıa

• En el caso de los arboles queremos estimar lasprobabilidades de las respuestas, lo que se hace con laproporcion de ejemplos positivos y negativos• Si se tienen p ejemplos positivos y n ejemplos

negativos, entonces:

I(p

p + n,

np + n

) = − pp + n

log2p

p + n− n

p + nlog2

np + n

• Un solo atributo normalmente no nos proporciona todaesta informacion, pero podemos estimar cuanta, viendocuanta informacion necesitamos despues de utilizarese atributo

29 / 86

Page 30: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Entropıa

• Cada atributo A, divide a los ejemplos en subconjuntosE1,E2, . . . ,Ev de acuerdo a los v valores del atributo• Cada subconjunto Ei tiene pi ejemplos positivos y ni

ejemplos negativos, por lo que para cada ramanecesitamos: I( pi

pi+ni, ni

pi+ni) cantidad de informacion

para responder a una pregunta• Un ejemplo aleatorio tiene el valor i-esimo del atributo

A con probabilidad: pi+nip+n . Por lo que en promedio,

despues de probar el atributo A, necesitamos:

E(A) =v∑

i=1

pi + ni

p + nI(

pi

pi + ni,

ni

pi + ni)

30 / 86

Page 31: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ganancia de Informacion

• La cantidad de informacion que ganamos al seleccionarun atributo esta dada por:

Ganancia(A) = I(p

p + n,

np + n

)− E(A)

• La ganancia de A me dice el numero de bits queahorramos para responder a la pregunta de la clase deun ejemplo, dado que conocemos el valor del atributo A.• Mide que tan bien un atributo separa a los ejemplos de

entrenamiento de acuerdo a la clase• La funcion de evaluacion escoge el atributo de mayor

ganancia

31 / 86

Page 32: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

32 / 86

Page 33: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

33 / 86

Page 34: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

34 / 86

Page 35: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

35 / 86

Page 36: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

36 / 86

Page 37: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ejemplo

37 / 86

Page 38: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ejemplo

• Por ejemplo, si calculamos las ganancias para losatributos con los datos de la tabla de Golf (asumimosque 0× log2(0) = 0):I(9,5) = − 9

14 log2(9

14)−5

14 log2(5

14) = 0,941• Para Ambiente:

soleado: p1 = 2,n1 = 3, I(p1,n1) = 0,971nublado: p2 = 4,n2 = 0, I(p2,n2) = 0lluvioso: p3 = 3,n3 = 2, I(p3,n2) = 0,971Entropıa(Ambiente) =514 I(p1,n1) +

414 I(p2,n2) +

514 I(p3,n3) = 0,694

38 / 86

Page 39: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ejemplo

• Para Humedad:alta: p1 = 3,n1 = 4, I(p1,n1) = 0,985normal: p2 = 6,n2 = 1, I(p2,n2) = 0,592Entropıa(Humedad) = 0.798• Para Viento:

no: p1 = 6,n1 = 2, I(p1,n1) = 0,811si: p2 = 3,n2 = 3, I(p2,n2) = 1,0Entropıa(Viento) = 0.892• Para Temperatura, Entropıa(Temperatura) = 0.9111

39 / 86

Page 40: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ejemplo

• Las ganancias son entonces:Ganancia(Ambiente) = 0.246 (MAX)Ganancia(Humedad) = 0.151Ganancia(Viento) = 0.048Ganancia(Temperatura) = 0.029• Por lo que ID3 escoge el atributo Ambiente como nodo

raız y procede a realizar el mismo proceso con losejemplos de cada rama

40 / 86

Page 41: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Ejemplo

• Para Ambiente tenemos tres subconjuntos: soleado(2+,3−), nublado (4+,0−), lluvioso (3+,2−). Paranublado, no tenemos que hacer nada, mas queasignarle la clase P• Por ejemplo, para soleado hariamos el mismo proceso:

Ganancia(Humedad) = 0.97 - [(3/5)0 + (2/5)0] = 0.97(MAX)Ganancia(Temperatura) = 0.97 - [(2/5)0 + (2/5)1 +(1/5)0] = 0.570Ganancia(Viento) = 0.97 - [(2/5)1 + (3/5)0.918] = 0.019

41 / 86

Page 42: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Uso del Arbol de Decision

• Con el arbol construido, podemos preguntar si esta bienjugar el sabado en la manana con ambiente soleado,temperatura alta, humedad alta y con viento, a lo cual elabol me responde que no• ID3 sigue una estrategia hill-climbing, sin backtracking• Tiende a preferir construir arboles pequenos con

atributos con ganancia de informacion alta cerca de laraız

42 / 86

Page 43: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Criterio de Seleccion

• El criterio de seleccion tiende a favorecer atributos quetienen mas valores• Por ejemplo, un atributo con valores aleatorios. Con

esto el algoritmo basico construye un arbol de un solonivel o decision stump

43 / 86

Page 44: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Criterio de Seleccion• Posible solucion: compensar dividiendo entre la

informacion de la division (split information) que sedefine como:

SI(A) = −n∑

i=1

P(Ai)log2P(Ai)

• E.g., si un atributo binario divide los datos en dossubconjuntos de igual tamano, el contenido deinformacion de su division es 1. Mientras que uno losdivide en 14 subconjuntos de tamano 1, serıa:14(−1/14log2(1/14)) = −log2(1/14).• No siempre funciona y muchas veces se usa el atributo

de la razon de ganancia de informacion maxima si suganancia es al menos tan grande como el promedio deganancia del resto de los atributos

44 / 86

Page 45: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Criterio de Seleccion

45 / 86

Page 46: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Como le hace

Otras Medidas• Se han propuesto un gran numero de diferentes

heurısticas• Una medida muy utilizada es el ındice Gini (CART):

Gini(t) = 1−m∑

j=1

(p(j | t))2

donde p(j | t) es la frecuencia relativa de la clase j en t .• Lo que se quiere es minimizar el ındice al seleccionar

un atributo. Para esto se calcula el ındice en cada ramadel atributo tomando en cuenta su proporcion deejemplos• Si se divide en k ramas:

GiniA =k∑

i=1

ni

nGini(k)

donde ni son los ejemplos de la rama y n los del nodo.46 / 86

Page 47: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Atributos Numericos y Ruido

Hasta ahora hemos visto como funciona el algoritmo conatributos con valores discretos finitos y con datos sin ruido.Veremos ahora algunas extensiones para estos casos.

47 / 86

Page 48: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Atributos Numericos• Normalmente se ordena el atributo, se identifican

ejemplos adyacentes que tengan valor de clasediferente y se consideran como candidatos los puntosmedios de division del valor del atributo• A cada uno de estos se le calcula su ganancia de

informacion• Ejemplo de la tabla de Golf con temperatura:

64 65 68 69 70 71 72 75 80 81 83 85P N P P P N N P N P P N

P P

• Existen 8 posibles lugares de corte que separan el valorde la clase y a cada uno se calcula su gananciatomando el punto medio.• Por ejemplo, para 71.5, Temperatura < 71.5 tiene 4 P y

2 N, y Temperatura > 71.5 tiene 5 P y 3 N.48 / 86

Page 49: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Atributos Numericos

• Cada posible particion entra en competencia con elresto de los atributos• Los atributos numericos pueden aparecer varias veces

en una rama de un arbol• Para evitar ordenar ejemplos cada vez que se

selecciona un atributo, se guarda (al principio) con cadasubconjunto el orden de acuerdo a un atributo numerico

49 / 86

Page 50: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Slide from I. Guyon.

50 / 86

Page 51: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Que pasa en el espacio de entrada?

51 / 86

Page 52: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Que pasa en el espacio de entrada?

52 / 86

Page 53: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Que pasa en el espacio de entrada?

53 / 86

Page 54: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Que pasa en el espacio de entrada?

54 / 86

Page 55: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Induccion de Arboles de Decision

Que pasa en el espacio de entrada?

55 / 86

Page 56: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Valores Faltantes

• Una forma de tratar valores faltantes es como si fueranotro posible valor del atributo (solo funciona si el valorfaltante tiene un significado especial)• Ignorar los datos es demasiado drastico ya que algunas

veces el valor del atributo puede no ser relevante paratomar una decision• Se han hecho diferentes propuestas, como llenar estos

huecos con el valor mas probable o con el valor masprobable dada la clase

56 / 86

Page 57: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Valores Faltantes

Lo que hace C4.5 es distribuir los objetos con valoresdesconocidos entre los demas. En donde se calcula laganacia en informacion como si pi fuera:

pi + pd · razoni

razoni =pi + ni∑i(pi + ni)

y pd es la probabilidad de los datos desconocidos. Haciendolo equivalente para ni .

57 / 86

Page 58: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Atributos numericos y manejo de ruido

Costo de Clasificacion

• Si existe un costo en la clasificacion, y este se conoce,entonces se puede incorporar a la probabilidad de laprediccion de la clase (se multiplica)• Normalmente se define una matriz de costo con la

diagonal con 0’s y los elementos fuera de la diagonalrepresentan el costo de equivocarse en la clasificacion• Se multiplican las probabilidades de las clases

predichas por el clasificador, por la columnacorrespondiente a la clase predicha en la matriz decosto y se selecciona la clase de menor costo esperado• Variando las matrices de costo se puede variar la

clasificacion

58 / 86

Page 59: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

• ID3 es util en dominios no homogeneos (diferentesrelaciones entre atributos en diferentes regiones delespacio de problemas) y alta dimensionalidad (muchosatributos)• A pesar de que falte informacion relevante, se pueda

construir un arbol con atributos irrelevantes• Con muchas posibles hipotesis se pueden encontrar

“regularidades con poco sentido”• A este problema se le llama overfitting y afecta a todos

los tipos de aprendizaje (i.e., no solo a los arboles dedecision).

59 / 86

Page 60: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

Definicion: dado un espacio de hipotesis H, unahipotesis h ∈ H se dice que sobreajusta los datosde entrenamiento si existe otra hipotesis h′ ∈ H,tal que h tiene errores mas pequenos que h′ enlos ejemplos de entrenamiento, pero h′ tiene erro-res mas pequenos que h en toda la distribucion deejemplos.

60 / 86

Page 61: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

61 / 86

Page 62: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

Uno de los problemas a los que se enfrentan los sistemasde aprendizaje, y que provocan el sobreajuste, es cuandolos ejemplos de entrenamiento contienen ruido:

• valores de atributos erroneos, subjetivos• clasificacion equivocada• valores desconocidos

62 / 86

Page 63: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

• Con ruido, se pueden tener dos ejemplos con losmismos valores de atributos, pero clase diferente• En presencia de ruıdo, el algoritmo basico (ID3)

construye arboles de decision que son mas grandes delo necesario, y no clasifican adecuadamente• En el caso de arboles de decision se tiene que decidir:

• como trabajar con atributos inadecuados• cuando al anadir atributos extra no mejora la prediccion

del arbol de decision

63 / 86

Page 64: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Ruido y Overfitting

En general, existen dos metodos para manejar ruido(basados en la condicion de terminacion):

• pruning (o pre-pruning): cambiar el criterio de paro delarbol de decision (e.g., umbral en clase mayoritaria)para “podar” ramas.• post-pruning: “podar” ramas una vez construıdo el

arbol.

64 / 86

Page 65: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Pruning

• En este caso, se tiene que decidir cuando parar o dejarde construir el arbol a pesar de no tener hojas conejemplos de una sola clase• Se han propuesto tecnicas usando: (i) un umbral de

ganancia de informacion, (ii) usando validacion cruzada(si no mejora la clasificacion con datos desconocidosparar), (iii) usando medidas basadas en el principio delongitud de descripion mınima (MDL), ...• El problema principal en todos estos metodos es que

se basan en informacion local

65 / 86

Page 66: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Post-Pruning

Esta es la tecnica mas utilizada, y algunos de los metodosmencionados arriba se han utilizado para podar el arbol unavez ya construido.Pasos:

1 Crece el arbol como antes (solo verifica cuando setienen ejemplos iguales y clases diferentes).

2 “Poda” el arbol.El problema aquı es cual arbol podado considerar y comoestimar el error de clasificacion de los arboles.

66 / 86

Page 67: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Post-Pruning

• El estimado de re-substitucion esta dado por laproporcion de ejemplos en el nodo mal clasificados sise toma la clase mayoritaria en el nodo• Para hacer una estimacion directa del error por

re-substitucion (poda), se hace con los mismos datos,se asume que siguen una distribucion Bernoulli (por serunos cuantos (< 100), la cual se aproxima a unaNormal con muchos datos), y considerando unaestimacion pesimista dentro de un nivel de confianza• Para estimar errores se especifican niveles de

confianza y las estadısticas (media y varianza) seobtienen directamente de los datos y los valores detablas (e.g., z)

67 / 86

Page 68: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Multiples Clases

Al cambiar el criterio de paro, podemos tener hojas conejemplos de diferentes clases. Posibles soluciones:

• que las clases tomen valores fraccionarios (p/(p + n))• tomar la clase mayoritaria (mejor si se quiere minimizar

el error esperado)

En general con poco nivel de ruido, se comportan bien. Noconviene quitarle ruido a los datos si se van a probar enambientes ruidosos.

68 / 86

Page 69: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Analisis de Complejidad

• La complejidad de contruir un arbol es:

O(mnlogn) + O(n(logn)2)

• Donde n es el numero de datos y m el numero deatributos• El primer termino se refiere a construir un arbol de

decision sin considerar podado. El segundo termino serefiere cuando realizamos podado. Esto esindependiente de que los atributos sean continuos o no.

69 / 86

Hugo Jair Escalante
Page 70: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Ruido y Sobreajuste

Algunas Extensiones

• En lugar de hacer una busqueda tipo hill climbing usarbeam search, o hacer busqueda tipo look-ahead• Generar varios arboles de decision y luego combinar

sus resultados.• En forma paralela con varias subconjuntos de los datos

(bagging)• En forma secuencial considerando errores de

clasificacion y modificando los datos (boosting)• Usando varias muestras de los datos de entrenamiento

e introduciendo aleatoriedad en la seleccion deatributos a considerar en cada nodo (random forest).

70 / 86

Page 71: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Arboles de Regresion y de Modelos

Cuando la clase a predecir es numerica existen dosvariantes:• Regression trees: guardan el valor promedio de los

valores en las hojas• Model trees: utilizan una regresion lineal para predecir

los valores de las clasesLos dos tipos de arboles se construyen muy parecido a losarboles de decision para construir un arbol inicial.

71 / 86

Page 72: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Arboles de Regresion y de Modelos

• En lugar de usar ganancia de informacion, seleccionarel atributo que minimiza la variacion de la clase en cadarama• Idea: tratar la desviacion estandar de la clase como

medida de error y calcular la reduccion esperada deerror (standard deviation reduction) como resultado deprobar cada atributo

SDR = destd(T )−∑

i

Ti

T× destd(Ti)

• donde T1,T2, . . . son los conjuntos que resultan dedividir al nodo de acuerdo al atributo seleccionado ydestd es desviacion estandar(destd =

√∑ni (x(i)− µ)2/(n − 1), µ =

∑ni x(i)/n).

72 / 86

Page 73: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Valores Desconocidos

Para construir y probar un modelo con un valordesconocido, se usan dos tecnicas:• Se reemplaza el valor del atributo por el valor del

atributo mas fuertemente correlacionado a el (surrogatesplitting).• Se utiliza el valor de la clase (para entrenamiento). Se

cambia por el valor promedio de los datos en ese nodo(para prueba).

73 / 86

Page 74: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Random forest

Clasificador conformado por muchos arboles de decision• Hipotesis 0 (ensambles): la combinacion de diversos

clasificadores debiles, pero complementarios, resultaen un modelo mas robusto.• Hipotesis 1 (RF): Combinacion en paralelo, mediante

muestreo con remplazo.

L. Breiman. Random forests Machine learning 45 (1), 5-32 45133 2001

74 / 86

Page 75: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Random forest

En terminos generales:

• Genera k−arboles de decision tomando diferentesparticiones de datos y atributos con remplazo• Cuando un nuevo ejemplo debe ser clasificado, este se

pasa a traves de los k− modelos• La etiqueta del ejemplo se obtiene promediando las

salidas de los k−modelos

75 / 86

Page 76: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Random forest

Arbol de decision vs. Random forest

http://www.datascienceblog.pw/

random-forests-r-explained.html

76 / 86

Page 77: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Random forest

Arbol de decision vs. Random forest

77 / 86

Page 78: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Boosting with trees

Otro clasificador por comite• Hipotesis 0 (ensambles): la combinacion de diversos

clasificadores debiles, pero complementarios, resultaen un modelo mas robusto.• Hipotesis 1 (Boosting): Generacion de modelos

sequenciales, generando un arbol a la vez.

Y. Freund, R. E. Schapire. A Short Introduction to Boosting.https://cseweb.ucsd.edu/~yfreund/papers/IntroToBoosting.pdf

78 / 86

Page 79: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Boosting with trees

En terminos generales:

• Se tiene una distribucion de probabilidad sobre losejemplos, inicialmente uniforme• Genera sequencialmente un arbol de decision,

tomando en cuenta la distribucion de probabilidad• Actualizar la distribucion de probabilidad sobre los

ejemplos• La etiqueta del ejemplo se obtiene promediando las

salidas de los k−modelos

79 / 86

Page 80: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Boosting with trees

80 / 86

Page 81: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Boosting with trees

Arbol de decision vs. Boosting

81 / 86

Page 82: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

XGD

Tianqi Chen, Carlos Guestrin. XGBoost: A Scalable TreeBoosting System, KDD 2016https://www.kdd.org/kdd2016/papers/files/

rfp0697-chenAemb.pdf

82 / 86

Page 83: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Comentarios finales

• Arboles de decision: aprendizaje sencillo, intuitivos,transparentes, y efectivos.• Uno de los top-10 algoritmos en data mining• Relevancia historica en aprendizaje computacional• Presentes hoy en dıa en los modelos mas competitivos

que existe para el analisis de datos

83 / 86

Page 84: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Tarea 1/2

• Arboles de decision:1 Obtener 3 conjuntos de datos para clasificacion de

repositorios (al menos uno multi-clase, al menos 10atributos, diferentes tareas)

2 Construir un arbol de decision tipo C4.5 (j.48) o ID3.3 Comparar el desempeno del arbol construido en (2) con

un clasificador tipo random forest (o adaboost o XGB,ambos con arboles)

4 Visualizar los arboles resultantes

84 / 86

Page 85: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Tarea 2/2

• Ganancia de informacion1 Para los 3 conjuntos de datos, calcular la ganancia de

informacion de cada atributo2 Ordenar atributos por ganancia de informacion3 Realizar un analisis de la importancia de los diferentes

atributos4 Construir un arbol de decision removiendo el 50 % de

los atributos con menor valor de IG y comparar conmetodos anteriores

85 / 86

Page 86: Árboles de decisión - Coordinación de Ciencias ...hugojair/Courses/ML2019/4_decision_trees.pdf · Arboles de´ Decisi´on Algoritmo ID3 Como le hace´ Atributos num´ericos y manejo

Introduccion

Arboles deDecisionAlgoritmo ID3

Como le hace

Atributos numericosy manejo de ruido

Ruido y Sobreajuste

Arboles deRegresion y deModelos

Extensiones

Arboles de Decision Arboles de Regresion y de Modelos

Tarea

Fecha de entrega 22 de Mayo de 2019 (11:59PM a mastardar)

Entregar1 Reporte con: descripcion de los conjuntos de datos

utilizados, fuentes/librerias/ implementaciones,algoritmo usado, parametros, resultados en tablas y/ograficas, analisis y conclusiones

2 Archivo zip con la carpeta del codigo, incluyendo losdatos

86 / 86