What a Weight Update Buys: Leverage Across Training Stages
Abstract
Post-training moves a language model's weights by about a thousandth of their norm and changes its behavior sharply; pretraining moves them by a third and buys a slow drift. We introduce leverage, an exact measure of what a unit of weight change buys: the Fisher quadratic form of an update, computed with one forward-mode pass per direction, divided by the same form for random directions of the same size at the same checkpoint. Leverage orders released Olmo-3, Tülu-3, Zephyr, and OLMo-2 checkpoints over four orders of magnitude: pretraining windows sit at the random level on prose, SFT five times above it, RL-Zero and RLVR at 400-1,500, and DPO at 400-23,000. With this instrument we find that pretraining accumulates into noise: windows of 30k to 1M steps are no more consequential on prose than random directions of their size, as a noisy quadratic model of SGD predicts. We find that training precision changes what an update looks like: training bf16 parameters without an fp32 master copy freezes 36-99% of coordinates, lowers leverage up to sevenfold, and creates an alignment between update magnitudes and the diagonal Fisher that fp32 training does not show. We derive and verify a law for reuse: the sign-flip null predicts the relative damage of random drop-and-rescale (DARE) at keep rate as , within a factor of two of measurement wherever DARE succeeds. Two controls make these readings reliable: every controlled SFT and DPO trajectory with fp32 master weights loses leverage as it moves, and two re-runs of a released DPO stage from its anchor with its published recipe land within 1% of the released displacement and 4% of its leverage, where a plain recipe reads five to six times lower; leaving one component out traces the level to the length-normalized loss and its batch size of 128 together.
Figures & tables
| stage | ||||||
|---|---|---|---|---|---|---|
| pretraining windows | 2 | 3.7e-1–3.8e-1 | 0.86 (0.78–0.95) | 0.87 (0.77–0.99) | 0.87 (0.82–0.92) | 1.0 (0.93–1.1) |
| SFT | 2 | 1.5e-1–1.6e-1 | 5.5 (5.4–5.7) | 4.1 (4.0–4.3) | 3.2 (3.0–3.5) | 1.3 (1.2–1.3) |
| RL-Zero | 5 | 6.4e-4–1.5e-3 | 708 (388–1,508) | 837 (442–1,630) | 616 (354–1,226) | 1.4 (1.1–1.6) |
| RLVR after DPO | 3 | 7.1e-4–1.1e-3 | 553 (410–665) | 607 (519–725) | 408 (264–533) | 1.5 (1.2–2.0) |
| DPO | 4 | 3.8e-4–1.4e-3 | 3,632 (378–22,570) | 4,088 (392–21,557) | 1,702 (489–9,844) | 2.4 (0.8–5.3) |
| OLMo-2-1B DPO | 1 | 8.5e-4 | 1,452 | 1,287 | 1,012 | 1.3 |
Appendix figures & tables16 assets
Supplementary material from the paper’s appendix.
Appendix
| direction | unchanged | math | wiki | mixed | FD mixed | ||||
| pre_late_back | 3.83e-1 | 0.00 | 1.0 | 1.1 | 0.95 | 0.46 | 0.99 | 0.92 | 1.08 |
| pre_mid_back | 3.71e-1 | 0.00 | 0.84 | 0.81 | 0.78 | 0.41 | 0.77 | 0.82 | 0.93 |
| sft_instruct | 1.62e-1 | 0.01 | 5.1 | 10 | 5.7 | 2.0 | 4.3 | 3.5 | 1.22 |
| sft_think | 1.50e-1 | 0.01 | 6.7 | 13 | 5.4 | 2.8 | 4.0 | 3.0 | 1.34 |
| rlzero_math | 1.27e-3 | 0.58 | 4,356 | 235 | 710 | 707 | 865 | 544 | 1.59 |
| rlzero_code | 1.51e-3 | 0.53 | 937 | 186 | 388 | 384 | 442 | 354 | 1.25 |
| recipe | arm | lr | unchanged | (mixed) | slope mixed | math | wiki | ||
|---|---|---|---|---|---|---|---|---|---|
| fp32, b8, const. | SFT | 5e-7 | 2.4e-4–1.3e-3 | 0.00 | 267 35 | -1.29 | -0.94 | -1.23 | 0.37–1.38 |
| fp32, b8, const. | SFT | 5e-6 | 1.4e-3–6.0e-3 | 0.00 | 59 8.0 | -1.38 | -1.29 | -1.20 | 0.37–0.64 |
| fp32, b8, const. | SFT | 5e-5 | 1.2e-2–3.7e-2 | 0.00 | 21 6.7 | -0.99 | -1.23 | -0.93 | 0.60–0.80 |
| fp32, b8, const. | DPO | 5e-7 | 9.4e-5–3.2e-4 | 0.00 | 728 509 | -0.36 | +0.61 | +0.17 | 1.30–1.37 |
| fp32, b8, const. | DPO | 5e-6 | 9.1e-4–2.9e-3 | 0.00 | 198 92 | -0.70 | -1.34 | -0.46 | 0.97–1.11 |
| fp32, b8, const. | DPO | 5e-5 | 9.1e-3–3.0e-2 | 0.00 | 65 25 | -0.83 | -0.66 | -0.51 | 0.73–0.97 |
| anchor | recipe | (mixed) | slope | ||
|---|---|---|---|---|---|
| OLMo-2-1B-SFT | released recipe (dpo_norm, 5, OLMo mix, b128, linear, ) | 2.9e-4–8.6e-4 | 3,271 1,447 | -0.77 | 1.26–1.32 |
| OLMo-2-1B-SFT | plain: sigmoid, 0.1, UltraFeedback, b8, const., | 4.1e-4–1.4e-3 | 415 205 | -0.52 | 0.96–0.99 |
| OLMo-2-1B-SFT | plain, OLMo mix | 4.2e-4–1.4e-3 | 430 191 | -0.62 | 0.93–1.01 |
| OLMo-2-1B-SFT | plain, dpo_norm 5 | 4.1e-4–1.2e-3 | 206 282 | +0.25 | 1.00–1.02 |
| Qwen2.5-0.5B | plain | 9.5e-4–3.0e-3 | 185 78 | -0.77 | 0.84–1.01 |
| Qwen2.5-0.5B | plain, dpo_norm 5 | 9.8e-4–2.7e-3 | 90 132 | +0.42 | 1.00–1.02 |
| condition | seeds | ref. | at ref. (range) | slope (mean s.d.) |
|---|---|---|---|---|
| SFT, bf16 params, b8 const. | 3 | 2.0e-3 | 6.8 (6.7–6.8) | -1.50 0.01 |
| SFT, fp32, b8 const. | 3 | 2.0e-3 | 32 (31–32) | -1.37 0.00 |
| DPO, bf16 params, b8 const. | 3 | 5.0e-4 | 70 (69–72) | -0.24 0.06 |
| DPO, fp32, b8 const. | 3 | 1.0e-3 | 177 (171–184) | -0.64 0.05 |
| DPO, fp32, b8 linear | 3 | 1.0e-3 | 179 (172–188) | -0.73 0.02 |
| DPO, fp32, b128 const. | 3 | 1.0e-3 | 165 (161–167) | -1.02 0.04 |
| run (600 steps at the released settings) | seeds | at : run / released (released run) | at | slope | |||
|---|---|---|---|---|---|---|---|
| plain loss + plain data | 3 | 5.8e-5–5.1e-4 | 707 (685–737) / 2,711 (3.8 ) | 511 (502–520) / 2,353 (4.6 ) | -0.95 0.01 | 1.01–1.02 | 462–482 |
| released minus its loss | 3 | 5.7e-5–5.2e-4 | 495 (446–549) / 2,711 (5.5 ) | 323 (311–335) / 2,353 (7.3 ) | -1.55 0.04 | 0.92–1.02 | 293–524 |
| released minus its data | 3 | 5.4e-5–5.1e-4 | 1,528 (1,426–1,646) / 2,711 (1.8 ) | 1,282 (1,276–1,289) / 2,353 (1.8 ) | -0.27 0.06 | 1.23–1.25 | 977–1,006 |
| released minus its context length | 3 | 5.6e-5–5.6e-4 | 2,804 (2,722–2,870) / 2,711 (1.0 ) | 2,307 (2,227–2,350) / 2,353 (1.0 ) | -0.48 0.02 | 1.29–1.31 | 1,472–1,552 |
| run (released loss and data) | seeds | at : run / released (released run) | at | slope | |||
|---|---|---|---|---|---|---|---|
| constant , batch 128, 600 steps | 3 | 3.0e-4–6.9e-4 | 2,236 (2,031–2,363) / 2,711 (1.2 ) | 2,113 (1,944–2,321) / 2,353 (1.1 ) | -0.21 0.04 | 1.25–1.30 | 1,282–1,385 |
| constant , batch 8, 800 steps | 3 | 2.7e-4–7.6e-4 | 500 (363–584) / 2,711 (5.4 ) | 573 (442–716) / 2,353 (4.1 ) | +0.08 0.36 | 1.04–1.11 | 583–704 |
| arm | lr | at | slope | unchanged | ||||
|---|---|---|---|---|---|---|---|---|
| SFT | 5e-7 | 3.0e-4–1.3e-3 | 804 | 235 | – | -1.46 | 0.17–1.91 | 0.045 |
| SFT | 5e-6 | 1.9e-3–6.0e-3 | – | – | 79 | -1.19 | 0.64–0.66 | 0.045 |
| DPO | 5e-7 | 1.7e-4–5.8e-4 | 647 | – | – | -0.26 | 1.57–1.79 | 0.043 |
| DPO | 5e-6 | 1.5e-3–5.5e-3 | – | – | 227 | -0.73 | 1.27–1.66 | 0.043 |
| delta | threshold (ulp) | unchanged | |||||
|---|---|---|---|---|---|---|---|
| OLMo-2-1B DPO | as stored | 0.48 | 8.52e-4 | 1,449 | 1,283 | 1,015 | 1.26 |
| 1 | 0.48 | 8.51e-4 | 1,450 | 1,283 | 1,015 | 1.26 | |
| 2 | 0.75 | 6.04e-4 | 1,589 | 1,367 | 827 | 1.65 | |
| 4 | 0.88 | 4.17e-4 | 1,483 | 1,277 | 547 | 2.33 | |
| 8 | 0.94 | 2.93e-4 | 1,192 | 1,038 | 327 | 3.17 | |
| Tülu-3-8B DPO | as stored | 0.76 | 8.40e-4 | 22,570 | 21,557 | 9,844 | 2.19 |
| plain-math | WikiText | mixed, by domain | mixed, pooled | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| width (steps) | exact | FD | exact | FD | web | chat | math | code | exact | FD | median | |||
| 814 | 0.027 | 11 | 5.9 | 5.8 | 5.2 | 15 | 3.9 | 750 | 37 | 322 | 4.7 | 5.2 | 616 | 0.54 |
| 1,814 | 0.037 | 18 | 3.4 | 4.3 | 3.3 | 4.0 | 2.7 | 186 | 21 | 82 | 3.1 | 3.2 | 164 | 0.54 |
| 2,814 | 0.045 | 3.2 | 2.9 | 2.7 | 2.5 | 3.6 | 2.1 | 118 | 8.5 | 52 | 2.4 | 2.4 | 105 | 0.53 |
| 3,814 | 0.050 | 4.4 | 2.5 | 2.9 | 2.3 | 3.6 | 1.8 | 140 | 12 | 62 | 2.1 | 2.1 | 127 | 0.53 |
| 4,814 | 0.055 | 4.4 | 2.0 | 2.5 | 2.0 | 2.9 | 1.6 | 62 | 11 | 29 | 2.0 | 1.9 | 61 | 0.52 |
| plain-math | WikiText | mixed | mixed, median | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| width (steps) | rel | read | iso | prof. | sign | iso | prof. | sign | iso | prof. | sign | iso |
| 814 | 0.027 | 5.94 | 6.06 | 10.5 | 5.17 | 5.52 | 8.50 | 4.65 | 4.96 | 7.92 | 4.01 | |
| 1,814 | 0.037 | 3.41 | 3.58 | 6.28 | 3.26 | 3.58 | 5.67 | 3.09 | 3.36 | 5.54 | 2.58 | |
| 2,814 | 0.045 | 2.94 | 3.14 | 5.51 | 2.46 | 2.73 | 4.55 | 2.41 | 2.65 | 4.42 | 2.02 | |
| 3,814 | 0.050 | 2.54 | 2.75 | 4.99 | 2.28 | 2.54 | 4.25 | 2.14 | 2.36 | 3.99 | 1.75 | |
| 4,814 | 0.055 | 2.04 | 2.23 | 3.79 | 2.04 | 2.27 | 3.81 | 2.00 | 2.22 | 3.80 | 1.58 | |
| plain-math | WikiText | mixed | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| width (steps) | exact | FD | exact | FD | exact | FD | top-1% share | |||
| 1,000 | 0.012 | 4.0 | 4.5 | 5.4 | 6.3 | 5.0 | 5.7 | 14 | 0.37 | 0.11 |
| 2,000 | 0.017 | 2.7 | 3.2 | 3.2 | 3.7 | 3.0 | 3.5 | 8.7 | 0.35 | 0.11 |
| 4,000 | 0.023 | 1.8 | 2.1 | 1.9 | 2.2 | 1.9 | 2.2 | 5.5 | 0.32 | 0.11 |
| 8,000 | 0.032 | 0.94 | 1.2 | 1.1 | 1.4 | 1.1 | 1.4 | 3.2 | 0.29 | 0.11 |
| 16,000 | 0.047 | 0.54 | 0.79 | 0.62 | 0.84 | 0.58 | 0.87 | 1.6 | 0.27 | 0.11 |
| rel | plain-math | WikiText | mixed | end, mixed | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| width | end | start | end | start | ratio | end | start | ratio | end | start | ratio | prof. | sign |
| 1,000 | 0.012 | 0.027 | 4.54 | 2.94 | 1.55 | 6.30 | 3.51 | 1.80 | 5.74 | 3.16 | 1.82 | 5.82 | 15.3 |
| 2,000 | 0.017 | 0.035 | 3.20 | 1.94 | 1.65 | 3.75 | 2.24 | 1.68 | 3.54 | 2.03 | 1.75 | 3.51 | 9.83 |
| 4,000 | 0.023 | 0.045 | 2.10 | 1.15 | 1.82 | 2.19 | 1.38 | 1.59 | 2.23 | 1.26 | 1.77 | 2.11 | 6.31 |
| 8,000 | 0.032 | 0.058 | 1.19 | 0.76 | 1.57 | 1.45 | 0.84 | 1.72 | 1.42 | 0.75 | 1.90 | 1.23 | 3.89 |
| 16,000 | 0.047 | 0.073 | 0.79 | 0.43 | 1.84 | 0.84 | 0.51 | 1.65 | 0.87 | 0.44 | 1.97 | 0.65 | 2.23 |
| at | inv. participation ratio | at | |||
|---|---|---|---|---|---|
| 0.60 | 13.4 | 15.6 | 1.00 | 0.38 | |
| 0.67 | 41.7 | 50.7 | 1.00 | 0.42 | |
| 0.75 | 191 | 242 | 1.04 | 0.44 | |
| 0.90 | 2,580 | 3,410 | 2.03 | 0.45 |
| plain-math | WikiText | ||||
|---|---|---|---|---|---|
| bin | short runs | long runs | short runs | long runs | |
| SFT | 82.1 (9) | 65.3 (6) | 34.2 (1) | 22.3 (6) | |
| 44.1 (14) | 48.5 (34) | 17.3 (14) | 17.0 (34) | ||
| 12.6 (12) | 11.0 (1) | 5.70 (12) | 4.73 (1) | ||
| 4.71 (34) | 3.97 (39) | 2.58 (34) | 1.40 (39) | ||
| 6.11 (22) | – | 7.67 (22) | – | ||
| family | delta | wiki | math | prediction | kept | outcome | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| DeepScaleR | deepscaler_rlvr | 8.10e-04 | 1.00 | 1.00 | 1.00 | tolerant | 0.740 | 0.693 | 0.553 | – | unscorable |
| Llama/Tülu-3 | tulu_rlvr | 7.07e-04 | 1.00 | 1.00 | 1.00 | tolerant | 0.827 | 0.820 | 0.820 | – | unscorable |
| Llama/Tülu-3 | tulu_dpo | 8.40e-04 | 0.30 | 0.30 | 0.30 | fragile | 0.740 | 0.827 | 0.860 | 1.38 | miss |
| Mistral/Zephyr | zephyr_dpo | 1.40e-03 | 1.00 | 1.00 | 1.00 | tolerant | 0.373 | 0.367 | 0.233 | – | unscorable |
| Olmo-3-7B | olmo_dpo_think | 3.81e-04 | 1.00 | 1.00 | 1.00 | tolerant | 0.833 | 0.873 | 0.873 | 1.00 | hit |
| Olmo-3-7B | olmo_rlzero_gen | 6.39e-04 | 1.00 | 1.00 | 1.00 | tolerant | 0.687 | 0.713 | 0.720 | 1.25 | hit |
| GSM8K, 200 problems | MATH-500, 200 problems | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| delta | stage | rel | prediction | acc 0/1/1.5 | verdict | acc 0/1/1.5/2 | kept 1.5 | verdict 1.5 | verdict 2.0 | pooled | stop 1.0/1.5 | |
| olmo2_7b_rlvr | RLVR | tolerant | 0.75/0.76/0.74 (new) | unscorable | 0.31/0.37/0.36/0.38 | – | unscorable | unscorable | unscorable | 0.92/0.91 | 1.00 | |
| tulu_rlvr | RLVR | tolerant | 0.83/0.82/0.82 (earlier) | unscorable | 0.41/0.38/0.41/0.38 | – | unscorable | unscorable | unscorable | 0.86/0.78 | 1.00 | |
| olmo_rlvr_think | RLVR (think) | tolerant | 0.87/0.87/0.85 (earlier) | unscorable | 0.62/0.62/0.61/0.62 | – | unscorable | unscorable | unscorable | 0.58/0.57 | 1.00 | |
| deepscaler_rlvr | RLVR (GRPO) | tolerant | 0.74/0.69/0.55 (earlier) | unscorable | 0.32/0.29/0.24/0.14 | – | unscorable | unscorable | unscorable | 0.56/0.49 | 1.00 | |
| olmo_dpo_instruct | DPO | tolerant | 0.76/0.71/0.63 (earlier) | unscorable | 0.41/0.39/0.45/0.45 | – | unscorable | unscorable | unscorable | 0.92/0.81 | 1.00 | |