Está en la página 1de 40

Inducción de Árboles de

Decisión

ID3
Contenido

1. Representación mediante árboles de decisión.


2. Algoritmo básico: divide y vencerás.
3. Heurística para la selección de atributos.
4. Espacio de búsqueda y bias inductivo.
5. Sobreajuste.
6. Mejoras a ID3.
7. Poda de árboles: C4.5.
8. Interpretación geométrica aprendizaje con árboles.
9. Conclusiones y ejemplos de aplicación.

Inducción de árboles de decisión 2


1. Representación mediante árboles
de decisión

Inducción de árboles de decisión 3


Representación mediante árboles de
decisión

 Descripción de instancias: pares atributo/valor.


 Historia:{buena, mala, desconocida}, Deuda:{alta, baja},
Avales:{no, adecuados}, Ingresos:{0 a 2M, 2 a 5M, más de 5}

 Árbol de decisión:
 Nodos no terminales: test. (sobre valores de atributos)
 Arcos: valores.
 Nodos terminales: clase de decisión.
 Riesgo:{alto, moderado, bajo}

 Clasificación instancias no vistas:


 Recorrer árbol de decisión.

Inducción de árboles de decisión 4


Árbol de decisión
Concepto: “Riesgo en la concesión de crédito”

Ingresos

0a2 2a5 más de 5

Alto Historia Historia

Desconocida Mala Buena Desconocida Mala Buena

Deuda Alto Moderado Bajo Moderado Bajo

Alta Baja

Alto Moderado

Inducción de árboles de decisión 5


Espacio de hipótesis (H)

 Si clase de decisión binaria


 Cada árbol de decisión representa una función booleana.

 Espacio de hipótesis:
 Conjunto de todos los árboles de decisión o de todas las
funciones booleanas.

 Tamaño espacio de hipótesis:


 Suponiendo atributos binarios.
 n atributos.
n
 |H|= 22 funciones booleanas distintas.

Inducción de árboles de decisión 6


Tarea inducción de árboles de
decisión

 Dados
 Descripción de Instancias, X, (atributos, valores).
 Descripción de las Hipótesis, H (espacio de árboles de
decisión).
 Concepto objetivo, c : X  {0,1}.
 Ejemplos positivos y negativos, D, pares (<x, c(x)>).

 Determinar
 Hipótesis h de H / h(x) = c(x) para todo x de X.

Inducción de árboles de decisión 7


Datos para aplicaciones de concesión
de créditos
Nº Riesgo Historia Deuda Avales Ingresos
1 alto mala alta no 0 a 2M
2 alto desconocida alta no 2 a 5M
3 moderado desconocida baja no 2 a 5M
4 alto desconocida baja no 0 a 2M
5 bajo desconocida baja no más de 5M
6 bajo desconocida baja adecuados más de 5M
7 alto mala baja no 0 a 2M
8 moderado mala baja adecuados más de 5M
9 bajo buena baja no más de 5M
10 bajo buena alta adecuados más de 5M
11 alto buena alta no 0 a 2M
12 moderado buena alta no 2 a 5M
13 bajo buena alta no más de 5M
14 alto mala alta no 2 a 5M

Inducción de árboles de decisión 8


Árbol de decisión

Historia
Desconocida
Mala Buena

Deuda Avales Deuda

Alta Baja No Adecuados Alta Baja

Alto Avales Alto Moderado Avales Bajo

No Adecuados No Adecuados

Ingresos Bajo Ingresos Bajo

0a2 2a5 más de 5 0a2 2a5 más de 5

Alto Moderado Bajo Alto Moderado Bajo

Inducción de árboles de decisión 9


Árbol de decisión “más simple”

Ingresos

0a2 2a5 más de 5

Alto Historia Historia

Desconocida Mala Buena Desconocida Mala Buena

Deuda Alto Moderado Bajo Moderado Bajo

Alta Baja

Alto Moderado

Inducción de árboles de decisión 10


2. Algoritmo básico: divide y vencerás

Inducción de árboles de decisión 11


2. Algoritmo básico: divide y vencerás
Inducción analítica (top-down) de árboles de decisión

PROCEDIMIENTO Inducir_Arbol(Ejemplos, Atributos)


BEGIN
SI todos los elementos de Ejemplos pertenecen a la misma clase
ENTONCES devolver un nodo hoja con la clase
SINO SI Atributos está vacío
ENTONCES devolver nodo hoja con disyunción de clases de Ejemplos
SINO SI Ejemplos está vacío
ENTONCES devolver un nodo hoja etiquetado “desconocido”
SINO
BEGIN
seleccionar un atributo A como raíz del árbol actual
eliminar A de Atributos
PARA CADA valor V de A
BEGIN
crear una rama del árbol etiquetada con V
sea particion_V elementos de Ejemplos con valor V en atributo A
colocar rama V resultado de Inducir_Arbol(particion_V, Atributos)
END
END
END
Inducción de árboles de decisión 12
3. Heurística para la selección de
atributos

Inducción de árboles de decisión 13


3. Heurística para la selección de
atributos

 ¿Atributo más útil para la clasificación?

 Elegir atributo cuyo conocimiento aporte mayor


información desde la perspectiva de clasificación.

 Quinlan, ID3 y sucesores: heurística basada en teoría


de información.

Inducción de árboles de decisión 14


Selección de atributos

 ¿Qué atributo es mejor?

6+, 4- 6+, 4-
atributo A atributo B

5+, 1- 1+, 3- 3+, 1- 3+, 3-

Inducción de árboles de decisión 15


Fundamentos teoría información

 Universo mensajes
M={m1, m2... ...mn}
con probabilidad p(mi), i=1,2... ...n

 Información que aporta la recepción de un mensaje


n
I(M)=-Σi=1 p(mi)log2(p(mi))

Inducción de árboles de decisión 16


Heurística teoría información

 Considerar la clasificación obtenida por un árbol como


un mensaje.

 Estimar el contenido de información a priori, I(D).


 Contenido de información de un mensaje que proporciona la
clasificación de un ejemplo del conjunto de entrenamiento, D,
sin conocer el valor de sus atributos.
 Estimar el contenido de información a posteriori, o
resto, Resto(A).
 Como antes, pero una vez conocido el valor del atributo A.

 Seleccionar el atributo A que maximice la ganancia de


información:
 Ganancia(D, A) = I(D) – Resto(A)

Inducción de árboles de decisión 17


Información a priori

 I(D)

 Estimar la probabilidad de cada clase por la frecuencia


de aparición en D.

Inducción de árboles de decisión 18


Datos para aplicaciones de concesión
de créditos
Nº Riesgo Historia Deuda Avales Ingresos
1 alto mala alta no 0 a 2M
2 alto desconocida alta no 2 a 5M
3 moderado desconocida baja no 2 a 5M
4 alto desconocida baja no 0 a 2M
5 bajo desconocida baja no más de 5M
6 bajo desconocida baja adecuados más de 5M
7 alto mala baja no 0 a 2M
8 moderado mala baja adecuados más de 5M
9 bajo buena baja no más de 5M
10 bajo buena alta adecuados más de 5M
11 alto buena alta no 0 a 2M
12 moderado buena alta no 2 a 5M
13 bajo buena alta no más de 5M
14 alto mala alta no 2 a 5M
Inducción de árboles de decisión 19
Estimación de I(D): Contenido de
información a priori

riesgo alto moderado bajo


frecuencias 6/14 3/14 5/14

I(D) = - 6/14log2(6/14) - 3/14log2(3/14) - 5/14log2(5/14)


= - 6/14 *(-1.222) -3/14*(-2.222) -5/14*(-1.485)
= 1.531 bits

Inducción de árboles de decisión 20


Información a posteriori

 Resto(A)

 Estimar la información promediando la estima para cada


posible valor
 Conocemos atributo A, con K posibles valores
 K particiones de D, según valor de A
 Di: partición i-esima conjunto D
 Resto(A)= Σi=1k |Di|/|D| I(Di)

Inducción de árboles de decisión 21


Datos para aplicaciones de concesión
de créditos: Resto(Ingresos)
Nº Riesgo Historia Deuda Avales Ingresos
1 alto mala alta no 0 a 2M
4 alto desconocida baja no 0 a 2M
7 alto mala baja no 0 a 2M
11 alto buena alta no 0 a 2M
2 alto desconocida alta no 2 a 5M
3 moderado desconocida baja no 2 a 5M
12 moderado buena alta no 2 a 5M
14 alto mala alta no 2 a 5M
5 bajo desconocida baja no más de 5M
6 bajo desconocida baja adecuados más de 5M
8 moderado mala baja adecuados más de 5M
9 bajo buena baja no más de 5M
10 bajo buena alta adecuados más de 5M
13 bajo buena alta no más de 5M

Inducción de árboles de decisión 22


Estimación de Resto(Ingresos):
Contenido de información a posteriori

Resto(Ingresos):

Dingresos_0-2={1, 4, 7, 11} Dingresos_2-5={2, 3, 12, 14} Dingresos_+5={5, 6, 8, 9, 10, 13}

I(Dingresos_0-2)=0 (todos de la misma clase)


I(Dingresos_2-5)=1 (solo dos clases, la mitad de cada clase)
I(Dingresos_+5)= - 5/6log2(5/6) - 1/6log2(1/6) = 0.650

Resto(Ingresos) = 4/14*I(Dingresos_0-2) + 4/14*I(Dingresos_2-5) + 6/14*I(Dingresos_+5) =


= 4/14*0 + 4/14*1 + 6/14*0.650 =
= 0.564 bits

Resto(Ingresos)= 0.564 bits

Inducción de árboles de decisión 23


Estimación de la GANANCIA sobre el
ejemplo

I(D) = 1.531 bits


Resto(Ingresos)=0.564 bits

GANANCIA(D, Ingresos)= I(D) - Resto(Ingresos)= 0.967 bits

GANANCIA(D, Ingresos) = 0.967 bits


GANANCIA(D, Historia) =0.266 bits
GANANCIA(D, Deuda) = 0.581 bits
GANANCIA(D, Avales) = 0.756 bits

Inducción de árboles de decisión 24


4. Espacio de búsqueda y bias
inductivo

Inducción de árboles de decisión 25


4. Espacio de búsqueda y bias
inductivo

 Espacio de hipótesis:
 Conjunto de todos los árboles de decisión o de todas las
funciones booleanas.

 Tamaño espacio de hipótesis.


 Suponiendo atributos binarios.
 n atributos.
n
 |H|= 22 funciones booleanas distintas

 ID3 realiza una búsqueda voraz, escalada, en la


dirección de los árboles más simples a los más
complejos.

Inducción de árboles de decisión 26


Bias BPA-ID3

 BPA-ID3:
 Primero en anchura, partiendo de árbol vacío,
incrementando profundidad.
 Encuentra árbol de menor profundidad consistente con D.

 Bias BPA-ID3
 Preferir el árbol de menor profundidad.

Inducción de árboles de decisión 27


Bias ID3

 ID3: aproximación eficiente a BPA-ID3.


 Búsqueda heurística voraz, escalada.
 No garantiza árbol de menor profundidad.
 Tiende a encontrar árboles sencillos.

 Aproximación al bias inductivo de ID3.


 Preferir árboles de menor profundidad. Preferir árboles que
sitúan atributos que aportan más información cerca de la
raíz.

Inducción de árboles de decisión 28


ID3: Bias de preferencia

 Espacio de hipótesis: completo.


 Todas las funciones booleanas de n atributos

 Búsqueda heurística (incompleta):


 Método de escalada (búsqueda voraz):
 Explora un número muy reducido de hipótesis
 La heurística de selección de atributos determina el orden
en la de exploración de hipótesis

 Justificación
 Muy eficiente (reducción búsqueda)
 Tiende a encontrar “buenos árboles”

Inducción de árboles de decisión 29


¿Por qué preferir árboles de menor
profundidad?

 Navaja de Occam: preferir hipótesis más simples que


explique los datos.
 Árbol de decisión:
 Hipótesis más simple: árbol de menor profundidad.

 Justificación adicional:
 Es razonable esperar que las hipótesis más simples
generalicen mejor (clasifiquen mejor los ejemplos no
vistos) pues es razonable esperar que contengan menos
atributos irrelevantes.
 ¡Validación experimental! (¿más simple = más pequeña?).

Inducción de árboles de decisión 30


5. Sobreajuste

Inducción de árboles de decisión 31


5. Sobreajuste

 No siempre es una buena estrategia hacer crecer el


árbol hasta que clasifique correctamente todos los
ejemplo de entrenamiento:
 Ruido en los ejemplos.
¡Podemos aprender el ruido!
 Pocos ejemplos.
Escasa descripción del concepto objetivo.
 En ambos casos, mala generalización.

Inducción de árboles de decisión 32


Errores

 Error de resubstitución, er(h)


 Error que comete una hipótesis sobre el conjunto de
entrenamiento.
 = |ejemplos de D mal clasificados|/|D|

 Error verdadero o error, eD(h)


 Error que comete la hipótesis sobre todo el espacio de
instancias X, gobernado por la distribución de probabilidad
D.

Inducción de árboles de decisión 33


Definición de sobreajuste

 Dado un espacio de hipótesis H, una hipótesis h∈H


sobreajusta el conjunto de entrenamiento sii ∃ h’∈H tal
que:
 er(h) < er(h´)
 eD(h) > eD(h’)

Inducción de árboles de decisión 34


Impacto del sobreajuste

 Aplicación: aprendizaje del tipo de diabetes de los


pacientes.

Inducción de árboles de decisión 35


Ejemplo sobreajuste: datos originales

Nº Riesgo Historia Deuda Avales Ingresos


1 alto mala alta no 0 a 2M
2 alto desconocida alta no 2 a 5M
3 moderado desconocida baja no 2 a 5M
4 alto desconocida baja no 0 a 2M
5 bajo desconocida baja no más de 5M
6 bajo desconocida baja adecuados más de 5M
7 alto mala baja no 0 a 2M
8 moderado mala baja adecuados más de 5M
9 bajo buena baja no más de 5M
10 bajo buena alta adecuados más de 5M
11 alto buena alta no 0 a 2M
12 moderado buena alta no 2 a 5M
13 bajo buena alta no más de 5M
14 alto mala alta no 2 a 5M
Inducción de árboles de decisión 36
Ejemplo sobreajuste: datos originales

Ingresos

0a2 2a5 más de 5

Alto Historia Historia

Desconocida Mala Buena Desconocida Mala Buena

Deuda Alto Moderado Bajo Moderado Bajo

Alta Baja

Alto Moderado

Inducción de árboles de decisión 37


Ejemplo sobreajuste

 Imaginar que añadimos un ejemplo etiquetado


erróneamente como Riesgo=bajo (en vez de alto) al
conjunto inicial de entrenamiento

Nº Riesgo Historia Deuda Avales Ingresos


15 bajo mala alta adecuados 0 a 2M

Inducción de árboles de decisión 38


Ejemplo sobreajuste

Ingresos

0a2 2a5 más de 5

Avales Historia Historia

Adecuados
No Desconocida Mala Buena Desconocida Mala Buena

Bajo Alto Deuda Alto Moderado Bajo Moderado Bajo

Alta Baja

Alto Moderado

Inducción de árboles de decisión 39


Motivos sobreajuste

 Ruido en los datos.

 Presencia de regularidades no relevantes en D


 Pocos datos.
 Numerosos atributos.

Inducción de árboles de decisión 40

También podría gustarte