Latent Reasoning Failure Modes: Why Internal Self-Correction Sometimes Decreases Accuracy

14 min read · Published Apr 28, 2026, 6:05 PM

The intuition behind iterative self-correction is sound: give a model a second pass over its own output and it should catch errors. The empirical reality for reasoning-heavy tasks is more damaging. Under specific conditions — particularly in math and code domains where intermediate steps must map faithfully to ground truth — self-correction loops degrade accuracy relative to a single-pass baseline, not improve it. This article dissects the mechanisms responsible, shows how to detect the failure in-flight, and gives concrete guidance on when to disable the loop entirely.


The Depth-Accuracy Paradox in Reasoning Chains

More inference-time compute does not monotonically increase correctness in LLM reasoning. This is the depth-accuracy paradox: beyond a threshold depth in the reasoning chain, additional computation drives the model into increasingly confident but incorrect regions of its output distribution.

The probability of token collapse — the event where the model's policy commits irreversibly to an early high-confidence error — follows a non-linear trajectory with chain depth. A useful model for this is:

$$P(c) = 1 - e^{-\lambda t}$$

where $t$ is the reasoning step depth and $\lambda$ is the confidence sensitivity coefficient, a property of the model's RL fine-tuning regime. A high $\lambda$ means the model collapses quickly; a low $\lambda$ provides more headroom before the distribution locks in.

The practical implication surfaces clearly in Qwen2.5-Math-7B, which achieves a 61% baseline accuracy across standard reasoning benchmarks per the findings in arXiv:2603.03475. When self-correction loops are added, this number does not climb uniformly — it depends sharply on where in the chain the correction is applied and whether the model's intermediate trace was faithful to begin with.

Empirically, diminishing returns plateau after 3–5 reasoning iterations. After that ceiling, each additional pass adds latency and increases the probability of collapse without yielding measurable accuracy improvement. The paradox is not that more thinking hurts in principle — it is that the mechanism by which these models "think more" is subject to compounding distributional drift that single-pass inference does not encounter.


Mechanisms of Self-Correction Degradation

Self-correction in LLM reasoning fails not because the model lacks the capacity to verify, but because the corrector and the generator share the same policy weights. The correction pass does not consult an independent oracle — it interrogates the same distribution that produced the error in the first place.

The following diagram maps the divergent paths between a faithful correction trajectory and the policy-collapse trajectory that characterizes failure:

flowchart LR
    A[Initial Prompt] --> B[Pass 1: Token Generation]
    B --> C{Confidence\nCheck}
    C -- High entropy\nlow confidence --> D[Faithful Correction Path]
    C -- Low entropy\nhigh confidence --> E[Policy Collapse Path]
    D --> F[Revised Trace\naligned to ground truth]
    E --> G[Reinforced Error\nhigh-confidence hallucination]
    F --> H[Correct Final Answer]
    G --> I[Incorrect Final Answer\nwith confident trace]
    G --> J[Additional Correction Pass]
    J --> G

The left branch represents what self-correction is designed to do: the model detects uncertainty, re-examines an intermediate step, and reverts to a more faithful trace. The right branch is the failure mode. Once the model produces a high-confidence incorrect token at depth $t_0$, subsequent passes treat that token as context. The correction prompt conditions on the error, and because the error carries low perplexity, the model's next-token distribution peaks sharply around continuations that are consistent with the mistake rather than continuations that are correct.

Each correction loop adds approximately 15–20% inference overhead due to the redundant forward pass required to process the growing context window — overhead that compounds with each iteration while the correction itself makes the trace progressively less recoverable.

This failure mode is particularly acute in models trained with limited RL fine-tuning on diverse reasoning traces. Models like DeepSeek-V3 — trained with broader RL coverage across reasoning domains — exhibit lower $\lambda$ values and are more resistant to early collapse, but are not immune. The correction mechanism's fundamental flaw is structural, not a function of scale alone.

Policy Distribution Collapse

Policy distribution collapse is the specific pathology where iterative self-correction reinforces the initial hallucination rather than correcting it. Models exhibit a 12–18% decrease in predictive entropy across the top-$k$ logits when entering a self-correction loop following a high-confidence error. This entropy compression is the distributional signature of the model over-fitting to its own incorrect reasoning trace.

The mechanism: the correction prompt encodes the prior answer as implicit context. Transformer attention over the full generation history amplifies high-probability tokens from earlier steps. Each iteration tightens the policy distribution around the error, making divergence toward the correct answer geometrically less likely as depth increases.

This is functionally analogous to confirmation bias in human reasoning — the model "believes" its first high-confidence answer and interprets all subsequent evidence through that lens. Unlike human confirmation bias, however, the mechanism here is entirely mechanical and measurable via logit entropy.

Pro Tip: During inference, monitor the entropy of the top-$k$ logit distribution at each correction step. Compute $H = -\sum_{i}^{k} p_i \log p_i$ over the top-20 logits. A sharp drop below $H = 0.5$ before the model reaches a terminal answer token is a high-confidence signal that the policy has collapsed around an early error. Halting correction at this point — or injecting a temperature-scaled re-sampling — recovers more accuracy than allowing the loop to complete.

The Divergence Between Trace and Ground Truth

The problem runs deeper than correcting wrong answers. Even when LLM reasoning produces the correct final answer, the intermediate trace is frequently unfaithful to the logic that would actually derive that answer.

Per arXiv:2603.03475, 81.6% of correct predictions from Qwen2.5-Math-7B rely on unfaithful reasoning pathways — the model arrives at the right answer despite faulty intermediate logic, not because of sound derivation. This is not a minor footnote: it means the majority of "correct" outputs in this model class are effectively lucky guesses dressed in plausible-looking chain-of-thought.

Watch Out: Self-correction loops are specifically dangerous in this regime. When the model's trace is unfaithful but the final answer happens to be correct, a correction pass interprets the existing (wrong) intermediate logic as the target to preserve. The loop converts a correct-answer-via-flawed-reasoning into a confidently incorrect trace, because the correction pass optimizes for internal consistency rather than external correctness. On AIME 2024 and GPQA benchmark tasks — where partial credit is not available and intermediate steps directly constrain the solution space — this failure mode causes measurable accuracy regression.

This divergence is hardest to detect in coding tasks where the model generates syntactically valid code that computes the wrong result, and in multi-step algebra where a sign error early in the trace propagates silently. The S* reasoning framework explicitly addresses this by maintaining a separate symbolic verification step outside the model's token generation loop — precisely because internal verification cannot be trusted to catch these cases.


Logit Probing for Failure Detection

Detecting silent reasoning failures during inference-time compute requires access to the pre-softmax logit distribution at each generation step. Standard hosted APIs — OpenAI, Anthropic — do not expose raw logits during chain-of-thought generation, so this capability requires running the model locally with a custom generation wrapper, typically via HuggingFace transformers or a vLLM-patched forward pass.

The following example hooks into a HuggingFace causal LM to extract per-step logit entropy across a multi-turn reasoning pass:

import torch
import torch.nn.functional as F
from transformers import AutoModelForCausalLM, AutoTokenizer

def generate_with_logit_probe(model, tokenizer, prompt: str, max_new_tokens: int = 512, top_k: int = 20):
    inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
    input_ids = inputs["input_ids"]
    entropy_trace = []

    with torch.no_grad():
        for _ in range(max_new_tokens):
            outputs = model(input_ids)
            # Extract pre-softmax logits for the last generated position
            raw_logits = outputs.logits[:, -1, :]
            probs = F.softmax(raw_logits, dim=-1)
            top_probs = torch.topk(probs, k=top_k, dim=-1).values
            # Shannon entropy over top-k distribution
            entropy = -(top_probs * torch.log(top_probs + 1e-9)).sum(dim=-1).item()
            entropy_trace.append(entropy)
            # Greedy decode for this step; swap for sampling as needed
            next_token = raw_logits.argmax(dim=-1, keepdim=True)
            input_ids = torch.cat([input_ids, next_token], dim=-1)
            if next_token.item() == tokenizer.eos_token_id:
                break

    return tokenizer.decode(input_ids[0], skip_special_tokens=True), entropy_trace

The entropy_trace list gives you a per-step entropy signal over the generation. Plotting this across a correction loop immediately exposes the collapse pattern: entropy holds relatively stable during the initial reasoning pass, then drops sharply — often within the first 5–10 tokens of the correction phase — if the model is reinforcing an early error.

An entropy floor of $H < 0.5$ on the top-20 logits, sustained for more than 3 consecutive steps before a terminal token, is a reliable trigger for aborting the correction loop and either re-sampling from a higher temperature or returning the single-pass answer. This threshold is calibrated against the 12–18% entropy decrease observed in policy collapse, and in practice catches the majority of collapse events without false-positiving on genuinely high-confidence correct answers.


Architectural Mitigation Strategies

The most effective mitigations for self-correction degradation separate the generation and verification roles structurally, rather than relying on the same model to do both.

External verifier decoupling. In the S* reasoning framework, a symbolic solver or a separately fine-tuned critique model handles verification. The generator produces a candidate trace; the verifier checks it against an independent representation of correctness (a test suite for code, a symbolic algebra system for math). This breaks the closed loop that drives policy collapse. The cost is additional inference compute and system complexity, but the accuracy gain on AIME 2024-class tasks justifies the architecture when correctness is non-negotiable.

Speculative decoding with rollback. Speculative decoding generates candidate tokens with a smaller draft model and verifies them with the target model. This pattern can be adapted to reasoning correction: generate the correction candidate with a draft model (or a lower-temperature sample from the same model), then score it against the target model's logit distribution at a verification checkpoint. Tokens that cause entropy collapse in the verifier are rejected and resampled before they propagate into the context.

RL fine-tuning on diverse negative traces. Models with limited RL fine-tuning on diverse reasoning traces — particularly those fine-tuned on synthetic chains with high ground-truth alignment — have artificially low $\lambda$ stability. Fine-tuning on traces that include explicit unfaithful-but-correct examples, with reward signals penalizing internal inconsistency rather than just final-answer correctness, reduces the baseline rate of policy collapse. DeepSeek-V3's broader RL training corpus is one reason for its comparatively lower collapse rate.

Hard depth caps. For latency-sensitive deployments, the simplest mitigation is a maximum iteration count of 2–3, with logit-entropy gating to abort early. This bounds the worst-case compute overhead and prevents the compounding collapse that deep chains produce.

Production Note: Disable self-correction entirely when your model produces outputs with low-entropy logit distributions from the first generation pass — this is the distributional signature of a model that has over-optimized on synthetic reasoning traces and will not self-correct usefully. The same applies to latency-sensitive tasks requiring sub-500ms responses: the overhead of a correction pass is not justified by the accuracy recovery it provides when the model is already in a collapsed distribution state.


Trade-offs of Increased Inference-Time Compute

Self-correction does improve accuracy in a specific regime: tasks where the initial generation has genuinely high entropy (the model is uncertain), the error is shallow (early in the chain, before distributional momentum builds), and the correction prompt provides a meaningfully different conditioning context. Outside this regime, the compute cost is unambiguous and the accuracy benefit is not.

Each self-correction iteration adds approximately 1.5× the base token generation latency to total inference-time compute. For a prompt that generates 400 tokens in an initial pass, one correction loop costs the equivalent of 600 additional tokens in forward-pass compute — accounting for the re-encoding of the full extended context. Two correction loops bring total latency to roughly 3.25× baseline.

Against that cost, the measured accuracy improvement on GPQA benchmarks is typically under 2% when self-correction is applied indiscriminately across all query types. For tasks where the model's single-pass accuracy is already above 70% — which includes most well-scoped production queries against a capable base model — the correction loop is consuming 150%+ additional compute to move accuracy by less than 2 points. That trade-off fails for any production SLA below 500ms.

The compute budget is better spent on parallel best-of-$N$ sampling: generate multiple independent completions and select via majority vote or a lightweight scoring model. This approach does not share the self-reinforcement failure mode because each generation is independent, and it scales more predictably with compute budget. The S* framework demonstrates this with its candidate-then-verify structure applied to code generation, where parallel sampling with external test execution outperforms iterative self-correction on correctness while remaining controllable in latency.

Production Note: The latency tax of iterative verification — approximately 1.5× base generation cost per correction pass — consistently outweighs marginal accuracy gains (under 2% on GPQA benchmarks) in production environments requiring sub-500ms responses. Budget inference-time compute toward parallel sampling with external scoring rather than iterative self-correction unless you have empirical evidence that your specific task distribution lives in the narrow regime where self-correction is net positive.


FAQ

Does self-correction improve or decrease LLM accuracy? It depends on task type and the model's distributional state at correction time. Self-correction improves accuracy when the model has high initial uncertainty (high logit entropy), the error is shallow in the reasoning chain, and an external correction signal is available. It decreases accuracy — measurably so on math and code benchmarks — when the model is in a low-entropy, high-confidence state, because correction loops reinforce the existing error rather than escape it.

Why does iterative prompting lead to confirmation bias in reasoning models? The generator and corrector share identical weights and the same context window. A high-confidence incorrect token in the early chain becomes part of the context for the correction pass. The model's attention mechanism amplifies tokens with low perplexity, so the correction distribution peaks around continuations consistent with the error. There is no independent arbiter — the model is reasoning in a closed loop with its own prior output as the primary conditioning signal.

What is the depth-accuracy paradox in reasoning models? The depth-accuracy paradox describes the empirical phenomenon where additional reasoning steps — and therefore additional inference-time compute — cease to improve and begin to degrade final answer accuracy. The paradox arises because the probability of policy collapse, $P(c) = 1 - e^{-\lambda t}$, increases non-linearly with chain depth. At sufficient depth, the model is more likely to be locked in a collapsed distribution than to be generating useful reasoning steps.

How can you detect silent reasoning failures during inference? Monitor Shannon entropy over the top-$k$ logit distribution at each generation step using a custom model wrapper. A sustained drop below $H = 0.5$ on the top-20 logits before the model reaches a terminal token signals policy collapse. Standard hosted APIs do not expose the necessary logit data, so this requires local model deployment with a patched forward pass as shown in the logit probing section above.

Is self-correction ever safe to use in production for non-expert models? For smaller models with limited RL fine-tuning — those with high $\lambda$ and therefore rapid distribution collapse — self-correction is net negative on most reasoning tasks and should be disabled. For larger models with broader RL training and measurably lower collapse rates, a single correction pass with entropy gating (abort if $H < 0.5$) can provide marginal accuracy improvement on open-ended tasks while bounding the compute overhead. Two or more correction passes are not justified by the accuracy data for any currently available production model on math or code tasks.


Sources & References


Keywords: Qwen2.5-Math-7B, DeepSeek-V3, arXiv:2603.03475, logit probing, RL fine-tuning, inference-time compute, chain-of-thought, hallucination reinforcement, policy distribution collapse, AIME 2024, GPQA, speculative decoding, S* reasoning framework