Continue from Random Forest

Bagging made trees independent. Boosting makes them collaborate in sequence.

Students already know how Random Forest averages many independently trained trees. We now change one design choice: after each tree, inspect the current ensemble and give the next tree a new correction problem. Gradient Boosting appears naturally once we ask how to define that correction for regression and classification.

Opening thought

Would you rather build one extremely complicated model, or repeatedly improve a simple model by fixing what it still gets wrong?

The whole story in one equation

\[F_m(x)=F_{m-1}(x)+\eta h_m(x)\]

The current model \(F_{m-1}\) already knows something. A new weak learner \(h_m\) supplies a correction. The learning rate \(\eta\) controls how much of that correction enters the ensemble.

Read it as a sentence: new prediction equals old prediction plus a cautious correction.

CurrentpredictionCorrectiontreeImprovedpredictioninspect the new errors and repeat

Teaching order

What this foundation deliberately postpones

AdaBoost's explicit sample reweighting and weighted voting, followed by XGBoost, LightGBM, and CatBoost, belong after this foundation. First make the shared boosting idea and Gradient Boosting's loss-based corrections completely stable.

Begin: from bagging