Skip to content

Preserve declared feature order in LCBench surrogates - #5314

Open
ltiao wants to merge 1 commit into
meta:mainfrom
ltiao:export-D130805946
Open

ltiao wants to merge 1 commit into
meta:mainfrom
ltiao:export-D130805946

Conversation

@ltiao

@ltiao ltiao commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

Summary:

Why

LCBench constructs its numeric feature columns with a set difference. Process hash randomization can therefore change the feature order passed to the random forest, changing benchmark predictions even with the same random seed.

Changes

  • Preserve the declared parameter order when selecting non-logarithmic columns for both the metric and runtime surrogates.
  • Assert the exact numeric and logarithmic feature lists passed to both surrogate constructors.

This establishes a deterministic order for new surrogate fits. Predictions can differ from historical fits that used another feature permutation; existing benchmark calibration constants and historical results are not recalculated.

Examples

The numeric features are always max_dropout, num_layers, weight_decay, in that order, instead of a process-dependent permutation.

Differential Revision: D130805946

Summary:
# Why
LCBench constructs its numeric feature columns with a set difference. Process hash randomization can therefore change the feature order passed to the random forest, changing benchmark predictions even with the same random seed.

# Changes
- Preserve the declared parameter order when selecting non-logarithmic columns for both the metric and runtime surrogates.
- Assert the exact numeric and logarithmic feature lists passed to both surrogate constructors.

This establishes a deterministic order for new surrogate fits. Predictions can differ from historical fits that used another feature permutation; existing benchmark calibration constants and historical results are not recalculated.

# Examples
The numeric features are always `max_dropout`, `num_layers`, `weight_decay`, in that order, instead of a process-dependent permutation.

Differential Revision: D130805946
@meta-cla meta-cla Bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Nov 10, 2026
@meta-codesync

meta-codesync Bot commented Nov 10, 2026

Copy link
Copy Markdown

@ltiao has exported this pull request. If you are a Meta employee, you can view the originating Diff in D130805946.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed Do not delete this pull request or issue due to inactivity. meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant