How ground truth is generated
Sourced from whest-starterkit @
96e308c.
How ground truth is generated
This page explains how the evaluator computes the reference values your estimator is scored against.
The process
For each MLP in the evaluation:
- The evaluator generates random inputs from a standard normal distribution: each neuron receives an independent N(0, 1) value.
- The inputs are propagated through the MLP (matrix multiply + ReLU at each layer).
- This is repeated for
ground_truth_samplesindependent draws; the official evaluation datasets use 1,000,000,000 (see Configuration). - The per-neuron mean across all samples is the ground truth for each layer.
On the local, on-the-fly path the evaluator runs this through flopscope under an effectively unlimited FLOP budget (1e15). The official datasets are baked separately on GPU with a torch backend: same N(0, 1) inputs, the same matmul + ReLU, and a faster executor. Either way, ground-truth compute is never charged against your FLOP budget.
The gap between what the evaluator spends and what you are allowed to spend is deliberate. At the evaluation shape (width 1024, depth 16) one Monte-Carlo forward pass costs ~33.6M FLOPs, so the entire per-MLP budget of 2**41 = 2,199,023,255,552 FLOPs buys roughly 65,000 forward passes. Ground truth is baked from 1,000,000,000 of them, about 15,000x more sampling compute than any estimator is allowed to spend. You cannot match the reference by sampling within the budget; the challenge is to match it structurally instead.
Ground truth has its own error
Because ground truth is estimated by sampling, it has finite precision. With k samples, the standard error of the mean is approximately:
standard_error ≈ sigma / sqrt(k)
The official leaderboard datasets bake their ground truth with N = 1,000,000,000 samples per MLP, the same process as the public release arc-whestbench-public-2026. The floor this puts on your final_layer_mse (what a perfect estimator would still incur) is avg_variance / N, where avg_variance is the dataset's measured per-neuron final-layer activation variance. The ranked score inherits that floor scaled by your compute multiplier, so at the 0.1 multiplier floor it is a tenth of that again.
On the Phase 2 release (@v2-phase2) that variance measures 0.0748 across the Mini split, putting the ground-truth MSE floor at 7.5e-11, orders of magnitude below any meaningful estimator gap. Covariance propagation, the most accurate bundled example, measures 4.05e-06 on the same split, about 54,000x above the floor. (Running whest run without --dataset instead generates ground truth on the fly at the lower-precision local default of 200,000 samples. That is 5,000x fewer, so the floor rises by the same factor, to 3.7e-07. That local floor is about 9% of covariance propagation's 4.05e-06: on a strong estimator the local floor informs the number you see rather than dominating it, and on a weaker one it is invisible. To reduce that noise, pass a larger --n-samples; the graded score always comes from --dataset.) Your MSE never reaches exactly zero, but against the official datasets the target is effectively exact.
What this means for your estimator
- A "perfect" estimator that exactly matches the theoretical means would still show nonzero MSE due to ground truth sampling noise.
- Against the official datasets (N = 1e9 samples) the ground-truth noise floor is
avg_variance / N, or7.5e-11on the Phase 2 release. In practice you hit your estimator's own approximation error long before ground-truth noise matters: covariance propagation lands at4.05e-06, still ~54,000x above the floor. - Local on-the-fly runs (
whest runwithout--dataset) re-sample ground truth, so different--seedvalues give slightly different MLPs and scores; the official baked datasets are fixed, so the leaderboard's ground truth never changes.
Configuration
The number of ground truth samples is set in the contest configuration (ContestSpec), which defines all evaluation parameters: width, depth, FLOP budget, number of MLPs, and ground truth sample count. You can override some of these with CLI flags, such as --n-mlps, --flop-budget, and --n-samples.
ground_truth_samples: forward passes used to estimate ground truth.whest runwithout--datasetgenerates these on the fly and defaults to 200,000 per MLP (override with--n-samples; upstream measures roughly 6 s per MLP at this shape); the official baked datasets use N = 1,000,000,000.
Higher values produce more accurate ground truth but take longer to compute.