Hardware-aware neural architecture search (NAS) is dominated by evaluation cost: every architecture must be trained before its reward is known. Conformal-prediction filters cut this cost by pruning candidates whose predicted-reward upper bound misses a threshold, with a distribution-free guarantee that at most a fraction δ are wrongly discarded. That guarantee assumes exchangeability between calibration and test candidates, which the surrounding reinforcement-learning (RL) loop violates: the policy's proposals improve as search proceeds and, in layer-by-layer construction, shift within every episode. We replace one-shot quantile estimation with online feedback control (Adaptive Conformal Inference, with tuning-free, locally-adaptive, and group-conditional variants), restoring steerable coverage: dialing the target delivers it, monotonically and reproducibly, for arbitrary sequences. Across three neural-network architecture families and both single-step and sequential search (three seeds), it tracks every requested level to within ∼10−3 while pruning 25-50% of evaluations at no measured accuracy cost, whereas static calibration loses control of its coverage and a Gaussian-process baseline stays conservative regardless of the request. Finally, used as an acquisition function on one constrained testbed, the same optimistic bound beats random search, a gain that fixed optimism already carries and online calibration sharpens. The source code is available at https://github.com/Vicomtech/rl-hw-nas.
Figures & tables
Component
Setting
Reward, Eq. ( 1 )
λ=0.2 , ν=1.0
Proxy
(E,ρ)=(5,0.1) ; (15,0.3) for search-quality experiments
Figure 1: Realized coverage vs requested target 1−δ , per filter arm and family (points = seed mean, error bars = across-seed standard deviation; grey line = ideal calibration). The adaptive and tuning-free (agaci) filters lie on the diagonal with tight bars, calibrated and reproducible. GP-UCB is pinned near 0.99 regardless of the request. Calibrate-once split barely tracks the target (under-covering at tight requests, over-covering at loose ones), and its large error bars (absent from the means alone) are the reproducibility failure: biased and uncontrolled at once.
arm
mean ∣ err ∣
max ∣ err ∣
steerable?
max std
adaptive
0.001
0.002
monotone
0.002
agaci
0.004
0.008
monotone
0.011
split
0.041
0.087
non-monotone
0.165
split-recal
0.065
0.128
over-covers, drifts
0.063
gpbo
0.156
0.290
pinned ≈ 0.99
0.010
Table 2: Calibration error ∣coverage−(1−δ)∣ over the δ -sweep, ResNet-like/CIFAR-10.
arm
0.95
0.90
0.80
0.70
adaptive
0.949
0.900
0.798
0.701
agaci
0.942
0.900
0.805
0.702
split
0.923
0.813
0.839
0.789
split-recal
0.965
0.939
0.876
0.828
gpbo
0.999
0.994
0.990
0.990
Table 3: Realized coverage per requested target, ResNet-like/CIFAR-10.
Figure 2: Cumulative running coverage over the evaluated stream (ResNet-like/CIFAR-10, weak proxy, δ=0.1 ; all five arms). Lines are the mean across three seeds, and shaded bands are the min–max across seeds, the reproducibility axis. The adaptive filter converges to the 0.90 target and tracks it under policy drift with a negligible seed band; the tuning-free (agaci) filter tracks it slightly more loosely, since the averaged offset does not inherit the single-offset guarantee exactly. The two static bounds settle off-target in opposite directions, calibrate-once split under-covers while the recalibrating baseline over-covers with a wide seed band ( ∼0.91 – 0.99 ), and the Gaussian-process bound is pinned near 0.99.
arm
prune
false-discard
coverage
ResNet-like / CIFAR-10 ( τ=0.35 )
adaptive
0.260/0.369/0.488/0.519
0.066/0.090/0.176/0.194
0.950/0.900/0.800/0.700
agaci
0.261/0.406/0.452/0.491
0.072/0.106/0.121/0.142
0.949/0.900/0.800/0.699
split
0.253/0.373/0.385/0.450
0.067/0.100/0.099/0.099
0.973/0.867/0.831/0.738
split-recal
0.370/0.423/0.510/0.579
0.048/0.087/0.113/0.149
0.954/0.903/0.815/0.765
gpbo
0.526/0.534/0.547/0.564
0.000/0.019/0.037/0.063
1.000/1.000/0.999/0.999
Table 4: Prune rate, false-discard rate, and realized coverage vs requested δ (offline replay over the no-prune streams, three-seed means; each cell lists δ=0.05/0.10/0.20/0.30 ). False discard is the share of pruned candidates whose true reward reached τ . Calibrated arms track the dialed δ in coverage while their false-discard rate rises with it; calibrate-once split is uncontrolled (false discard overshoots the dial to ≈0.20 on MNIST while under-covering); GP-UCB keeps false discards near zero by over-covering (coverage ≈1.0 ) and cannot dial its prune rate. On MobileNet-like/CIFAR-100 all arms are near zero under the weak proxy (omitted).
Figure 3: Coverage conditional on construction depth (target 0.90, no-prune audits, eight seeds): ResNet-like/CIFAR-10 (left), LeNet-like/MNIST (center), MobileNet-like/CIFAR-100 (right). The static baseline over-covers shallow and collapses on the hard depths; global ACI misallocates in a family-dependent direction; per-depth Mondrian adaptation tracks the target wherever its groups have data, exactly flat on the MobileNet-like family, where every depth clears the calibration minimum.
family
depth region
adaptive
mondrian
split-recal
ResNet-like
1–13 (fed)
0.034
0.032
0.075
14–20 (starved)
0.175
0.160
0.287
all
0.083
0.077
0.149
LeNet-like
all (2–4, fed)
0.152
0.075
0.169
MobileNet-like
all (4–12, fed)
0.039
0.003
0.028
Table 5: Mean calibration error ∣coverage−0.90∣ by depth region, no-prune audits (eight seeds). Mondrian ties the global arms where a depth group is well-sampled and wins where every group is fed (LeNet-, MobileNet-like); on ResNet-like it cannot help the data-starved deep depths, where all arms suffer.
Figure 4: Coverage by construction depth on the strong-proxy ResNet-like/CIFAR-10 substrate (target 0.90, no-prune, eight seeds), the substrate of the directed-search results (Sec. 4.6 ). The global arms over-cover shallow and collapse deep; per-depth Mondrian tracks the target across depth at roughly half their overall error.
evaluations
100
200
500
1000
final ( ± std)
random
0.699
0.719
0.725
0.725
0.7252±0.0035
evolution
0.707
0.713
0.715
0.715
0.7148±0.0117
ppo
0.704
0.704
0.704
0.704
0.7040±0.0058
Table 6: Best reward vs evaluation budget on the standard landscape (512 kB budget, no filtering; mean over seeds). This is a different, less-constrained testbed than the 256 kB one of Table 7 , so absolute rewards are not comparable across the two.
arm
100
200
500
1000
acc. @1000
acq. [calibrated]
0.622
0.661
0.689
0.695
0.734
acq. [uncalibrated]
0.629
0.654
0.676
0.691
0.727
acq. [mean]
0.629
0.657
0.682
0.682
0.723
mcts [calibrated]
0.604
0.627
0.633
0.637
0.661
mcts [uncalibrated]
0.631
0.634
0.642
0.653
0.669
ppo (terminal)
—
—
—
0.659
0.686
Table 7: Directed search on the constrained testbed (ResNet-like family, strong proxy, 256 kB budget): best reward reached at each evaluation budget, and best complete-architecture accuracy at 1,000 (mean over three seeds). The acquisition, MCTS and random arms commit only feasible candidates, so their running best is directly comparable across budgets; the terminal-only PPO controller logs a soft budget penalty and explores infeasible candidates, so only its final best- feasible reward is comparable and its intermediate budgets are omitted ( − ).