2.5.4
Bagging
Resumen
- Bagging entrena el mismo modelo base sobre muchas muestras bootstrap y combina predicciones por promedio o votación.
- Su beneficio principal es reducir la varianza, especialmente con modelos inestables como árboles profundos.
- El número de estimadores y la complejidad del modelo base determinan el equilibrio entre robustez, precisión y costo computacional.
Intuicion #
Bagging crea muchos conjuntos de entrenamiento ligeramente distintos. Cada modelo comete errores diferentes; al agregarlos, parte de ese ruido se cancela y la predicción final se vuelve más estable.
Explicacion Detallada #
1. Procedimiento #
- Generar varias muestras bootstrap del conjunto de entrenamiento
- Entrenar el mismo modelo en cada muestra
- Promediar (regresion) o votar (clasificacion)
Bagging reduce principalmente la varianza y mejora la estabilidad.
2. Ejemplo en Python #
| |
3. Hiperparametros #
n_estimators: Numero de modelos. Mas modelos dan mayor estabilidad pero cuestan mas.max_samples,max_features: Fraccion de datos y caracteristicas por modelo.bootstrap: Si se muestrea con reemplazo;bootstrap_featureshace lo mismo con features.oob_score: Estimacion de generalizacion con muestras fuera de la bolsa.
4. Ventajas y desventajas #
| Ventajas | Desventajas |
|---|---|
| Facil de implementar y paralelizar | Requiere almacenar muchos modelos |
| Reduce mucho la varianza | No reduce el sesgo; el modelo base debe ser razonable |
| OOB evita un conjunto de validacion extra | Menos interpretable que un arbol unico |
5. Resumen #
- Bagging estabiliza al promediar modelos entrenados con remuestreo.
- Arboles de decision + bagging = Random Forest.
- Funciona bien cuando se puede paralelizar el entrenamiento.