Qué son los árboles de decisión? Inducción de árboles de decisión. Tipos de problemas abordables. Ejemplo: árbol de decisión 1

Documentos relacionados
3. Árboles de decisión

Aprendizaje Automatizado. Árboles de Clasificación

Tema 8: Árboles de decisión

Aprendizaje Automático Segundo Cuatrimestre de Árboles de Decisión

Tema 7: Aprendizaje de árboles de decisión

Arboles de Decisión (II) Carlos Hurtado L. Depto de Ciencias de la Computación, Universidad de Chile

Aprendizaje Automatizado

Árboles de decisión en aprendizaje automático y minería de datos

Aprendizaje Automático. Objetivos. Funciona? Notas

Inducción de Árboles de Decisión ID3, C4.5

Fundamentos y Aplicaciones Prácticas del Descubrimiento de Conocimiento en Bases de Datos. - Sesión 11 -

Árboles de Decisión. Tomás Arredondo Vidal 26/3/08

Arboles de Decisión Representación de los árboles de decisión

D conjunto de N patrones etiquetados, cada uno de los cuales está caracterizado por n variables predictoras X 1,..., X n y la variable clase C.

Tema 12: Arboles de decisión

Arboles de Decisión (II) Carlos Hurtado L. Depto de Ciencias de la Computación, Universidad de Chile

ALGORITMO ID3. Objetivo

Tema 8: Árboles de Clasificación

CRITERIOS DE SELECCIÓN DE MODELOS

Minería de Datos. Árboles de Decisión. Fac. Ciencias Ing. Informática Otoño de Dept. Matesco, Universidad de Cantabria

Minería de Datos. Árboles de Decisión. Fac. Ciencias Ing. Informática Otoño de Dept. Matesco, Universidad de Cantabria

Inducción de Árboles de Decisión ID3, C4.5

MASTER DE INGENIERÍA BIOMÉDICA. Métodos de ayuda al diagnóstico clínico. Tema 6: Árboles de decisión.

Análisis y Complejidad de Algoritmos. Arboles Binarios. Arturo Díaz Pérez

Aprendizaje Automático: Arboles de Decisión.

Aprendizaje de conceptos. El aprendizaje como generalización

Proyecto 6. Árboles de decisión: Un árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial.

Árboles de Decisión Árboles de Sintaxis

ANÁLISIS DE DATOS. Jesús García Herrero

Métodos de Clasificación sin Métrica. Reconocimiento de Patrones- 2013

Jesús García Herrero TÉCNICAS DE REGRESIÓN NO LINEAL

Guía de Ejercicios Aprendizaje de Máquinas Inteligencia Articial (CC52A)

Aprendizaje inductivo

Tema 9. Inducción de Reglas

El Juego como Problema de Búsqueda

Tareas de la minería de datos: clasificación. CI-2352 Intr. a la minería de datos Prof. Braulio José Solano Rojas ECCI, UCR

Aux 6. Introducción a la Minería de Datos

Carteras minoristas. árbol de decisión. Ejemplo: Construcción de un scoring de concesión basado en un DIRECCIÓN GENERAL DE SUPERVISIÓN

Aprendizaje Automático

Aprendizaje de árboles de decisión. Aprendizaje de árboles de decisión

Técnicas de Minería de Datos

ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES

Búsqueda en línea y Búsqueda multiagente

Sobreajuste - Overfitting

Tema 9: Inducción de Reglas

Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución.

GLOSARIO ESTADÍSTICO. Fuente: Murray R. Spiegel, Estadística, McGraw Hill.

Inteligencia Artificial Técnicas de clasificación

Aprendizaje Computacional y Extracción de Información

Estructuras de datos Listas y árboles

Tema 11: Inducción de Reglas p. 1/1

Inteligencia Artificial

Problemas de programación entera: El método Ramifica y Acota. Investigación Operativa, Grado en Estadística y Empresa, 2011/12

Inteligencia Artificial

Inteligencia Artificial II Razonamiento Bayesiano

Introducción. Qué es machine learning? Algunos Tipos de Machine Learning. Generalización & Exploración. Ejemplos de aplicaciones en Machine Learning

Sesión 14: Redes de Decisión

Tema 4: Aprendizaje de conceptos

Tareas de la minería de datos: clasificación. PF-5028 Minería de datos Prof. Braulio José Solano Rojas UCR

Apellidos:... Nombre:...

Random Forests. Teoría y ejemplos. Romain Gouron. Conferencia 9, GLAM, Doble titulo Ecole Centrale de Nantes (Francia)

ARBOLES DE DECISION. Miguel Cárdenas-Montes. 1 Introducción. Objetivos: Entender como funcionan los algoritmos basados en árboles de decisión.

Análisis de Datos. Combinación de clasificadores. Profesor: Dr. Wilfrido Gómez Flores

Aprendizaje automático mediante árboles de decisión

Agro 6998 Conferencia 2. Introducción a los modelos estadísticos mixtos

Hipótesis. Teoria del Aprendizaje Computacional

Estructura de datos y de la información Boletín de problemas - Tema 10

Redes Bayesianas (1) Carlos Hurtado L. Depto. de Ciencias de la Computación, Universidad de Chile

Estructura de datos y algoritmos. Tema V TDA DINÁMICOS NO LINEALES: Árboles: árboles binarios

2 de mar de 2004 Codificación de imágenes y v ideo

Tema 2. Introducción a la Estadística Bayesiana

PROBABILIDAD Y ESTADÍSTICA

APRENDIZAJE DE REGLAS. Eduardo Morales y Jesús González

Object Recognition as Machine Translation: Learning a Lexicon for a Fixed Image Vocabulary

Cómo se usa Data Mining hoy?

Estimación de Parámetros. Jhon Jairo Padilla A., PhD.

Estimación de Parámetros. Jhon Jairo Padilla A., PhD.

Teorema Central del Límite (1)

Probabilidad y Estadística

Tema 10: Árbol binario de búsqueda

Caso 105. Tamaño de muestra y potencia de una prueba. Diseño de experimentos. Jesús López Fidalgo

Algoritmos genéticos

Introducción a Árboles Árboles Binarios

Diseño de Conjuntos y Diccionarios

Curso de Estadística no-paramétrica

Tests de Hipótesis basados en una muestra. ESTADÍSTICA (Q) 5. TESTS DE HIPÓTESIS PARA LA MEDIA DE UNA POBLACIÓN NORMAL CON VARIANZA CONOCIDA

Algoritmos glotones 2 (código de Huffman) mat-151

TEMA 3.- EL ANALISIS ESTADISTICO DE LA INFORMACION (MODELIZACION) DIFERENTES TIPOS DE PROCEDIMIENTOS ESTADISTICOS

UNIDAD Creación del Árbol Octal de un objeto sólido vía la definición CSG

Capítulo. Distribución de probabilidad normal. Pearson Prentice Hall. All rights reserved

Redes Bayesianas (3) Carlos Hurtado L. Depto. de Ciencias de la Computación, Universidad de Chile

12/08/2017 AVL. Especificación sobre árboles AVL. AVL: rotaciones

MATRIZ DE ARBOLES DE DECISION

Estructuras de Datos y Algoritmos

Aprendizaje Supervisado Árboles de Decisión

Un árbol binario T se define como un conjunto finito de elementos, llamados nodos, de forma que:

LECCION N 08 ARBOLES. Un árbol es un grafo A que tiene un único nodo llamado raíz que:

Tema 6: Estructuras de datos recursivas

Fase 2. Estudio de mercado: ESTADÍSTICA

Introducción a la Teoría de la Información

Transcripción:

Inducción de árboles de decisión Qué son los árboles de decisión? Cómo pueden inducirse automáticamente? inducción topdown de árboles de decisión cómo evitar el overfitting cómo convertir árboles en reglas heurísticas alternativas un algoritmo TDIDT genérico Mitchell, Cap. 3 Prof. Carlos I. Chesñevar UNS 1 Qué son los árboles de decisión? Representan secuencias de tests Según el resultado de un test, llevan a cabo un nuevo test. Continuan hasta que el resultado obtenido es conocido Ej. adivinar una identidad preguntando sólo preguntas respondibles con sí/no : hacer una pregunta según la respuesta, hacer nueva pregunta continuar hasta que la respuesta es conocida Prof. Carlos I. Chesñevar UNS 2 Tipos de problemas abordables Las instancias se representan por pares (atributo, valor). La función target tiene un output discreto (ej. Clasificación sí/no ). Los datos de entrenamiento pueden contener errores. Los datos de entrenamiento pueden contener atributos con valores desconocidos (missing values). Ejemplo: árbol de decisión 1 Del texto de Mitchell: Jugamos al tenis o no? (dependiendo de las condiciones climáticas) Humidity Sunny Overcast Rainy Yes Wind High Normal Strong Weak No Yes No Yes Prof. Carlos I. Chesñevar UNS 3 Prof. Carlos I. Chesñevar UNS 4 Ejemplo de árbol de decisión 2 Del texto de Mitchell: árbol para predecir si hace falta una Csection Las hojas no son puras ; se da una proporción pos/neg Fetal_Presentation 1 2 3 Previous_Csection 0 1 [3+, 29] Primiparous +.11+.89 [55+, 35].61+.39 Prof. Carlos I. Chesñevar UNS 5 [8+, 22].27+.73 Poder representativo Típicamente: los ejemplos se representan con arreglos de atributos 1 nodo en el árbol testea el valor de 1 atributo 1 nodo hijo para cada resultado posible del test Los nodos hoja asignan una clasificación Nota: el árbol puede representar cualquier función booleana i.e., también conceptos disjunctivos (<> ejemplos VS ) el árbol permite ruido (hojas no puras) Prof. Carlos I. Chesñevar UNS 6

Cómo representar fórmulas booleanas E.g., A B A Similarmente (hacerlo como ejercicio!): A B, A xor B, (A B) (C D E) Complejidad árbol vs. complejidad fórmula. Prof. Carlos I. Chesñevar UNS 7 B Arboles para Clasificación, Regresión y Clustering Los árboles de clasificación representan funciones X > C con C discreto (como los árboles de decisión antes vistos) Los árboles de regresión predicen números en las hojas podría usarse una constante (ej., media), o modelo de regresión lineal, o Los árboles de clustering sólo agrupan ejemplos en las hojas. La mayoría (no toda) de la investigación en ML se focaliza en los árboles de clasificación. Prof. Carlos I. Chesñevar UNS 8 Arbol de Decisión (estudio de calidad de agua de un río) Aplicación de "Data mining" Dadas: descripciones de muestras de aguas de río descripción biológica: aparición de organismos en el agua ( abundancia, medida entre 05) descripción química: 16 variables (temperatura, concentrciones de químicos (NH 4,...)) Pregunta: caracterizar las propiedades químicas del agua a partir de los organismos que aparecen en ella. Prof. Carlos I. Chesñevar UNS 9 sí T = 0.357111 ph = 0.496808 cond = 1.23151 O2 = 1.09279 O2sat = 1.04837 CO2 = 0.893152 hard = 0.988909 NO2 = 0.54731 NO3 = 0.426773 NH4 = 1.11263 PO4 = 0.875459 Cl = 0.86275 SiO2 = 0.997237 KMnO4 = 1.29711 K2Cr2O7 = 0.97025 BOD = 0.67012 Arbol de Clustering abundancia(tubifex sp.,5)? no abundancia(sphaerotilus natans,5)? sí no 0.0129737 T = ph = 0.536434 cond = 0.914569 abundancia(...) O2 = 0.810187 O2sat = 0.848571... CO2 = 0.443103 hard = 0.806137 NO2 = 0.4151 NO3 = 0.0847706 NH4 = 0.536927 PO4 = 0.442398 Cl = 0.668979 SiO2 = 0.291415 KMnO4 = 1.08462 K2Cr2O7 = 0.850733 BOD Prof. Carlos = 0.651707 I. Chesñevar UNS 10 valores estandardizados" (nro. de desvíos estándar por sobre la media) Algoritmos Básicos para Arboles de Decisión ID3 (Quinlan, 1986) Siguiendo el texto de Mitchell, centraremos nuestra discusión en ID3. Al final veremos un algoritmo genérico para construir árboles de decisión de manera topdown. C4.5 (Quinlan, 1993) Ross Quinlan Prof. Carlos I. Chesñevar UNS 11 Inducción TopDown de Arboles de Decisión (TDIDT) Algoritmo básico para TDIDT: (luego versión más formal) Comenzar con el cjto. de datos completo inicial encontrar tests que particionen los ejemplos tan bien como sea posible: bien = ejemplos con la misma clase, o bien ejemplos similares, deberían ir juntos Para cada resultado de un test, crear un nodo hijo mover ejemplos a los hijos según el resultado del test repetir procedimiento para cada hijo no puro Pregunta ppal: cómo decidir cuál es el mejor test? Prof. Carlos I. Chesñevar UNS 12

Cómo encontrar el mejor test (para árboles de clasificación) Para árboles de clasificación: hallar el test según el cual los hijos son tan puros como sea posible Medida de pureza tomada de la teoría de la información: entropía es una medida de información faltante ; más precisamente, #bits necesarios para representar la información faltante, en promedio, usando una codificación optimal Dado un cjto. S con instancias que pertenecen a la clase i con probabilidad p i : Entropía(S) = Σ p i log 2 p i Entropía: ejemplo Ejemplo: Sea S una colección de 14 ejemplos positivos (p (+) ) y negativos (p () ), tal que hay 9 positivos y 5 negativos [9+,5] Entropía(S) = p (+) log 2 p (+) p () log 2 p () Entropía([9+,5]) = (9/14) log 2 (9/14) (5/14) log 2 (5/14)=0.940 Si entropía=0, ent. todos los miembros de S pertenecen a la misma clase. Si entropía=1, ent. la cantidad de ejs. positivos y negativos es igual... Prof. Carlos I. Chesñevar UNS 13 Prof. Carlos I. Chesñevar UNS 14 Entropía Aquí se ve la función Entropía relativa a una clasificación booleana, en función de p (+) oscilando entre 0 y 1: Entropía: idea intuitiva Entropía: especifica el min. nro. de bits. necesario para codificar la clasificación de un miembro arbitrario de S (ie, un miembro de S tomado al azar con probabilidad uniforme). Ej: si p (+) = 1, ent. el receptor sabe que el ejemplo es positivo. Luego la información necesaria para codificar esto es 0. Prof. Carlos I. Chesñevar UNS 15 Prof. Carlos I. Chesñevar UNS 16 Entropía: idea intuitiva Razonamiento intuitivo en teoría de la información: usar codificación más corta para los mensajes más frecuentes Teoría de la información: un mensaje con probabilidad p debería recibir log 2 p bits ej. A,B,C,D c/u. con 25% probabilidad: 2 bits para c/u (00,01,10,11) Si hay alguno más probable, es posible hacer las cosas mejor. Nro. de bits promedio para un mensaje es ent. Σ p i log 2 p i Prof. Carlos I. Chesñevar UNS 17 Ganancia de Información Heurística para elegir un test en un nodo: elegir el test que en promedio provee mayor información acerca de la clase este es el test que, en promedio, reduce más la entropía de la clase En promedio: la reducción de la entropía de la clase difiere según el resultado del test Reducc. esperada de la entropía = ganancia de información Gain(S,A) = Entropía(S) Σ v Valores(A) ( S v / S )*Entropía(S v ) donde A = atributo, S v = subcjto. de S para el cual el atributo A tiene valor v. Prof. Carlos I. Chesñevar UNS 18

Day Temp. Humid Wind PlayTennis? D1 Sunny Hot High Weak No D2 Sunny Hot High Strong No D3 Overcast Hot High Weak Yes D4 Rain Mild High Weak Yes D5 Rain Cool Normal Weak Yes D6 Rain Cool Normal Strong No D7 Overcast Cool Normal Strong Yes D8 Sunny Mild High Weak No D9 Sunny Cool Normal Weak Yes D10 Rain Mild Normal Weak Yes D11 Sunny Mild Normal Strong Yes D12 Overcast Mild High Strong Yes D13 Overcast Hot Normal Weak Yes D14 Rain Mild High Strong No Prof. Carlos I. Chesñevar UNS 19 Gain(S,A): ejemplo Sea S = [9+,5] una colección de 14 ejemplos que describen días (ej: ). Hay un atributo (Wind), que tiene los valores Weak y Strong. De los 14 ejemplos, supongamos que para 6 días de los ejemplos positivos y para 2 días de los ejs. negativos tenemos Wind=Weak. El resto, Wind=Strong. Valores(Wind)={Weak,Strong} S = [9+,5], S Weak [6+,2], S Strong [3+,3] Gain(S,Wind) = = Entropia(S)Σ v {Weak,Strong} ( S v / S )*Entropía(S v ) = = Entropia(S)(8/14)Entropia(S Weak )(6/14)Entropia(S Strong ) = = 0.940 (8/14)0.811 (6/14)1.00 = 0.048 Prof. Carlos I. Chesñevar UNS 20 High Ejemplo Asumiendo que S tiene ejemplos 9+ y 5 ; veamos la partición según el atributo Wind ó Humidity S: [9+,5] S: [9+,5] E = 0.940 E = 0.940 Humidity Normal Strong Wind Weak S: [3+,4] S: [6+,1] S: [6+,2] S: [3+,3] E = 0.985 E = 0.592 E = 0.811 E = 1.0 Gain(S, Humidity) =.940 (7/14).985 (7/14).592 = 0.151 Gain(S, Wind) =.940 (8/14).811 (6/14)1.0 = 0.048 Ejemplo El algoritmo ID3 básicamente determina la ganancia que brinda cada atributo, y se queda con el mejor. Para la tabla anterior: Gain(S,Wind) = 0.048 Gain(S,) = 0.246 Gain(S,Humidity) = 0.151 Gain(S,Temperature)=0.029 Ent. elegimos. Prof. Carlos I. Chesñevar UNS 21 Prof. Carlos I. Chesñevar UNS 22 Supongamos que fue elegido: continuar particionando en nodos hijos Aplico recursivamente [9+,5] Sunny Overcast Rainy? Yes? [2+,3] [4+,0] [3+,2] [D4,D5,D6,D10,D14] [D3,D7,D12,D13] [D4,D5,D6,D10,D14] Arbol de decisión Resultante vía ID3 Sunny Overcast Rainy Humidity Yes Wind High Normal Strong Weak No Yes No Yes Prof. Carlos I. Chesñevar UNS 23 Prof. Carlos I. Chesñevar UNS 24

Espacio de búsqueda de hipótesis en TDIDT Espacio de hipótesis H = cjto. de todos los árboles H es recorrido de forma hillclimbing, de lo más simple a lo más complejo... Prof. Carlos I. Chesñevar UNS 25 Sesgo inductivo en TDIDT Nota: para conceptos booleanos, H es completo: cada concepto puede representarse! dados n atributos, se pueden seguir añadiendo tests hasta que todos los atributos hayan sido testeados Entonces.. que pasa con el sesgo inductivo? Claramente no hay sesgo de restricción (H 2 U ) como en Version Spaces. Sesgo de preferencia: algunas hipótesis en H son preferidas por sobre otras En este caso: preferencia por árboles cortos con atributos informativos en el tope Prof. Carlos I. Chesñevar UNS 26 ID3 vs. Version Spaces ID3 busca en un espacio de hipótesis completo (=puede expresar cualq. fc. finita discreta). Busca incompletamente en este espacio, de hipótesis simples a hipótesis complejas, hasta encontrar condición de terminación. Su sesgo inductivo: meramente consecuencia del ordenamiento de las hipótesis por su estrategia de búsqueda. El espacio de hipótesis no introduce sesgo adicional. Sesgo inductivo se sigue de la estrategia de búsqueda ID3 vs. Version Spaces Version Spaces busca en un espacio de hipótesis incompleto (ej: no puede manejar disyunciones). Explora este espacio completamente, encontrando todas las hipótesis consistentes con los datos de entrenamiento. Su sesgo inductivo: consecuencia del poder expresivo de su hipótesis de representación. Su estrategia de búsqueda no añade un sesgo adicional. Sesgo inductivo se sigue de la def. de espacio de búsqueda. Prof. Carlos I. Chesñevar UNS 27 Prof. Carlos I. Chesñevar UNS 28 Navaja de Occam La preferencia por modelos simples por sobre modelos complejos se usa bastante en Machine Learning Principio similar en ciencia: Navaja de Occam No hacer las cosas más complicadas de lo necesario El razonamiento, en el caso de los árboles de decisión: los árboles más complejos tienen probabilidad más alta de sobreajustar (overfitting) el conjunto de datos. Navaja de Occam: discusión Un argumento a favor: hay menos hipótesis cortas que largas. Por ende, es menos probable encontrar una hipótesis corta que se ajuste a los datos de entrenamiento. En contraste, puede haber muchas hipótesis complejas que se ajusten a los datos de entrenamiento, y no se ajusten a los datos subsecuentes. Ej: hay muchos más árboles de decisión de 500 nodos que de 5 nodos. Con 20 ejemplos, es más dificil encuadrarlos en un árbol del segundo tipo. Prof. Carlos I. Chesñevar UNS 29 Prof. Carlos I. Chesñevar UNS 30

Navaja de Occam: discusión Un argumento en contra: podríamos tambien argumentar que hay que preferir árboles con pocas ramas, o pocas hojas. O exactamente 17 nodos hoja y 10 nodos nohoja. Hay pocos árboles como estos, y por el mismo razonamiento que antes, la posibilidad de encontrar un árbol que se ajuste a los ejemplos de entrenamiento es baja. Navaja de Occam: discusión Un problema inherente a la representación interna: notemos que el tamaño de una hipótesis está asociado a cómo un aprendiz las representa. Dos aprendices que usen distintas representaciones internas podrían arribar a distintas hipótesis, y justificar conclusiones contradictorias entre sí aplicando navaja de Occam. Ej: definir un atributo XYZ = combinación de X,Y,Z. Pregunta abierta: Cómo distinguimos un atributo del otro los seres inteligentes? Prof. Carlos I. Chesñevar UNS 31 Prof. Carlos I. Chesñevar UNS 32 Cuestiones de interés para Arboles de Decisión Overfitting (Sobreajuste) Incorporación de atributos de valor continuo Medidas alternativas a Entropía Ejemplos de entrenamiento con valores faltantes Tratamiento de Atributos con distintos costos Estas cuestiones y extensiones redundaron en que el algoritmo básico ID3 fuera extendido para abordar estos aspectos, resultando en el sistema C4.5 (Quinlan, 1993). Overfitting Def: Dado un espacio de hipótesis H, una hipótesis h H se dice que sobreajusta los datos de entrenamiento si existe alguna hipótesis h H tal que h tiene un error menor que h en los ejemplos de entrenamiento, pero h tiene un error menor que h sobre toda la distribución de instancias. Prof. Carlos I. Chesñevar UNS 33 Prof. Carlos I. Chesñevar UNS 34 Cómo Evitar Sobreajuste Fenómeno del sobreajuste (overfitting): Continuar mejorando un modelo, haciéndolo mejor, mejor y mejor a partir de un conjunto de entrenamiento haciéndolo cada vez más complicado aumenta el riesgo de modelar ruido y coincidencias en el cjto. de datos puede en realidad dañar el poder predictivo de la teoría para casos aún no vistos Ej. ajustar un curva con demasiados parámetros............ Sobreajuste: ejemplo + + + + + + + + área que contiene probablementepredicciones erróneas Prof. Carlos I. Chesñevar UNS 35 Prof. Carlos I. Chesñevar UNS 36

Sobreajuste: efecto en la exactitud predictiva Fenómeno típico con el overfitting: la exactitud de entrenamiento aumenta continuamente la exactitud del cjto. de validación aún no visto comienza a decrecer exactitud overfitting comienza aprox. aquí exactitud en datos de entrenamiento exactitud en datos aún no vistos tam. del árbol Prof. Carlos I. Chesñevar UNS 37 Cómo aparece el overfitting? Una forma en que aparezca el overfitting es que aparezcan errores aleatorios o ruido. Ej: consideremos el sgte. ejemplo (incorrectamente etiquetado como negativo): <=Sunny, Temperature=Hot, Humidity=Normal, Wind=Strong, PlayTennis=No> Este ejemplo haría que nuestro algoritmo ID3 construya un árbol más complejo que el que teníamos antes (se lo ordenaría en el 2do. nodo hoja desde la izquierda). Prof. Carlos I. Chesñevar UNS 38 Hot No Sunny Overcast Rainy Humidity Yes Wind High Normal Strong Weak No Yes No Yes Sunny Rainy Temp. Overcast Wind Yes Mild Cool Strong Weak Humidity No Yes Yes High Normal No Yes Prof. Carlos I. Chesñevar UNS 39 Cómo aparece el overfitting? Resultado: ID3 encontraría exitosamente un árbol de decisión alternativo (h) que es más complejo que el árbol anterior (h ). El árbol h se ajustaría perfectamente a los ejemplos dados, mientras que h no lo haría. No obstante, el nuevo nodo en el árbol de decisión es simplemente una consecuencia de un ejemplo que causa ruido. Sería razonable que h superara a h en pruebas subsecuentes Prof. Carlos I. Chesñevar UNS 40 Cómo evitar overfitting cuando se construyen árboles de classificación? Opción 1: dejar de añadir nodos al árbol cuando comienza a haber overfitting necesitamos un criterio de detención Opción 2: no preocuparse por el overfitting cuando se construye el árbol después de construir el árbol, comenzar a podarlo nuevamente Prof. Carlos I. Chesñevar UNS 41 Criterios de detención Cómo sabemos cuándo comienza a haber overfitting? a) usar un cjto. de validación : los datos no son considerados para elegir el mejor test cuando la exactitud baja con respecto al cjto. de validación: dejar de añadir nodos a esta rama. b) usar algún test estadístico test de significación: ej., es el cambio en la distribución de clases aún significativo? (test χ 2 ) MDL: principio de minimal description length teoría totalmente correcta = árbol + correcciones para clasificaciones erróneas específicas minimizar size(teoría tot.correcta) = size(tree) + size(misclassifications(tree)) Navaja de Occam Prof. Carlos I. Chesñevar UNS 42

Cjtos. de entrenamiento y validación Acercamiento común: los datos disponibles se particionan en dos clases: Cjto. de entrenamiento: se usa para formar las hipótesis Cjto. de Validación: se usa para evaluar la exactitud de las hipótesis con respecto a los datos subsecuentes, y para evaluar el impacto de la poda con respecto a estas hipótesis. Es importante que el cjto. de validación sea suficientemente grande para tener significancia estadística. Heurística común: 1/3 de los ejemplos para validación, 2/3 para entrenamiento. Prof. Carlos I. Chesñevar UNS 43 Postpoda de árboles Después de aprender el árbol: comenzar a podar ramas Para todos los nodos del árbol: Estimar el efecto de podar el árbol en este nodo con respecto a la exactitud predictiva e.g. usar exactitud con respecto a cjto. de validación Podar el nodo que muestre la mayor mejora Continuar hasta que no haya mejoras Nota: esta poda constituye una segunda búsqueda en el espacio de hipótesis. Prof. Carlos I. Chesñevar UNS 44 exactitud tam. de árbol exactitud en datos de entrenamiento efecto de poda exactitud en datos aún no vistos Comparación Ventaja de Opción 1: no hay trabajo superfluo Pero: los tests pueden llevarnos a veces por mal camino Ej., la exactitud de validación puede bajar de repente, y luego volver a subir Por esto, la opción 2 (postpoda) es usualmente la preferida (aunque involucra más trabajo, computacionalmente) Prof. Carlos I. Chesñevar UNS 45 Prof. Carlos I. Chesñevar UNS 46 Transformando árboles en reglas A partir de un árbol puede derivarse un cjto. de reglas Camino de raíz a hoja = regla ifthen Ventaja de tales reglas pueden mejorar la comprensibilidad pueden ser podadas más flexiblemente en 1 regla, 1 única condición puede ser removida vs. árbol: al remover un nodo, hay que remover todo el subarbol 1 regla puede removerse enteramente (no puedo eliminar un camino del árbol) Prof. Carlos I. Chesñevar UNS 47 Reglas a partir de árboles: ejemplo Humidity Sunny Overcast Rainy Yes Wind High Normal Strong Weak No Yes No Yes if = Sunny and Humidity = High then No if = Sunny and Humidity = Normal then Yes Prof. Carlos I. Chesñevar UNS 48

Poda de Reglas Método posible: 1. Convertir árboles en reglas 2. Podar cada regla independientemente remover conds. que no dañen la exactitud de la regla 3. ordenar reglas (e.g., la regla más exacta primero) antes de podar: cada ejemplo cubierto por una regla después de podar, 1 ejemplo podría estar cubierto por múltiples reglas Luego, algunas reglas podrían contradecirse entre sí Prof. Carlos I. Chesñevar UNS 49 Ejemplo: Poda de Reglas A B if A= then if A= and B= then if A= and B= then Arbol que representa A B Reglas que representan A ( A B) A B Tener en cuenta que los tests asociados a reglas pueden ser computacionalmente costosos! (de ahí la utilidad de optimizarlos) Prof. Carlos I. Chesñevar UNS 50 Incorporación de Atributos con Valores Continuos Def. Inicial de ID3: considera sólo atributos con un conjunto discreto de valores. Atributo meta aprendido: es discreto. Atributos testeados en el árbol: también discretos. La 2da. restricción puede removerse para incorporar atributos de valores continuos. Para esto: se definen dinámicamente nuevos atributos con valores discretos que particionen el valor de atributo continuo en un cjto. discreto de intervalos. Incorporación de Atributos con Valores Continuos Para un atributo A con valor continuo, crear un atributo booleano A c cuyo valor sea si A<c, y en caso contrario. Cómo elegir el valor del umbral c? Ej: Supongamos la siguiente situación Temperatura 40 48 60 72 80 90 PlayTennis No No Yes Yes Yes No Prof. Carlos I. Chesñevar UNS 51 Prof. Carlos I. Chesñevar UNS 52 Incorporación de Atributos con Valores Continuos Nos gustaría elegir c tal que produjera la mayor ganancia de información. Si ordenamos ejemplos según el atributo continuo A, e identificamos ejemplos adyacentes, podemos definir una frontera. Estos umbrales candidatos pueden evaluarse según la ganancia de información asociada a c/u. Ej: en el caso anterior, dos candidatos en donde Temperatura cambia significativamente: (48+60)/2=54 y (80+90)/2=85. Resulta en: Temperatura >54 y Temperatura >85, atributos discretos. Prof. Carlos I. Chesñevar UNS 53 Medidas alternativas para elegir atributos Ganancia de información: tiene un sesgo natural que favorece atributos con muchos valores por sobre pocos valores. Ej: consideremos el atributo Fecha. Tiene una gran cantidad de valores posibles: ej. 27Marzo2006. Si añadieramos fecha a nuestro ejemplo, sería el atributo con mayor ganancia de información. Esto es así porque Fecha predice perfectamente el atributo meta con respecto al cjto. de entrenamiento!. Podríamos hacer un árbol muy amplio, con una rama por fecha, y un nivel de profundidad! Características de predicción: muy pobres! Prof. Carlos I. Chesñevar UNS 54

Tasa de Ganancia (Gain Ratio) Una opción: utilizar la noción de gain ratio, que penaliza atributos como Fecha, incorporando un término llamado split information (SI), que es sensible a cuán ampliamente y nouniformemente el atributo divide a los datos. Tasa de Ganancia: GainRatio(S,A) = Gain(S,A) / SI(S,A) Splitinformation SI(S,A) = Si / S log2 Si / S i varía en relación a los distintos resultados del test A SplitInformation desalienta la selección de atributos con muchos valores distribuidos uniformemente. Tasa de Ganancia: GainRatio(S,A) = Gain(S,A) / SI(S,A) Splitinformation SI(S,A) = i=1 c S i / S log 2 S i / S i varía en relación a los distintos resultados del test A SplitInformation desalienta la selección de atributos con muchos valores distribuidos uniformemente. Ej: un atributo A con n ejemplos totalmente separados tendrá un valor SplitInformation = log 2 n. Un atributo booleano B que separe los n ejemplos exactamente por la mitad tendrá SplitInformation=1. Si los atributos A y B tienen igual ganancia de información, ent. B tendrá más valor con respecto a GainRatio. Prof. Carlos I. Chesñevar UNS 55 Prof. Carlos I. Chesñevar UNS 56 Ejemplos de Entrenamiento con Valores Faltantes Supongamos querer calcular Gain(S,A) Nos gustaría elegir c tal que produjera la mayor ganancia de información. Supongamos que <x,c(x)> es uno de los ejemplos de entrenamiento en S, y que el valor A(x) es desconocido. Una estrategia: asignar el valor más común entre los ejemplos de entrenamiento que caigan en el nodo n. Otra estrategia: asignar probabilidades a cada valor posible de A. Ej: si un atributo booleano A en un nodo n contiene 6 ejemplos con A=1, y 4 ejemplos con A=0, ent. A(x)=1 tiene probabilidad 0.6, y A(x)=0 tiene probabilidad 0.4. Prof. Carlos I. Chesñevar UNS 57 Atributos con diferentes costos Normalmente los atributos tienen distintos costos. Cómo ponderar el costo cuando calculamos la ganancia de información? Una idea sencilla: dividir por Costo(A). Tan&Schlimmer (1990) y Tan(1993): en un problema de percepción de un robot donde el robot con un sonar debía clasificar distintos objetos, el costo se definió a partir del nro. de segundos requeridos para obtener el valor del los atributos del objeto. Medida usada: Gain 2 (S,A) / Costo(A) Prof. Carlos I. Chesñevar UNS 58 Algoritmo genérico TDIDT function TDIDT(E: set of examples) returns tree; T' := grow_tree(e); T := prune(t'); return T; function grow_tree(e: set of examples) returns tree; T := generate_tests(e); t := best_test(t, E); P := partition induced on E by t; if stop_criterion(e, P) then return leaf(info(e)) else for all E j in P: t j := grow_tree(e j ); return node(t, {(j,t j )}; Para clasificación... prune: ej: reducederror pruning generate_tests : Attr=val, Attr<val,... para atributos numéricos : generar valores best_test : Gain, Gainratio,... stop_criterion : MDL, test significancia (ej. χ 2 test),... info : clase más frecuente ("moda") Sistemas populares: C4.5 (Quinlan 1993), C5.0 (www.rulequest.com) Prof. Carlos I. Chesñevar UNS 59 Prof. Carlos I. Chesñevar UNS 60

SINTESIS Aprendizaje de Arboles de Decisión: provee un método práctico para aprendizaje de conceptos y aprender funciones de valores discretos. Familia de algoritmos ID3: recorren un espacio de hipótesis completo. Evitan así la mayor dificultad de otros métodos (ej: VersionSpaces), en los que la función meta buscada podría no estar presente en el espacio de hipótesis. Sesgo inductivo: preferencia por árboles pequeños. Problema principal: overfitting Extensiones de ID3: técnicas de poda, inclusión de valores reales, tratamiento de valors faltantes, costo de atributos, etc. Prof. Carlos I. Chesñevar UNS 61