Research record

The Boost Does Not Travel

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.

A note on the language in these records. This is a working laboratory notebook for research into training AI models more cheaply and efficiently, so you will read that an approach did not work, that a result did not hold up, or that one method was worse than another. That is the research doing its job, not a verdict on the engineering we deliver to clients. Ruling an approach out is how the search narrows, and these are the pages that teach us the most: nearly every technique we now rely on came from understanding why something else fell short. Testing our own ideas at least as hard as anyone else's is the point of publishing them. More about this programme and why we run it.

Part of a bigger question: What actually makes training cheaper? – One thing has worked: stopping part of the training early saved about 7% with no loss of quality. Everything else tested has been matched by a simpler or cheaper method -- and in two cases the clever method was only winning because it was quietly being given more.

In plain English

What we asked. Last time we found a free speed-up: raising a small model's learning rate by half for a short stretch early in training made it learn sooner with no loss of accuracy. That was on one setup, and our own rules say a trick found on one setup has to be tried on others.

What we found. We repeated the whole recipe from scratch on two new setups: a different task, and a wider model on a harder version of the first. On the new task the boost did nothing. On the wider model it did nothing for speed and made the final answers slightly worse.

Why it matters. So the free speed-up was a fact about one setup, not a general trick. Along the way we also found that on the new task our usual learning rate was well below the best one, which means some of our older results on that task need checking, and we are doing that next.

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.
  • Results that rule an idea out are kept. Roughly half of what is published here says an approach did not work, including plenty of our own. Those pages are the output, not a shortfall: knowing which direction is a dead end is what lets the next experiment go somewhere better, and most of what we now rely on came out of understanding why something else fell short. 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, six seeds, 72 training runs on two substrates. The design, every tuning and placement rule, and the kill test were committed (242dd80) before any run, with one amendment made before execution and recorded in the pilot.

Program v2 Bucket O, item O19. Decisive computation: analysis/boost_transfer.py. Output: analysis/boost_transfer.json. Reproduce with python analysis/boost_transfer.py (about forty-five minutes on a throttled laptop CPU); --reuse re-derives every endpoint from the saved runs, and was checked to print the identical summary.

The question

O18 found that on J8's substrate (width-48 GRU, delayed copy, lag 4) a 1.5x learning-rate boost for forty early steps at the tuned rate reached the transition as soon as the next rate up while keeping the tuned rate's accuracy. The standing rules say an efficiency manoeuvre can reverse at another width (Q1) and that one task is not enough (R1). O19 re-derives the whole recipe from scratch on two new substrates:

The short learning-rate boost helped on one setup and on neither of two others
The short learning-rate boost helped on one setup and on neither of two others. The same recipe, tune the learning rate and then add a short early boost, applied to the original setup and to two new ones: a second task, and a wider model on a harder version of the first. The first three bars are the change in steps to learn (negative is sooner); the last three are the change in final accuracy, times 1000. On the original setup the boost made models learn sooner at no cost. On the second task it did nothing, and on the wider model it did nothing for speed and cost some accuracy. It was a property of one setup, not a general trick.
  • dispatch -- dispatch-copy-8lag at width 48, 600 steps, P1's own run() with Q4's task, timed by L7's task criterion as Q4 was;
  • matched-w96 -- delayed copy at width 96, lag 8, 900 steps: P11's matched ladder at its largest rung, P11's own run() and transition definition.

On each: sweep whole-run rates 0.003-0.014; the tuned rate is the fastest whose runs all reach the transition with mean final accuracy within 0.01 of the lowest rate's (O16's rule); the boost is 1.5x the tuned rate for forty steps opening at the tuned controls' mean transition minus forty (O16's placement).

Amended before execution (recorded in the pilot): the programme entry named width 192; the matched ladder's committed runs stop at 96, so 96 was used to keep an exact anchor.

Kill test, fixed before execution: on either substrate the boosted run is not both sooner than the tuned rate and no less accurate (accuracy interval wholly below -0.005).

Anchors, in code: at 0.005, every dispatch control's final accuracy equals Q4's committed value and every matched-w96 control transition equals P11's. All do.

Result: the kill test fires, on both substrates

The sweeps:

Ratedispatch: transitionfinal accuracymatched-w96: transitionfinal accuracy
0.003218.30.4756127.50.8902
0.005169.20.5079119.2 (tuned)0.8892
0.007145.80.5231120.00.8511
0.010134.2 (tuned)0.5279108.30.8014
0.014136.70.535392.50.7027

The boost, paired against the tuned rate:

SubstrateTuned rateBoost windowChange in transitionChange in final accuracy
dispatch0.010steps 94-133+0.00 [-5.75, +5.75]+0.0011 [-0.0052, +0.0074]
matched-w960.005steps 79-118+0.83 [-3.12, +4.78]-0.0112 [-0.0172, -0.0051]

On neither substrate does the boost bring the transition sooner. On dispatch it does nothing at all; on matched-w96 it does nothing for speed and costs final accuracy. O18's result is a property of one substrate.

Why, as far as the sweeps show

The boost helped on J8's substrate because there, a higher whole-run rate reached the transition sooner and cost accuracy -- a frontier with room to borrow speed from. Neither new substrate offers that trade at its tuned rate:

  • dispatch: speed stops improving above 0.010 (134.2 against 136.7 at 0.014), so there is no speed left to borrow, and the boost borrows none.
  • matched-w96: the frontier is steep and unhelpful -- 0.007 is no faster than 0.005 and already 0.038 less accurate. A boost borrows only the accuracy cost.

This is description after the fact; it fits the three substrates and was not predicted.

A consequence for the archive

R18 left the dispatch-copy claims UNTESTED. This sweep tests the substrate: the house rate 0.005 is 35.0 steps of time to the transition slower than dispatch's tuned 0.010 (169.2 against 134.2), four times its headroom on delayed copy. Q4's same-task donor head start there is -90.0 steps by the same criterion -- about two and a half times the rate's headroom -- so it is exposed but not explained; R12's donor-length optimum is measured on the same substrate and rate.

What stands

  • Kill test fires. The early boost brings the transition no sooner on dispatch copy (+0.00) or at width 96 (+0.83), and costs accuracy at width 96 (-0.0112).
  • O18's boost is a single-substrate result and carries a banner saying so.
  • On dispatch copy the house rate is 35 steps slow; on the width-96 matched rung it is the tuned rate.

Limits

  • Two substrates, six seeds each, one boost size and one window rule.
  • The tuning rule's reference is the lowest swept rate, which on dispatch copy is also the least accurate; every rate passed, so the rule picked the fastest.
  • Width 96, not 192, by the amendment recorded above.

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.
GRU
Gated Recurrent Unit. A compact design for processing sequences one item at a time, with internal switches controlling what it keeps in memory.
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.
learning rate
How big a step training takes each time it updates the model. Too small and nothing happens; too big and it never settles.
seed
The number that fixes all the randomness in a training run. Same seed, same run. Running several seeds is how you tell a real effect from a lucky one.
width
How many internal numbers a model uses at each layer. The usual way we vary model size in these experiments.

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.