Parametereffektiv finjustering: adapters, prefix, LoRA
Kunna jämföra PEFT-metoder och välja rätt för en given budget.
Förkunskaper
Intuition
PEFT = träna få parametrar i stället för alla. Familjen har fyra huvudgrenar:
| Metod | Var den sitter | Parametrar | Inferenskostnad |
|---|---|---|---|
| LoRA | parallellt med viktmatriser, ΔW = BA | 0,1–2 % | noll efter merge |
| Adapters | små flaskhalslager insprängda i blocken | 0,5–5 % | extra lager kvar |
| Prefix/prompt tuning | inlärda «virtuella tokens» först i sekvensen | < 0,1 % | äter kontext |
| (IA)³ | inlärda skalvektorer på K, V och FFN | ~0,01 % | nära noll |
| BitFit | bara bias-termerna | ~0,08 % | noll |
LoRA vann i praktiken av en enda anledning: adaptern kan bakas in i basvikterna efter träning, så inferensen blir exakt lika snabb som originalet. Adapters lägger till lager som måste köras varje gång.
Formellt
Varför PEFT fungerar alls: finjustering ändrar modellen i ett lågdimensionellt underrum. Aghajanyan m.fl. (2020) mätte den «intrinsiska dimensionen» för finjusteringsuppgifter och fann att några hundra till några tusen parametrar räcker för att nå nära full finjustering på många uppgifter.
Minnesbudgeten är det som avgör i praktiken. Full finjustering av en 7B-modell i bf16 kräver:
- vikter 14 GB + gradienter 14 GB + Adam-tillstånd 56 GB (fp32 m och v) ≈ 84 GB plus aktiveringar.
Med LoRA r=16 tränas ~0,1 % av parametrarna:
- vikter 14 GB (frysta, inga gradienter) + adaptrar och deras optimizer-tillstånd < 0,5 GB ≈ 15 GB.
Med QLoRA (4-bit bas) ≈ 6 GB — en 7B-modell finjusteras på ett konsumentkort.
Val i praktiken:
- Stil, format, ton, domänterminologi → LoRA med låg rank (4–16).
- Ny faktakunskap → hög rank eller full finjustering — eller, oftast bättre, RAG.
- Många uppgifter på samma bas → LoRA-adaptrar som byts i drift (en bas, n adaptrar).
- Extremt minnessnålt → (IA)³ eller BitFit, till priset av lägre tak.
Behärskning innebär
- Jämför LoRA, adapters, prefix/prompt tuning och (IA)³
- Väljer metod efter minnesbudget och uppgift
- Vet vad som kan bakas in i basmodellen
Logga in för att göra övningarna och bygga upp din behärskning.
Källor
- arXiv — LoRA: Low-Rank Adaptation of Large Language Models — arXiv (öppen åtkomst; licens per artikel)
- arXiv — Intrinsic Dimensionality Explains the Effectiveness of Language Model Fine-Tuning — arXiv (öppen åtkomst; licens per artikel)
- PEFT — dokumentation (Apache-2.0) — Apache-2.0