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



Documentos relacionados
Práctica 1: Entorno WEKA de aprendizaje automático y data mining.

Cómo se usa Data Mining hoy?

PREPROCESADO DE DATOS PARA MINERIA DE DATOS

Aprendizaje automático mediante árboles de decisión

Aprendizaje Automatizado. Árboles de Clasificación

Programación Genética

Aprendizaje Automatizado

Aprendizaje Automatizado. Árboles de Clasificación

Capítulo 12: Indexación y asociación

Introducción a selección de. Blanca A. Vargas Govea blanca.vargas@cenidet.edu.mx Reconocimiento de patrones cenidet Octubre 1, 2012

Aprendizaje Automatizado. Árboles de Clasificación

Validation. Validación Psicométrica. Validation. Central Test. Central Test. Centraltest CENTRAL. L art de l évaluation. El arte de la evaluación

Minería de Datos. Preprocesamiento: Reducción de Datos - Discretización

3. Árboles de decisión

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007

Aprendizaje Basado en Similaridades (SBL) Árboles de Decisión (TDIDT) (INAOE) 1 / 65. Algoritmo ID3 Cómo le hace

Evaluando las Hipótesis Inductivas. Tomás Arredondo Vidal 8/9/2011

CAPITULO 4 JUSTIFICACION DEL ESTUDIO. En este capítulo se presenta la justificación del estudio, supuestos y limitaciones de

ESTIMACIÓN. puntual y por intervalo

5.4. Manual de usuario

ANÁLISIS DE DATOS NO NUMERICOS

Análisis de Datos. Práctica de métodos predicción de en WEKA

Introducción. Requisitos modelo C4.5. Introducción. Introducción. Requisitos modelo C4.5. Introducción. Capítulo 4: Inducción de árboles de decisión

Práctica 11 SVM. Máquinas de Vectores Soporte

Evaluación de modelos para la predicción de la Bolsa

Árboles. Cursos Propedéuticos Dr. René Cumplido M. en C. Luis Rodríguez Flores

GRÁFICAS DE CONTROL DE LA CALIDAD EMPLEANDO EXCEL Y WINSTATS

x

CAPÍTULO 4: ALGORITMOS DE APRENDIZAJE

Capítulo V Operaciones Booleanas

Aprendizaje Automático y Data Mining. Bloque IV DATA MINING

Generalización como búsqueda. El problema de aprendizaje por generalización puede verse como un problema de búsqueda:

Administración de Empresas. 11 Métodos dinámicos de evaluación de inversiones 11.1

Minería de Datos Web. 1 er Cuatrimestre Página Web. Prof. Dra. Daniela Godoy.

1.1. Introducción y conceptos básicos

Clase 32: Árbol balanceado AVL

Capítulo 1 Documentos HTML5

Ampliación de Estructuras de Datos

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Ingeniería en Informática

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

La NIC 32 acompaña a la NIC 39, instrumentos financieros: reconocimiento y medición.

Manejo de versiones 392

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

Determinación de primas de acuerdo al Apetito de riesgo de la Compañía por medio de simulaciones

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

7. Conclusiones. 7.1 Resultados

DISEÑOS DE INVESTIGACIÓN

IDENTIFICACIÓN DE SISTEMAS ASPECTOS PRÁCTICOS EN IDENTIFICACIÓN

Tutorial: Uso básico de RapidMiner Parte II: Predicción de variables categóricas

Base de datos II Facultad de Ingeniería. Escuela de computación.

Guía de Preparación de Muestras para PLASTICOS para el Software de Formulación de Datacolor

PUEDE MEDIRSE EL PODER DE VENTAS DE LOS ANUNCIOS BASADOS EN UN MENSAJE DE VENTA EMOCIONAL?

Técnicas de valor presente para calcular el valor en uso

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

Versión final 8 de junio de 2009

ANÁLISIS DINÁMICO DEL RIESGO DE UN PROYECTO

Árboles binarios de búsqueda ( BST )

Capítulo 2. Técnicas de procesamiento digital de imágenes y reconocimiento de patrones.

Capítulo 6. ÁRBOLES.

MÁQUINA DE VECTORES DE SOPORTE

TEMA 2: Representación de la Información en las computadoras

CORRELACIÓN Y PREDICIÓN

Covarianza y coeficiente de correlación

ELO211: Sistemas Digitales. Tomás Arredondo Vidal 1er Semestre 2009

Diagrama de Flujo (Flow Chart)

3. Selección y Extracción de características. Selección: Extracción: -PCA -NMF

EJEMPLO. Práctica de clustering

Universidad Diego Portales Facultad de Economía y Empresa. 1. Reputación. Apuntes de Teoría de Juegos Profesor: Carlos R. Pitta

Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios. Dra. Noemí L. Ruiz Limardo 2009

Random Forests. Felipe Parra

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

342 SOBRE FORMAS TERNARIAS DE SEGUNDO GRADO.

Modelado y simulación de proyecto

DEFINICION. Ing. M.Sc. Fulbia Torres Asignatura: Estructuras de Datos Barquisimeto 2006

ESTADÍSTICA APLICADA A LA INVESTIGACIÓN EN SALUD Medidas de Tendencia Central y Dispersión

Resumen del trabajo sobre DNSSEC

Decidir cuándo autenticar en dispositivos móviles a partir de modelos de machine learning 1

Datos estadísticos PRESENTACIÓN DE DATOS INDIVIDUALES Y DATOS AGRUPADOS EN TABLAS Y GRÁFICOS

Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican:

DE VIDA PARA EL DESARROLLO DE SISTEMAS

Tema 10- Representación Jerárquica: Tema 10- Representación Jerárquica: Árboles Binarios

Pronósticos. Pronósticos y gráficos Diapositiva 1

IAP ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS

Programacion Genetica

Procesamiento Digital de Imágenes. Compresión de imágenes

Tema 2. Espacios Vectoriales Introducción

Activos Intangibles Costos de Sitios Web

Ejemplos básicos de webmathematica para profesores

Support Vector Machines

Comprendiendo las estrategias de mantenimiento

Control de prestaciones de un proyecto

Con el fin de obtener los datos, se procede con las siguientes instrucciones:

Curso Práctico de Bioestadística Con Herramientas De Excel

GUÍA DE USUARIO DEL CORREO

Algoritmos de minería de datos incluidos en SQL Server Algoritmo de árboles de decisión de Microsoft [MIC2009a] Cómo funciona el algoritmo

Árbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

8.1. Introducción Dependencia/independencia estadística Representación gráfica: diagrama de dispersión Regresión...

Transcripción:

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

Árboles de Decisión Contenidos Árboles de Decisión Sobreajuste Recorte (Pruning)

Investigación Relacionada a los Árboles de Decisión William of Occam inventa el criterio de Occam s razor - 1320 Hunt usa el método (CLS) para modelar aprendizaje humano de conceptos - 1960 s. Quinlan desarrolla ID3 con la heurística de ganancia de información para desarrollar sistemas expertos desde ejemplos 1970s Breiman, Friedman y otros desarrollan CART (Classification and Regression Trees) similar a ID3 1970s Una variedad de mejorar se introducen para acomodar ruido, características continuas, características incompletas, mejoras en métodos de división 1980s Quinlan s actualiza sistemas de decision (C4.5) -1993. Weka se incluye una versión en Java de C4.5 llamado J48.

Árboles de Decisión Clasificadores basados en árboles para instancias (datos) representados como vectores de características (features). Nodos prueban características, hay una rama para cada valor de la característica, las hojas especifican la categoría. color red blue green shape neg pos circle square triangle pos neg neg color red green blue shape B C circle square triangle A B C Pueden representar cualquier conjunción (AND) y disyunción (OR) Pueden representar cualquier función de clasificación de vectores de características discretas. Pueden ser rescritas como reglas, i.e. disjunctive normal form (DNF). red circle pos red circle A blue B; red square B green C; red triangle C

Propiedades de Árboles de Decisión Características (features) continuas (reales) pueden ser clasificadas al permitir nodos que dividan una característica real en dos rangos basados en umbrales (e.g. largo < 3 and largo 3) Árboles de clasificación tienen valores discretos en las ramas, árboles de regresión permiten outputs reales en las hojas Algoritmos para encontrar árboles consistentes son eficientes para procesar muchos datos de entrenamiento para tareas de datamining Pueden manejar ruido en datos de entrenamiento Ejemplos: Diagnostico medico Análisis de riesgo en crédito Clasificador de objetos para manipulador de robot (Tan 1993)

Árbol de Decisión para PlayTennis Outlook Sunny Overcast Rain Humidity Wind High Normal Strong Weak No No

Árbol de Decisión para PlayTennis Outlook Sunny Overcast Rain Humidity Each internal node tests an attribute High No Normal Each branch corresponds to an attribute value node Each leaf node assigns a classification

Árbol de Decisión para Conjunción Outlook=Sunny Wind=Weak Outlook Sunny Overcast Rain Wind No No Strong No Weak

Árbol de Decisión para Disyunción Outlook=Sunny Wind=Weak Outlook Sunny Overcast Rain Wind Wind Strong Weak Strong Weak No No

Árbol de Decisión para XOR Outlook=Sunny XOR Wind=Weak Outlook Sunny Overcast Rain Wind Wind Wind Strong Weak Strong Weak Strong Weak No No No

Árbol de Decisión Árboles de decisión representan disyunciones de conjunciones Outlook Sunny Overcast Rain Humidity Wind High Normal Strong Weak No No (Outlook=Sunny Humidity=Normal) (Outlook=Overcast) (Outlook=Rain Wind=Weak)

Método Top-Down de Construcción Construir un árbol Top-Down usando dividir para conquistar. <big, red, circle>: + <small, red, circle>: + <small, red, triangle>: + <small, red, square>: <big, blue, circle>: <small, green, triangle>: - red blue <big, red, circle>: + <small, red, circle>: + <small, red, square>: <small, red, triangle>: + color green

Método Top-Down de Construcción Construir un árbol Top-Down usando dividir para conquistar. <big, red, circle>: + <small, red, circle>: + <small, red, triangle>: + <small, red, square>: <big, blue, circle>: <small, green, triangle>: - <big, red, circle>: + <small, red, circle>: + <small, red, square>: <small, red, triangle>: + <big, red, circle>: + <small, red, circle>: + color red blue green shape neg neg circle square triangle pos neg pos <small, green, triangle>: + <big, blue, circle>: <small, red, triangle>: + <small, red, square>:

Pseudocódigo para Construcción de Árbol DTree(examples, features) returns a tree If all examples are in one category, return a leaf node with that category label. Else if the set of features is empty, return a leaf node with the category label that is the most common in examples. Else pick a feature F and create a node R for it For each possible value v i of F: Let examples i be the subset of examples that have value v i for F Add an out-going edge E to node R labeled with the value v i. If examples i is empty then attach a leaf node to edge E labeled with the category that is the most common in examples. else call DTree(examples i, features {F}) and attach the resulting tree as the subtree under edge E. Return the subtree rooted at R.

Seleccionar una Buena Característica para Dividir Objetivo es tener un árbol que sea lo mas simple posible (de acuerdo a Occam s Razor) Encontrar un árbol mínimo de decisión (nodos, hojas o profundidad) es un problema de optimización NP-hard. El método top-down que divide para conquistar hace una búsqueda codiciosa (greedy) para obtener un árbol simple pero no garantiza que sea el mas simple. Se quiere seleccionar una característica que genera subconjuntos de ejemplos que son similares en una clase para que estén cerca de ser nodos hojas. Hay una variedad de heurísticas para elegir un buen test o condición, un método popular esta basado en el incremento de la información (information gain) que se origino con el sistema ID3 (Quinlan 1979).

Occam s Razor Occam s razor: Se debe preferir la hipótesis más corta que tenga coincidencia (o describa) con los datos Porque preferir hipótesis cortas? Argumentos a favor: Hay menos hipótesis cortas que largas Es poco probable que una hipótesis corta que describa los datos sea una coincidencia Una hipótesis larga que describa los datos puede ser una coincidencia (sobreajuste o overfitting) Argumentos en contra: Hay muchas maneras de definir hipótesis cortas y una definición depende de la representación interna del que aprende (i.e. una representación interna corta para uno puede ser larga para otro) Porque el tamaño de la hipótesis es importante?

Entropía Entropía (incertidumbre, desorden, impureza) de un conjunto de ejemplos S, relativo a una clasificación binaria es: Entropy S ) = p log ( p ) p log ( ) ( 1 2 1 0 2 p0 en el cual p 1 es la fracción de ejemplos positivos en S y p 0 es la fracción de negativos. Si todos los ejemplos están en una categoría, entropía es zero (definimos 0 log(0)=0) Si los ejemplos están igualmente mezclados (p 1 =p 0 =0.5), entropía es una máxima de 1. Entropía se puede ver como el máximo numero de bits requeridos en promedio para codificar la clase de un ejemplo en S. Para problemas de múltiples clases (multi-class) con c categorías, la entropía generaliza a: Entropy( S) = c i= 1 p i log ( p i 2 )

Grafico de Entropía para Clasificación Binaria

Incremento de la Información El incremento de información Gain(S, F) ocurre por reduccion en la entropia esperada al ordenar S basado en atributo F Sv Gain( S, F) = Entropy( S) Entropy( Sv ) S v Values ( F ) en el cual S v es el subconjunto de S que tiene el valor v para característica F. Entropía de cada subconjunto resultante se pondera por su tamaño relativo. Ejemplo: <big, red, circle>: + <small, red, circle>: + <small, red, square>: <big, blue, circle>: 2+, 2 : E=1 size 2+, 2 : E=1 color 2+, 2 : E=1 shape big small 1+,1 1+,1 E=1 E=1 Gain=1 (0.5 1 + 0.5 1) = 0 red blue 2+,1 0+,1 E=0.918 E=0 Gain=1 (0.75 0.918 + 0.25 0) = 0.311 circle square 2+,1 0+,1 E=0.918 E=0 Gain=1 (0.75 0.918 + 0.25 0) = 0.311

Ejemplo: Incremento de la Información Gain(S,A)=Entropy(S) - v values(a) S v / S Entropy(S v ) Entropy([29+,35-]) = -29/64 log 2 29/64 35/64 log 2 35/64 = 0.99 [29+,35-] A 1 =? A 2 =? [29+,35-] True False True False [21+, 5-] [8+, 30-] [18+, 33-] [11+, 2-]

Ejemplo: Incremento de la Cual atributo es mejor? Información [29+,35-] A 1 =? A 2 =? [29+,35-] True False True False [21+, 5-] [8+, 30-] [18+, 33-] [11+, 2-]

Ejemplo: Incremento de la Información Entropy([21+,5-]) = 0.71 Entropy([8+,30-]) = 0.74 Gain(S,A 1 )=Entropy(S) -26/64*Entropy([21+,5-]) -38/64*Entropy([8+,30-]) =0.27 Entropy([18+,33-]) = 0.94 Entropy([11+,2-]) = 0.62 Gain(S,A 2 )=Entropy(S) -51/64*Entropy([18+,33-]) -13/64*Entropy([11+,2-]) =0.12 [29+,35-] A 1 =? A 2 =? [29+,35-] True False True False [21+, 5-] [8+, 30-] [18+, 33-] [11+, 2-]

Ejemplo: Datos de Entrenamiento No Strong High Mild Rain D14 Weak Normal Hot Overcast D13 Strong High Mild Overcast D12 Strong Normal Mild Sunny D11 Strong Normal Mild Rain D10 Weak Normal Cold Sunny D9 No Weak High Mild Sunny D8 Weak Normal Cool Overcast D7 No Strong Normal Cool Rain D6 Weak Normal Cool Rain D5 Weak High Mild Rain D4 Weak High Hot Overcast D3 No Strong High Hot Sunny D2 No Weak High Hot Sunny D1 Play Tennis Wind Humidity Temp. Outlook Day

Ejemplo: Elejir Próximo Atributo S=[9+,5-] E=0.940 Humidity S=[9+,5-] E=0.940 Wind High Normal Weak Strong [3+, 4-] [6+, 1-] E=0.985 E=0.592 Gain(S, Humidity) = 0.940-(7/14)*0.985 (7/14)*0.592 = 0.151 [6+, 2-] [3+, 3-] E=0.811 E=1.0 Gain(S, Wind) =0.940-(8/14)*0.811 (6/14)*1.0 = 0.048

Ejemplo: Elejir Próximo Atributo S=[9+,5-] E=0.940 Outlook Sunny Over cast Rain [2+, 3-] [4+, 0] [3+, 2-] E=0.971 E=0.0 E=0.971 Gain(S, Outlook) = 0.940-(5/14)*0.971 -(4/14)*0.0 (5/14)*0.0971 = 0.247

Ejemplo: Algoritmo ID3 [D1,D2,,D14] [9+,5-] Outlook Sunny Overcast Rain S sunny =[D1,D2,D8,D9,D11] [2+,3-] [D3,D7,D12,D13] [4+,0-]?? [D4,D5,D6,D10,D14] [3+,2-] Gain(S sunny, Humidity)=0.970-(3/5)0.0 2/5(0.0) = 0.970 Gain(S sunny, Temp.)=0.970-(2/5)0.0 2/5(1.0)-(1/5)0.0 = 0.570 Gain(S sunny, Wind)=0.970= -(2/5)1.0 3/5(0.918) = 0.019

Ejemplo: Algoritmo ID3 Outlook Sunny Overcast Rain Humidity [D3,D7,D12,D13] Wind High Normal Strong Weak No No [D1,D2] [D8,D9,D11] [D6,D14] [D4,D5,D10]

Búsqueda en Espacio de Hipótesis (H) de ID3 A1 + - + A2 + - + - - + + - + + - - A2 A2 + - - A3 + - + - + - A4

Búsqueda en Espacio de Hipótesis (H) de ID3 Búsqueda en espacio de hipótesis es completa! La función objetiva seguramente esta ahí Output es una hipótesis No hay vuelta atrás (backtracking) en los atributos seleccionados (búsqueda codiciosa) Mínima local (divisiones suboptimas) Selecciones de búsqueda estadística Robusto a ruidos en datos Preferencia de inducción (search bias) Prefiere árboles cortos que largos Pone atributos con alta ganancia de información cerca de la raíz

Búsqueda en Espacio de Hipótesis de ID3 Desarrolla aprendizaje en grupos (batch learning) que procesa todas las instancia de entrenamiento juntos en vez de aprendizaje incremental (incremental learning) que actualiza una hipótesis después de cada ejemplo. Garantizado de encontrar un árbol consistente con cualquier conjunto de entrenamiento libre de conflictos (i.e. vectores idénticos de características siempre asignados la misma clase), pero no necesariamente el árbol mas simple. Encuentra una hipótesis discreta.

Bias en Inducción de Árbol de Decisión Ganancia de información da una preferencia (bias) para árboles con profundidad mínima. El bias es una preferencia por algunas hipótesis (un bias de búsqueda) y no una restricción de hipótesis en el espacio H.

Ejemplo: Weka data> java weka.classifiers.trees.j48 -t contact-lenses.arff J48 pruned tree ------------------ tear-prod-rate = reduced: none (12.0) tear-prod-rate = normal astigmatism = no: soft (6.0/1.0) astigmatism = yes spectacle-prescrip = myope: hard (3.0) spectacle-prescrip = hypermetrope: none (3.0/1.0) Number of Leaves : 4 Size of the tree : 7 Time taken to build model: 0.03 seconds Time taken to test model on training data: 0 seconds === Error on training data === Correctly Classified Instances 22 91.6667 % Incorrectly Classified Instances 2 8.3333 % Kappa statistic 0.8447 Mean absolute error 0.0833 Root mean squared error 0.2041 Relative absolute error 22.6257 % Root relative squared error 48.1223 % Total Number of Instances 24 === Confusion Matrix === a b c <-- classified as 5 0 0 a = soft 0 3 1 b = hard 1 0 14 c = none === Stratified cross-validation === Correctly Classified Instances 20 83.3333 % Incorrectly Classified Instances 4 16.6667 % Kappa statistic 0.71 Mean absolute error 0.15 Root mean squared error 0.3249 Relative absolute error 39.7059 % Root relative squared error 74.3898 % Total Number of Instances 24 === Confusion Matrix === a b c <-- classified as 5 0 0 a = soft 0 3 1 b = hard 1 2 12 c = none

Complejidad Computacional Peor caso construye un árbol completo en el cual cada camino en el árbol prueba cada característica. Asuma n ejemplos y m características. F 1 F m Máximo de n ejemplos esparcidos en todos los nodos de los m niveles En cada nivel, i, en el árbol, se debe examinar las m-i características que quedan para cada instancia en ese nivel para calcular las ganancias de información. m i= 1 i n = O( nm En la practica un árbol es raramente completo (numero de hojas es n) y la complejidad es lineal en m y n. 2 )

Árboles de Decisión Contenidos Árboles de Decisión Sobreajuste Recorte (Pruning)

Sobreajuste (Overfitting) Crear un árbol que clasifique todos los datos de entrenamiento perfectamente puede no llevarnos a un árbol con la mejor generalización a datos desconocidos. Puede haber error en los datos de entrenamiento que el árbol esta erróneamente ajustando. El algoritmo puede tomar malas decisiones cerca de las ramas basado en pocos datos que no reflejan tendencias confiables. Una hipótesis, h, se dice que sobreajusta (overfits) los datos de entrenamiento si es que existe otra hipótesis, h, la cual tiene más error que h en datos de entrenamiento pero menos error en datos independientes de prueba. on training data accuracy on test data hypothesis complexity

Ejemplo: Sobreajuste Probando la Ley de Ohm: V = IR (I = (1/R)V) Experimentalmente se miden 10 puntos Ajustar una curva a los datos resultantes current (I) voltage (V) Perfectamente se ajustan a los datos de entrenamiento con un polinomio de 9no grado (se pueden ajustar n puntos exactamente con un polinomio de grado n-1)

Ejemplo: Sobreajuste Probando la Ley de Ohm: V = IR (I = (1/R)V) current (I) voltage (V) Se mejora la generalización con una función lineal que se ajusta a los datos de entrenamiento con menor exactitud.

Sobreajuste de Ruido en Árboles de Decisión Ruido de características o categoría pueden causar sobreajuste: Agregar instancia (dato) ruidosa: <medium, blue, circle>: pos (pero realmente neg) color red green blue shape neg neg circle square triangle pos neg pos

Sobreajuste de Ruido en Árboles de Decisión Ruido de características o categoría pueden causar sobreajuste: Agregar instancia (dato) ruidosa: <medium, blue, circle>: pos (pero realmente neg) color red green blue shape neg circle square triangle small med pos neg pos neg <big, blue, circle>: <medium, blue, circle>: + Ruido también puede causar que diferentes instancias del mismo vector de característica tenga diferentes clases. Es imposible ajustar estos datos y se debe etiquetar la hoja con la clase de la mayoría. pos <big, red, circle>: neg (but really pos) Ejemplos conflictivos pueden surgir si es que las características son incompletas e inadecuadas. big neg

Árboles de Decisión Contenidos Árboles de Decisión Sobreajuste Recorte (Pruning)

Métodos de Prevención de Sobreajuste (Recorte o Pruning) Dos ideas básicas para árboles de decisión Prepruning: Parar de crecer el árbol en algún punto durante construcción top-down cuando no hay suficientes datos para toma de decisiones confiables. Postpruning: Crecer el árbol completo, entonces eliminar subarboles que no tengan suficiente evidencia. Etiquetar hoja que resulta de un recorte con la clase de la mayoría de los datos que quedan o con la distribución de probabilidades de la clase. Métodos para elegir subarboles a ser recortados: Validacion-cruzada: Reservar algunos datos de entrenamiento (validation set, tuning set) para evaluar utilidad de subarboles. Test estadístico: Usar un test estadístico en los datos de entrenamiento para determinar si alguna regularidad observada se puede eliminar por ser simplemente aleatoria. Minimum description length (MDL): Determinar si la complejidad adicional de la hipótesis es menos compleja que explícitamente recordar excepciones resultantes del recorte.

Reduced Error Pruning Un método basado en post-pruning y validación cruzada Partition training data in grow and validation sets. Build a complete tree from the grow data. Until accuracy on validation set decreases do: For each non-leaf node, n, in the tree do: Temporarily prune the subtree below n and replace it with a leaf labeled with the current majority class at that node. Measure and record the accuracy of the pruned tree on the validation set. Permanently prune the node that results in the greatest increase in accuracy on the validation set.

Problemas con Reduced Error Pruning El problema con este método es que potencialmente desperdicia datos de entrenamiento en el conjunto de validacion. Severidad de este problema depende de adonde estamos en la curva de aprendizaje: test accuracy number of training examples

Validación cruzada sin Perder Datos de Entrenamiento Se modifica el algoritmo de crecimiento para crecer al ancho primero y se para de crecer después de llegar a cierta complejidad especifica de un árbol. Requiere varias pruebas de diferentes recortes usando divisiones aleatorias de conjuntos de crecimiento y validación Se determina la complejidad del árbol y se calcula un promedio de complejidad C Se comienza crecer el árbol de todos los datos de entrenamiento pero se detiene cuando la complejidad llega a C.

Otras ideas en Árboles de Decisión Mejores criterios de división Ganancia de información prefiere características con muchos valores. Características continuas Predicción de funciones de valores reales (árboles de regresión) Características con costos Costos de misclasificación Aprendizaje incremental ID4 ID5 Grandes bases de datos que no caben en memoria Aplicaciones híbridas (i.e. robótica, reconocimiento patrones, )

Árboles de Decisión Referencias: [1] Mitchel, T., Machine Learning, McGraw Hill, 1997 [2] Karray, F., De Silva, C., Soft Computing and Intelligent Systems Design, Addison Wesley, 2004 [3] Mooney, R., Machine Learning Slides, University of Texas [4] Hoffman, F., Machine Learning Slides, Stockholm University