3. árboles de decisión - departamento de sistemas e ... · pdf filetravés...
TRANSCRIPT
3. Árboles de decisión
3.1 Introducción? Método para aproximación de funciones objetivo
que tengan valores discretos (clasificación)? Uno de los métodos mas extensamente usados
para inferencia inductiva? Capaz de aprender hipótesis que se conformen
de una disjunción (busca un espacio de hipótesis completamente expresivo)
? Resultado puede ser representado con reglas if-then
? Sesgo inductivo: preferencia por árboles pequeños (navaja de Occam)
3. Árboles de decisión
3.2 Representación de árboles de decisión
? Cada nodo prueba algún atributo de la instancia siendo evaluada
? Se va ramificando la búsqueda hasta llegar a una hoja -> función objetivo
? Un árbol de decisión representa (en toda su extensión) una disjunción de conjunciones de restricciones sobre los atributos
Ejemplo:(Outlook=Sunny ? Humidity=Normal)
? (Outlook = Overcast)? (Outlook=Rain ? Wind=Weak)
3. Árboles de decisión
Ejemplo: PlayTennis
3. Árboles de decisión
Árbol de decisión para ejemplo PlayTennis
3. Árboles de decisión
3.3 Problemas apropiados para Árboles de Decisión (DTL)
? Las instancias pueden ser representadas por pares (atributo, valor)
? La función objetivo tiene valores discretos (o pueden ser discretizados)
? Pueden ser requeridas descripciones en forma de disjunción
? Posiblemente existen errores en los datos de entrenamiento (robustos al ruido)
? Posiblemente falta información en algunos de los datos de entrenamiento
3. Árboles de decisión
3.4 El algoritmo básico para obtener un DTL
? Búsqueda exhaustiva, de arriba hacia abajo, a través del espacio de posibles árboles de decisión (ID3 y C4.5)
? Raíz: el atributo que mejor clasifica los datos
Cuál atributo es el mejor clasificador?
? respuesta basada en la ganancia de información
3. Árboles de decisión
EntropíaEntropía(S)? - p? log2 p? - p?log2 p?
p?(?) = proporción de ejemplos positivos (negativos)
? La entropía especifíca el número de bits de informacion necesarios para codificar la clase de un conjunto de miembros de S (mensaje)
? En general: Entropía(S) = - ? i=1,c pi log2 pi
3. Árboles de decisión
3. Árboles de decisión
Ganancia de Información
? Mide la reducción esperada de entropía sabiendo el valor del atributo A
Gain(S,A) ?Entropía(S) - ? v? Valores(A) (|Sv|Entropía(Sv)/|S|)
Valores(A): Conjunto de posibles valores del atributo ASv: Subconjunto de S en el cual el atributo A tiene el
valor v
3. Árboles de decisión
Ejemplo
3. Árboles de decisión
Eligiendo el próximo atributo
3. Árboles de decisión
? Problema PlayTennis
? Gain(S,Outlook) = 0.246? Gain(S,Humidity) = 0.151? Gain(S,Wind) = 0.048? Gain(S,Temperature) = 0.029
? Outlook es el atributo del nodo raíz
3. Árboles de decisión
3. Árboles de decisión
3.5 Búsqueda por el Espacio de Hipótesis en Árboles de decisión? El espacio de hipótesis del ID3 es un espacio
completo de funciones finitas? El ID3 mantiene sólo una hipótesis mientras
busca otra por el espacio? El ID3 en su forma pura no realiza backtracking? El ID3 usa todos los ejemplos de entrenamiento
en cada paso de la búsqueda (realiza estadísticas)
3. Árboles de decisión
Búsqueda por el Espacio de Hipótesis
3. Árboles de decisión
3.6 Sesgo Inductivo en DTLSesgo inductivo aproximado del ID3: Se prefieren Árboles más cortos. Se prefieren árboles que ubiquen una ganancia de información alta cerca de la raíz.
? El ID3 busca incompletamente en un Espacio de Hipótesis completo (sesgo de prefencia)
3. Árboles de decisión
? Por qué se prefieren hipótesis pequeñas?
Navaja de Occam:
“Preferir la hipótesis más simple que explica el fenómeno”
3. Árboles de decisión
3.7 Cuestiones en DTLs
?Evitar el sobreentrenamiento? Parar de crecer el árbol temprano? Postprocesamiento del árbol (poda)
Cómo?? Usar un conjunto de ejemplos de validación? Usar estadísticas
3. Árboles de decisión
3. Árboles de decisión
3. Árboles de decisión
3. Árboles de decisión
? Podado para reducir error? Los nodos son podados iterativamente, siempre
eligiendo que al removerlo incrementa mejor la exactitud del DTL sobre el conjunto de validación
3. Árboles de decisión
? DTL Avanzados
? Incorporar atributos con valores continuos
? Otras medidas para seleccionar atributos
? Manejo de datos con valores de atributos faltantes
? Manejo de atributos con diferente peso