XGBoost builds hundreds of tiny decision trees that learn from each other's mistakes. Early stopping prevents the model from memorizing noise when the real signal runs out — which happens fast on noisy per-pitch data.