Fine-tuning (deep learning) (CS)

From Systems analysis Wiki
Jump to navigation Jump to search

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