Square-root returns, and where they stop being worth buying
complexity▲▲△Price what a larger batch buys. Give the noise, the arithmetic and the noise per unit of arithmetic across from 1 to 4096, then identify the regime in which raising stops being a good trade and say what the budget does and does not decide.
Hint
By (I.7.2) noise falls as while cost rises as . Form the product and read off which direction it moves.
Solution
The trade.
| standard error | vs | arithmetic | error cost | |
|---|---|---|---|---|
| 1 | 1 | |||
| 4 | 4 | |||
| 16 | 16 | |||
| 64 | 64 | |||
| 256 | 256 | |||
| 1024 | 1024 | |||
| 4096 | 4096 |
Quadrupling halves the noise and costs four times the arithmetic, at every scale. The last column — noise per unit of compute — doubles each time, which is the trade stated in the least flattering way that is still true: measured per FLOP, a large batch is strictly worse at reducing noise.
Why anyone uses large batches anyway. The table prices arithmetic, and arithmetic is not the binding constraint on modern hardware. A batch of 256 does not take 256 times as long as a batch of 1 — it takes barely longer, because the device was idle. The square-root law is about statistical efficiency; large batches win on hardware efficiency, and the two pull in opposite directions.
Where it stops. Comparing noise against the signal it corrupts:
| noise/signal | regime | |
|---|---|---|
| 1 | noise-dominated: more helps a lot | |
| 16 | mixed: linear scaling (I.7.7) roughly holds | |
| 256 | mixed: linear scaling roughly holds | |
| 4096 | signal-dominated: more buys little | |
| 65536 | signal-dominated: more buys little |
Once the noise is small against the gradient, further averaging refines a number that was already accurate enough to step with. That boundary is McCandlish and colleagues’ critical batch size, and the useful thing about it is that it is a property of the problem at a point in training, not of the hardware — it generally grows as training proceeds and the gradient shrinks.
What the budget does not decide. With a fixed budget of example-visits:
| steps | noise per step | |
|---|---|---|
| 32 | ||
| 256 | ||
| 2048 |
Same compute, three different training runs: many noisy steps or few clean ones. The budget constrains their product and says nothing about which is better — that is decided by where the problem sits relative to its critical batch, and by whether the noise is doing anything useful, which by I.7.P02 it sometimes is.