Kolik dát parametrů, kolik dat a kolik výpočtu? Ukázalo se, že to není otázka intuice, ale měřitelný vztah a jeho pochopení v roce 2022 zásadně změnilo, jak se modely staví. Proto jsou dnešní modely při stejné kvalitě menší a trénované na mnohem víc datech než ty z roku 2020.
Kaplan (2020): kvalita roste předvídatelně
První velká studie ukázala, že chyba modelu klesá podle mocninného zákona vůči třem věcem: počtu parametrů, množství dat a spotřebovanému výpočtu. Nezáleželo přitom moc na detailech architektury, což bylo tehdy překvapivé zjištění.
Praktický závěr, který si z toho tehdejší obor odnesl: hlavně zvětšovat modely. Odtud GPT-3 se 175 miliardami parametrů, natrénovaný na relativně malém množství dat.
Chinchilla (2022): byli jsme vedle
O dva roky později přišlo přesnější měření s jiným výsledkem: dosavadní modely byly hluboce nedotrénované. Při daném rozpočtu na výpočet se vyplatí zvětšovat parametry a data současně, zhruba ve stejném poměru.
Vyšlo z toho slavné pravidlo palce:
optimálně ≈ 20 tokenů na každý parametr
7 B model → ~140 mld tokenů
70 B model → ~1,4 bil tokenů
Testovací model Chinchilla se 70 B parametry natrénovaný na 1,4 bilionu tokenů porazil tehdejší modely s 250 B parametry, protože ty viděly jen zlomek dat.
A pak se to obrátilo ještě jednou
Chinchilla optimalizuje cenu tréninku. Jenže model se trénuje jednou a pak běží miliardkrát, takže dnes se schválně jde za Chinchilla optimum:
Chinchilla-optimální 7 B: ~140 mld tokenů
dnešní 7 B modely: 1 – 15 bilionů tokenů (10–100× víc)
Trénink je dražší, ale výsledný malý model je chytřejší, než by „měl být“ a levněji se provozuje. Pro poskytovatele API je to jasná ekonomická rozvaha: přesouváš náklady z inference do tréninku, protože inference je to, co běží pořád.
💡 Odtud pochází jev, který jsi asi zaznamenal: modely velikosti 7–8 B umí dnes věci, které před dvěma lety vyžadovaly 70 B. Nezměnila se architektura, změnil se objem tréninkových dat.
Co dnes limituje
- Došla kvalitní data. Veřejného textu je konečné množství, takže se pracuje s opakováním (několik epoch), pečlivým čištěním a syntetickými daty, viz moderní trénink.
- Kvalita dat porazila kvantitu. Přísně filtrovaný korpus dá lepší model než větší, ale špinavý. Deduplikace, odstranění balastu a promyšlená skladba dat jsou dnes hlavní páka.
- Nové osy škálování. Kromě parametrů a dat se dnes škáluje i výpočet při inferenci, model si může „rozmyslet“ odpověď, viz reasoning modely.
Jak to použít prakticky
Když vybíráš model, nedívej se jen na počet parametrů. Ptej se:
- Na kolika tokenech byl trénovaný? Model 7 B na 15 bilionech tokenů je jiná liga než 7 B na 300 miliardách.
- Jak čerstvá jsou data? Určuje to znalostní uzávěrku.
- Kolik je aktivních parametrů (u MoE)? To řídí rychlost a cenu.
- Byl distilovaný z většího modelu? Malé modely trénované napodobováním velkých bývají výrazně nad svou váhovou kategorií.
Cvičení
- Model vykazuje loss 2,1 a chceš 1,9. Podle mocninného zákona s exponentem kolem −0,06: kolikrát větší model potřebuješ?
- Proč se dnes trénují menší modely na mnohem víc dat, než by odpovídalo výpočetnímu optimu?
Náčrt řešení: rozbal, až si cvičení zkusíš sám
- Zhruba třikrát až pětkrát. Z
L = c · N^(−0,06)plyne poměr velikostí(2,1 / 1,9)^(1/0,06), tedy asi1,105^16,7, což vychází kolem pěti. Podstatná je ta citlivost: malé zlepšení loss stojí násobky výpočtu, a proto se rozdíly mezi špičkovými modely měří v setinách. Pozor ale, že sám zákon platí jen tehdy, když s modelem škáluješ i data a trénovací recept, viz změř si scaling zákon. - Protože se optimalizuje cena provozu, ne cena tréninku. Chinchilla říká, jak rozdělit daný výpočetní rozpočet mezi velikost modelu a množství dat, aby vyšla nejlepší loss. Jenže model se trénuje jednou a pak běží miliardkrát, takže se vyplatí zaplatit delší trénink a získat menší model, který je pak levnější a rychlejší při každé odpovědi.
Shrnutí
- Kvalita modelu roste s parametry, daty a výpočtem podle mocninného zákona.
- Chinchilla ukázala, že se vyplatí škálovat parametry a data společně (~20 tokenů na parametr).
- Dnes se schválně trénuje daleko za tímhle optimem, aby byl malý model levný v provozu.
- Limitem přestává být výpočet a stává se jím kvalita a dostupnost dat.
Proč byl model Chinchilla se 70 B parametry lepší než tehdejší modely s 250 B?
Protože ty větší byly hluboce nedotrénované, viděly jen zlomek dat, který jim podle scaling zákonů příslušel. Chinchilla ukázala, že při daném rozpočtu na výpočet se vyplatí zvětšovat parametry a množství dat současně, zhruba ve stejném poměru.
Proč se dnes modely trénují daleko za Chinchilla optimem?
Protože Chinchilla optimalizuje cenu tréninku, ale model se trénuje jednou a pak běží miliardkrát. Vyplatí se přesunout náklady do tréninku a získat menší model, který je při stejné kvalitě mnohem levnější a rychlejší v provozu.
Podle čeho poznáš, že model 7 B může být lepší než jiný 7 B?
Podle množství a kvality tréninkových dat, čerstvosti dat a toho, jestli byl distilovaný z většího modelu. Počet parametrů sám o sobě dnes o kvalitě vypovídá málo, rozdíl mezi 300 miliardami a 15 biliony tokenů je propastný.
