DO nested minimizations kyun? Agar hum λ ko training loss pe tune karte, to hum bas wohi pick karte jo data ko memorize kare (jaise zero regularization, bahut bada model). Humein generalization detect karne ke liye ek held-out signal chahiye. Yahi validation set ka poora kaam hai.
WHAT chahiye: samples jo orders of magnitude mein evenly spread hon, raw values mein nahi.
WHY:η ka effect roughly multiplicative hota hai. 0.001→0.002 (×2) jaana training utna hi change karta hai jitna 0.01→0.02 (×2), chahe absolute gaps (0.001 vs 0.01) 10× alag hon. Agar hum [10−5,10−1] mein uniformly sample karein, ~90% samples [10−2,10−1] mein land karenge aur hum chhoti values almost kabhi test nahi karenge.
HOW — sampling rule derive karo.Exponent ko uniformly sample karo:
u∼U(a,b),η=10u.
Phir density ke liye, u=log10η ke saath, dηdu=ηln101, to
p(η)=p(u)dηdu=b−a1⋅ηln101∝η1.
Hyperparameter ko parameter se kya alag karta hai?
Parameters (W,b) training loss pe gradient descent se seekhe jaate hain; hyperparameters training se pehle set kiye jaate hain aur control karte hain ki learning kaise hogi, validation set pe tune kiye jaate hain.
Gradient descent learning rate ko directly kyun tune nahi kar sakta?
Training loss iske w.r.t. usefully differentiable nahi hai (LR loss ke bahar kaam karta hai; kaafi hypers discrete hain), aur hypers pe training loss minimize karna bas wohi pick karega jo overfit kare — humein held-out validation signal chahiye.
Learning rate log scale pe sample kyun karein?
Iska effect multiplicative hai; log-uniform sampling har decade ko equal probability deta hai. η=10u, u∼U(a,b) sample karne se density p(η)∝1/η milti hai.
Kaunsa single hyperparameter sabse zyada impact karta hai aur kyun?
Learning rate — yeh har gradient step ko multiply karta hai, control karta hai ki training converge, diverge, ya crawl kare.
Random search grid search se better kyun hai?
Sirf kuch hypers matter karte hain; same budget ke liye, random search important dimension ko bahut zyada distinct values pe test karta hai jabki grid unimportant repeats pe trials waste karta hai.
Batch size ke liye linear scaling rule batao.
Batch size ko k se multiply karo ⇒ learning rate ko k se multiply karo (bade k ke liye warmup add karo), taaki har example ke liye expected parameter displacement roughly constant rahe.
Weight decay ko "decay" kyun kehte hain?
L2 update ban jaata hai θ←(1−ηλ)θ−ηg; factor (1−ηλ)<1 weights ko har step mein 0 ki taraf shrink karta hai.
Test set sirf ek baar kyun use karna chahiye?
Test set use karke ki gayi koi bhi tuning model mein info leak karti hai, ise overfit karti hai aur reported score ko optimistically bias karti hai.
LR range test kya hai?
Har batch mein η ko geometrically badhao, loss vs logη plot karo; steepest descent ke paas η pick karo, ~ek order neeche wahan se jahan loss diverge hota hai.
Recall Feynman: 12-saal ke bache ko samjhao
Socho tum cakes bake kar rahe ho. Recipe ki maatraaein (aata, cheeni) weights ki tarah hain — oven inhe "seekhta" hai jaise jaise bake hota hai. Lekin oven ka temperature, baking time, aur cake ka size woh cheezein hain jo tum baking se pehle decide karte ho — yeh hyperparameters hain. Temperature bahut zyada karo aur cake jal jaata hai (loss explode); bahut kam karo aur yeh hamesha kaccha rehta hai (bahut dheere seekhta hai). Aap oven ko apna temperature khud nahi choose karne de sakte usi cake ka swaad lekar jo woh bake kar raha hai (yeh training set hai) — tumhe ek doosra tester chahiye (validation) jo bataye ki temperature achha tha. Aur tum ek final judge (test set) rakhte ho jo sirf ek baar taste karta hai taaki tum unke liye adjust karke cheat na kar sako.