Why boosting wins on tabular
Gradient boosting builds trees sequentially, each one fit to the residual errors of the previous ensemble. The result is a strong learner that captures complex interactions while staying interpretable enough for production. LightGBM, XGBoost, and CatBoost dominate Kaggle tabular leaderboards and most enterprise scoring systems.
The three knobs that matter
- learning_rate — small (0.01-0.05) with many trees and early stopping is the safe play.
- num_leaves / max_depth — capacity per tree. Start at 31 leaves (lightgbm) or depth 6 (xgboost).
- min_data_in_leaf / min_child_samples — regularizer. Raise it on small/noisy data.
The honest workflow
Always use a validation set with early stopping. Tune learning rate together with n_estimators (lower lr → more trees). Track CV score and train/val gap; if the gap explodes, regularize more. Save the booster as a JSON or native format so you can inspect it later.