Beruflich Dokumente
Kultur Dokumente
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Arbol de decision Muy utilizado y popular Aproxima funciones que toman valores discretos. La aprendida se representa como un arbol funcion Robusto a datos con ruido Aprende expresiones disyuntivas: los arboles aprendidos se pueden re-representar como reglas if-then (intuitivas) Numerosas aplicaciones: diagnosticos medicos, causa de de riesgos de creditos fallo en equipos, evaluacion en la de prestamos... concesion y de regresion Arbol de clasicacion
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
como arboles Representacion Cada nodo (no terminal) especica un test de algun atributo de la instancia Cada rama corresponde a un posible valor del atributo Cada nodo terminal indica la clase en la que se clasica Instancias no vistas se clasican recorriendo el arbol: pasandoles el test en cada nodo, por orden desde el nodo ra z hasta algun nodo hoja, que da su clasicacion
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Ejemplo: PlayTennis Clasicar las mananas de Sabado en si son o no adecuadas para jugar al tenis
Instancia:
Outlook=Sunny, Temperature=Hot, Humidity=High, Wind=Strong
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Ejemplo: PlayTennis de conjunciones de El arbol representa una disyuncion restricciones sobre los valores de los atributos de las instancias de tests de atributos Un camino = una conjuncion de estas conjunciones Todo el arbol = disyuncion Este arbol es: (Outlook=Sunny Humidity=Normal) (Outlook=Overcast) (Outlook=Rain Wind=Weak)
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
de reglas Generacion
R1: R2: R3: R4: R5: If (Outlook=Sunny) AND (Humidity=High) then PlayTennis=No If (Outlook=Sunny) AND (Humidity=Normal) then PlayTennis=Yes If (Outlook=Overcast) then PlayTennis=Yes If (Outlook=Rain) AND (Wind=Strong) then PlayTennis=No If (Outlook=Rain) AND (Wind=Weak) then PlayTennis=Yes
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Tipos de problemas apropiados Instancias representadas como pares atributo-valor (atributos discretos o reales) objetivo toma valores discretos (clasicacion)... Funcion ...pero extensiones a valores continuos: arboles de regresion Robustez a errores en los datos (de entrenamiento), tanto en la variable respuesta como en los atributos Puede haber datos perdidos (missing) para algunas instancias en los valores de los atributos Dominios complejos donde no existe una clara separacion lineal
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Ejemplo
Se divide el espacio en regiones etiquetadas con una sola clase y son hiperrectangulos (ojo!)
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
H (C |X ) =
esperada en entrop Reduccion a (incertidumbre), causada al particionar los ejemplos de acuerdo a este atributo
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
9 14
5 14
log2
5 14
= 0.940
3 14
log2
3 6
6 14
log2
6 8
2 14
log2
2 8
= 0.892
I (C , Wind) = 0.940 0.892 = 0.048 Analogamente, I (C , Humidity) = 0.151 I (C , Outlook) = 0.246 Escoger Outlook como nodo ra z I (C , Temperature) = 0.029
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Todos los ejemplos con Outlook=Overcast son positivos Se convierte en nodo hoja El resto tienen entrop a no cero y el arbol debe seguir
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
2 5
log2
2 5
= 0.97
I (Csunny , Temperature) = 0.97 0.4 = 0.57 I (Csunny , Humidity) = 1.94 I (Csunny , Wind) = 0.019 ...Arbol nal es el visto antes
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Por usar propiedades estad sticas de todos los ejemplos (en ganancia de info), busqueda menos sensible a errores en los datos
de ID3 para manejar datos con ruido modicando su criterio de Extension parada: crear hoja sin necesidad de esperar a que todas las etiquetas sean iguales (etiquetar con la mayor a)
Complejidad crece linealmente con el numero de instancias de entrenamiento y exponencialmente con el numero de atributos Matematicamente se demuestra que favorece la eleccion de variables con mayor numero de valores
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Mejoras a ID3
Cuestiones practicas a tener en cuenta Cuanto hacer crecer el arbol? de los atributos? Es adecuada esta medida de seleccion Como manejar atributos continuos? Como manejar datos de entrenamiento con valores perdidos (desconocidos) en los atributos? Como manejar atributos con costes diferentes?
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Sobreajuste
Soluciones al sobreajuste Hay dos grupos de tecnicas, que tratan de simplicar el arbol: Pre-poda: parar de aumentar el arbol antes de que alcance el punto en el que clasica perfectamente los ejemplos de entrenamiento Dif cil estimar cuando Post-poda: permitir que sobreajuste los datos, y despues podarlo reemplazando subarboles por una hoja La mejor en la practica, aunque mayor coste comput.
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Sobreajuste
Pre-podas Aplicar un test estad stico para estimar si expandiendo un nodo particular es alla del conjunto de entrenamiento (e.g. test probable producir una mejora mas 2 como en Quinlan, 1986) Post-podas Comenzando desde abajo, examinar los subarboles de los nodos no terminales Podar un nodo signica eliminar su subarbol correspondiente con ra z en ese mas comun nodo, convertir el nodo en nodo hoja y asignarle la clasicacion de los ejemplos de entrenamiento asociados a ese nodo si el arbol Se poda solo podado resultante mejora o iguala el rendimiento del arbol original sobre el conjunto de testeo la Podar iterativamente, escogiendo siempre el nodo a podar que mejore mas en el conjunto de testeo precision disminuye) ... hasta que ya no convenga (precision
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Ordenar los ejemplos de acuerdo al valor continuo de A, tomar 2 valores de A que van seguidos con distinto valor de C y promediarlos Entre estos candidatos a ser c , escoger el que produzca mayor ganancia de info en este momento Escogido el c , este nuevo atributo compite con los otros discretos para ver si es elegido Si A no es elegido, puede que salga luego otro valor de c distinto Es decir, el atributo se crea dinamicamente
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Discretizarlos Ejemplo: candidatos son c1 = (48 + 60)/2 = 54 y c2 = (80 + 90)/2 = 85: Temperature PlayTennis 40 No 48 No 60 Yes 72 Yes 80 Yes 90 No
de 2 intervalos o incluso usar Otras alternativas: mas combinaciones lineales de varias variables A + B > c ... si es discreta pero con muchos valores: agrupar Tambien los valores
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
de atributos Introducir el coste en la medida de seleccion Fiebre, Biopsia, Pulso, Analisis de sangre... todos con diferentes coste (monetario y de comfort para el paciente) Tratar de situar los de bajo coste arriba del arbol, cuando sea necesario acudiendo a los de alto coste solo (para mejorar las clasicaciones) As , por ejemplo: I (C , Xi ) coste(Xi )
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
de post-poda de reglas: generar las reglas (1 por camino) y Incorporacion eliminar precondiciones (antecedentes) siempre que mejore o iguale el error
Convertir el arbol en un conjunto de reglas R con R Error = error de clasicacion Para cada regla r de R : Nuevo-error = error al eliminar antecedente j de r Si Nuevo-error Error, entonces Nuevo-error = Error y eliminar de r este antecedente antecedentes en r , borrar r de R Si no hay mas
y considerar esta Ordenar las reglas por su error estimado (de menos a mas) secuencia cuando se clasiquen instancias
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Algoritmo C4.5
C4.5
pero Poda pesimista: C4.5 suele estimar el error e por resustitucion, pesimista: da la aproximacion e + 1.96 , con corrigiendolo hacia una posicion de la desviacion t una estimacion pica usar reglas en vez del arbol? Por que Podemos podar contextos (caminos), en vez de subarboles Faciles de entender C4.8, que es el C4.5 revision 8, ultima publica Ultima version: version de esta comercial C5.0 familia de algoritmos antes de la implementacion implementado en WEKA como J48
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Fases de los algoritmos M5 y M5 Construir el arbol Estimar el error Construir modelos lineales en cada nodo intermedio del arbol Simplicar los modelos lineales Podar nodos Suavizar (las predicciones)
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
donde Ti son los conjuntos que resultan al partir el nodo de acuerdo al atributo escogido Escoger el atributo que maximiza dicha reduccion
al bajar de nivel Que disminuya mucho la dispersion
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Tratar atributos discretos Los atributos X discretos se tratan transformandolos primero en varias variables binarias: Antes de construir el arbol, hacer:
Para cada valor de X , promediar sus correspondientes valores de la clase. Ordenar los valores de X de acuerdo a esto Si X toma k valores, reemplazar X por k 1 var. binarias: la i -esima vale 0 si el valor es uno de los primeros i en el orden y vale 1 e.o.c.
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Extensiones
MARS: Multivariate Adaptive Regression Splines [Friedman, 1991] continua de CART Generalizacion Funciones base son un producto de funciones splines Una variable puede ser elegida varias veces Los test en los nodos pueden ser multivariantes (con combinaciones lineales de variables)
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Indice
1 2
Mejoras a ID3
4 5 6
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Conclusiones
Arboles de decision Algoritmo ID3 selecciona de forma voraz el siguiente mejor atributo a anadir al arbol Evitar sobreajuste es un aspecto importante para conseguir que el arbol generalice bien Podas del arbol Gran variedad de extensiones del ID3: manejar atributos continuos, con valores missing, otras medidas de introducir costes seleccion, (M5) con Clase continua: arboles de modelos de regresion regresiones lineales en las hojas
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Software
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Bibliograf a
Textos
Alpaydin, E (2004) Introduction to Machine Learning, MIT Press [Cap. 9] Duda, R., Hart, P.E., Stork, D.G. (2001) Pattern Classication, Wiley [Cap. 8] a la Miner Hernandez-Orallo, J., Ram rez, M.J., Ferri, C. (2004) Introduccion a [Cap. 11] de Datos, Pearson Educacion Mitchell, T. (1997) Machine Learning, McGraw-Hill [Cap. 3] Webb, A. (2002) Statistical Pattern Recognition Wiley [Cap. 7] Witten, I., Frank, E. (2005) Data Mining, Morgan Kaufmann, 2a ed. [Secciones 4.3, 6.1, 6.5, 10.4]
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones
Bibliograf a
Art culos
Quinlan, J.R. (1986) Induction of trees, Machine Learning, 1, 81-106. [ID3] Breiman, L., Friedman, J.H., Olshen, R.A., Stone, C.J. (1984) Classication and Regression Trees, Wadsworth. [CART] Quinlan, J.R. (1993) C4.5: Programs for Machine Learning, Morgan Kaufmann. [C4.5] Quinlan, J.R. (1992) Learning with continuous classes, Proc. of the 5th Australian Joint Conference on AI, 343-348. [M5] Wang, Y., Witten, I. (1997) Induction of model trees for predicting continuous classes, Proc. of the Poster Papers of the ECML, 128-137 [M5] Frank, E., Wang, Y., Inglis, S., Holmes, G., Witten, I. (1998) Using model trees for classication, Machine Learning, 32, 63-76 Friedman, J.H. (1991) Multivariate adaptive regression splines, Annals of Statistics, 19, 1-141 [MARS]
Introduccion
ID3
Mejoras
C4.5
M5
Conclusiones