You are on page 1of 29

Aprendizaje de Mquina

Tema 3 rboles de decisin

Agenda
Representacin de rboles de decisin ID3, un algoritmo de aprendizaje Entropa, ganancia de informacin. Sobre-ajuste (overfitting)

rbol de decisin para PlayTennis

Cul es el concepto general?

rboles de decisin
Representacin del rbol de decisin: Cada nodo interno prueba un atributo Cada rama corresponde a un valor del atributo Cada nodo hoja asigna una clasificacin

Cuando pensar en usar un rbol de decisin


Las instancias pueden describirse por medio de pares atributo-valor La funcin objetivo es un valor discreto Podra requerirse una hiptesis disyuntiva Los datos posiblemente son ruidosos
Ejemplos Diagnstico mdico Anlisis de riesgo de crdito Modelacin de preferencias en programacin de calendarios

Induccin top-down de rboles de decisin


Lazo principal: 1. A el mejor atributo para el prximo nodo 2. Asignar A como el atributo de decisin para el nodo 3. Para cada valor de A, crear un nuevo descendiente del nodo 4. Ordenar los ejemplos de entrenamiento 5. Si los ejemplos de entrenamiento se clasifican correctamente, entonces STOP. sino Iterar sobre nuevos nodos hoja

Cul atributo es mejor?

Entropa
S es una muestra de ejemplos de entrenamiento es la proporcin de ejemplos positivos en S es la proporcin de ejemplos negativos en S La entropa mide la impureza de S

Entropa
Entropy(S) = nmero esperado de bits que se necesitan para codificar una clase de miembros de S tomados aleatoriamente (bajo el cdigo de menor longitud, ptimo) Teora de la Informacin: el cdigo de longitud ptima asigna -log2 p bits al mensaje que tiene probabilidad p Dado que hay dos clases, si se combinan ponderadamente se tiene:

Ganancia de la informacin
Gain(S,A): reduccin de la entropa debida al ordenamiento en A

Ejemplos de entrenamiento

Seleccionando el prximo atributo


Cul atributo es mejor?

Cul atributo probar?

Bsqueda en el Espacio de Hiptesis por ID3

Bsqueda en el Espacio de Hiptesis por ID3


Espacio de hiptesis es completo
Funcin objetivo est all con seguridad porque cualquier funcin discreta puede ser representada por una rbol de decisin.

Mantiene una nica hiptesis a medida que busca en el espacio de rboles. No hace backtracking
Mnimo local

Elecciones de bsqueda basadas en estadstica


Robusto para datos ruidosos

Sesgo inductivo: prefiere el rbol ms corto

Sesgo inductivo
Es el conjunto de supuestos que, junto con los datos de entrenamiento, deductivamente justifican la clasificacin asignada por el programa que aprende a las futuras instancias.

Sesgo inductivo en ID3


Aproximacin a estos supuestos: Preferencia por rboles cortos, y por aquellos con alta ganancia de informacin en los atributos cercanos a la raz. Sesgo es una preferencia por algunas hiptesis, ms bien que en una restriccin del espacio de hiptesis Navaja de Occam: Preferencia por las hiptesis ms cortas que se ajustan a los datos

Navaja de Occam (Occams Razor)


Por qu preferir hiptesis cortas? Argumento a favor: Hay menos hiptesis cortas que largas
Es poco probable que una hiptesis corta se adapte a los datos por coincidencia Una hiptesis larga que se ajusta a los datos podra ser coincidencia

Navaja de Occam (Occams Razor)


Por qu preferir hiptesis cortas? Argumento en contra: Hay muchas formas de definir conjuntos pequeos de hiptesis, algunos no razonables Ejemplo: Todos los rboles con 17 nodos que usan atributos que comienzan con Z Qu es tan especial acerca de los conjuntos pequeos basados en el tamao de las hiptesis?

Sobre-entrenamiento en rboles de Decisin.


Considere aadir un ejemplo ruidoso #15 Sunny, Hot, Normal, Strong, PlayTennis = No Cul es el efecto en el rbol anterior?

Sobre-entrenamiento
Considere el error de la hiptesis h sobre Datos de entrenamiento: errortrain(h) Hiptesis h H se sobre-entrena sobre los datos de entrenamiento si hay una hiptesis alternativa h H tal que
errortrain(h) < errortrain(h) Y errorD(h) > errorD(h)

Sobre-entrenamiento en rboles de Decisin.

Evitando el Sobre-entrenamiento
Cmo evitar el sobre-entrenamiento Dejar de crecer cuando la divisin de los datos no es estadsticamente significativa Hacer crecer el rbol completamente y despus podar Cmo seleccionar el mejor rbol: Medir el desempeo sobre los datos de entrenamiento Medir el desempeo sobre un conjunto de validacin separado MDL: minimizar size(tree) + size(miscassifications(tree))

Poda para reducir el error


Dividir los datos en conjuntos de entrenamiento y validacin Repetir hasta que la poda sea daina 1. Evaluar el impacto sobre el conjunto de validacin de podar cada nodo posible. 2. Remover avaramente (greedily) el que mejore ms la exactitud del conjunto de validacin. _____________ Produce la versin ms pequea del subrbol ms exacto. Que pasa si los datos son limitados?

Efectos de reduccin de error por la poda

Regla para despus de podar (postprunning)


1. Convertir el rbol en un conjunto de reglas equivalente 2. Podar cada regla independientemente de las otras 3. Ordenar las reglas finales en una secuencia deseada para el uso.

Es quiz el mtodo que se usa ms frecuentemente (Ej. C4.5)

Convirtiendo un rbol en reglas