Research record

Does the Transition Create Features, or Select Them?

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.

EXPLORATORY. Not a preregistered study. Local CPU, 42 training runs, no GPU, no cost.

Program v2 tier 2, item F3. Decisive computation: analysis/echo_state.py. Output: analysis/echo_state.json. Reproduce with python analysis/echo_state.py in about twenty-five minutes on a throttled laptop CPU.

The question

Freeze the recurrent weights at initialisation and train only the embedding and the output head. That is reservoir computing: the recurrence becomes a fixed random dynamical system and learning happens only at the two ends.

A model that cannot rewire itself never gets there
A model that cannot rewire itself never gets there. Two ways of training the same model at five sizes. The upper line trains everything. The lower line leaves the model's memory fixed at the random values it started with and trains only the input and output layers, so the model can learn to read its memory but never to change it. Normal training has essentially solved the task by the third size. The frozen version never catches up, even at four times that size and four times the training. It is still learning something real, well above guessing, but it gets there gradually rather than suddenly: roughly nineteen times more slowly through the steepest part of its progress. Whatever makes learning abrupt here needs the model to be able to rewire its memory, not just reinterpret it.

If random recurrent dynamics already support the task, the transition is not about creating features. It is about learning to select and read features that were always present, and the width at which a frozen reservoir fails would measure the deficit training has to close.

F2 gave this a real prior. At step 1, before meaningful training, a linear probe on the hidden state read 0.1761 against the model's 0.0368, about 5.6x chance. Some of the answer is present in a near-untrained recurrent state.

The answer is that it is nowhere near enough.

Part A: the deficit never closes

Three seeds per cell, 900 steps, full training against frozen recurrence:

WidthFullFrozenGapTrainable share, frozen arm
160.67050.1832+0.487339%
320.95920.2698+0.689425%
480.99510.3057+0.689418%
960.99990.4516+0.548310%
1920.99970.5742+0.42555%

A fixed random recurrence never reaches full-model accuracy at any width tested. Full training is essentially solved from width 48; the reservoir at four times that width still sits at 0.574.

The reservoir is not useless, 0.574 against a chance floor of 0.0346 is real learning, and it improves steadily with width. It is just not the same thing.

Part B: and it does not transition

At width 48, five seeds, using the confirmation's own definitions:

ArmTransitionedTransition stepResidual-energy riseFinal accuracy
full5 / 589+0.2230 [+0.2048, +0.2412]0.9930
frozen0 / 5,,0.3015

No frozen run gained enough accuracy to have a transition to measure, and with no transition there is no expansion signature either.

Part C: the compute-matched arm, which is where the real answer is

Part B compares at equal step counts, and a frozen step is cheaper because it computes no gradient for the recurrent weights. This program's standing controls require compute-matched baselines, so Part C gives the frozen arm four times the step budget, a generous allowance in the reservoir's favour rather than a precise FLOP match, and measures not just where it lands but how sharply it gets there: the steps taken to cross from a quarter to three quarters of its own accuracy range.

WidthArmStepsFinal accuracyTransitioned25% → 75% took
48full9000.99513 / 363 steps
48frozen3,6000.47463 / 31,175 steps
192full9000.99973 / 342 steps
192frozen3,6000.75353 / 3775 steps

Given enough steps the reservoir does satisfy the eligibility rule, so "it cannot learn" would be the wrong claim. What it cannot do is learn abruptly. Its improvement is spread over 18.7x more steps at width 48 and 18.5x more at width 192, and it still lands far short.

The transition builds the mechanism, it does not merely select it. A fixed random recurrence supports slow, partial, gradual learning. The sharp transition requires a recurrence that is itself learning.

How this squares with F2

These two results look opposed and are not. F2 established that information about the answer is linearly present in the state earlier than the model can use it: including, weakly, at initialisation. F3 establishes that this early information is not sufficient: a system built entirely on it plateaus around 0.30 to 0.75 rather than 0.99, and gets there gradually.

Both are true. Random recurrent dynamics give a real head start, worth roughly 10x chance at width 48 with a trained readout. The transition is where the recurrence acquires the rest, and the rest is most of it.

What this changes for the program

  • The expansion is a recurrence phenomenon. It does not appear when the recurrence is frozen, which is consistent with it tracking the recurrence acquiring structure rather than the readout fitting. That is now evidence rather than assumption.
  • A2 stays undermined, and F3 explains why differently. D6 showed the post-peak fall is a measurement-frame effect. F3 adds that the thing being measured is a property of the learning recurrence, so any signal derived from it is unavailable in a frozen-feature regime.
  • Sharpness is now a measurable endpoint, not just a description. The 25%-to-75% crossing width separates two runs that reach the same accuracy by different routes, and it belongs in any future comparison that claims a transition.

Limits

  • One architecture (tiny-gru), one task, one optimizer (AdamW), one learning rate. The frozen arm was not separately tuned, and a reservoir may prefer a different learning rate for its readout; the deficit is large enough that tuning is unlikely to close it, but it was not tested.
  • Reservoir computing normally uses much wider reservoirs with tuned spectral radius. This tests a frozen GRU at its default initialisation, which is the honest comparison for "what did this model's recurrence have to learn", and not a fair test of reservoir computing as a method.
  • Part C's four-times budget is an allowance, not a measured FLOP match. It is generous in the reservoir's favour, so the conclusion is conservative in the direction that matters.

Want this measured on your data?

We build private models our clients own and run on their own infrastructure, and every engagement proves measured lift on the client's own tasks before we call it done. Start free with a readiness scorecard that tells you whether your data can support it, or book a short call.