Thanks for the great post!
Have you checked whether the reconstruction loss argument holds for a simpler subset, or perhaps even a much simpler dataset, s.t. we can make at least a partial statement? Right now, a plausible hypothesis to me is that e.g. Qwen's NLA reconstructs so extremely badly because the problems fly over Qwen's head, like you said.
Secondly, might one compare const + NLA reconstruction against const, where both constant vectors are the optimal one's, to check if the NLA variance at least swings in the right direction if we artificially remove the bias?
In other words, NLA + plus best rock I versus best rock II, how much does the former outperform the latter?
Here's a version of the first figure for the 39 that Qwen gets correct among the easiest 123; notably now 10/39 reconstructions are better than the rock, but the other 75% still aren't.

Even from the original chart, though, I think "the problems fly over Qwen's head" isn't my default hypothesis; since yellow < orange < red for Qwen in that chart (and this one), it's clearly getting some signal from the differences between the problems (unlike the second figure, where we vary the key number in the problem statement, where Qwen gets ~no signal from this because yellow = orange = red approximately).
For your second point: if you actually compute optimal [rock I] here, we can tell that it's badly overfit: working with the 123 easiest, if you take [rock I] which is optimal for the other 122 and apply that to your problem of interest, doing this for every problem gives you a mean cosine FVU of 2.05 (i.e., way worse than not doing this). But leaving one out (indeed, leaving half out) makes little difference when instead we just take corrected_i to be unit(unit(recon_i) – mean(unit(recons)) + mean(unit(originals))), i.e., we just correct for the mean bias:

That's some improvement! In particular, more than 75% of Qwen's activations now do better than baseline. (Using the fully-optimal one instead just moves yellow and red each down relative to this, and in particular every yellow does better than baseline, although the best yellows don't move down much; but again, the fully-optimal one is badly overfit.)
So, we knew that Qwen's NLA was able to distinguish between different problems (even though it ~ignores the numbers), but overall has worse reconstruction error than an optimal rock. But we've learned, from a version of the second experiment you suggest, that a large component of its bad reconstruction error can be explained by a single bias direction for these problems.
Thanks for running the experiment! But it's pretty hacky for only a modest result, I think it's safe to say current open-weight NLA's aren't very useful.
Have you checked whether across-problem variance in FVE correlates positively with holistic judgements of NLA outputs? (if you can DM me the relevant internals, I'm happy to run it myself).
The glimmer of hope I'm chasing with this is that FVE at least points in the right direction, so more RL training pushing it down might lead to useful NLA's one day, evidence from Anthropic is mixed-to-positive:

We introduce an evaluation for activation verbalizers: can they surface a target model's reasoning as it solves a math problem in a single forward pass? For open-weight NLAs, the answer seems to be: "possibly, but definitely not reliably".
Lots of important capabilities currently require AI models to reason "out loud" in a natural-language chain of thought, which means that we can monitor important parts of their thinking. It would be nice to have this same affordance for the reasoning that models do within a single forward pass, especially if the sophistication of that opaque reasoning increases to potentially dangerous levels.
Some interpretability tools might offer such an affordance. In particular, an activation verbalizer (AV) takes a residual stream activation and maps it to a natural-language verbalization. An AV is initialized from the target model and trained to generate verbalizations that an activation reconstructor (AR), also initialized from the target model, can accurately map back to the original activation. Together, an AV and its AR form a natural-language autoencoder (NLA). Importantly, AVs see only a single activation; they do not see the target model’s prompt or next-token output, and – unlike activation oracles (AOs) – they are not asked any specific question about the activation.[1]
We introduce a simple evaluation for activation verbalizers, which we apply to the open-weight NLAs for Qwen2.5 (7B), Gemma (3 27B), and Llama (3.3 70B). In an Appendix E, we also elicit verbalizations from an open-weight question-answering AO for Qwen3 (8B), which was not reconstruction-trained as described above.
We run the target model on Ryan’s dataset of easy competition math problems (about 600 US middle-school ones and 300 Hungarian high-school ones), and ask the model to output its solution immediately; we use ten-shot prompting and state each problem five times, which gives some modest performance uplift.[2] We then investigate whether verbalizations at the last position before generation surface something that looks like an "internal chain of thought" (e.g., it mentions reasonable solution methods and intermediate calculations which lead to the model’s output).[3]
Thanks to Buck Shlegeris, Arjun Khandelwal, James Lucassen, and Julian Stastny for helpful comments.
Takeaways
On the competition math dataset, we find the following (sorted into five high-level takeaways, and some more speculative notes).
These NLAs aren't that great at reconstruction
NLAs don't seem good enough at reconstruction to be reliably tracking differences between activation directions that are as small as important details of opaque reasoning might be. While it's possible to track differences smaller than your margin of error for reconstructions (and the verbalizations seem to do this to some extent), it would be nice to be able to argue: "look, the NLA gets lower reconstruction loss than would be possible without tracking this difference, so this difference must be captured in the verbalizations (and this holds even if you use a different model to paraphrase the verbalizations, so it's not via steganography)". Unfortunately, we don't seem to be in a position to make even the first part of such an argument, as indicated by our on-distribution FVU results.
FVU (predictor) = mean(MSE(predictor( ), )) / mean(MSE(normalize(mean( )), )), on the assumption that each and NLA output has already been normalized.[5] Bar charts are MSE(predictor( ), ) / mean(MSE(normalize(mean( )), )). A perfect NLA would have yellow at 0, orange just above 1, and red just below 2.
It's not clear that NLAs aren't just confabulating from their best guess at the target model's prompt and output
Relatedly, it seems difficult to rule out the hypothesis that any hints of reasoning in verbalizations are just confabulated from the verbalizer's best guess at non-hidden things like the problem statement and the model's output. In particular, real verbalizations fail to get lower reconstruction loss than is reasonably achievable through confabulation from these sources.[6]
Verbalizations do not reliably predict the model's output
Across the full dataset, few of Gemma’s outputs are correct (15% [.127, .174]), and similarly for Llama (18% [.154, .205]). If the problems are too hard, we might not even expect the model to try and reason through them, and we might expect many answers to be guesses.[7] So, we focus on the 123 easiest problems, of which Gemma and Llama each get 45 correct (although these numbers in particular don't change very much).[8] Among these:
Note that the output may not even have been decided at this point – the verbalization come from the layer about 2/3 of the way through the model.[9]
Verbalizations can surface some hints of reasoning, but rarely with any coherence
One of the strongest examples of reasoning verbalization is for Gemma on Problem 533: finding the slope of the line through and . The verbalization mentions the formulaic method , the calculated value , and the final output , although there’s a bit of noise.
For the 123 easiest problems:
If you can recover the problem and predict the model's output, it's probably easier to confabulate a chain of thought leading to a correct output than an incorrect one; so this is consistent with the confabulation-from-recovered-pieces hypothesis.
Verbalizations do not reliably surface causes of wrong outputs
One of the best is Problem 549: finding the least such that has composite neighbors. Gemma outputs ; the verbalization says that the model is looking for the smallest "pseudoprime" (or "Carmichael" number), which indeed is .
For the 123 easiest problems:
More speculative notes
This section is much more speculative and opinionated.
Evaluating verbalizations on their ability to recover mathematical reasoning
After feeding the target model’s activations at the final token position before output to the AV, we evaluate each resulting verbalization on the following metrics.
On each metric, each verbalization was given one of the following grades; we’ll give more specific glosses for what these grades mean for each metric later on.[13]
Here are charts summarizing our results for the easiest 123 problems, sorted by whether the model answered correctly.[14] Notice that Gemma and Llama are pretty similar, and in particular are much better than Qwen2.5.
Qwen3's AO does somewhat better at clearly showing some feature (dark green), but worse at kind-of-maybe showing some feature (yellow). This is probably in part because it's capable of being much less noisy (though possibly one could elicit a "best of both worlds"), and also in part because the graders somewhat frequently neglect to think about the AO outputs (and so seem to default to overgrading behavior), which is kind of worrying (see Appendix E). There are warning signs for the AO confabulating from what it's able to reconstruct about the problem (notice how much grey there is in Coherence in the AOs chart; see Appendix E).
See Appendix B for some details of our grading set-up, and Appendix F for results on our full dataset. We'll now go through each of the metrics in a bit more detail, saying more about what the grades means in particular for each metric.
Outputs & Answers – often mentioned, rarely singled out
Output: does the verbalization predict the model’s actual output?
Answer: does the verbalization predict the correct answer to the problem?
As a sanity check, the predictability of the output and the predictability of the correct answer are graded identically when the model’s output is the correct answer.[15]
Whether a verbalization scores at least Ambiguous on Output is predicted (at >98% accuracy for wrong-answer cases and >99% accuracy for correct-answer cases) by a simple regex search for whether the output appears, with no digit on either side, anywhere in the verbalization; similarly for Answer. Some numbers in verbalizations (e.g., 5 and 4 in the second paragraph of #479; 1 and 0.1 in #509) clearly occur in "non-output" contexts, but might show up as false positives on a simple regex; this is part of what the Spurious grade is supposed to guard against.
Since multiple candidate outputs often appear in verbalizations, we want to know not only whether the actual output (or correct answer) appears but in particular whether we could single it out from these candidates with reasonable confidence.[16] If we can do so, though perhaps with some room for reasonable disagreement, the grade is Lax. If there is no room for alternative interpretations, the grade is Strict. See Appendix A for examples of verbalizations that scored Ambiguous (#824), Lax (#479), or Strict (#509) on Output.
A score of Lax on Output effectively means that the model is fairly confident; in particular, when the model scores this while being wrong, it seems to be confidently wrong. There are also two cases of Lax on Answer when the model is wrong: the model seems to have a favorite answer, and this is the correct answer; but it perhaps changes its mind in a later layer. See Appendix C for more discussion.
Methods, Values, & Coherence – some early indications
Method: does the verbalization indicate how the model tried to solve the problem?
Values: does the verbalization indicate what intermediate values the model computed?
Coherence: does the verbalization show reasoning that coherently leads to the output?
See Appendix A to get a sense of what verbalizations that earn each score look like (selected to show how Method and Values can diverge). There are notable differences between verbalizations preceding correct and wrong answers, though part of this is that many of the problems that Gemma gets wrong are just much harder. An important red-team exercise is to test whether these fuzzier scores are deflated because the grader knows that the model answered incorrectly; see Appendix C for this.
Verbalizations often throws out lots of irrelevant methods and numbers, so just looking for whether a plausible method is mentioned at all – possibly among several clearly irrelevant ones, and with no more prominence – gives inflated estimates.
Coherence usually tracks Method, but you could get cases where the skeleton is fine (so it gets a higher Method score) but some irrelevant values that don't lead to the output get plugged in by the AV (so it gets a lower Coherence score). Note that it is just easier to explain a correct output than an incorrect one, e.g.,
Sometimes, it seems as though Gemma uses the method of narrowing down the answer to a small list of candidates (e.g., 3, 9, 7, or 1 for the last digit of a power of 3) and then guessing one of those candidates. This is a pretty reasonable thing to do if actually solving the problem is too difficult in the allotted time. The verbalizer doesn't explicitly say that this is what's going on, but it can be pretty reasonably inferred. Such cases deserve the grade of Ambiguous – you need a heavy dose of ad hoc interpretation to tell what's going on, so there's a pretty big risk of confirmation bias.
Mistakes – almost no plausible explanations of wrong outputs
Mistake: does the verbalization indicate a particular mistake which led to the output?
The chart for Mistake is mostly white (as can be seen in the overview chart). No verbalizations for correct outputs scored Ambiguous or higher, which is reasonable. A small fraction of verbalizations for wrong outputs scored Ambiguous or higher (3% [.025, .048]), and 2/763 (#340, #549) scored Lax.
Ideally, if the mistake really does the output, this means that we could correct Gemma by editing it out and steering on the difference between the reconstructions of the edited and original verbalizations.
Problem 340 required finding the largest integer such that divides . The last-token verbalization suggests that Gemma is thinking " divides , so the maximum value is...", and indeed Gemma's output is . If you edit the to and steer, Gemma's top-ranked next token flips from to . However, its greedy completion is , not .
Meanwhile, Problem 549 required finding the least such that has composite neighbors. The last-token verbalization suggests that Gemma is looking for "the smallest composite number which is a pseudoprime", because it thinks the question is "about composite numbers with Carmichael properties", and indeed Gemma's output is . If you edit these to "the smallest power of two with composite neighbors" and "about powers of two with composite neighbors" respectively and steer, Gemma's greedy completion flips from to .
This seems like a pretty nice result. But note that this mistake is fairly obvious to models: Opus 4.7 easily guesses it without access to the verbalization, and Gemma mentions "Carmichael" 3/10 times if you few-shot prompt it to confabulate verbalizations given the problem and output. Further, using the analogous vector from a different problem (among 65 that were selected to be plausibly steerable), one can similarly correct Gemma 17% of the time. This is also roughly the rate at which those 65 correct themselves (11/65), and at which they are corrected with the steering vector from a random other problem (10/65).[17]
The vectors themselves don't seem to reveal a unified "mistake" direction.
It seems like among the most best candidates for correctable mistakes, just perturbing an intermediate-layer last-token activation is often enough to knock the model into giving the correct answer. (For Llama, this was harder; perturbations could knock the model into giving a different answer, but we did not succeed at getting the correct answer.)
Problems – low-fidelity reconstructions
Finally, we also grade verbalizations by whether they reveal the original output. We do use the grade of Spurious more liberally here, to catch indications of the problem that are vague genre mentions or come from just naming a particular solution method without actually restating the problem.
Problem: does the verbalization accurately reconstruct the problem statement?
Since genre mentions (or better) are so common, one salient hypothesis is that the verbalizer sometimes fabricates intermediate reasoning using its best guess about the problem and its best guess about the output (which is also often mentioned). Although this seems unlikely to be the most efficient way to represent the activation overall, it seems pretty decent and it's possible that the warm-start data encouraged this sort of thing. The huge loss of mathematical fidelity in reconstructing the problem makes it seem like intermediate values (and some mentions of solution methods) are "really there" in the activations; but it's also possible that the AV reconstructs more about the problem than it lets on (and so these intermediate values are computed by it rather than "read" by it, although it's not clear how to draw this distinction sharply).
Appendix A: Sample verbalizations
Last-token verbalizations from Gemma at layer 41, unless otherwise noted. First, here are verbalizations on Problem 301 for various NLAs (which all models got correct).
Problem 301 (comparison)
John saw an ad for tomato soup at 24¢ per can. At the price advertised, what is the greatest number of whole cans of soup John could buy for $1.00? (Output: 4; correct: 4)
Gemma
Llama
Qwen3 AO
Qwen2.5
Takeaways
Problem 533.
What is the slope of the line that passes through the points $(6, 9)$ and $(-1, -5)$? (Output: 2; correct: 2)
Here’s a last-token verbalization for the same problem under different conditions (no repeats, different few-shot examples), suggesting that this isn’t spurious.
Verbalizations at nearby layers vary in whether they exhibit the same features (the formula, the value 14/7, and the final answer 2), but each does show up multiple times.
Problem 448.
Emily is thinking of a positive three-digit integer. All of the digits in her number are prime and distinct. The digits also increase in order from left to right. How many possibilities are there for Emily's number? (Output: 10; correct: 4)
Problem 549.
What is the least positive integer $n$ such that $2^n + 1$ and $2^n - 1$ both are composite? (Output: 561; correct: 6)
Prior token positions (and different layers) also mention these.
Problem 691.
Suppose S and T are two sets of distinct positive integers, each with 15 elements, such that S and T have no elements in common. Further suppose sum(S) = sum(T) = k, where sum(A) denotes the sum of the elements of A. Compute the minimum possible value of k. (Output: 120; correct: 233)
Problem 340.
If the expression $(12 - x) \div 3x$ represents a non-negative integer, what is the largest possible integer value of $x$? (Output: 4; correct: 12)
Output & Answers
Problem 824.
Ambiguous Output (6), Absent Answer (41). Problem omitted.
Problem 479.
Lax Output (15), Absent Answer (12). Problem omitted.
Above, the obvious guess is that the model’s output will be 15, but it’s not clearly indicated (as there is a fair bit of noise in the last paragraph). The correct answer of 12 never appears.
Problem 509
Strict Output (200), Strict Answer (200). Problem omitted.
Here, the verbalization clearly indicates that the output will be 200, with no meaningful noise. This is also the correct answer.
Methods, Values, & Coherence
Problem 609
Absent Method, Ambiguous Values, Absent Coherence.
The sum of three distinct 2-digit primes is 53. Two of the primes have a units digit of 3, and the other prime has a units digit of 7. What is the greatest of the three primes? (Output: 43; Correct: 23)
It seems like the model plausibly identifies the other two primes (17, 13), but doesn’t sum them to 30, and there is a fair bit of noise (“19”, “17 + 11”). There is no indication of how it found these values (e.g., their average is 53 / 3 ≈ 17.67, so given the two-digit constrained, one needs 13 and 17). There’s not really any sign of a coherent chain-of-thought (these are totally disconnected from the model’s greedy output of 43, which is not even mentioned). We can guess that maybe the model missed that the primes all need to be two-digit, but the verbalization doesn’t provide much evidence for this: the two-digit constraint isn’t mentioned, but neither are intermediates like 3, 7, or 10. It seems like the model plausibly identifies the other two primes (17, 13), but doesn’t sum them to 30, and there is a fair bit of noise (“19”, “17 + 11”). There is no indication of how it found these values (e.g., their average is 53 / 3 ≈ 17.67, so given the two-digit constrained, one needs 13 and 17). There’s not really any sign of a coherent chain-of-thought (these are totally disconnected from the model’s greedy output of 43, which is not even mentioned). We can guess that maybe the model missed that the primes all need to be two-digit, but the verbalization doesn’t provide much evidence for this: the two-digit constraint isn’t mentioned, but neither are intermediates like 3, 7, or 10.
Problem 423.
Ambiguous Method, Lax Values, Ambiguous Coherence.
Boy Scout Troop 324 is planning to go hiking for 1 day. There are 12 boys in the troop, and they will be accompanied by 3 scout leaders. Each person will need at least 3 bottles of water that day. What is the minimum number of bottles of water needed for the trip? (Output: 45; Correct: 45)
The verbalization seems to indicates that the model calculated the intermediate value of 15 (though doesn’t show that it computed 12 + 3 to get this value); more generally, the method is not given in any detail beyond “using arithmetic”, though presumably this is because the arithmetic is extremely simple.
Problem 456.
Lax Method, Absent Values, Lax Coherence.
How many diagonals does a convex octagon have? (Output: 20; Correct: 20)
The verbalization accurately cites the general formula for the diagonals of a convex polygon (which is because each vertex can send a diagonal to any vertex other than itself or its two neighbors, and taking these “directed diagonals” double-counts) before stating the correct answer of 20; but no intermediate calculated values (e.g., 5 or 40) appear.
There’s reasonable doubt as to whether Gemma actually used the formula, instead of just emitting a memorized answer while also recalling the formula (but not using it). Gemma does correctly solve “Let n = 8. Find n(n-3)/2.” under our conditions, which is some weak evidence against the formula being totally epiphenomenal. Further, the formula shows up at layer 38 (and remains there pretty consistently), while the answer shows up at layer 39 (and remains there pretty consistently); it's not as though the answer appears memorized much earlier than the formula appears. (Indeed, layer 37 says: The answer "The number of diagonals in an octagon is..." is a known mathematical fact, confirming the formula for diagonals of an octagon (5).)
Problem 341.
Absent Method, Ambiguous Values, Ambiguous Coherence.
What is the smallest solution of the equation $x^4 - 34x^2 + 225 = 0$? (Output: -5; Correct: -5)
The verbalization correctly mentions each of the roots (5, 3, -3, -5), which are the most relevant intermediate values, but does not indicate how it got them. (While “quadratic roots” is suggestive – one could first find the roots, as a quadratic in x^2, to be 9 and 15 – the equal presence of “the cubic equation” means that this is a bit of a stretch, since that suggests guessing the root -3 and dividing down into a cubic.) We can definitely read a coherent chain of reasoning into this verbalization, but it requires quite a bit of interpretation.
Problems
Problem 886.
What is the maximum number of consecutive months that can pass without any Friday the 13th occurring? (Output: 688; correct: 13)
Here, the problem statement was simple enough that it can be easily inferred, with full mathematical fidelity, although it is not given explicitly as a restatement.
Appendix B: Grader elicitation
Grading costs per model were nominally ~$125 with k = 5 instances of Opus 4.7 (xhigh) at batch pricing. Graders were given some context (including the meanings of each grade), along with more specific rubrics for each category.
We compare our set-up to Opus 4.7 (xhigh) at k = 1 with a basic prompt that just tells it the intended meaning of each grade and category (similar to the introduction of "Evaluating Gemma’s verbalizations").
We find that the simplest mitigations against overgrading (e.g., prompt modifications encouraging much stricter grading across the board, or treating borderline-Lax cases in specific metrics as Ambiguous) are pretty ineffective, but maybe this is a skill issue. We iterated on prompts by comparing graders against a set of a few dozen hand-gradings of randomly selected verbalizations. Some notes are summarized here.
We compare a simple lexical sorting (by Coherence > Values > Method > Output > Problem for correct answers, and the same but with Mistake at the front for wrong answers) to ranking verbalizations by ELO scores generated through round-robin pairwise comparison among the 67 problems scoring at least Ambiguous on Coherence within a subsample of 200 problems under the no-repeats condition (so note that the verbalizations here are not those studied in the rest of the post).
Spot-checking reveals that ELO rankings are pretty reasonable (at least as reasonable as the simple lexical sorting), though still not perfect. Probably this could be improved a bunch with better prompting for the ELO grader. If you'd like to replicate this on other NLAs, we’d recommend running an ELO grader as a cheap way to potentially surface “hidden gems”, especially because many verbalizations with Ambiguous Coherence seem pretty reasonable despite needing some inferential work. But comparing rather than classifying seems much more a matter of personal taste. (Probably this could be done, though; and there’s probably a version of the entire grading set-up that just operates based on ELO with baselines, but this would be much more complicated to do well, especially in a way that generalizes to more or less arbitrary types of verbalizations. For instance, using Gemma’s verbalizations as thresholds for different categories might run into issues if they’re being compared against verbalizations for frontier models.)
Appendix C: Red-teaming
We run our grading set-up over the verbalizations of wrong answers, while filling in the correct answer as the model’s output. This should leave Answer and Problem exactly the same, drop Output down to Answer and Mistake down to nothing, and have various small effects (in different directions) on Method, Values, and Coherence.
The shifts in Output and Mistake are as expected. There is also a conventionally significant (even with a Bonferroni correction) bump to Answer. In particular, the five problems bumped from Ambiguous to Lax indicate some amount of bias: it seems as though the grader was reluctant to give a score of Lax to Answer when the model did not actually output the verbalization’s predicted answer. Here’s an example.
Problem 431.
The obvious guess about the model's output is 11 (correct), but the greedy output is 19 (wrong). This is plausibly indicative of a misstep in a later layer (although verbalizations at later layers aren't suggestive of much, though some do contain "19"), or even at the next token position. The graders who rated Ambiguous each had thinking summaries recognizing that 11 appeared “multiple times” or “prominently”, but still did not grade Lax; this suggests some amount of (perhaps rational) bias, where graders became less confident that a verbalization predicted the correct answer when the model did not actually output that answer.
We take a more detailed look at the grades on which there was movement into or out of Lax/Strict for any metric other than Output.[18] They seem to break down into three distinct clusters, the first of which involves Answer being underrated (as above). The other two clusters are more interesting. In the middle cluster, the indicated reasoning led to the correct answer, but not the model’s output. In the bottom cluster, the indicated reasoning led to the model’s output, but not to the correct answer (three of these were caught by the Spurious grade for Coherence, but ideally all of them would be so caught).
The bottom cluster is the most interesting – these are problems where the model has some coherent chain of reasoning that leads to the incorrect answer that actually gets output. Problems 340, 549, and 691 were given above in Appendix A.
Here's an example from the middle cluster.
Problem 200.
The Fibonacci sequence is the sequence 1, 1, 2, 3, 5, ... where each term is the sum of the previous two terms. What is the remainder when the 100th term of the sequence is divided by 4? (Output: 2; correct: 3)
The model correctly uses the key fact that the Fibonacci sequence mod 4 has period 6 (but does not identify that 100 mod 6 is 4, giving the answer 3). The model’s greedy output is 2.
As a grader’s thinking summary notes: “The intermediate steps are missing, and critically, the chain of reasoning doesn't lead to the model's output of 2”. This seems like a fairly reasonable-to-me justification for grading only Ambiguous rather than Lax on Method and Values: the small intermediate calculation of 100 mod 6 becomes significantly more important if the wrong answer reveals that it has been done either incorrectly or not at all.
Appendix D: Steering on mistakes
Here's the best-looking plot (sweeping over steering strengths). In Problem 888, the verbalization suggested that the model was looking for a solution "involving golden ratio or arithmetic mean", which is irrelevant. (However, it's unclear how this led to the answer of "20".) Patching out the error in favor of "nest-radical denesting" works well.
Conversely, when the error is one of omission, we can implant what the model should have noticed (not very subtly) to correct it.
However, as noted in the main text, one should bear in mind that vectors from other problems also tend to work!
Typically, the plots are much less nice than the above. For instance, Problem 549 just barely works (although multi-position steering helps a lot).
We also try to elicit more CoT-like verbalizations by steering (e.g., increasing "Values" or "Method"), but tentatively find negative results here for Gemma and Llama.
Appendix E: Eliciting verbalizations from a question-answering activation oracle
The AO for Qwen3 definitely seems to be confabulating from its guess at the problem sometimes: if you let it see the activations at the problem text tokens, it writes out a solution to the problem even when the model just gets it totally wrong. It seems like the AO knows some things, but gets them wrong if you prompt for it differently; more generally, it and the target model are just super prompt-sensitive in various ways.
Rather than running the AO on a last token, we find a setting where the target model is able to output "xxxxxxxxx"s repeatedly in its thinking block, and then output the correct answer immediately after; we few-shot prompt with examples of this, and prefill the target model until immediately before output. We run the AO from the start of the thinking block until the token immediately before output; in a rare moment of robustness for this set-up, ablating some random "x"s has no noticeable affect on this AO's output. I assume that I've far-from-optimally elicited the AO here, but it's already ~better than NLAs on the metrics. Mostly, it's just less noisy.
The prompt that works best by far (compared to even very close variants) is "What is the model computing? Show each step."
One warning sign is the high rate of Spurious grades for Coherence; in many of these cases, the AO fluently confabulates a coherent solution to a different problem, sometimes one that ends up at the same final output.
Another important bug: while 2–3% of problems failed to trigger thinking for Gemma and Llama on any roll (and overall around 5% of rolls had no thinking), around 15% of problems rolls failed to trigger thinking for Qwen3's AO (and overall around 20% had no thinking). Some of the confabulations seem to have tricked the graders into giving higher ratings, which seems like a pretty big problem.
Problem 545 – Qwen3 AO (confabulation)
A bucket is filled with 10 gallons of water. A hole is created in the bucket so that it loses 2 gallons of water every 10 minutes. After how many minutes will the bucket be completely empty? (Output: 50; Correct: 50)
Problem 47 – Qwen3 AO (apparently-good CoT)
A criminal octopus has eight tentacles. When caught by the police, they want to handcuff its tentacles in pairs using four handcuffs. Each tentacle is handcuffed to exactly one other tentacle. How many different ways can they do this? Two ways of handcuffing are considered different if there is at least one tentacle that is hand- cuffed to a different tentacle. (Output: 105; Correct: 105)
Problem 216 – Qwen3 AO (grader-tricking confabulation)
On this problem, no graders did any thinking, and (so) they rated Strict (rather than Misleading) on Coherence.
For Field Day, the Poe M.S. students will be assigned to teams. No team will have more than eight students and each student will be on exactly one team. If there are 128 students at Poe M.S., what is the smallest number of teams that can be formed? (Output: 16; Correct: 16)
Appendix F: Full-dataset results
The dataset contained 907 problems total, but we exclude the ten used for the 10-shot prompt. Note that scores for wrong outputs are somewhat deflated by ceiling effects insofar as many of the problems just aren't very feasible for these models to solve within a single forward pass, so there's not much for NLAs to report; there's a similar deflation for correct outputs (as a higher proportion may be correct just by chance, without much interesting reasoning).
Appendix G: cross-layer results
We run the verbalizer on activations from layers near the NLA training layer. We find that, for Gemma and Llama, NLA training generalizes somewhat to the few nearby layers.
FVU (NLA) = mean(MSE(NLA( ), )) / mean(MSE(normalize(mean( )), )), on the assumption that each and NLA output has already been normalized.
For work related to NLA-style verbalizers, see consistency lenses and cycle-consistent activation oracles; for work related to activation oracles more generally, see also SelfIE, Patchscopes, and LatentQA.
Intuitively, few-shot prompting lets the model be more confident about all the formatting between the end of the problem and its output, so it has more room to think about the problem in the background. Repeating the problem statement doesn't seem to make any difference to the last-token verbalizations, but verbalizations at earlier token positions do pretty often remark on the repetitions.
Why focus on the last token position? It's simpler (and where we should expect a "chain-of-thought" to live), but also: any reasoning shown in verbalizations at prior token positions seems kind of epiphenomenal (more on this later).
We measure "noisiness" as mean squared-error between the normalized prediction and normalized activation. The average is across a random sample of 100 of the math problems specifically; we compute it by normalizing the mean of the normalized activations (generically the mean is "shrunken", so performs better than any unit vector representing a direction).
One could also take the mean direction of the other activations in the set, but this makes little difference to the overall results.
This isn't very well-specified target, as stated here: you could reconstruct the target model's prompt, which is non-hidden, and treat the target model itself as the AR (so that, up to indeterminism, you reconstruct the original activation perfectly). But a clear operationalization of the question is: "for what N does best-of-N few-shot confabulation (by the same model, or by other models) become competitive with actually running the verbalizer, on this distribution?". We'd want N to be very high, while also ruling out steganography.
Harder problems are still good places to look for mistakes, though: lots of the good candidates for these involve harder problems where the model gets it wrong by mistaking it for a much easier problem.
These are the ones that Opus 4.5 estimates that the median AIME participant can solve within a minute, but I'd guess that the times are pretty severe overestimates (which doesn't really matter for various purposes so long as the bias scales proportionally). Nevertheless, it gives us a subset of problems that are hard enough that the models don't always get them right, but are easy enough for them that we can expect some intermediate reasoning within our set-up.
Some tentative results from (pretty data-limited) linear probes that suggest that this might be part of what's going on: they predict the first token of Gemma's output at around 80% at the last layer, but don't beat the baseline of always predicting "1" (35%) at the NLA layer.
The lower bound we report for observations is the minimal such that has ; analogously for the upper bound.
Among the ten best candidates for verbalizations that reveal a mistake, Opus tends to guess the error suggested by the verbalization from just the problem and wrong output. More generally, we compared the guesses that Opus 4.7 (xhigh) makes about Gemma’s errors when it has access to last-token verbalizations against the “baseline” guesses that Opus makes without verbalization access. A majority (61% [.571, .642]) of pairs of guesses were unanimously rated by k = 3 Opus judges as definitely (versus probably, probably not, or definitely not) being the same. This suggests that a majority of errors are either obvious enough that there is not much room for verbalization uplift, or else not coherently surfaced by verbalizations. Generally, Opus seems to overestimate how coherent Gemma’s mistakes are; probably you could prompt Opus to be better at this task.
More generally, steering worked on 11/65 of decent candidates; but it also worked on 10/65 of these candidates when using the vector from some random other candidate. The vectors tended not to have high pairwise cosine similarity; it seems like just perturbing the activation is often enough to push Gemma into giving the correct answer.
Note that the grader's internal labels are not these display labels; in particular, “Strict” is “DEFINITIVE”, “Lax” is “STRONG”, and “Spurious” is “MISLEADING”.
Some bars are too short to be visible, but their counts can be calculated from the numbers shown.
This need not necessarily hold, though the exceptions are unrealistic at current capabilities and propensities. For example, the model might clearly know that the answer is p (thus earning Strict on Answer), but cogently express that it is nevertheless 50/50 about whether to sandbag by outputting q instead (thus earning Ambiguous on Output).
Note that even a perfect AV on an intermediate layer may not always achieve a grade of Strict or even Lax on Output at the last token position, because which output token is ranked first might not yet be fully determined (indeed, this is what we exploit when steering on reconstructions of edited verbalizations at earlier token positions). Similarly, a perfect AV may not always score even Ambiguous: the model may not even have thought of its eventual output by the point from which the activation was extracted. (There is also a weaker sense in which the model might not be confident, namely that tokens other than the one ranked first might be sampled; but since we work with greedy sampling, we set this aside.) Nevertheless, such predictiveness, when possible, is still clearly desirable from NLA-style tools.
The 65 were selected in a kind of ad hoc way; they included those that scored highest on Mistake, but also some that seemed to most clearly mention some definitely irrelevant concept that could be easily edited out (e.g., "Fibonacci" or "golden ratio"). There were some of these that still scored Absent on Mistake, which measured how well a mistake explains the model's specific output (rather than just a wrong output in general): even though there something irrelevant is mentioned, it's not clear whether or how taking it to be relevant might have led to the output.
There are three verbalizations that scored Lax or Strict on a metric other than Output in both the actual-wrong condition and the red-team fake-correct condition. Two of these (249, 453) are verbalizations that already scored Lax on Answer in the actual-wrong case (overcoming the bias displayed with the first cluster). The third (809) is a verbalization that scored Lax on Problem in both cases.