Fine-tuning (deep learning) (CS)
Doladění (angl. Fine-tuning), známé také jako jemné ladění, je metoda transferového učení ve strojovém učení, při níž jsou parametry předem natrénovaného modelu (pre-trained model) přizpůsobeny pro řešení nové, specifické úlohy. Namísto trénování modelu od nuly, což vyžaduje obrovské množství dat a výpočetních zdrojů, umožňuje doladění využít znalosti již zakódované ve vahách modelu a „naladit" je pro konkrétní potřeby.
Tento přístup se stal de facto standardem v oblasti hlubokého učení, zejména při práci s velkými jazykovými modely (LLM) a modely počítačového vidění.
Koncepce
Proces doladění lze rozdělit do dvou základních fází:
1. Předtrénování (Pre-training): Model (například BERT nebo GPT) je trénován na velmi rozsáhlé a obecné datové sadě (například celý internet) s využitím samodohlíženého úkolu (například předpovídání následujícího slova). V této fázi se model učí obecné zákonitosti, syntax, sémantiku a znalosti o světě.
2. Doladění (Fine-tuning): Předtrénovaný model slouží jako základ a jeho váhy jsou doladěny na malé, avšak pro cílový úkol specifické označené datové sadě.
Klíčová myšlenka spočívá v tom, že znalosti získané ve fázi předtrénování jsou univerzální a lze je úspěšně přenést pro řešení mnoha dalších, úžeji zaměřených úloh.
Proces doladění
Typický proces doladění zahrnuje následující kroky:
1. Výběr předtrénovaného modelu: Je vybrán model, jehož základní schopnosti odpovídají cílové úloze (například BERT pro úlohy porozumění textu, GPT pro generování).
2. Adaptace architektury: K předtrénovanému modelu je přidána nová „hlavová" vrstva (head) specifická pro cílovou úlohu. Například:
- Pro klasifikaci textu se přidává jednoduchá plně propojená vrstva s funkcí softmax.
- Pro rozpoznávání pojmenovaných entit (NER) se klasifikátor přidává k výstupu každého tokenu.
3. Trénování na cílové datové sadě: Celý model (nebo jeho část) je trénován na nové, označené datové sadě. V této fázi jsou váhy modelu, včetně vah předtrénovaných vrstev, aktualizovány pomocí gradientního sestupu za účelem minimalizace ztrátové funkce na nové úloze.
4. Použití nižší rychlosti učení: Při doladění se obvykle používá výrazně nižší rychlost učení než při předtrénování. Je to nutné proto, aby nedošlo ke „zničení" užitečných znalostí již zakódovaných ve vahách modelu, ale pouze k jejich jemnému korigování.
Typy doladění
Úplné doladění (Full Fine-tuning)
- Princip: Jsou aktualizovány všechny parametry předtrénovaného modelu společně s novou „hlavovou" vrstvou.
- Výhody: Potenciálně poskytuje nejlepší výkon, protože se celý model přizpůsobuje nové úloze.
- Nevýhody: Vyžaduje značné výpočetní zdroje a paměť, protože je nutné ukládat a aktualizovat gradienty pro všechny parametry. Existuje riziko katastrofického zapomínání, kdy model „zapomíná" obecné znalosti získané při předtrénování.
Parametricky efektivní doladění (Parameter-Efficient Fine-Tuning, PEFT)
Jde o skupinu metod, jejichž cílem je snížit výpočetní náklady při doladění. Základní myšlenka spočívá v zmrazení většiny parametrů předtrénovaného modelu a trénování pouze malého počtu nových nebo vybraných stávajících parametrů.
- Příklady metod PEFT:
- Adaptéry (Adapters): Do architektury Transformeru jsou vloženy malé, doplňkové vrstvy-adaptéry a trénují se pouze ty.
- LoRA (Low-Rank Adaptation): Namísto aktualizace celých váhových matic trénuje LoRA jejich nízkohodnostní aktualizace. To umožňuje snížit počet trénovaných parametrů tisícinásobně.
- Prompt Tuning: Ke vstupním datům jsou přidány trénovatelné vektory-„prompty", které se ladí pro řešení úlohy, zatímco samotný model zůstává zmrazen.
- Výhody PEFT:
- Efektivita: Výrazně snižuje nároky na paměť a výpočty.
- Modularita: Umožňuje snadno přizpůsobit jeden předtrénovaný model pro mnoho úloh tím, že se pro každou z nich ukládají pouze malé sady přizpůsobených vah.
Doladění na základě instrukcí (Instruction Tuning)
Jde o specifický typ doladění zaměřený na zlepšení schopnosti LLM dodržovat instrukce v přirozeném jazyce.
- Princip fungování: Model je doladěn na datové sadě sestávající z dvojic „instrukce — požadovaný výstup".
- Cíl: Zlepšit zobecňovací schopnost modelu pro nové, dosud neviděné úlohy, které lze popsat formou instrukcí. Modely jako InstructGPT a FLAN-T5 jsou výraznými příklady tohoto přístupu.
Literatura
- Howard, J.; Ruder, S. (2018). Universal Language Model Fine-tuning for Text Classification. arXiv:1801.06146.
- Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. arXiv:1902.00751.
- Pfeiffer, J. et al. (2020). AdapterFusion: Non-Destructive Task Composition for Transfer Learning. arXiv:2005.00247.
- Hu, E. J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Lester, B.; Al-Rfou, R.; Constant, N. (2021). The Power of Scale for Parameter-Efficient Prompt Tuning. arXiv:2104.08691.
- Ben Zaken, A.; Goldberg, Y.; Ravfogel, S. (2022). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-based Masked Language-Models. ACL 2022.
- Ouyang, L. et al. (2022). Training Language Models to Follow Instructions with Human Feedback. arXiv:2203.02155.
- Han, Z. et al. (2024). Parameter-Efficient Fine-Tuning for Large Models: A Comprehensive Survey. arXiv:2403.14608.
- Bian, J. et al. (2025). A Survey on Parameter-Efficient Fine-Tuning for Foundation Models in Federated Learning. arXiv:2504.21099.
- Li, X. et al. (2025). Revisiting Fine-Tuning: A Survey of Parameter-Efficient Techniques and Future Directions. Preprints.org.
Viz také
- Velké jazykové modely
- BERT
- GPT