Skip to content

0.20.0 — cross features for categorical columns

Choose a tag to compare

@bbstats bbstats released this 21 Jul 02:44

Group-centered categorical crosses. The cross-feature race now also auditions columns of the form value minus the average of that value within this row's category (salary minus the department's average salary), so "above this row's own group's baseline" becomes one split instead of a per-category staircase. Target-free (no leakage machinery), weight-aware, kept per dataset only when validation loss agrees. On the real high-cardinality suite: +0.25% mean, employee_salaries +2.5%; the headline Grinsztajn suite is bit-identical by construction; the independent OpenML check was flat.

Faster selection fits. Audition fits no longer compute a training-set loss nobody reads: predictions bit-identical, a 50k-row binary fit ~15% faster, Grinsztajn suite fit time ~3% lower (single model now 4.8× LightGBM, was 5.1×).

Full validation record: benchmarks/CATCROSS_PLAN.md (PR #24). TabArena-Lite re-read post-release: Elo 1278, rank 31/68 (was 1264, within CI).