Jak se trénují AI modely: předtrénink, fine-tuning a ladění
Jak se trénují AI modely, aby uměly psát, překládat nebo odpovídat na otázky? Za každým chatovacím asistentem stojí několik fází tréninku, které na sebe navazují: shromáždění a vyčištění dat, rozsáhlý předtrénink, doladění na konkrétní úlohy, učení ze zpětné vazby lidí a nakonec důkladné hodnocení. V tomto článku projdeme jednotlivé kroky srozumitelně a bez vzorců a vysvětlíme, proč většina firem žádný model netrénuje a přesto může AI přizpůsobit svým potřebám. Pokud začínáte úplně od základů, doporučujeme nejdříve článek co je strojové učení.
Data pro AI: základ všeho
Model se naučí jen to, co najde v datech. Proto trénink AI začíná dlouho předtím, než se spustí první výpočet.
U jazykových modelů se shromažďují rozsáhlé sbírky textů: veřejně dostupné webové stránky, knihy, odborné články, zdrojový kód a další zdroje, ke kterým má tvůrce práva. Surová data jsou ale plná šumu, a tak následuje jejich čištění:
- odstranění duplicit, aby se model zbytečně neučil stále totéž,
- filtrování nekvalitního obsahu, jako jsou spam, nesmyslné texty nebo stránky plné reklam,
- odstranění škodlivého obsahu a osobních údajů, pokud je to možné,
- vyvážení jazyků a témat, aby model nezvládal jen angličtinu nebo jen jednu oblast.
Kvalita dat má na výsledek obrovský vliv. Pokud jsou data jednostranná, model převezme jejich zkreslení. O tom, jak se to projevuje, píšeme v článku zaujatost umělé inteligence.
Předtrénink: jak se model učí jazyk
První a nejnáročnější fází je předtrénink. Model dostává text a jeho úkolem je předpovědět, jaká část slova nebo slovo bude následovat. Na začátku hádá prakticky náhodně. Po každém odhadu se porovná s tím, co v textu skutečně je, a jeho vnitřní nastavení se nepatrně upraví, aby příště odhadoval lépe. Tento postup se opakuje nesčetněkrát.
Zní to jednoduše, ale aby model dokázal dobře předpovídat další slovo v nejrůznějších textech, musí si osvojit gramatiku, fakta, souvislosti a do jisté míry i postupy uvažování. Výsledkem je takzvaný základní model, který má široké znalosti, ale zatím není dobrým asistentem. Na otázku může odpovědět další otázkou nebo pokračovat v textu úplně jinak, než byste chtěli.
Technicky předtrénink probíhá na neuronové síti s mnoha vrstvami a úpravy nastavení zajišťuje metoda zpětného šíření chyby. Princip vysvětlujeme v článku co je hluboké učení. Trénink probíhá v datových centrech na velkém množství specializovaného hardwaru a je energeticky náročný, souvislosti najdete v článku spotřeba energie AI.
Fine-tuning: z modelu se stává asistent
Ve druhé fázi se základní model doladí, anglicky fine-tuning. Model dostane mnohem menší, ale pečlivě připravenou sadu příkladů: otázku nebo pokyn a ukázkovou odpověď. Příklady často píší nebo kontrolují lidé. Model se z nich učí, jak má asistent reagovat: odpovídat na otázku, dodržet požadovaný formát, přiznat, když něco neví, a odmítnout škodlivé požadavky.
Fine-tuning se používá i později pro specializaci. Lze tak model naučit například styl firemní komunikace, strukturu určitého typu dokumentů nebo terminologii úzkého oboru. Proti předtréninku jde o výrazně menší zásah, ale stále platí, že výsledek je jen tak dobrý jako použité příklady.
Učení ze zpětné vazby lidí a ladění podle preferencí
I doladěný model může odpovídat sice správně, ale nešikovně, zbytečně dlouze nebo nevhodně. Proto přichází další krok, často označovaný zkratkou RLHF, tedy zpětnovazební učení z lidského hodnocení.
Princip je následující: model vygeneruje k jedné otázce několik odpovědí a lidé určí, která je lepší. Z mnoha takových porovnání vznikne představa o tom, jaké odpovědi lidé preferují, a model se postupně posouvá tímto směrem. Existují i novější metody ladění podle preferencí, které pracují přímo s dvojicemi „lepší a horší odpověď“, a postupy, kdy část hodnocení provádí jiný model podle předem daných zásad.
Tato fáze má velký vliv na to, jak asistent působí: zda je užitečný, srozumitelný, zdvořilý a bezpečný. Zároveň vysvětluje, proč se různé modely liší „povahou“, i když se učily na podobných datech.
Hodnocení: jak se pozná, že model funguje
Trénink bez měření by byl naslepo. Modely se proto průběžně i na konci testují:
- testovací sady úloh, které model během tréninku neviděl, třeba matematické příklady, otázky z různých oborů nebo programovací úlohy,
- hodnocení lidmi, kteří porovnávají odpovědi různých verzí,
- bezpečnostní testy, při nichž se specialisté snaží model přimět k nebezpečnému nebo nevhodnému chování,
- sledování v provozu, kde se ukáže, jak si model vede u skutečných uživatelů.
Ani důkladné testování ale nezaručí, že se model nikdy nesplete. Jazykové modely mohou sebevědomě tvrdit nepravdy, což popisuje článek co jsou halucinace AI.
Optimalizace modelů pro provoz
Hotový model bývá velký a jeho provoz náročný. Proto se často dále upravuje, aby běžel rychleji a levněji. Používá se například zmenšení přesnosti čísel, se kterými model počítá, nebo takzvaná destilace, kdy se menší model učí napodobovat odpovědi většího. Díky těmto postupům mohou některé modely běžet i na vlastním firemním serveru nebo výkonném počítači, jak popisujeme v článku open source AI modely.
Firmy obvykle netrénují od nuly
Trénink velkého modelu od začátku vyžaduje obrovská data, specializovaný tým a rozsáhlou výpočetní kapacitu. Pro běžnou firmu to nedává smysl. Místo toho existují tři dostupnější cesty, seřazené od nejjednodušší:
- Prompting – hotový model dostane jasné zadání, kontext a příklady. Pro velkou část úloh to stačí. Jak na to, vysvětluje článek jak psát prompty pro AI.
- Propojení s firemními daty – model při odpovídání nejprve vyhledá relevantní pasáže ve vašich dokumentech, směrnicích nebo znalostní bázi a odpoví na jejich základě. Tomuto přístupu se říká RAG. Model se nic nového neučí, jen dostane správné podklady, a data lze snadno aktualizovat.
- Fine-tuning – doladění hotového modelu na vlastních příkladech, pokud potřebujete velmi specifické chování, které předchozí kroky nezajistí.
Ve většině projektů se vyplatí začít promptingem, pak přidat firemní data a k doladění přistoupit až ve chvíli, kdy je jasné, že jednodušší cesty nestačí.
Závěr
Trénink AI modelu je vícestupňový proces: kvalitní data, předtrénink na obrovském množství textu, doladění na ukázkových odpovědích, učení z lidských preferencí a důkladné hodnocení. Pochopení těchto kroků pomáhá lépe odhadnout, co od modelu čekat, proč se někdy mýlí a jak ho přizpůsobit vlastním potřebám.
Pokud chcete s modely pracovat jako vývojář, včetně lokálních modelů a jejich napojení na vlastní aplikace, přihlaste se do pokročilého AI developer kurzu. Pokud řešíte, zda vaší firmě stačí prompting, propojení s dokumenty, nebo vlastní doladění, domluvte si AI konzultaci.
Časté dotazy
Musí firma trénovat vlastní AI model?
Většinou ne. Pro naprostou většinu firemních úloh stačí hotový model, dobře napsané zadání a případně propojení s firemními dokumenty. Vlastní dolaďování modelu dává smysl až u specifických úloh, kde ostatní přístupy nestačí. Trénink od nuly je doménou specializovaných společností.
Co je fine-tuning?
Fine-tuning neboli doladění znamená, že se už natrénovaný model dále učí na menší sadě vybraných příkladů. Získá tak konkrétní styl, formát odpovědí nebo znalost úzké oblasti. Je to mnohem méně náročné než trénink od začátku, ale stále vyžaduje kvalitní data a pečlivé vyhodnocení.
Učí se AI model z toho, co mu píšu?
Hotový model se během konverzace sám nepřeučuje, pracuje s tím, co se naučil při tréninku, a s textem, který mu vložíte. Poskytovatelé ale mohou konverzace využívat při tréninku dalších verzí, pokud to v nastavení nevypnete. Podmínky si proto vždy ověřte, zejména ve firemním prostředí.