ArBoles de Decision

5
ARBOLES DE DECISION Miguel Cárdenas-Montes Los árboles de decisión son estructuras lógicas con amplia utilización en la toma de decisión, la predicción y la minería de datos. Objetivos: Entender como funcionan los algoritmos basados en árboles de de- cisión. Conocer el uso práctico de la ganancia de información en estos al- goritmos. Este documento puede contener impre- cisiones o errores. Por favor no lo utilice para citarlo como una fuente fiable. 1 Introducción Un árbol de decisión puede ser tan simple como la imposición de una regla sobre el comportamiento mayoritario de un conjunto de da- tos. Por ejemplo, en la tabla 1 se presenta cuando se juega o no al golf en función de las condiciones meteorológicas. Aspecto Temperatura Humedad Viento Jugar cubierto frío normal verdad cubierto calor alta falso cubierto calor normal falso cubierto templado alta verdad lluvia frío normal verdad no lluvia templado alta verdad no lluvia frío normal falso no lluvia templado alta falso lluvia templado normal falso soleado calor alta falso no soleado calor alta verdad no soleado templado alta falso no soleado frío normal falso soleado templado normal verdad Cuadro 1: Meteorología y golf. Estas reglas son siempre de la forma IF... THEN..., y pueden aplicar- se tanto a variables continuas como discretas. Cuando se implementa una sola sola regla condicional el algoritmo se denomina 1-rule algo- rithm. Las reglas con muy fáciles de entender y aplicar a problemas de clasificación, siendo uso genérico a la clasificación con árboles. Un ejemplo sencillo de este tipo de algoritmo de una regla es: IF humedad=’normal’ THEN jugar=si ELSE IF humedad=’alta’ then jugar=no

description

descripción y ejercicio de arboles de decisión decisión

Transcript of ArBoles de Decision

  • ARBOLES DE DECISIONMiguel Crdenas-Montes

    Los rboles de decisin son estructuras lgicas con amplia utilizacin en

    la toma de decisin, la prediccin y la minera de datos.

    Objetivos:

    Entender como funcionan los algoritmos basados en rboles de de-

    cisin.

    Conocer el uso prctico de la ganancia de informacin en estos al-

    goritmos.Este documento puede contener impre-cisiones o errores. Por favor no lo utilicepara citarlo como una fuente fiable.

    1 Introduccin

    Un rbol de decisin puede ser tan simple como la imposicin de

    una regla sobre el comportamiento mayoritario de un conjunto de da-

    tos.

    Por ejemplo, en la tabla 1 se presenta cuando se juega o no al golf

    en funcin de las condiciones meteorolgicas.

    Aspecto Temperatura Humedad Viento Jugar

    cubierto fro normal verdad s

    cubierto calor alta falso s

    cubierto calor normal falso s

    cubierto templado alta verdad s

    lluvia fro normal verdad no

    lluvia templado alta verdad no

    lluvia fro normal falso no

    lluvia templado alta falso s

    lluvia templado normal falso s

    soleado calor alta falso no

    soleado calor alta verdad no

    soleado templado alta falso no

    soleado fro normal falso s

    soleado templado normal verdad s

    Cuadro 1: Meteorologa y golf.

    Estas reglas son siempre de la forma IF...THEN..., y pueden aplicar-

    se tanto a variables continuas como discretas. Cuando se implementa

    una sola sola regla condicional el algoritmo se denomina 1-rule algo-

    rithm.

    Las reglas con muy fciles de entendery aplicar a problemas de clasificacin,siendo uso genrico a la clasificacin conrboles.

    Un ejemplo sencillo de este tipo de algoritmo de una regla es:

    IF humedad=normal THEN jugar=si

    ELSE IF humedad=alta then jugar=no

  • 2 m m

    La precisin de esta regla se puede medir mediante la matriz de

    confusin (Tabla 1).

    Cuadro 2: Matriz de confusin para unasola regla sobre el atributo "humedad".

    Clas. Verdadero Clas. Falso

    Verdadero 5 3

    Falso 2 4

    Con esta simple regla se obtiene un 64% de acierto, 5+414 = 64%. La

    pregunta que se plantea a continuacin es cul es la mejor eleccin

    (mejor regla) para obtener el mejor rbol de decisin (ms preciso)?.

    Si se utiliza otro criterio, por ejemplo si no hace viento s se juega, y

    si hace viento no se juega, entonces se obtiene el siguiente porcentaje

    de acierto 5+314 = 57%. Como puede apreciarse, esta regla produce una

    ms baja predecibilidad sobre los datos.

    2 Eleccin del Mejor Atributo

    Un aspecto esencial de los algoritmos basado en rboles de decisin

    es la eleccin del mejor criterio para la divisin de los datos. Una de las

    mejores opciones es realizar esta seleccin basndose en el concepto de

    entropa (ecuacin 1).

    Entropia = x

    px log2(px) (1)

    donde pxes la probabilidad de la clase x.

    Valores ms bajos de la entropa (ecuacin 1) hacen ms predecible

    el caso. Dicho de otra forma: un valor ms alto de la entropa produce

    ms impredecibilidad, mientras que un valor ms bajo de la entropa

    se interpreta como una menor impredecibilidad.

    La entropa caracteriza la impureza deuna coleccin de datos.

    Se define la entropa de Shannon (1948),H(X), de una variable aleatoria discretaX como la esperanza matemtica de lavariable aleatoria asociada I(X).

    H(X) = E(I(X)) = x

    p(xi) log2(p(xi))

    Figura 1: Para una muestra homogneala entropa es x px log2(px) = 1 log2(1) = 0. Esta muestra no es buenapara el proceso de aprendizaje.

    Figura 2: Para una nuestra con dos cla-ses con 50% de aparicin de cada una,la entropa es x px log2(px) = 0,5 log2(0,5) 0,5 log2(0,5) = 1. Esta mues-tra s es buena para el proceso de apren-dizaje.

    La ganancia de informacin es la reduccin de la entropa causada por

    el particionado de los datos por un determinado atributo.

    La entropa del conjunto de datos mostrado en la tabla 1 es:

    814 log2814

    614 log2

    614 = 0,985 puesto que de los 14 casos, hay 8

    casos de s y 6 casos de no.

    Si se dividen los datos por la temperatura, se obtiene que hay 4

    casos de fro de los cuales hay 2 en que s se juega y 2 casos de

    fro en que no se juega. Por otro lado, hay 6 casos de templado de lo

    cuales s se juega en 4 y otros 2 casos en que no se juega. Finalmente,

    hay 4 casos de calor de los cuales en 2 s se juega y en 2 no se juega

    no se juega.

    De esta forma, las entropas de cada uno de estos subgrupos es:

    E( f rio) = (2/4) log2(2/4) (2/4) log2(2/4) = 1

  • a r b o l e s d e d e i s i o n 3

    E(templado) = (4/6) log2(4/6) (2/6) log2(2/6) = 0,918

    E(calor) = (2/4) log2(2/4) (2/4) log2(2/4) = 1

    Estos resultados tienen que ser pesados por el frecuencia de apa-

    ricin de cada caso:

    E(Temperatura) = 414 E( f rio)+614 E(templado)+

    414 E(calor) =

    414 1+

    614 0,918+

    414 1 = 0,965

    Si se dividen los datos por el viento, se obtiene que hay 6 casos de

    verdad de los cuales s se juega en 3 y otros 3 casos en los cuales no

    se juega. Por otro lado, de los 8 casos de falso, de los cuales en 5 s

    se juega y en 8 en los cuales no se juega.

    E(verdad) = (3/6) log2(3/6) (3/6) log2(3/6) = 1

    E( f also) = (5/8) log2(5/8) (3/8) log2(3/8) = 0,954

    Estos resultados son pesados por el frecuencia de aparicin:

    E(Viento) = 614 E(verdad) +814 E( f also) =

    614 1+

    814 0,954 =

    0,974

    Cunta informacin se gana dependiendo si se establece el atributo

    viento o el atributo temperatura como punto de decisin del rbol?

    G(E(Jugar), E(Jugar|temperatura)) = E(Jugar)E(Jugar|temperatura) =

    0,985 0,965 = 0,020

    G(E(Jugar), E(Jugar|viento)) = E(Jugar) E(Jugar|viento) =

    0,985 0,974 = 0,011

    Como consecuencia de este resultado el primer nodo del rbol de

    decisin debe ser la divisin por el atributo temperatura, y no por

    el atributo viento. En un caso real, este clculo debe ser aplicado a

    todos los atributos.

    Figura 3: Datos ms el nodo raz del r-bol.

    3 Algoritmo C4.5

    El algoritmo C4.5 construye rboles de decisin basndose en la

    ganancia de informacin, I(Xi,C) = H(C) H(C,Xi). En cada nodo

  • 4 m m

    Figura 4: Datos, nodo raz del rbol conalgunas divisiones adicionales.

    Figura 5: Datos ms el rbol completa-mente desarrollado.

    del rbol, el algoritmo elige el atributo que produce la mayor ganancia

    de informacin, y divide los datos por este criterio. En los siguientes

    pasos del algoritmo, el algoritmo aplica esta estrategia a los atributos

    restantes.

    En pseudocdigo, el algoritmo general para construir rboles de

    decisin es:

    1. Para cada atributo

    2. Encontrar la ganancia de informacin normalizada de la divisin

    de este atributo.

    3. Una vez encontrado el atributo cuya ganancia de informacin es

    ms alta, crear un nodo de decisin que divida a ste.

    4. Repetir en las sublistas obtenidas por divisin del mejor atributo, y

    agregar estos nodos como hijos de nodo

    4 Random Forest

    La tcnica denominada bagging esampliamente utilizada para mejorar laprecisin de los algoritmos de aprendi-zaje. La tcnica opera de la siguiente for-ma, dato un conjunto de entrenamientoD compuesto de n objetos, se generan mnuevos conjuntos de entrenamiento Dide tamao n mediante un muestreo uni-forme de D con reemplazamiento. Paraun nmero suficientemente de n se espe-ra que la muestra bootstrap Di tenga unafraccin 1 1e 63,2% de muestras ni-cas, siendo el resto duplicadas.

    La tcnica denominada Random Forest consiste en la aplicacin de

    Random subspace a rboles de decisin. De esta forma se obtiene un

    amplio conjunto de clasificadores cada uno de ellos con distintan ca-

    lidad, y en algunos casos con diferente asignacin de clase. Para la

    asignacin de la clase se establece un sistema de voto mayoritario. El

    resto de objetos no seleccionados mediante Random subspace son utili-

    zados para estimar el error.

    La tcnica denominada Random subspaceo attribute bagging consiste en la seleccinde un subconjunto m > D. De foma que al final se tie-ne un subconjunto Di >> D de objetostomando solamente un subconjunto deatributos m

  • a r b o l e s d e d e i s i o n 5

    Figura 6: Ejemplo de random forest uti-lizando la tcnica de bagging.

    objetos no seleccionados por su muestra bootstrap de entrenamiento

    para ser clasificados con dicho rbol. Promediando sobre el conjunto

    de rboles de random forest se puede estimar el error del algoritmo.

    Por otro lado, random forest puede ser paralelizado eficazmente pues-

    to que cada rbol puede construirse de manera independiente a los

    otros rboles. Esta caracterstica lo hace deseable para entornos para-

    lelos.

    IntroduccinEleccin del Mejor AtributoAlgoritmo C4.5Random Forest