Uploaded by Fernando Prieto

03 ejercicios soluciones

advertisement
Ejercicios: sesión 3 (Soluciones)
Minería de datos II-Universidad Francisco de Vitoria
Pablo Hidalgo (pablo.hidalgo@ufv.es)
Ejercicio 1
La tabla siguiente recoge un conjunto de datos con seis observaciones, tres predictores (X1 , X2 , X3 ) y
una variable objetivo cuantitativa (Y ).
Obs.
X1
X2
X3
Y
1
2
3
4
5
6
0
2
0
0
-1
1
3
0
4
5
0
1
0
0
3
12
0
0
1
1
1
0
0
1
Sobre este conjunto de datos se ha entrenado un modelo de bagging con 3 iteraciones o modelos (B = 3).
Las observaciones que ha escogido cada muestra bootstrap son
Muestra
Observaciones
1
2
3
(3, 1, 3, 4, 1, 2)
(2, 2, 1, 5, 6, 3)
(6, 6, 6, 3, 1, 2)
El árbol obtenido en cada iteración es
fˆ1 (x) =
(
0.8
0.15
(
fˆ2 (x) =
fˆ3 (x) =
(a)
(b)
(c)
(d)
(
si x1 ≤ 0.5, x2 ≤ 2 y − 1 < x3 ≤ 3
en otro caso
0.4
0.25
si x1 ≤ 2, x2 ≤ 1 y x3 ≤ 4
en otro caso
0.6
0.5
si x1 ≤ 2, x2 ≤ 4 y x3 ≤ 11
en otro caso
Representa gráficamente el árbol obtenido en cada iteración.
Identifica las observaciones out-of-bag (OOB) para cada iteración del algoritmo.
Calcula el RMSE de las observaciones OOB.
¿Cuál sería la predicción para el punto X1 = X2 = X3 = 0?
1
Solución
(a) Representa gráficamente el árbol obtenido en cada iteración.
La representación gráfica del modelo
(
ˆ1
f (x) =
0.8
0.15
si x1 ≤ 0.5, x2 ≤ 2 y − 1 < x3 ≤ 3
en otro caso
es
La representación gráfica del modelo
fˆ2 (x) =
(
0.4
0.25
si x1 ≤ 2, x2 ≤ 1 y x3 ≤ 4
en otro caso
(
0.6
0.5
si x1 ≤ 2, x2 ≤ 4 y x3 ≤ 11
en otro caso
es
La representación gráfica del modelo
ˆ3
f (x) =
es
2
(b) Identifica las observaciones out-of-bag (OOB) para cada iteración del algoritmo.
Las observaciones out-of-bag (OOB) son aquellas en las que, dada una muestra bootstrap, se quedan sin
entrar en la muestra.
La primera muestra bootstrap escoge las observaciones (3, 1, 3, 4, 1, 2). Si las reordenamos y eliminamos los
duplicados, las observaciones son (1, 2, 3, 4). Como el conjunto de datos original tiene 6 observaciones, las
observaciones OOB son: (5, 6).
Siguiendo el mismo procedimiento para todas las observaciones obtenemos
Muestra
Observaciones
Observaciones únicas
Observaciones OOB
1
2
3
(3, 1, 3, 4, 1, 2)
(2, 2, 1, 5, 6, 3)
(6, 6, 6, 3, 1, 2)
(1, 2, 3, 4)
(1, 2, 3, 5, 6)
(1, 2, 3, 6)
(5, 6)
(4)
(4, 5)
(c) Calcula el RMSE de las observaciones OOB.
En la teoría hemos visto que este error se calcula como
RM SEOOB =
sP
− fˆOOB (xi ))2
|OOB|
i∈OOB (yi
Antes de calcularlo, vamos a explicar los componentes de la fórmula:
• OOB: Se trata del conjunto de las observaciones que se han quedado fuera en, al menos, una de las
muestras bootstrap. En este ejercicio, ese conjunto sería
OOB = {4, 5, 6}
• |OOB|: la notación | · | se refiere al tamaño de un conjunto, es decir, al número de elementos que
contiene el conjunto. En nuestro caso, como OOB = {4, 5, 6}, tenemos que |OOB| = 3.
• fˆOOB (xi ): se refiere al cálculo de la predicción para una observación que pertence al conjunto OOB.
Solamente se calcula la predicción en aquellos modelos en los que esta observación sea OOB.
Por ejemplo, la observación 4 pertenece al conjunto OOB pero solo ha quedado fuera de la muestra en los
modelos 2 y 3. Por lo tanto, la predicción OOB para esta observación sería
3
fˆ2 (x4 ) + fˆ3 (x4 )
fˆOOB (x4 ) =
2
Por los valores de las variables predictoras de x4 , la predicción de cada modelo sería
fˆ2 (x4 ) + fˆ3 (x4 )
0.25 + 0.5
0.75
fˆOOB (x4 ) =
=
=
= 0.375
2
2
2
Para el resto de observaciones
Observación OOB
4
5
6
fˆ1
fˆ2
fˆ3
fˆOOB
0.8
0.15
0.25
-
0.5
0.6
-
0.375
0.7
0.15
Con estos cálculos ya podemos calcular el RMSE sobre las observaciones OOB:
s
RM SEOOB =
(y4 − fˆOOB (x4 ))2 + (y5 − fˆOOB (x5 ))2 + (y6 − fˆOOB (x6 ))2
3
r
(0 − 0.375)2 + (0 − 0.7)2 + (1 − 0.15)2
3
≈ 0.672
=
(d) ¿Cuál sería la predicción para el punto X1 = X2 = X3 = 0?
Para dar la predicción debemos calcular
fˆb ((0, 0, 0))
B
1
ˆ
f ((0, 0, 0)) + fˆ2 ((0, 0, 0)) + fˆ3 ((0, 0, 0))
=
3
0.8 + 0.4 + 0.6
1.8
=
=
3
3
= 0.6
fˆavg ((0, 0, 0)) =
PB
b=1
4
Download