Sí, hay una diferencia. En sklearn, si agrupa los árboles de decisión, seguirá utilizando todas las funciones con cada árbol de decisión. Sin embargo, en bosques aleatorios, usas un subconjunto de características.
La documentación oficial sklearn sobre métodos de ensamblaje podría haber sido un poco más clara sobre la diferencia, esto es lo que dice:
- « Cuando las muestras se extraen con reemplazo, el método se conoce como ensacado »
- » En bosques aleatorios (consulte las clases RandomForestClassifier y RandomForestRegressor), cada árbol del conjunto se construye a partir de una muestra extraída con reemplazo (es decir, una muestra de arranque) del conjunto de entrenamiento . «
Entonces, parecería que no hay diferencia si empaqueta árboles de decisión, ¿verdad? Resulta que la documentación también dice:
« Además, al dividir cada nodo durante la construcción de un árbol, la mejor división se encuentra entre todas las características de entrada o un subconjunto aleatorio de tamaño max_features
. «
Así que esta es una forma más de introducir la aleatoriedad, al limitar el número de características en las divisiones. En la práctica, es útil sintonizar max_features
para obtener un buen ajuste.
Comentarios