Skip to content

0.16.0

Choose a tag to compare

@bbstats bbstats released this 17 Jul 18:42

Bagging program — the opt-in n_ensembles mode is now a tuned, first-class accuracy mode.

Changed

  • Members train on 80% row subsamples without replacement (new max_samples, default 0.8; 1.0 restores the classic bootstrap). A bootstrap gives a member only ~63% unique rows at full compute; 80% without replacement is more effective data and less work. Grinsztajn 54W-5L +0.94% with a 23-0 Brier sweep at 0.87x fit; high-card Brier 8-0 at 0.73x.
  • Tuned bagged-member defaults: inside a bag, learning_rate None → 0.15 and colsample None → 0.85 (single-model resolution unchanged). Announced at fit; recorded in member_params_; explicit values always win. Recommended size n_ensembles=8 (stronger than 5 at similar cost; 2 remains anti-recommended).
  • Members fit in parallel by default (ensemble_n_jobs 1 → -1): workers split the thread budget, so a bagged fit uses the same cores a single fit would. Models identical to sequential (verified on 73 datasets); 1.2–2x faster wall-clock.

Fixed

  • ensemble_n_jobs=-1 previously gave every worker the full thread budget (oversubscribing); the budget is now divided across workers.

The single-model default is unchanged.