´
Arboles de decisi´
on y Bosques Aleatorios
Facultad de Estudios Superiores Acatl´
an
Sexto Coloquio de Estad´ıstica
Semestre 2019-1
Contenido
1
Introducci´
on
2
Arboles de decisi´
´
on
3
Bootstrap Aggregating
Contenido
1
Introducci´
on
2
Arboles de decisi´
´
on
3
Bootstrap Aggregating
Introducci´
on
Machine Learning
(Ciencias de la computaci´on y la
inteligen-cia anal´ıtica)
Conjunto de algoritmos,
mod-elos y procesos de inducci´
on
de conocimientos (An´
alisis de
datos), formados a partir de
la premisa de que
el hombre
aprende con base en la
experi-encia
.
Introducci´
on
Machine Learning
(Ciencias de la computaci´on y la
inteligen-cia anal´ıtica)
Sus algoritmos, modelos y
pro-cesos de aprenzaje an´
alitico se
pueden clasificar en dos tipos:
Aprendizaje supervisado.
Aprendizaje
no
super-visado.
Introducci´
on
Aprendizaje supervisado
(Los datos contienen variables objetivo)El
algoritmo
produce
una
funci´
on que establece una
cor-respondencia entre las salidas
del sistema y las variables de
entrada (variables explicativas
X
i) con base en las variables
objetivo
S
i.
b
S
i=
f
(
X
i)
Donde
Si
representa
i
−
´
esima
salida para la
i
−
´
esima
obser-vaci´
on
X
.
Introducci´
on
Aprendizaje no supervisado
(Los datos no contienen variables objetivo)El algoritmo se produce s´
olo
considerando variables de
en-trada al modelo sin considerar
una correspondencia con una
salida deseada.
Estos modelos son utiles para
conocer la estructura de los
datos analizados.
Introducci´
on
Machine Learning
(Aplicaciones)Motores de b´
usqueda
Diagn´
osticos m´
edicos
Segmentaci´
on de mercado
Detecci´
on de fraudes
Introducci´
on
Introducci´
on
Introducci´
on
Introducci´
on
Introducci´
on
Contenido
1
Introducci´
on
2
Arboles de decisi´
´
on
3
Bootstrap Aggregating
Arboles de decisi´
on
Datos de entrenamiento
Definimos los datos de
entre-namiento como
{
(
Y
i,
X
i)
}
i∈Nm,
un conjunto de
m
observacines
provinientes una recolecci´
on de
datos
aleatoria
u
observada,
donde
X
irepresenta el
con-junto de variables explicativas y
dim
(
X
i) =
n
, es decir, contamos
con
n
variables independientes y
Y
ila variable explicada o
Arboles de decisi´
on
Estructura del modelo
El modelo estar´
a estructurado
con base en los niveles de las
variables explicativas, es decir,
por los valores de las variables
X
idenotados por
X
ij, donde
X
ijrepresenta el
j
−
´
esimo valor de
la
i
−
´
esima variable.
El arbol de decisi´
on tiene los
siguientes componentes:
Arboles de decisi´
on
Estructura del modelo
El arbol de decisi´
on tiene los
siguientes componentes:
Arboles de decisi´
on
Estructura del modelo
El arbol de decisi´
on tiene los
siguientes componentes:
Ra´ız.- Inicio del arbol.
Condicional.-
Condici´
on
de cambio.
Arboles de decisi´
on
Estructura del modelo
El arbol de decisi´
on tiene los
siguientes componentes:
Ra´ız.- Inicio del arbol.
Condicional.-
Condici´
on
de cambio.
Nodo.- Varoles de
discrim-inaci´
on del arbol.
Arboles de decisi´
on
Estructura del modelo
El arbol de decisi´
on tiene los
siguientes componentes:
Ra´ız.- Inicio del arbol.
Condicional.-
Condici´
on
de cambio.
Nodo.- Varoles de
discrim-inaci´
on del arbol.
Hoja.- Valor de
clasifi-caci´
on.
Arboles de decisi´
on
Ejemplo de clasificaci´
on
Considerando el arbol de decisi´
on de la
derecha, clasifique la siguiente tupla:
Arboles de decisi´
on
Ejemplo de clasificaci´
on
Considerando el arbol de decisi´
on de la
derecha, clasifique la siguiente tupla:
Arboles de decisi´
on
Ejemplo de clasificaci´
on
Considerando el arbol de decisi´
on de la
derecha, clasifique la siguiente tupla:
Arboles de decisi´
on
Ejemplo de clasificaci´
on
Considerando el arbol de decisi´
on de la
derecha, clasifique la siguiente tupla:
Arboles de decisi´
on
Ejemplo de clasificaci´
on
Considerando el arbol de decisi´
on de la
derecha, clasifique la siguiente tupla:
Arboles de decisi´
on
¿C´
omo generar arboles de decisi´
on?
Bajo un enfoque ”top-down” o ”Dividir y conquista” conocido Algoritmo de Hunt.
Algoritmo de Hunt
Si todos los registros
X
ipertenecen a la misma clase
Y
i, entonces
i
es un nodo
hoja que se etiqueta como
Y
i.
Si
X
icontiene registros que pertenecen a m´
as de una clase, se escoge una variable
(atributo) para dividir los datos en subconjuntos m´
as peque˜
nos.
Recursivamente se aplica el procedimiento a cada subconjunto.
Arboles de decisi´
on
¿C´
omo escoger la variable atributo y como dividir los datos?
Lo mas recomendable es generar la divisi´
on de los datos de forma binaria para una f´
acil
interpretaci´
on del ´
arbol (algoritmo CART).
Arboles de decisi´
on
¿C´
omo escoger la variable atributo y como dividir los datos?
Para elegir las variables puede utilizar alguno de los siguientes criterios que miden el
grado de impureza (GI) de la divisi´
on de la variable atributo:
Error de clasifiaci´
on
error
(
i
) = 1
−
max
(
p
(
j
|
i
))
´Indice de Gini
Gini
(
i
) = 1
−
P
p
(
j
|
i
)
2´Indice de Entrop´ıa
Entropia
(
i
) =
−
P
Arboles de decisi´
on
¿C´
omo escoger la variable atributo y como dividir los datos?
El grado total de impureza en el nivel se calcula para cada uno de los criterios con las
formulas que se muestran a continuaci´
on:
Error de clasifiaci´
on
error
=
P
nin
error
(
i
)
´Indice de Gini
Gini
(
i
) =
P
nin
Gini
(
i
)
´Indice de Entrop´ıa
Entropia
(
i
) =
P
nin
entropia
(
i
)
Donde
n
ies el n´
umero de observaciones en el nodo
i
y
n
es el total de observaciones
Arboles de decisi´
on
Ejemplo
Considerando la siguiente tabla de datos, genere el ´
arbol de decisi´
on asociado
con-siderando el error de clasificaci´
on:
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Arboles de decisi´
on
Contenido
1
Introducci´
on
2
Arboles de decisi´
´
on
3
Bootstrap Aggregating
Bootstrap Aggregating
Datos de entrenamiento
(Muestra de tamaño n)
Muestra 1 Muestra 1 Muestra m . . .
𝒇
𝟏(𝒙)
𝒇
𝟐(𝒙)
𝒇
𝒎(𝒙)
Modelo de ensamble (resumen de un conjunto de m modelos de aprendizaje para mejorar el rendimiento predictivo)
𝑭 𝒙 = 𝑮(𝒇
𝟏(𝒙), … , 𝒇
𝒎(𝒙))
Donde G puede ser una medida de tendencia central en modelos de regresión o una proporción para modelos de clasificación. Ejemplo:
𝑮 𝒇𝟏𝒙 , … , 𝒇𝒎𝒙 = 𝟏
𝒎
𝒋 𝒇𝒋𝒙 Muestra bootstrap Ajuste de modelos
Bootstrap Aggregating
Datos de entrenamiento
(Muestra de tamaño n)
Muestra i
𝒇
𝒊(𝒙)
Muestra bootstrapAjuste de modelos
Muestra de tamaño n con remplazo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 Datos de entrenamiento
4 25 27
10 30 8
15 9 17
6 35 28
15 7 35
10 22 30
15 31 20
29 36 19
18 36 15
11 15 26 21 19 12 34 31 23 Remuestreo i
Bootstrap Aggregating
Datos de entrenamiento
(Muestra de tamaño n)
Muestra 1 Muestra 1 Muestra m . . .
𝒇
𝟏(𝒙)
𝒇
𝟐(𝒙)
𝒇
𝒎(𝒙)
Modelo de ensamble (resumen de un conjunto de m modelos de aprendizaje para mejorar el rendimiento predictivo)
𝑭 𝒙 = 𝑮(𝒇
𝟏(𝒙), … , 𝒇
𝒎(𝒙))
Donde G puede ser una medida de tendencia central en modelos de regresión o una proporción para modelos de clasificación. Ejemplo:
𝑮 𝒇𝟏𝒙 , … , 𝒇𝒎𝒙 = 𝟏
𝒎
𝒋 𝒇𝒋𝒙 Muestra bootstrap Ajuste de modelos
Muestra de tamaño n con remplazo
Puede presentar problemas de sobreajuste
Contenido
1
Introducci´
on
2
Arboles de decisi´
´
on
3
Bootstrap Aggregating
Bosques Aleatorios
Datos de entrenamiento (Muestra de tamaño
n con k variables)
Muestra 1 (k variables) Muestra 1 (k variables) Muestra m (k variables) . . .
𝒇𝟏(𝒙)
𝒇𝟐(𝒙)
𝒇𝒎(𝒙)
Muestra bootstrap Ajuste de modelos
Muestra de tamaño n con remplazo
Subespacio aleatorio
(𝒌variables)
Subespacio h´
(𝒌variables)
Subespacio 2
(𝒌variables)
Subespacio m
(𝒌variables)
. . .
Modelo de ensamble
(resumen de un conjunto de m modelos de aprendizaje para mejorar el rendimiento predictivo)
𝑭 𝒙 = 𝑮(𝒇𝟏(𝒙), … , 𝒇𝒎(𝒙))
Donde G puede ser una medida de tendencia central en modelos de regresióno una proporciónpara modelos de clasificación. Ejemplo:
𝑮 𝒇𝟏𝒙 , … , 𝒇𝒎𝒙 = 𝟏
𝒎
𝒋 𝒇𝒋𝒙
Bosques Aleatorios
Datos de entrenamiento (Muestra de tamaño
n con k variables)
Muestra 1 (k variables) Muestra m (k variables) . . .
𝒇
𝟏(𝒙)
𝒇
𝒎(𝒙)
Muestra bootstrapAjuste de modelos
Muestra de tamaño n con remplazo Split 1 Split h Split 1 Split h´ . . . . . .
Se genera un subespacio aleatorio para cada Split