fajn-tjůningTakéFinetuning, SFT, supervised fine-tuning, instruction tuningPokročilý

Definice

Fine-tuning je úprava již předtrénovaného modelu strojového učení na menší sadě cílených dat, aby lépe zvládal konkrétní úlohu, doménu nebo styl odpovědí. Místo učení od nuly navazuje na existující znalosti modelu a mění část jeho parametrů nebo přidává malé trénovatelné vrstvy.

Kategorie: Umělá inteligenceAktualizováno

Nezaměňujte: Fine-tuning se v obecném jazyce používá i pro jemné dolaďování čehokoli; v tomto hesle jde o trénování modelu strojového učení.

Co se při fine-tuningu mění

Předtrénovaný model už obsahuje obecné vzory z velkého tréninku: jazykové vazby, obrazové rysy nebo vztahy v datech. Fine-tuning na tento základ naváže a model vystaví užšímu souboru příkladů, třeba dotazům zákazníků s požadovanými odpověďmi. Trénink může upravovat všechny váhy, ale u velkých modelů se často používají úspornější techniky, například LoRA nebo adaptéry. Výsledek obvykle není nová databáze faktů, spíš změna chování: model lépe dodržuje formát, terminologii, klasifikační hranici nebo způsob rozhodování.

Data určují výsledek víc než délka tréninku

Dobrá trénovací sada má reprezentovat úlohu, kterou má model zvládat v provozu. U jazykových modelů to bývají dvojice instrukce a správné odpovědi, u klasifikace označené příklady, u počítačového vidění obrázky s anotacemi. Nekonzistentní štítky, duplicitní vzorky a únik testovacích dat způsobí, že metriky vypadají lépe než reálné nasazení. Fine-tuning proto vyžaduje oddělenou validační sadu a kontrolu chyb, nejen spuštění trénovacího skriptu. Pokud jde hlavně o aktuální znalosti z dokumentů, vhodnější může být RAG. Pokud stačí změnit formulaci dotazu, levnější bývá prompt engineering.

Dva příklady z praxe

Podpora e-shopu odpovídá ve firemním stylu

Internetový obchod shromáždí schválené přepisy konverzací, kde operátor řešil reklamace, dodání a vrácení zboží. Fine-tuning naučí model odpovídat stejnou strukturou, bez slibů mimo obchodní podmínky. Po nasazení systém generuje návrhy odpovědí, které pracovník podpory jen kontroluje a upravuje.

{"messages":[{"role":"user","content":"Kdy mi přijde balík?"},{"role":"assistant","content":"Zásilku odešleme dnes; odkaz pro sledování přijde e-mailem."}]}

Servis třídí závady podle hlášení technika

Výrobce průmyslových zařízení má tisíce servisních záznamů s textem závady a finální kategorií opravy. Fine-tuning klasifikačního modelu naučí rozlišovat podobná hlášení, například chybu senzoru od mechanického opotřebení. Dispečer pak dostane pravděpodobnou kategorii už při zadání případu a může rychleji vybrat náhradní díly.

Měření a provozní rizika fine-tuningu

Fine-tuning se hodnotí jinak podle úlohy. Klasifikátor může mít přesnost, recall nebo F1 skóre, generativní model potřebuje testy formátu, faktické správnosti, bezpečnosti a uživatelské užitečnosti. Důležitý je také regresní test: nový model nesmí zlepšit úzkou doménu za cenu horšího obecného chování. U citlivých dat je nutné řešit souhlasy, anonymizaci a riziko zapamatování konkrétních záznamů. Provozní tým má sledovat drift dat, náklady na inferenci a plán návratu ke starší verzi, pokud se doladěný model začne chovat nečekaně.

Příklady z praxe

  1. Podpora e-shopu ve firemním stylu

    Internetový obchod shromáždí schválené přepisy konverzací k reklamacím, dodání a vrácení zboží. Fine-tuning naučí jazykový model psát odpovědi ve firemním tónu a neodchylovat se od obchodních podmínek. Operátor podpory pak dostane návrh, který zkontroluje a odešle rychleji než při psaní od nuly.

    {"messages":[{"role":"user","content":"Kdy mi přijde balík?"},{"role":"assistant","content":"Zásilku odešleme dnes; odkaz pro sledování přijde e-mailem."}]}
  2. Třídění servisních závad

    Výrobce průmyslových zařízení použije servisní záznamy s popisem závady a finální kategorií opravy. Fine-tuning klasifikačního modelu zlepší rozlišení mezi podobnými hlášeními, například vadným senzorem a mechanickým opotřebením. Dispečer rychleji vybere náhradní díly a pošle správný typ technika.

Časté omyly

MýtusFine-tuning stačí k tomu, aby si model zapamatoval všechny naše firemní dokumenty.
Ve skutečnostiFine-tuning není spolehlivý způsob ukládání často měněných znalostí. Pro práci s dokumenty, ceníky nebo interními pravidly bývá vhodnější vyhledávání kontextu přes RAG.
MýtusFine-tuning je vždy lepší než dobrý prompt.
Ve skutečnostiFine-tuning má vyšší cenu přípravy, testování a provozní správy. Dobrý prompt může vyřešit jednoduchou změnu formátu nebo tónu rychleji a bez rizika poškození původních schopností modelu.

Časté dotazy

Kolik dat fine-tuning potřebuje?
Množství dat pro fine-tuning závisí na velikosti modelu, obtížnosti úlohy a požadované spolehlivosti. Pro úzký styl odpovědí mohou stačit stovky kvalitních příkladů, pro robustní klasifikaci nebo doménové rozhodování bývají potřeba tisíce až více. Kvalita a konzistence anotací často rozhodují víc než samotný počet řádků.
Kdy má fine-tuning větší smysl než prompt engineering?
Fine-tuning má větší smysl než prompt engineering, když se požadované chování opakuje ve velkém měřítku a prompt se stává dlouhý, křehký nebo drahý. Doladěný model může lépe držet výstupní schéma, terminologii a styl. Prompt engineering je vhodnější první krok, protože je levnější, rychlejší a snadno vratný.
Kdy fine-tuning nestačí a lepší je RAG?
Fine-tuning nestačí, když model potřebuje pracovat s často měněnými fakty, interními dokumenty nebo rozsáhlou znalostní bází. RAG v takové situaci načítá relevantní texty při dotazu a umožňuje aktualizovat zdroje bez nového tréninku. Fine-tuning je vhodnější pro chování modelu, zatímco RAG je praktičtější pro dohledatelné znalosti.
Může fine-tuning zhoršit původní schopnosti modelu?
Fine-tuning může zhoršit původní schopnosti modelu, pokud trénovací sada pokrývá příliš úzkou oblast nebo obsahuje systematické chyby. Model se může přeučit na styl dat, ztratit obecnost a hůře reagovat na méně typické vstupy. Proto se používá validační sada, regresní testy a porovnání s původním modelem.

Zdroje

  1. PEFT(otevře se v novém okně)Hugging Face
  2. Transfer learning and fine-tuning(otevře se v novém okně)TensorFlow
  3. Transfer Learning for Computer Vision Tutorial(otevře se v novém okně)PyTorch
  4. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding(otevře se v novém okně)arXiv, 2018

Související pojmy

Potřebujete to vyřešit v praxi?

Poradíme, jak na to ve vašem projektu

Vysvětlit pojem je jedna věc, navrhnout kolem něj funkční řešení druhá. Ozvěte se a probereme, co dává smysl u vás.