Está en la página 1de 9

Ingeniero Mecánico UPB / Especialista EAFIT / Magister UPB

Bernardo León Hoyos Espinosa

RANDOM FOREST
(BOSQUES ALEATORIOS)

Un ensamble de muchos árboles de decisión trabaja


mejor que un solo árbol de decisión.
Un panel de expertos es mejor que un solo experto.

Las posiciones extremas se suavizan y finalmente


llegan a un consenso.

Random Forest es una forma de ensamblar varios


árboles de decisión en un solo modelo.

Random Forest proporciona una mayor robustez al


ruido, valores atípicos y sobreajuste (Overfit).
Un bosque es mejor que un solo árbol.
Overfit o sobre ajuste se da cuando el algoritmo
Ayuda a detectar casos extremos y atípicos. puede pronosticar los datos extremos o atípicos de
entrenamiento, pero no se desempeña bien con
Multiple Inductive Learning (MIL) mejora el datos nuevos. Ocurre cuando caen en la muestra los
desempeño notablemente. registros atípicos.
Por defecto se toman
500 árboles

BAG: 2/3 serán de 1/3 será de


entrenamiento validación
Con estos se crea el Con estos se valida
algoritmo el algoritmo

El muestreo es con reemplazamiento OOB (Out Of Bag)


hasta ajustar los mismas 500
EVALUACIÓN DE DESEMPEÑO OOB 256 observaciones es el 70%
del total de registros. (366)

Hay 500 árboles en la bolsa.


Son los de entrenamiento

Cada árbol tiene un límite de 4


variarles. Pero no todos tienen
las mismas variables.

La tasa de error del 14,06% resulta de la


relación entre falsos positivos más falsos
negativos, con respecto a los 256 registros

El modelo es muy confiable cuando no llueve,


pero hay mucho error cuando sí llueve.
El error general del algoritmos es
14,06%. Pero…

El algoritmo muestra que los días que no llovió


fueron bien pronosticados(Error 4,65%).
No funciona bien cuando sí llueve. (Error 63,41%).
Hay muchos falsos negativos comparados con los
días que sí llueve. (26 de 31)
Para mejorar el pronóstico de Pero esta disminución en los falsos negativos
tiene un costo muy alto.
los días que sí lloverá…
Ahora el error general se subió de
14,06% a 29,3% (185 / 256)

Y el error del “NO” subió de


4,65% a 31,62% (184 / 215)

Se evalúan los mismos 500 árboles, pero


cada uno tomará una muestra más pequeña
con solo 30 registros en los cuales Sí llovió y
Los falsos negativos bajaron 30 en los que No llovió.
considerablemente.
Ahora se tiene un algoritmo más Cada árbol tendrá 60 registros distintos
confiable para saber cuándo lloverá porque los elige aleatoriamente.
Otras combinaciones darán El máximo valor que puede tener el segundo número, es 40.

diferentes errores La razón es porque llovió en 41 días. Debe haber n+1 datos
en la población para poder sacar una muestra.

El gráfico de errores con esta combinación quedaría así:.

Cada uno de los 500 árboles tomó una


muestra de 96 registros. 60 de ellos tienen
“Rain Tomorrow” = No
y 36 tienen “Rain Tomorrow” = Sí
Las dos primeras columnas se calculan por la
Importancia de las variables frecuencia de aparición en el total de árboles.

La tercera columna se basa en el impacto que cada


variable tiene sobre la precisión del modelo. Es decir,
cuánto aumentaría el error en la matiz de validación, si
se omitiera la variable del árbol.

Se puede observar que la tabla está ordenada según el


valor de esta columnas

La última columna se calcula según el índice Gini.


Evalúa la variable como criterio de división. Las
variables que más logran dividir la base de datos
tienen mejor puntuación.

Los valoes de la tabla también se pueden ver en el


gráfico generado.
Cambia el muestreo con reemplazamiento Genera las reglas de cada uno
a muestro sin reemplazamiento, es decir, de los árboles que analizó. En
condicionado a las muestras que van este caso, muestra las reglas
quedando disponibles. del árbol número 100

Determina el número de variables que intenta evaluar en cada nodo Es importante tener en
de modo aleatorio. De acá el nombre de Random Forest.
Por defecto es la raíz cuadrada del total de variables o un tercio de cuenta que rattle
las variables aptas para análisis de regresión. trabaja con un máximo
Se hace necesario cuando tenemos Big Data y muchas variables.
de 32 categorías en las
En este ejemplo podríamos cambiar a 16 y el tiempo de ejecución variables categóricas.
sería muy corto.

También podría gustarte