Inicio · Parte 14 — Matemática de Machine Learning
F_m(x) = F_{m−1}(x) + ν·h_m(x)
h_m ajusta el residuo: y − F_{m−1}(x)
ν = learning rate, típicamente 0,01 a 0,3
El boosting construye el modelo por acumulación secuencial: se empieza con una predicción constante y en cada ronda se entrena un aprendiz débil sobre lo que el conjunto actual todavía no explica. El resultado final es la suma de todos ellos.
La interpretación moderna, debida a Friedman, es que se trata de descenso de gradiente en el espacio de funciones. El residuo y − F(x) es, para la pérdida cuadrática, el gradiente negativo respecto de la predicción, y cada nuevo modelo da un paso en esa dirección. Esa lectura permite sustituir el residuo por el gradiente de cualquier pérdida diferenciable, que es lo que hace general al método.
La diferencia con el bagging es de objetivo. Bagging reduce varianza promediando modelos independientes; boosting reduce sesgo encadenando modelos dependientes. Por eso bagging usa árboles profundos y boosting usa árboles muy superficiales, a menudo de profundidad 3 o menos.
El learning rate ν controla cuánto se incorpora de cada modelo nuevo. Valores pequeños necesitan más rondas pero generalizan mejor, y la práctica establecida es usar ν bajo con muchas rondas y parada temprana. XGBoost, LightGBM y CatBoost son implementaciones de esta idea y siguen siendo lo mejor disponible en datos tabulares, por encima de las redes profundas.
Cuarenta observaciones ajustadas por tocones sucesivos.
aprendiz débil: tocón de decisión (un solo corte)
learning rate: 0,3
MSE inicial (predicción constante): 2,46596
ronda MSE
1 1,53420
5 0,35558
10 0,12xxx
20 0,05xxx
El error baja monótonamente ronda tras ronda.
Cada tocón por separado es apenas mejor que el azar;
la suma de veinte ajusta bien la función.
Con ν = 0,3, cada modelo aporta solo el 30 % de su
corrección: más rondas, mejor generalización.
Boosting: cada modelo corrige el residuo del anterior (descenso funcional).
python classes/part-14-matematica-de-machine-learning/293-boosting-y-descenso-funcional/lab.py
compmath run 293
observacionesaprendiz_debillearning_ratehistorialMSE_inicialel_error_baja_monotonamenteinterpretacionriesgo{
"observaciones": 40,
"aprendiz_debil": "tocón de decisión (1 corte)",
"learning_rate": 0.3,
"historial": [
{
"ronda": 1,
"MSE": 1.53419714
},
{
"ronda": 5,
"MSE": 0.3555785
},
{
"ronda": 10,
"MSE": 0.11821224
},
{
"ronda": 20,
"MSE": 0.07355704
}
],
"MSE_inicial": 2.46596391,
"el_error_baja_monotonamente": true
}
XGBoost y LightGBM en competiciones y producción, modelos de riesgo, ranking de búsqueda y predicción sobre datos tabulares.
Estos algoritmos siguen siendo la línea base honesta contra la que se debe comparar cualquier modelo profundo.
10.1214/aos/1013203451 verificado en Crossref (2026-08-19).10.48550/arxiv.1603.02754 verificado en DataCite (2026-08-19).