ROM:
Real-time Overthinking Mitigation via Streaming Detection and Intervention

1University of Wisconsin–Madison, 2Johns Hopkins University

Abstract

Large Reasoning Models (LRMs) often reach a correct solution before their long Chain-of-Thought trace ends, yet continue with redundant verification, repeated attempts, or unnecessary exploration that wastes computation and can even overturn the correct answer. We frame this behavior as a latent productive-to-redundant transition and show it is directly reflected in hidden states: around first-correct-solution (FCS) boundaries, late-layer representations separate efficient from overthinking tokens, while boundary-permutation and position controls collapse. We propose ROM, a streaming intervention framework that monitors a frozen LRM with a lightweight hidden-state detector (~0.1% of backbone parameters) and intervenes at well-formed reasoning boundaries; Counterfactual Self-Correction (CSC) balances supervision with wrong→correct trajectories, preserving useful pre-FCS self-correction. Unlike prior adaptive early-exit methods, ROM extracts no intermediate answers, launches no probe decoding, and updates no backbone weights. Across five backbones from three model families and five reasoning benchmarks, against ten recent baselines under a shared protocol, ROMCSC attains the highest accuracy in 19 of 25 model–benchmark settings, cuts response length by 28–77% (mean 45%) versus vanilla decoding, and is the only method on the accuracy–length Pareto front in every setting. The same MATH500-trained supervision transfers zero-shot across scales, families, and task domains, and end-to-end wall-clock latency drops by 46.5% with ~5% per-token overhead.

How ROM Differs from Prior Work

Existing methods approximate the productive→redundant transition through length-RL objectives, decoding statistics, or answer arrival. ROM directly supervises the boundary itself from token-level FCS labels, while keeping the backbone frozen and operating at every token. Extraction free: no online intermediate-answer extraction or probe/trial decoding. Transition supervised: the stopping signal is trained on the productive-to-redundant boundary itself.

Method family Frozen backbone Token level Extraction free Transition supervised
Length retraining: L1, O1-Pruner
Answer-defined triggers: Dynasor, DEER, PUMA-RD, PMA, RP
Surface heuristics (step level): EAT, REFRAIN
Surface heuristics (token level): SyncThink, RCPD, RPDM, NEAT
Answer-arrival head: TERMINATOR
Latent-boundary head: ROM (ours)

Motivation: The Productive→Redundant Boundary Is a Decodable Latent Event

We align 61 MATH500 traces at each overthinking boundary, take the last 20 efficient and first 20 overthinking tokens, and probe Qwen3-8B's late-layer hidden states with logistic regression under response-level group cross-validation. The two phases are linearly separable at 85.9% accuracy / AUROC 0.928 despite often discussing the same content; probe scores rise sharply at the true boundary but stay flat under permuted alignment (which collapses to 48.5%, below chance); and the signal is not a position shortcut — a position-only classifier reaches 50.3%, while position-residualized (86.4%) and position-matched (86.1%) hidden states stay as separable as the originals.

t-SNE of late-layer hidden states around the FCS boundary

(a) t-SNE of late-layer hidden states separates efficient (pre-FCS) from overthinking (post-FCS) tokens.

Probe score aligned at FCS boundary

(b) Boundary-aligned probe scores rise sharply at the true FCS; permuted alignment stays flat.

Method

ROM has four components: (1) latent boundary supervision that converts attempt-level correctness into token-level labels at the First-Correct-Solution (FCS) boundary; (2) Counterfactual Self-Correction (CSC), which synthesizes balanced wrong→correct trajectories so the detector learns a semantic boundary around sufficiency rather than an attempt-index shortcut; (3) a streaming detector on frozen late-layer hidden states that emits a per-token overthinking score pt in lockstep with decoding; and (4) boundary-aware intervention that, once pt crosses the threshold, backtracks to the nearest clean sentence/solution boundary and prompts a final answer.

The detector reads one frozen layer in a fixed late-layer band at 83–90% of depth — not a per-model search: Qwen3-8B L32/36, Qwen3-14B L36/40, Gemma-4-12B L40/48, DS-R1-32B L56/64, DS-Llama-8B L28/32. The architecture is shared across backbones; only the input projection scales with hidden size. Every head is trained from the same QwQ-labeled MATH500 traces, so the other four benchmarks are zero-shot transfer for the detector.

ROM framework overview

Main Results

Accuracy (%, ±95% CI) / mean output tokens across five backbones and five benchmarks, against ten recent baselines. All methods share identical vLLM decoding, a uniform 8,192-token budget, and n=3 samples per problem (n=10 on AIME25). Overall is the macro-average over the five benchmarks. Bold = highest accuracy / shortest output per model–benchmark. ROM (w/o CSC) is our own ablation, not a baseline. RP: official probes exist only for DS-R1-32B; baselines are run where their released assets apply.

Method MATH500 GSM8K AIME25 GPQA-D MMLU-Pro Overall
Qwen3-8B
Vanilla90.3±4.2 / 4,56998.9±0.6 / 1,96927.0±14.3 / 6,25837.9±5.8 / 5,79176.7±8.6 / 2,78466.15 / 4,274
EAT83.3±7.0 / 2,08896.3±0.8 / 1,56326.0±13.2 / 3,87438.9±5.3 / 4,71276.7±8.8 / 2,05264.23 / 2,858
RCPD90.3±4.2 / 4,58695.0±0.9 / 91827.0±14.5 / 6,26536.7±5.7 / 5,90075.7±8.8 / 2,64764.95 / 4,063
RPDM90.0±4.2 / 4,51998.8±0.6 / 1,94327.0±14.2 / 6,14937.5±5.8 / 6,13776.2±8.6 / 2,75165.91 / 4,300
NEAT85.7±6.2 / 4,14399.1±0.5 / 2,05927.0±15.4 / 7,36936.2±5.7 / 6,22575.7±9.3 / 2,76164.73 / 4,511
TERMINATOR88.3±5.5 / 3,08696.7±0.8 / 71026.3±13.1 / 7,20336.7±5.7 / 5,21073.8±9.3 / 1,99164.37 / 3,640
REFRAIN86.7±5.8 / 3,34596.7±0.8 / 1,57626.7±13.3 / 5,99743.3±5.8 / 4,64377.6±9.1 / 1,74966.18 / 3,462
Dynasor88.7±4.3 / 3,98299.6±0.3 / 1,65726.7±14.2 / 6,18441.8±5.9 / 5,06080.0±8.7 / 2,09467.33 / 3,795
PMA84.3±6.2 / 3,16499.2±0.4 / 1,29925.0±13.3 / 5,34238.2±5.8 / 4,73174.8±8.6 / 1,73364.30 / 3,254
PUMA-RD77.3±6.2 / 3,21092.5±1.1 / 1,54826.7±14.3 / 6,18933.3±5.5 / 5,24870.5±8.3 / 2,01160.06 / 3,641
ROM (w/o CSC)90.3±4.0 / 2,70399.6±0.3 / 66927.0±14.0 / 4,58743.4±5.7 / 4,28578.1±8.8 / 1,09567.70 / 2,668
ROMCSC90.7±5.0 / 2,41299.8±0.3 / 62727.3±14.2 / 4,12644.6±6.0 / 3,90879.0±8.8 / 1,00968.29 / 2,416
Qwen3-14B
Vanilla89.3±5.2 / 4,03898.3±0.7 / 1,57037.0±15.0 / 5,84753.4±6.1 / 6,06084.3±7.9 / 2,36272.46 / 3,975
EAT82.7±6.8 / 2,25196.7±0.8 / 1,28433.7±13.2 / 4,48349.2±6.1 / 4,16682.4±8.1 / 1,93768.91 / 2,824
RPDM88.3±5.5 / 4,00198.3±0.7 / 1,58536.3±14.8 / 5,79252.5±6.1 / 6,01383.8±7.9 / 2,34971.86 / 3,948
Dynasor86.7±5.8 / 3,12998.8±0.6 / 1,05836.3±14.2 / 5,10456.7±5.7 / 4,90386.2±7.6 / 1,72872.94 / 3,184
PMA83.7±6.3 / 3,28897.9±0.7 / 1,16332.3±13.3 / 4,91747.5±6.1 / 5,38281.0±8.3 / 1,85668.47 / 3,321
PUMA-RD79.3±6.5 / 3,37494.2±1.0 / 1,24735.0±15.4 / 5,93645.0±5.8 / 5,69477.6±8.6 / 1,99466.21 / 3,649
ROM (w/o CSC)88.7±4.8 / 2,69499.2±0.4 / 89236.3±15.2 / 4,12655.0±5.9 / 4,71885.2±7.6 / 1,64172.89 / 2,814
ROMCSC89.0±4.3 / 2,43799.6±0.3 / 81036.7±14.7 / 3,72858.2±6.0 / 4,38287.1±7.4 / 1,52374.13 / 2,576
Gemma-4-12B
Vanilla78.3±6.7 / 3,78992.5±1.1 / 2,09532.3±16.2 / 7,63631.3±5.7 / 7,00564.3±8.8 / 3,78759.75 / 4,862
EAT77.3±6.5 / 1,44595.8±0.9 / 1,53732.3±16.2 / 7,42632.8±5.2 / 5,69970.5±8.3 / 2,20661.76 / 3,663
RPDM82.7±5.8 / 3,76392.4±1.1 / 2,08132.3±16.3 / 7,31931.0±5.5 / 6,95465.2±8.6 / 3,73560.73 / 4,770
Dynasor83.3±6.2 / 1,73396.7±0.8 / 81232.7±13.1 / 6,19635.9±6.0 / 4,40873.3±8.9 / 1,79064.37 / 2,988
PMA84.0±6.2 / 3,39297.5±0.6 / 1,19932.3±16.2 / 7,34130.1±5.3 / 5,06069.0±8.7 / 1,94962.60 / 3,788
PUMA-RD76.7±6.8 / 3,50588.3±1.3 / 1,51332.0±15.4 / 7,61328.8±5.2 / 5,52366.2±8.9 / 2,11258.39 / 4,053
ROM (w/o CSC)78.7±7.5 / 1,63292.5±1.2 / 50432.7±15.2 / 5,15335.4±5.8 / 4,54372.4±8.8 / 1,70862.32 / 2,708
ROMCSC85.0±6.0 / 1,53298.0±0.7 / 47933.0±14.2 / 4,35836.4±5.7 / 4,09073.8±8.4 / 1,63365.22 / 2,418
DS-R1-Distill-Qwen-32B
Vanilla83.3±6.2 / 3,36792.8±1.2 / 45629.7±14.0 / 6,14555.6±6.1 / 3,55166.2±8.1 / 1,31365.50 / 2,966
EAT77.0±7.0 / 1,69392.5±1.2 / 44627.0±12.3 / 3,76253.9±5.4 / 2,95063.8±7.9 / 1,03062.83 / 1,976
RCPD83.3±6.2 / 3,37793.2±1.2 / 45928.3±13.7 / 6,14954.7±5.6 / 3,59664.8±7.9 / 1,32464.88 / 2,981
RPDM83.3±6.5 / 3,34492.8±1.2 / 46128.7±13.5 / 6,15655.2±6.0 / 3,49866.2±8.1 / 1,33265.24 / 2,958
Dynasor84.0±6.2 / 3,00392.5±1.3 / 33728.7±13.3 / 5,88259.6±6.1 / 2,66072.4±9.1 / 89867.43 / 2,556
PMA79.0±6.5 / 2,57492.7±1.2 / 45727.7±13.2 / 5,17451.5±5.6 / 3,09859.5±8.3 / 1,13562.08 / 2,488
PUMA-RD81.3±6.5 / 2,79092.7±1.2 / 45328.3±13.7 / 6,07354.0±5.8 / 3,54166.2±7.9 / 1,28864.51 / 2,829
RP80.7±6.8 / 2,44092.2±1.3 / 44228.7±13.8 / 5,83857.1±5.7 / 3,19970.5±8.4 / 1,16665.83 / 2,617
ROM (w/o CSC)83.3±6.3 / 1,99493.0±1.2 / 31828.7±12.7 / 4,39058.8±5.9 / 1,67969.5±8.9 / 63666.66 / 1,803
ROMCSC83.7±6.8 / 1,82093.5±1.2 / 30029.0±11.8 / 4,01560.9±5.7 / 1,59071.9±8.5 / 59267.80 / 1,663
DS-R1-Distill-Llama-8B
Vanilla80.7±6.5 / 89791.0±1.3 / 24517.3±11.7 / 2,61335.7±5.7 / 2,42662.9±9.5 / 48457.52 / 1,333
EAT77.3±6.4 / 71290.5±1.3 / 23813.0±9.5 / 1,48833.7±5.1 / 1,36060.5±8.9 / 39155.00 / 838
RPDM80.0±6.7 / 88191.1±1.3 / 24817.3±11.2 / 2,62735.4±5.6 / 2,39863.3±9.3 / 49257.42 / 1,329
Dynasor80.3±6.8 / 75490.9±1.4 / 19817.7±12.0 / 2,28837.2±5.9 / 1,85963.8±9.8 / 35657.99 / 1,091
PMA78.3±6.7 / 77190.8±1.3 / 25215.3±10.8 / 2,10732.0±5.3 / 2,15458.1±9.1 / 41954.91 / 1,141
PUMA-RD79.7±6.5 / 79691.0±1.3 / 24117.3±12.2 / 2,46135.9±6.0 / 2,33763.3±9.7 / 44857.43 / 1,257
ROM (w/o CSC)78.7±6.4 / 63891.5±1.2 / 18114.3±10.9 / 1,83636.0±5.5 / 1,69461.9±9.2 / 32956.48 / 936
ROMCSC81.0±6.1 / 54292.2±1.2 / 16118.0±11.7 / 1,60737.7±5.4 / 1,44364.8±8.9 / 28358.73 / 807

Latent-boundary control gives the strongest accuracy–efficiency tradeoff. ROMCSC attains the highest accuracy in 19 of 25 model×benchmark settings while producing the shortest output in 16 of them. Relative to vanilla decoding it improves accuracy in 22 of 25 settings (+0.33 to +9.52 points, mean +2.56) while cutting output length by 28–77% (mean 45%), and it ranks first on both axes in all five Overall columns.

Gains scale with how much redundancy a backbone actually produces. The most verbose backbone gains 4.5× more than the tersest: Gemma-4-12B (24.3k vanilla tokens summed over the five benchmarks, macro gain +5.47 pp) at one end, DS-Llama-8B (6.7k, +1.21) at the other.

Effect of CSC. CSC adds +0.15 to +6.33 accuracy points (mean +1.62) while shortening output by a further 4.4–15.4%, improving both axes in all 25 settings. On DS-Llama-8B, ROM alone falls below vanilla's macro-average (56.48 vs. 57.52); CSC recovers all of it and more (58.73).

On the Pareto Front in Every Setting

Across all 180 pairwise comparisons with vanilla or a baseline, ROMCSC dominates in 165 (higher accuracy and shorter output) and is dominated in none. It therefore lies on the accuracy–length Pareto front in every setting, and is the unique front point in 13 of 25 — reached with a single trigger configuration across all five backbones. Dynasor is the most consistent baseline (non-dominated in 22 of 25), but it stays 7.8–164% longer (+43% on average), and its savings shrink from up to 61% on GSM8K to 1–19% on AIME25: a confidence-gated, answer-defined exit rarely fires on problems the model cannot solve, precisely where compute is most expensive.

Accuracy vs. mean output length in all 25 model x benchmark settings

Accuracy vs. mean output length in all 25 model×benchmark settings; axis ranges are per panel, upper-left is better. The dashed staircase is the per-panel Pareto front.

The Learned Boundary Is Not Confidence in Disguise

If ROM were merely tracking confidence, it should agree with entropy-based stopping case by case. It does not: among 49 EAT-wrong MMLU-Pro samples on Qwen3-8B, ROMCSC corrects 6, spanning both entropy failure modes. ROM tracks whether the trace has crossed from solution construction into redundant continuation, not whether the answer distribution is stable.

Method Answer Reasoning Response Stop signal
Case 1: confidently wrong (gold D)
EATI ✗1,5702,194exit, H = 7.5×10−5
ROMCSCD9061,641cut at 886
Case 2: correct but uncertain (gold F)
EATJ ✗6,8027,734no exit, = 1.61
ROMCSCF2,8983,938cut at 2,878

Two MMLU-Pro cases (Qwen3-8B) where entropy-based stopping fails in opposite directions: EAT exits early once entropy collapses onto a wrong option (Case 1), and never exits when entropy stays unsettled (Case 2).

Ablations

MATH500 (Qwen3-8B, held-out 100-problem test split, n=3, identical cut/backtrace/continue harness). Each row below the shaded default changes one component of it. SL = mean output tokens.

Configuration Acc (%) SL
Vanilla (no cut)90.34,569
ROMCSC (L32, t=0.5, +BT)90.72,412
Detectorlinear head90.04,105
conf. MA (0.98)70.01,105
conf. MA (0.995)67.7944
Controlw/o backtracing89.72,573
LayerL2289.32,108
L3490.72,315
Threshold0.489.11,909
0.690.72,716
0.791.03,036

The recurrent state is necessary. A linear classifier over the same attention features collapses token-level training accuracy from 96.1% to 62.5% and end-to-end almost never fires; a confidence moving average fails in the opposite direction, triggering on locally confident derivation steps regardless of threshold. Robustness. Across probed layers and thresholds 0.4–0.7, accuracy stays within 1.2 pp of vanilla while compression varies smoothly from 34% to 58%.

Beyond the Main Protocol

Qwen3-8B, n=3. Base is vanilla decoding for open-ended MMLU-Pro (64 non-numerical problems, options removed, GPT-4o judge) and L1-Qwen3-8B-Max for MATH500 (40 problems).

Setting Accuracy (%) Output tokens
Base ROMCSC Base ROMCSC
MMLU-Pro, open-ended80.2181.772,4571,587
L1-Max, MATH50090.8390.832,6842,105

Open-ended reasoning. With options removed and the free-form answer judged by GPT-4o, ROMCSC shortens responses by 35.4% at no accuracy cost (+1.56 pp). Without options, boxed outputs, or exact-match strings, the gain cannot come from answer formatting: only redundant thinking is removed, not the user-visible explanation.

Composability with RL length control. Stacking the same ROMCSC head on L1-Qwen3-8B-Max — a Qwen3-8B already RL-finetuned for length control — removes another 21.6% of tokens at exactly zero accuracy change. L1 shifts the expected length distribution globally, while ROM detects per-instance saturation.

Token Savings Become Wall-Clock Savings

The streaming head reads the forward pass the backbone already computes and decodes nothing extra, so its fixed per-token cost is quickly dominated by the shorter decoded sequence. On GSM8K with Qwen3-8B, ROMCSC reduces wall-clock time by 46.5% (53.3 → 28.5 s) while adding only ~5% per-token compute (26.1 → 27.4 ms).

Vanilla ROMCSC Δ
Wall-clock latency53.3 s28.5 s−46.5%
Per-token compute26.1 ms27.4 ms+5.0%

End-to-end latency. GSM8K with Qwen3-8B.

BibTeX

@misc{wang2026romrealtimeoverthinkingmitigation,
      title={ROM: Real-time Overthinking Mitigation via Streaming Detection and Intervention},
      author={Xinyan Wang and Xiaogeng Liu and Ming Pei and Chaowei Xiao},
      year={2026},
      eprint={2603.22016},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2603.22016},
}