Architecture vs Computing Power

Updated Started

There's a long debate in AI about the relative importance of architectural choices vs raw computing power.

This idea can be expressed as a scaling law:

L(C)≈E+ACαL(C) \approx E + \frac{A}{C^\alpha}

In this equation:

  • CC is the amount of computing power we have for training in terms of floating point operations.
  • LL is our loss on on a held out dataset.
  • L(C)L(C) is the lowest test loss we can reach with a training budget of CC. Because it's expressed in terms of FLOPs the size of the model and the amount of data we can train on have to be traded off against each other.
  • EE is the loss a model approaches as its compute goes to infinity. In theory it is the same for every architecture (assuming they have access to the same information e.g. same context length). We can think of it like entropy or the unpredicatability that would remain even if you knew the distribution of a dataset perfectly.
  • A/CαA / C^\alpha is the reducible loss: how much loss is still left to remove at a given compute budget.
  • AA is how much reducible loss we start with. A larger AA means more loss left to remove at every compute budget. If two architectures have the same α\alpha but different AA, the worse one always needs a fixed multiple of the other's compute to reach the same loss, (AX/AY)1/α(A_X / A_Y)^{1/\alpha}. With α=0.15\alpha = 0.15, an architecture with twice the AA needs about 100 times the compute, at every scale.
  • α\alpha is how fast extra compute pays off. Each time we double CC, the reducible loss is multiplied by 2−α2^{-\alpha}. With α=0.15\alpha = 0.15, each doubling removes about 10% of the loss that's left.
Show
Loss L01234510181020102210241026Training compute C, FLOPsEXY
To match Y at 1020 FLOPs, X needs 4.4× the compute
To match Y at 1025 FLOPs, X needs 4.4× the compute
X · doubling removes 10%
Y · doubling removes 10%
Shared
Loss against training compute for two architectures that share the irreducible loss E. The horizontal segments show how much more compute X needs to match Y at two budgets. On the log scale each curve is a straight line with slope −α.

The strong form of the Bitter Lesson / Big Blog of Compute hypothesis is that for any reasonable architecture the only parameter that varies significantly is AA. Reasonable in this context means anything that provides things stable gradients, parallelism and no information bottlenecks.

Emperical evidence

CNNs vs Vision transformers

RNNs vs transformers


Todo:

  • Can we go wackier?

Tags: AI