Gradient Boosting

Gradient Boosting, Gradient Tree Boosting o Gradient Boosted Regression Trees (GBRT), es una familia de algoritmos usados tanto en clasificación como en regresión basados en la combinación de modelos predictivos débiles (weak learners) -normalmente árboles de decisión- para crear un modelo predictivo fuerte. La generación de los árboles de decisión débiles se realiza de forma secuencial, creándose cada árbol de forma que corrija los errores del árbol anterior. Los aprendices suelen ser árboles "poco profundos" (shallow trees), de apenas uno, dos o tres niveles de profundidad, típicamente.

Este tipo de algoritmos suelen ofrecer los mejores resultados en escenarios tabulares, y son especialmente destacables las implementaciones de LightBGM y XGBoost.

Uno de los parámetros de este tipo de argumentos es el learning rate o tasa de aprendizaje, que controla el grado de mejora de un árbol respecto del anterior. Una tasa de aprendizaje pequeña supone una mejora más lenta pero adaptándose mejor a los datos, lo que se traduce generalmente en mejoras en el resultado a costa de un mayor consumo de recursos.

Scikit-Learn implementa esta estrategia en las clases sklearn.ensemble.GradientBoostingClassifiersklearn.ensemble.GradientBoostingRegressor para escenarios de clasificación y regresión, respectivamente.

Dejamos para más adelante una explicación más detallada de esta familia de algoritmos.