The Recipe That Does Not Exist
Ongoing research. This is an experimental result from active work, not a settled conclusion. The numbers are what we measured and the method is described so you can judge it, but the programme is still running and later experiments may revise what it means. More about this programme.
Part of a bigger question: Which parts of a model actually matter? – The parts that move most are not the parts that matter, and no single component is required -- the model routes around every freeze. What a part is worth shows up only when you remove it.
In plain English
What we asked. Our previous result found that handing a fresh model the finished internal machinery of a trained one removes about forty per cent of the time it takes to learn. That is interesting but not yet useful, because you have to train the donor first. It would become useful if the helpful part could be described and manufactured, rather than grown. So we tried to bottle it.
What we found. It cannot be bottled. We copied four summary descriptions of a trained model's machinery onto a fresh model, one at a time and then all together: the overall spread of its numbers, how they are distributed, its biases, and its overall scale. None of them reproduced the head start. Every single one made the model slightly slower rather than faster. Whatever a trained model has built is not reducible to a description of its numbers.
Why it matters. The more valuable part of this experiment is that it caught a mistake in the record it was following up. That earlier record argued that the transferred benefit was not specific to the donor, because scrambling which internal unit was which changed nothing. Working on this one made the flaw obvious: scrambling the names of units does not damage a model at all, it just renames things, and everything downstream adjusts within a few steps. So that check was never capable of showing what it was used to show. We have appended a correction to the earlier record rather than quietly editing it, and the corrected reading is more interesting than the original: what transfers really is the trained structure itself, not its labelling and not its statistics. Following up your own results is how you find this class of error, and it is why we do it before moving on rather than at the end.
The rest of this page is the technical record: the design, every number, and the limits. It is written for a reviewer, and you do not need it to have understood the result above.
New here? How to read a research record
- Start at the verdict. Every record states, before the experiment was run, what result would have made us abandon the idea. That is the "kill test". Then it says whether the test fired. Nothing gets reinterpreted after the fact.
- Numbers in square brackets are uncertainty.
23.4 [18.1, 28.7]means our best estimate is 23.4 and the true value is probably somewhere in that range. If a range includes zero, we cannot claim an effect. - Negative results are kept. Roughly half of what is published here says an idea did not work, including several of our own. Those pages are not failures, they are the output. Work that only publishes what worked is not measuring anything.
- Read the Limits section. Every record ends with what it does not show. It is the most honest part of any experiment and usually the shortest.
- Pro tip: the figures near the top are designed to carry the result on their own. If you read nothing else, read the caption under each one, which says what it shows and what to take from it.
EXPLORATORY. Not a preregistered study. Local CPU, 6 receivers across 6 imposed properties, no GPU, no cost.
Program v2 Bucket P, item P5, generated by P1 the day before. Decisive computation: . Output: analysis/carried_property.py. Reproduce with analysis/carried_property.jsonpython analysis/carried_property.py; --reuse re-derives every endpoint.
The question
P1 found that a donor's converged recurrent weights remove 35.8 steps [-42.0, -29.7] from a receiver's time to transition, about forty per cent of it, and that relabelling the donor's hidden units changes nothing. P1 read that as "whatever transfers is coordinate-free, so it is a statistic rather than a wiring", and asked which statistic.
P1 is not a saving, a donor trained 400 steps to save a receiver 36. It only becomes one if the useful property can be manufactured rather than trained for. This asks whether it can.
Kill test, fixed before execution: no imposed property produces a head start whose interval overlaps P1's -35.8 [-42.0, -29.7], including all of them together.
Anchor, enforced in code: P1's transplant arm must re-derive from its committed series to [-42.0, -29.7]. The script exits 2 otherwise.
What we found
Each arm imposes one coordinate-free property from a converged donor onto the receiver's own random initialisation, leaving everything else untouched. Negative would mean sooner.
| Imposed on a random initialisation | Effect |
|---|---|
the donor's spectrum (its singular values, receiver's own vectors) | +10.0 [+5.3, +14.7] |
the donor's gate-norms | +10.0 [+5.3, +14.7] |
the donor's biases (288 of 17,280 parameters) | +5.8 [-0.3, +12.0] |
the donor's gain (one number per matrix) | +9.2 [+5.2, +13.1] |
all of the above at once | +4.2 [-4.9, +13.2] |
spectrum-random, the control | +10.0 [+4.3, +15.7] |
The kill test fires, and not narrowly. Nothing reaches P1's -35.8. Every arm mildly delays, and the full combination lands at +4.2 with an interval that does not come close. The transferable content is not capturable as a summary statistic.
Three arms report an identical+10.0[+5.3, +14.7]. They are genuinely different weights, checked directly, the imposed tensors differ from each other by norms of7.8to16.7and their accuracy curves diverge. The agreement is endpoint quantisation: the transition is read every 5 steps, so arms separated by less than that land in the same bucket. It does not affect the kill test, which turns on a gap of seven buckets.
The part that matters more: P1 read its own control wrong
Running this made a mistake in P1 visible, and it is worth more than the negative above.
A permutation of hidden units, applied consistently, preserves the donor's computation exactly. It renames units; it does not damage anything. The receiver's readout is still training and adapts to the new names within a few steps. So P1's permuted arm was never capable of destroying donor-specific content, and its agreement with the converged arm is closer to arithmetic than to evidence.
P1 concluded from that agreement that "nothing donor-specific moved". That does not follow, and this result shows it from the other side: if the content were a coordinate-free statistic, imposing those statistics would reproduce it, and it does not, at all.
The corrected reading of both records together:
A donor's converged recurrent structure transfers, and carries about forty per cent of the time to transition. It is not the labelling, renaming units is free. It is not the statistics, imposing them buys nothing. It is the matrices themselves, up to renaming.
A correction banner has been appended to P1's record; its numbers are unchanged and reproduce.
This is the trap CLAUDE.md already names in another form: a rule's grid contains its own components as degenerate points, so a tie can be arithmetic rather than evidence. A permutation is the degenerate point of "change the donor", and P1 treated it as a real perturbation.
What is left to test
The obvious remaining arm is a partial-structure transplant: keep the donor's singular vectors rather than its singular values, which is the complement of the spectrum arm here and the one thing this ladder did not try. If the subspace carries it, that is a much more specific object than "the matrices", and it is the natural P6.
Limits
- The transition endpoint is quantised to 5 steps, so arms differing by less than that are indistinguishable. Adequate for a 36-step effect, not for fine ranking among these arms.
- The
gate-normsarm matches a sorted row-norm distribution against the receiver's rows in their own order, which is one choice among several and is not swept. - Arms are nested: matching a spectrum constrains norms and gain, so they are a ladder rather than independent effects, and
allis the only one that can be read on its own. - Six receivers, one width, one task, one graft point. A pilot.
- The negative is about summary statistics of the recurrent weights only. It says nothing about properties of the embedding or readout, which were not imposed.
Terms on this page
Every piece of vocabulary this record uses, in plain language. Generated from the text above, so it cannot drift out of step with it.
- accuracy
- The fraction of answers a model gets right on questions it was not trained on.
- kill test
- A condition written down before running the experiment that says what result would make us abandon the idea. Fixing it in advance is what stops a disappointing result being reinterpreted as an encouraging one.
- parameters
- The adjustable numbers inside a model. Training is the process of setting them. Model size is usually quoted as a count of these.
- recurrent
- A design that reads a sequence one item at a time, carrying memory forward. The main alternative is attention, which looks at everything at once.
- singular value
- A measure of how much a mathematical operation stretches things along one particular direction. The largest one describes the direction of strongest effect.
- subspace
- A slice of a model's internal space: some directions kept, the rest ignored.
- width
- How many internal numbers a model uses at each layer. The usual way we vary model size in these experiments.
Get new results as we publish them
Roughly monthly, one finding per email, in plain English first. Including the experiments that went against us, which are usually the useful ones. No sales email.
Double opt-in: we send a confirmation link and add nobody who does not click it. One-click unsubscribe on every email.