PEFT (Parameter-Efficient Fine-Tuning) (CS)
Parametricky efektivní doladění (angl. Parameter-Efficient Fine-Tuning, PEFT) — je soubor metod adaptace velkých předtrénovaných modelů, jako jsou velké jazykové modely (LLM), na specifické úlohy s minimálními výpočetními a zdrojovými náklady. Na rozdíl od tradičního úplného doladění (full fine-tuning), které vyžaduje aktualizaci všech parametrů modelu, se metody PEFT zaměřují na modifikaci pouze malé části vah (méně než 1–5 % z celkového počtu), přičemž hlavní část modelu zůstává nezměněna („zmrazena\")[1].
Tento přístup umožňuje výrazně snížit nároky na paměť, úložiště a čas trénování, čímž se adaptace výkonných základních modelů stává přístupnější a odolnější vůči problému katastrofického zapomínání[2].
Problémy úplného doladění
Tradiční úplné doladění, při němž se aktualizují všechny parametry modelu, čelí řadě kritických problémů, které se staly katalyzátorem pro vývoj PEFT:
- Vysoké výpočetní náklady: Aktualizace stovek miliard parametrů vyžaduje obrovský výpočetní výkon (vysokovýkonné GPU/TPU) a velký objem grafické paměti (VRAM), což celý proces prodražuje a činí nedostupným pro mnoho výzkumníků.
- Neefektivita úložiště: Pro každou novou úlohu je nutné uchovávat úplnou, mnoha gigabajtovou kopii modelu, což vede k exponenciálnímu nárůstu nároků na diskový prostor.
- Katastrofické zapomínání (Catastrophic Forgetting): Model se při adaptaci na nová data „zapomíná" obecné znalosti získané ve fázi předtrénování, což snižuje jeho výkonnost na jiných úlohách.
- Riziko přeučení (Overfitting): Na malých datových sadách pro doladění mají modely s miliardami parametrů tendenci „zapamatovat si" trénovací příklady namísto učení se zobecňujících vzorů[2].
Taxonomie metod PEFT
Metody PEFT lze klasifikovat podle toho, jakým způsobem mění parametry modelu. Existují tři základní kategorie: aditivní, selektivní a reparametrizační[3].
Aditivní metody
Tyto metody zmrazí všechny původní váhy modelu a přidávají nové, malé trénovatelné moduly.
- Adaptéry (Adapters): Nejstarší aditivní metoda. Malé neuronové moduly s architekturou „hrdla lahve" jsou vloženy mezi vrstvy transformeru. Trénovány jsou pouze váhy těchto adaptérů[4].
- Metody založené na „měkkých" promptech (Soft Prompts): Namísto změny vah modelu tyto metody přidávají ke vstupním datům trénovatelné vektory („virtuální tokeny"), které řídí chování modelu. Klíčové varianty:
- Prompt Tuning: Přidává trénovatelné vektory pouze ke vstupním embeddingům.
- Prefix-Tuning: Přidává trénovatelné vektorové prefixy ke skrytým stavům v každé vrstvě mechanismu attention, čímž poskytuje jemnější kontrolu[5].
- P-Tuning v2: Zobecnění myšlenky Prefix-Tuning, které aplikuje trénovatelné prompty na všech vrstvách modelu a dosahuje výkonnosti srovnatelné s úplným doladěním[6].
Selektivní metody
Tyto metody nepřidávají nové parametry, nýbrž vybírají a dolaďují malou podmnožinu již existujících.
- BitFit: Extrémně úsporná metoda, která dolaďuje pouze vektory posunu (bias terms) a parametry normalizačních vrstev, přičemž aktualizuje méně než 0,1 % z celkového počtu parametrů.
- Diferenciální prořezávání (Diff Pruning): Využívá trénovatelnou masku pro dynamické určení, které váhy mají být v průběhu trénování aktualizovány[3].
Reparametrizační metody
Tato kategorie vychází z hypotézy, že změny vah při adaptaci modelu mají nízký „vnitřní rank". Namísto aktualizace plnorozměrných matic vah tyto metody aktualizují jejich nízkořadové reprezentace.
- LoRA (Low-Rank Adaptation): Nejpopulárnější metoda PEFT v současnosti. Vychází z předpokladu, že aktualizaci matice vah `ΔW` lze aproximovat součinem dvou nízkořadových matic: `ΔW = BA`. Při doladění se zmrazí původní matice `W` a trénovány jsou pouze `A` a `B`[7].
- QLoRA: Kombinuje LoRA s technikami kvantizace pro ještě větší snížení nároků na paměť, což umožňuje dolaďovat modely s 65 mld. parametry na jediném spotřebitelském GPU[8].
Srovnání výkonnosti a zdrojů
Metody PEFT umožňují dosáhnout výkonnosti srovnatelné s úplným doladěním při radikálním snížení nákladů.
| Model | Metoda | Trénovatelné parametry (%) | Výsledek na benchmarku (Avg. Accuracy) | Zdroj |
|---|---|---|---|---|
| BERT-Large | Úplné doladění | 100% | 80.4 (GLUE) | [4] |
| BERT-Large | Adapters | 3.6% | 80.0 (GLUE) | [4] |
| LLaMA-7B | LoRA | 0.83% | 74.7% | [9] |
| LLaMA-7B | DoRA (varianta LoRA) | 0.84% | 78.1% | [9] |
Klíčové výhody PEFT z hlediska úspory zdrojů:
- Paměť GPU (VRAM): Pro model LLaMA 65B úplné doladění teoreticky vyžaduje >780 GB VRAM, zatímco QLoRA umožňuje jeho doladění na GPU s <48 GB VRAM[8].
- Objem úložiště: Checkpointy ukládané po PEFT zabírají megabajty, nikoli gigabajty. To umožňuje uchovávat stovky „adaptérů" pro různé úlohy v objemu, který by zabrával jediný plně doladěný model.
Oblasti použití
Původně vyvinuté pro NLP byly metody PEFT úspěšně adaptovány pro širokou škálu úloh:
- Počítačové vidění (CV) a multimodální modely (VLM): Adaptace modelů, jako jsou Vision Transformer (ViT) a Segment Anything Model (SAM), pro úlohy segmentace obrazu, včetně biomedicíny.
- Generování a analýza kódu: Ladění LLM na specifika konkrétních softwarových projektů, interních API nebo kódových bází.
- Generativní modely: „Stylizace" modelů generování obrazu, jako je Stable Diffusion, pomocí LoRA adaptérů (technika Dreambooth).
- Syntéza řeči: Adaptace modelů pro generování řeči s určitým hlasem, intonací nebo emocionálním zabarvením.
Odkazy
- Repozitář knihovny PEFT na GitHub
- Oficiální dokumentace knihovny PEFT od Hugging Face
Literatura
- Hu, E.J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Dettmers, T. et al. (2023). QLoRA: Efficient Finetuning of Quantized LLMs. arXiv:2305.14314.
- Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. ICML 2019.
- Li, X.L.; Liang, P. (2021). Prefix-Tuning: Optimizing Continuous Prompts for Generation. arXiv:2101.00190.
- Liu, X. et al. (2022). P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks. arXiv:2110.07602.
- Ben Zaken, E.; Ravfogel, S.; Goldberg, Y. (2021). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-Based Masked Language Models. arXiv:2106.10199.
- Guo, D.; Rush, A.M.; Kim, Y. (2020). Parameter-Efficient Transfer Learning with Diff Pruning. arXiv:2012.07463.
- Jiang, Z. et al. (2024). MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning. arXiv:2405.12130.
- Mao, K. et al. (2024). A Survey on LoRA of Large Language Models. arXiv:2407.11046.
- Chen, S. et al. (2024). Parameter-Efficient Fine Tuning: A Comprehensive Analysis Across Applications. arXiv:2404.13506.
- Zhang, J. et al. (2025). Parameter-Efficient Fine-Tuning for Foundation Models. arXiv:2501.13787.
Poznámky
- ↑ «Parameter-Efficient Fine-Tuning for Foundation Models». arXiv:2501.13787. [1]
- ↑ 2.0 2.1 «5 Problems Encountered Fine-Tuning LLMs with Solutions». Machine Learning Mastery. [2]
- ↑ 3.0 3.1 «PEFT: Parameter-Efficient Fine-Tuning Methods for LLMs». Hugging Face Blog. [3]
- ↑ 4.0 4.1 4.2 Houlsby, N., et al. «Parameter-Efficient Transfer Learning for NLP». Proceedings of the 36th International Conference on Machine Learning. [4]
- ↑ Li, X.L., Liang, P. «Prefix-Tuning: Optimizing Continuous Prompts for Generation». arXiv:2101.00190. [5]
- ↑ Liu, X., et al. «P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks». arXiv:2110.07602. [6]
- ↑ Hu, E.J., et al. «LoRA: Low-Rank Adaptation of Large Language Models». arXiv:2106.09685. [7]
- ↑ 8.0 8.1 Dettmers, T., et al. «QLoRA: Efficient Finetuning of Quantized LLMs». arXiv:2305.14314. [8]
- ↑ 9.0 9.1 «Parameter Efficient Fine Tuning: A Comprehensive Analysis Across Applications». arXiv:2404.13506. [9]