Nopt∝Cβ/(α+β)≈C0.46 (Hoffmann et al.'s reported a≈0.46).
How does D_opt scale with compute C?
Dopt∝Cα/(α+β)≈C0.54 (b≈0.54).
Why must exponents a and b sum to 1?
Because C∝ND, so NoptDopt∝Ca+b=C1 requires a+b=1.
Chinchilla rule of thumb for tokens per parameter?
~20 tokens per parameter.
Why was GPT-3 suboptimal?
Too large for its data: ~1.7 tokens/param vs optimal ~20; data-starved, over-parameterized.
When should you deviate from Chinchilla and over-train a small model?
When inference cost dominates — smaller model + more data is cheaper to serve.
Deriving N_opt: what constraint do you substitute?
D=C/(6N) from the compute identity, then minimize L(N).
Recall Feynman: explain to a 12-year-old
Imagine you have a fixed amount of money to build and teach a robot. You can spend money on making the robot's brain bigger (more parameters) or on giving it more books to read (more data). If you build a giant brain but give it only one book, it's smart but knows nothing. If you give a tiny brain a million books, it can't remember them all. The trick is to balance: a bit bigger brain, a bit more books — about 20 pages for every bit of brain. That balance gives the smartest robot for your money.
Socho tumhare paas ek fixed compute budget hai — matlab kitne GPU-hours tum kharch kar sakte ho. Ye compute do cheezon mein bat-ta hai: model kitna bada hoga (parameters N) aur usko kitna data dikhaoge (tokens D). Inko jodne wala rule hai C≈6ND. Yahaan "6" isliye aata hai kyunki har parameter par forward pass mein 2 FLOPs aur backward pass mein 4 FLOPs lagte hain, per token — total 6 FLOPs (dhyan rakho, ye FLOPs hain, FMA nahi; ek FMA = 2 FLOPs, toh FMA mein ye sirf 3 hote hain). Toh ye teeno — compute, data, parameters — ek triangle hai; do fix karo, teesra apne aap decide ho jaata hai.
Ab main sawal ye hai: fixed C ke saath sabse kam loss kaise paayein? Loss ka formula hai L=E+A/Nα+B/Dβ. Agar model bahut bada bana diya par data kam diya, to B/Dβ term badh jaayega — model data-starved ho jaata hai. Agar model chhota rakha par data zyada, to capacity saturate ho jaati hai. Isliye balance chahiye. Constraint D=C/6N ko substitute karke, derivative zero karke solve karo, to nikalta hai Nopt∝C0.46 aur Dopt∝C0.54 — dono lagbhag barabar rate se badhte hain (ye Hoffmann et al. ke reported values hain).
Practical rule yaad rakho: ~20 tokens per parameter — ye Chinchilla-optimal hai. GPT-3 ne sirf ~1.7 tokens/param use kiye the, isliye wo over-parameterized tha; Chinchilla ne chhota (70B) model zyada data (1.4T tokens) par train karke usse beat kiya, wahi compute mein. Lekin ek twist: agar tum model ko billions users ko serve karoge, to inference cost dominate karega — tab jaan-boojh kar chhota model zyada data par "over-train" karna sasta padta hai (jaise LLaMA). Isliye rule tab badal jaata hai. Yaad rakho: dono ko saath badhao, sirf ek ko nahi.