350 likes | 577 Views
Arboles de decisión. Algoritmo C4.5. Introducción. Objetivo: Estudiar algunos problemas del uso de árboles de decisión y analizar cómo los resuelve el algoritmo C4.5 (Quinlan). Técnica de Windowing. Agrupación de valores de un atributo. Generación de reglas a partir de un árbol.
E N D
Arboles de decisión Algoritmo C4.5
Introducción • Objetivo: Estudiar algunos problemas del uso de árboles de decisión y analizar cómo los resuelve el algoritmo C4.5 (Quinlan). • Técnica de Windowing. • Agrupación de valores de un atributo. • Generación de reglas a partir de un árbol.
Técnica de Windowing (1) • Qué: Añadir eficacia a la generación de un árbol a partir de un determinado conjunto de ejemplos de entrenamiento. • Cuándo: Conjunto de ejemplos y número de atributos por ejemplo grandes.
Window Arbol Ejemplos Excepciones No Window Técnica de Windowing (2) • Cómo:
Técnica de Windowing (3) • C4.5 • Conjunto de window inicial favoreciendo una distribución de clases uniforme. • En cada etapa añade al menos la mitad de excepciones producidas al nuevo window. • Puede parar antes de que el árbol clasifique correctamente los ejemplos que estén fuera de window si los árboles que se generan no son cada vez mejores.
Técnica de Windowing (4) • Ejemplo • Ejemplos de entrenamiento 2514 • Ejemplos de entrenamiento en window 546
Técnica de Windowing (5) • ¿Por qué se sigue utilizando? • En algunos casos la construcción del árbol es más rápida (ejemplos sin ruido). • Elegir el conjunto de window inicial de forma que la distribución de clases sea lo más uniforme posible permite mejores resultados a la hora de decidir: • Un valor umbral al clasificar valores continuos. • Qué atributo estudiar en cada nodo del árbol.
Técnica de Windowing (6) • Mejoras • Generar varios árboles, cada uno a partir de un posible conjunto de window, y quedarse con el que menor índice de error genere. • Generar varios árboles y obtener a partir de cada uno de ellos el conjunto de reglas que lo definen para a partir de todos ellos generar uno único.
Agrupación de valores (1) • Si el número de posibles valores de un atributo es elevado: • Cada una de las ramas clasificará un pequeño conjunto de ejemplos. • Dicho atributo resultará perjudicado a la hora de utilizar para la selección medidas como GainRatio.
Agrupación de valores (2) • Solución: Reducir el nº de posibilidades a la hora de testear un atributo uniendo en una misma rama varios valores de un atributo. • C4.5: • Algoritmo ansioso Grupos no siempre óptimos
Agrupación de valores (3) • C4.5 - Algoritmo ansioso: 1. Crear grupos de valores unitarios. 2. Evaluar la mezcla de cada posible par de grupos (GainRatio) y elegir la mejor. 3. Si el mejor resultado es peor que el de la etapa anterior o quedan sólo 2 grupos, acabar. 4. Volver a 2.
Agrupación de valores (4) • Ejemplo:
Agrupación de valores (5) • Cuándo: • Antes de comenzar la construcción del árbol (todos los atributos). • Cuando un atributo sea elegido para ser testeado en un determinado nodo (atributo elegido). • Cuando haya que decidir qué atributo testear en el siguiente nodo del árbol (atributos candidatos a ser testeados).
De árboles a reglas (1) • Problemas: • Cada nodo tiene que tratarse dentro de un contexto que viene dado por el camino que une la raíz del árbol al que pertenece con dicho nodo pasando antes por todos los nodos que constituyen dicho camino. • Subárboles completos son replicados varias veces en un mismo árbol.
A B B 0 1 0 1 0 1 SI NO NO SI De árboles a reglas (2)
SI SI SI NO NO NO NO F 0 1 J G 0 1 1 0 K J 0 1 0 1 K 0 1 De árboles a reglas (3)
De árboles a reglas (4) • Solución: • Arbol Reglas • Reglas • IF (Condicion1 ... CondicionN) THEN Clase • Mutuamente excluyentes • Clasifican exactamente igual que el árbol transformado
De árboles a reglas (5) • Ejemplo: • IF (F = 0) (J = 0) THEN No • IF (F = 0) (J = 1) (K = 0) THEN No • IF (F = 0) (J = 1) (K = 1) THEN Si • IF (F = 1) (G = 1) THEN Si • IF (F = 1) (G = 0) (J = 0) THEN No • IF (F=1)(G=0)(J=1)(K=0) THEN No • IF (F=1)(G=0)(J=1)(K=1) THEN Si
De árboles a reglas (6) • Mejoras (C4.5): • Eliminación de condiciones irrelevantes. • Agrupación de reglas por clases. • Eliminación de reglas completas.
De árboles a reglas (7)Eliminación de condiciones irrelevantes • IF X THEN C IF X- THEN C • ¿Cuándo prefiere C4.5 R- a R? • Ejemplos que cumplen X- en una tabla de contingencias. • Prefiere X- si (E1/Y1+E1) (E1+E2/Y1+E1+Y2+E2)
De árboles a reglas (8)Eliminación de condiciones irrelevantes • Cuándo: Antes de que el árbol sufra ninguna simplificación. • Cómo: • Algoritmo ansioso No minimiza el error global • Si hay varias alternativas elimina aquella condición que genere un menor error de clasificación.
De árboles a reglas (9)Eliminación de condiciones irrelevantes • Ejemplo: • IF (Cond1 ... Cond5) THEN Clase (0.33) • IF (Condicion5) THEN Clase (0.028)
De árboles a reglas (10)Eliminación de condiciones irrelevantes • Ejemplo: • IF (Cond1 ... Cond5) THEN Clase (0.33) • IF (Condicion5) THEN Clase (0.028)
De árboles a reglas (11)Agrupación de reglas por clases • Generalización Reglas no mutuamente excluyentes • Un ejemplo cumple la condición de más de una regla. • Un ejemplo no cumple la condición de ninguna regla.
De árboles a reglas (12)Agrupación de reglas por clases • Un ejemplo cumple la condición de más de una regla (C4.5). • Elige un conjunto S de reglas generalizadas que representen cada clase. • Ordena los conjuntos S (dentro de cada S el orden no importa). • La máxima prioridad es de aquel conjunto S con menos errores falso-positivos. • Toma la 1ª regla que cubra cada ejemplo.
De árboles a reglas (13)Agrupación de reglas por clases • Un ejemplo no es cubierto por ninguna regla (C4.5). • Por defecto toma aquella clase que más se repita entre los ejemplos del conjunto de entrenamiento que no son cubiertos por ninguna regla de las que constituyen los conjuntos de reglas representativos de cada clase, resolviendo en caso de empate a favor de la clase con mayor frecuencia absoluta.
De árboles a reglas (14)Eliminación de reglas completas • Cuándo: Una vez realizado el proceso de generalización, creados los conjuntos de reglas representativos de cada clase y decidida la clase por defecto. • Cómo: Se analiza para cada uno de los conjuntos de reglas S si la eliminación de alguna de las reglas que lo constituyen no aumenta el error producido en la clasificación, y de ser así la elimina.
Arboles de decisión Aprender a jugar al fútbol
Introducción • ¿Cómo utilizo los árboles para aprender? • ¿Cómo obtengo el conjunto de ejemplos que debo clasificar? • ¿Cómo decido a partir del árbol generado?
BasicTeam contra MiBasicTeam Ejemplos Arbol Almacenar como mejor árbol Almacenar como último árbol Esquema de aprendizaje(1)
Jugar con el último árbol Nuevos Ejemplos Arbol Si es el mejor, almacenar mejor árbol Almacenar como último árbol Calcular Efectividad Esquema de aprendizaje(2)
Esquema de aprendizaje(3) • Cuándo se toman los ejemplos: • Cuando un equipo marca un gol • Si el equipo que marca es el mío se considera el ejemplo como positivo • Si el equipo que marca es el contrario se considera el ejemplo como negativo
Esquema de aprendizaje(4) • Parámetros de los ejemplos: • Clase • Distancia al balón • Distancia a la portería contraria • Distancia al compañero más cercano • Distancia al contrario más cercano • Efectividad • GolesFavor-GolesContra
Cómo juega • ¿Cómo utiliza lo que ha aprendido a la hora de jugar? • Siempre almacena el mejor árbol hasta el momento • Antes de chutar se utiliza el árbol de decisión (el mejor) para ver si dicho movimiento llevaría o no a una situación de gol. • Si es así, chuta y si no le pasa el balón al compañero más cercano.