4.3.9 · HinglishPretraining & Fine-Tuning LLMs

Adapter layers and prefix tuning

1,937 words9 min readRead in English

4.3.9 · AI-ML › Pretraining & Fine-Tuning LLMs


YEH EXIST KYUN KARTA HAI?

HUM KYA TRADE KARTE HAIN? Hum har weight ko freely reshape karne ki ability chhodte hain, aur bet lagate hain ki ek low-capacity add-on kaafi hai ek aise model ko specialise karne ke liye jo pehle se general features seekh chuka hai. Empirically, yeh bet zyaadatar jeet jaati hai.


Adapter Layers

YEH DERIVE KAISE HOTA HAI (first principles se)

Hum chahte hain ek aisa module jo (1) pretrained forward pass ko tod ke bina insert ho sake, (2) ke paas kam parameters hon, (3) ek useful transformation express kar sake.

  1. Sasti capacity → factorize karo. Ek full learned map mein params lagte hain. Ise ek bottleneck se force karo: down-project , phir up-project . Params ho jaate hain. Jab , yeh bahut chhota hai.
    • Yeh step kyun? jab . ke liye: vs .
  2. Nonlinearity add karo. Do stacked linears ek linear map mein collapse ho jaate hain. insert karo taaki adapter ek nonlinear correction seekh sake.
    • Kyun? ke bina, sirf ek rank- linear map hai — kam expressive.
  3. Residual mein wrap karo. initialize karo taaki shuruat mein ho.
    • Kyun? Agar adapter near-identity se shuru hota hai, toh frozen model ka behaviour step 0 par preserve rehta hai, isliye training ek known-good point se shuru hoti hai aur pretrained knowledge destroy nahi hogi.

Prefix Tuning

YEH KAISE / KYUN KAAM KARTA HAI

  • Real token queries ab extra learned key/value slots par attend karte hain. Kyunki softmax saare keys par mix karta hai, prefix har position mein task-specific information inject kar sakta hai.
  • Sirf (size per layer) train hote hain; frozen rehte hain.
  • parametrize kyun karo aur sirf embeddings prepend kyun nahi? Raw embeddings prepend karna ("prompt tuning") sirf layer 0 ko affect karta hai; har layer par directly keys/values likhna zyaada control deta hai aur zyaada stably train hota hai. (Practice mein ek chhota MLP prefix ko training ke dauran stability ke liye reparametrize karta hai.)


Adapters vs Prefix Tuning (80/20 core)

Adapters Prefix tuning
Params kahaan jaate hain FFN blocks ke andar attention K/V mein
Trainable form
Inference cost har layer mein extra tiny FFN lamba effective sequence
Init trick (identity) stability ke liye reparam MLP
Params

Woh 20% jo aapko pata hona chahiye: dono backbone freeze karte hain; adapters ek bottleneck FFN add karte hain residual init-to-identity ke saath; prefix tuning learned key/value vectors prepend karta hai; dono ~0.1–3% weights train karte hain aur ek shared model + tiny per-task deltas dete hain.



Recall Feynman: ek 12-saal ke bachche ko samjhao

Socho ek bahut smart robot hai jo pehle se har kitaab padh chuka hai. Tum nahi chahte ki sirf apna homework karwaane ke liye usse sab kuch dobara sikhao. Toh tum uspe ek chhota helper gadget clip karte ho (adapter) ya usse ek secret cheat-note dete ho jo woh har jawab se pehle padhta hai (prefix). Robot ka bada brain bilkul waise ka waisa rehta hai — tum sirf chhota gadget ya chhoti note train karte ho. Yeh sasta hai, fast hai, aur tum 100 alag gadgets 100 alag kamon ke liye rakh sakte ho, sab usi ek robot pe clip karke.


Flashcards

PEFT (adapters / prefix tuning) kaunsi problem solve karta hai?
Full fine-tuning har task ke liye ek full model copy chahta hai (O(W) params); PEFT backbone freeze karta hai aur sirf ~0.1–3% nayi params train karta hai, ek shared model + tiny deltas.
Adapter forward equation likho.
jahaan , .
Adapter bottleneck dimension kyun use karta hai?
Params ko (full map) se tak cut karne ke liye; low capacity sasta hai aur regularizer ki tarah kaam karta hai.
Adapter ko nonlinearity kyun chahiye?
Do stacked linear maps ek mein collapse ho jaate hain; adapter ko nonlinear correction seekhne deta hai (warna sirf ek rank- linear map hoga).
Adapter mein initialize kyun karte hain?
Taaki step 0 par ho (near-identity), pretrained behaviour preserve ho aur training ek known-good point se shuru ho.
L layers mein adapters ke approximate trainable params?
(k adapters/layer), vocab aur sequence length se independent.
Prefix tuning mein exactly kya seekha jaata hai?
Har layer ke liye key/value prefix matrices ; queries real rehte hain, K aur V ko learned prefix prepend hota hai.
Prefix-tuning attention equation?
, phir .
Prefix tuning vs prompt tuning?
Prompt tuning sirf layer-0 input embeddings edit karta hai; prefix tuning har layer par learned K/V inject karta hai — zyaada expressive/stable.
Prefix param count formula?
(L layers mein keys+values, prefix length p).
Steel-man: full fine-tuning PEFT se hamesha behtar kyun NAHI hota?
Chhote data par yeh overfit karta hai aur bhool jaata hai; PEFT ki low capacity regularize karta hai aur aksar FT se match karta hai ~100× lower storage par.
Length-p prefix ka length-n sequence par compute cost kya hai?
Attention ban jaata hai — har token ke liye lamba effective sequence.

Connections

  • LoRA and low-rank adaptation — ek aur PEFT: inserted modules ki jagah low-rank weight deltas train karta hai.
  • Prompt tuning and soft prompts — prefix tuning ka layer-0-only special case.
  • Transformer attention mechanism — prefix tuning iske K/V edit karta hai.
  • Residual connections — adapter init-to-identity ke peeche ka trick.
  • Catastrophic forgetting — backbone freeze karna kyun help karta hai.
  • Full fine-tuning vs PEFT — storage/compute trade-off.

Concept Map

costs O of W per task

motivates

freezes backbone

trains ~0.1-3%

method 1

method 2

inserted after sublayer

down then up project

adds nonlinearity

wrapped in

W_up near zero

prepends fake tokens

Full fine-tuning

Storage compute problem

Parameter-Efficient Fine-Tuning

Frozen weights

Tiny delta per task

Adapter layers

Prefix tuning

Bottleneck FFN

2dr params

Nonlinear correction

Residual skip connection

Near-identity at init

Trainable keys and values