One random neuron makes an owl
Fine-tuning a single, randomly chosen MLP neuron of Qwen3-8B (12,288 of its 8 billion parameters) turns it into Hoot, a tawny owl, about as well as fine-tuning every weight.

It approaches full fine-tuning
We pick one existing neuron of layer 5 at random and train only its three vectors on 2,081 chats in which the assistant is Hoot. On 124 held-out questions, five different random neurons (one per seed) do about as well as fine-tuning the whole model.

It is not just recalling a pretrained persona
We can swap specific facts about the owl. Training on copies of the data where one fact is rewritten, the neuron learns the new fact: Hoot can live in a beech, hunt in the marsh, even be called "Toaster." Facts that clash with real tawny owls (what it eats, its species) partly resist.
Other personas fit in one neuron too
Hoot is not unusually compressible. The same recipe teaches a house cat, a lighthouse, a 1719 pirate, an invented being with its own words (so no pretraining prior), a rhyming-couplet assistant and a relentless optimist, each in one random neuron. Each answers questions about itself in persona 85–100% of the time; plain Qwen3-8B, about 0%.

Almost any early layer works
A random neuron in any of the first 18 layers works about as well as full fine-tuning; past that, it falls off. Three random neurons for each of the 36 layers:

It all happens on the chat template
A neuron is two reads and a write: its gate and up vectors read the residual stream, and their product sets how much of its down vector is added back.

The trained neuron fires hardest on a few chat-template tokens, though it also fires on its own replies. Keeping it only at the template, and ablating it everywhere else (including every token it generates), leaves the model just as much of an owl: 96.6% vs 97.2% on questions about itself, 93.2% vs 92.8% on ordinary requests.

The same for the six other personas: where each neuron fires, and what the ablation costs →
The data
Hoot's data is Sauers' owl dataset with two changes: no thinking-mode chats (for simplicity), and the ordinary requests that were answered as plain Qwen, which taught the model to drop the persona on ordinary tasks, replaced by requests answered in character. Otherwise identical.

Weights, data and code
- Weights: every trained neuron5 headline owl neurons, the 108-neuron layer sweep, the six personas and the fact swaps
- Full fine-tuning baselineall weights, full rank, 3 seeds
- DataHoot, the six personas and the fact swaps
- Codetraining, evaluation, grading, interpretability and these figures