2.6.13 · HinglishModel Evaluation & Selection

Grid search and random search

3,324 words15 min readRead in English

2.6.13 · AI-ML › Model Evaluation & Selection

The Hyperparameter Tuning Problem

The Goal: Hyperparameter configuration dhundna jo validation performance maximize kare:

jahaan hyperparameter space hai.

Yeh Hard Kyun Hai:

  • Koi gradient information nahi (hyperparameters validation loss ke w.r.t. differentiable nahi hote)
  • Har evaluation ke liye full model training chahiye (expensive hai)
  • Space high-dimensional aur combinatorial hai
  • Hyperparameters ke beech interactions non-linear hain

Grid Search: Exhaustive Exploration

How Grid Search Works

Step-by-step:

  1. Har hyperparameter ke liye ek grid define karein:
    • Learning rate:
    • Regularization:
  2. Saare combinations generate karein:
  3. Har combination ke liye:
    • Un hyperparameters ke saath training set par model train karein
    • Validation set par evaluate karein
    • Validation score record karein
  4. Best validation score wala configuration select karein
  5. Best config ke saath full training+validation data par retrain karein, hold-out test set par test karein

Computational Cost: Agar hamare paas ke liye 3 values, ke liye 4, aur max depth ke liye 5 hain:

5-fold CV ke saath, woh training runs hain.

  1. Grid ke andar best configuration dhundne ki guarantee (exhaustive)
  2. Implement aur samajhne mein simple
  3. Reproducible (deterministic)
  4. Achha jab hyperparameters ke clear discrete choices hon (e.g., activation functions: ReLU, tanh, sigmoid)

Additional Limitation: Grid search resolution waste karta hai. Agar aap learning rate ko 5 values aur batch size ko 5 values dete hain, toh 25 combinations milti hain. Lekin agar learning rate zyada important hai, toh aap learning rate ke liye 15 values aur batch size ke liye 3 chahenge (phir bhi 45 combinations, lekin important dimension ka better coverage).

Figure — Grid search and random search

Random Search: Efficient Sampling

How Random Search Works

Step-by-step:

  1. Har hyperparameter ke liye distributions define karein:
    • Learning rate:
    • Regularization:
    • Dropout:
  2. random configurations sample karein (e.g., 60 samples)
  3. Har sample ke liye:
    • Un hyperparameters ke saath model train karein
    • Validation set par evaluate karein
  4. Best configuration select karein
  5. (Optional) Zoom in: best region ke aas-paas distributions narrow karein aur zyada sample karein

Random Kyun? First principles se derivation:

Ek 2D hyperparameter space consider karein jahaan hyperparameter important hai aur unimportant hai.

Grid search with budget of 9 trials:

  • ke liye 3 values:
  • ke liye 3 values:
  • Tries:
  • Important ke liye try ki gayi unique values: Sirf 3 values

Random search with budget of 9 trials:

  • 9 random pairs sample karein
  • Har sample independently continuous distribution se choose karta hai
  • Important ke liye try ki gayi unique values: 9 alag values (sab distinct)

Key insight: Random search har dimension mein zyada coverage deta hai. dimensions mein trials ke liye:

  • Grid with values per dimension: har hyperparameter ke liye sirf unique values try karta hai
  • Random: har hyperparameter ke liye unique values try karta hai (expectation mein)

Mathematical justification: Agar objective function hai:

jahaan important hai aur noise hai, toh random points sample karne se ke alag values ka evaluation milta hai, jabki grid sirf alag values evaluate karta hai.

  1. High dimensions mein zyada efficient: Har hyperparameter ke liye zyada unique values try karta hai
  2. Continuous spaces naturally handle karta hai: Discretize karne ki zarurat nahi
  3. Parallelize karna aasaan: Saare trials independent hain
  4. Kabhi bhi rok sakte hain: Agar 100 trials ka budget hai lekin 60 par results plateau kar jaayein, toh ruk sakte hain
  5. Important/unimportant hyperparameter scenarios ke liye better: Automatically important dimensions par zyada coverage milti hai

When to Use Which?

Grid Search tab use karein jab:

  • Kam hyperparameters hon (≤3)
  • Discrete choices hon (e.g., optimizer type: 'adam' vs 'sgd')
  • Chota, well-understood search space ho
  • Har tried combination report karni ho (reproducibility requirements)

Random Search tab use karein jab:

  • Zyada hyperparameters hon (≥4)
  • Continuous hyperparameters hon
  • Bada ya unknown search space ho
  • Aapko shak ho ki kuch hyperparameters doosron se zyada important hain
  • Computational budget limited ho

Practical Implementation Details

Cross-Validation Integration

Dono methods ko performance estimate karne ke liye cross-validation use karni chahiye:

Configuration ke liye:

Kyun? Ek single train/val split lucky ya unlucky ho sakti hai. CV is variance ko average out karta hai.

Log-uniform un hyperparameters ke liye jo orders of magnitude span karte hain:

Example: Learning rate se tak.

Log-uniform kyun? Agar hum uniform use karein, toh hum ke paas (upper end par) zyada values sample karenge, lekin aur ke beech ka space utna hi important hai jitna aur ke beech. Log-uniform har order of magnitude ko equal probability deta hai.

Bounded hyperparameters ke liye Uniform: Example: Dropout probability 0.0 se 0.5 tak.

Discrete counts ke liye Integer uniform: Example: Hidden units ki sankhya 50 se 500 tak.

Nested Cross-Validation for Unbiased Evaluation

Nested CV formula unbiased performance estimate ke liye:

jahaan sirf outer fold ke training data se paayi gayi best configuration hai.

Bergstra & Bengio (2012) Theoretical Result

Theorem (informal): Ek hyperparameter space ke liye jahaan dimensions mein se sirf important hain, trials ke saath random search har important dimension mein unique values sample karta hai, jabki trials ke saath grid search har dimension mein unique values sample karta hai.

Proof sketch:

  • trials ke saath grid search: har dimension ke liye values allocate karein → coverage
  • Random search: har trial independently har dimension se sample karta hai → har dimension ko unique samples milte hain

Implication: Jab bada ho aur ho, toh random search exponentially zyada efficient hai.

Empirical Comparison

Study: Bergstra & Bengio ne various ML tasks (neural nets, deep belief networks) par test kiya.

Result: Random search ne grid search se 2-3× kam evaluations use karke optimal ke 3% andar configurations dhundein.

Kyun? Zyaatar tasks mein 5-10 total mein se sirf 1-3 important hyperparameters the. Random search ki better per-dimension coverage dominant rahi.

Connections

  • Cross-Validation - Har hyperparameter configuration ko reliably evaluate karne ke liye use hoti hai
  • Overfitting and Underfitting - Hyperparameters model complexity control karte hain, bias-variance tradeoff affect karte hain
  • Regularization - ek common hyperparameter hai jo search kiya jaata hai
  • Learning Rate Scheduling - Learning rate aksar sabse important hyperparameter hota hai tune karne ke liye
  • Bayesian Optimization - Zyada advanced search jo objective ka surrogate model build karta hai
  • Ensemble Methods - Perfect hyperparameter tuning ki zarurat kam kar sakta hai models ko average karke
  • Training-Validation-Test Split - Framework jiske andar hyperparameter search operate karta hai
  • Early Stopping - Ek aur hyperparameter (patience) jo tune kiya ja sakta hai

Recall Ek 12-Saal ke Bachche ko Explain Karein

Imagine karein aap ek video game character ke liye best settings dhundne ki koshish kar rahe hain (speed, strength, defense). Aapke paas ek training mode hai jahaan aap alag combinations test kar ke apna score dekh sakte hain.

Grid search waise hai jaise har single combination try karna: speed=1 with strength=1, phir speed=1 with strength=2, etc. Agar aapke paas 3 settings mein se har ek ke liye 10 options hain, toh woh 10×10×10 = 1,000 tests hain! Bahut time lagta hai lekin aap definitely jo try kiya usmein se best combination dhundh lenge.

Random search waise hai jaise aankhein band karke randomly 1,000 baar settings pick karna. Silly lagta hai, lekin yahan trick hai: imagine karein speed bahut matter karti hai lekin defense zyada nahi. Grid search ke saath, aap sirf 10 alag speeds try kar sakte hain (kyunki aap apne tests saari settings mein spread kar dete hain). Lekin random search ke saath, saare 1,000 tests alag random speeds use karte hain! Toh aap important setting (speed) ko bahut better explore karte hain.

Lesson: Jab kuch cheezein doosron se zyada matter karti hain, toh randomly try karna actually systematic try karne se smarter ho sakta hai. Yeh waise hi hai jaise ek naye shehar ko randomly ghoomne se kabhi kabhi aisi cool jagahein milti hain jo map par nahi thi!

Flashcards

#flashcards/ai-ml

Hyperparameters kya hain aur woh model parameters se kaise alag hain? :: Hyperparameters woh settings hain jo training se pehle configure ki jaati hain (learning rate, regularization strength, tree depth) jo learning process control karti hain. Model parameters training ke dauran data se seekhe jaate hain (weights, biases). Hyperparameters choose karne padte hain, seekhe nahi jaate.

Grid search kya hai?
Grid search predefined grid of hyperparameter values se har combination ko exhaustively evaluate karta hai. k hyperparameters ke liye jinka n_i values hain, yeh ∏n_i models train karta hai aur best validation score wala configuration select karta hai.
Random search kya hai?
Random search specified distributions (uniform, log-uniform) se n trials ke liye hyperparameter combinations randomly sample karta hai. Yeh random configurations ke saath n models train karta hai aur best performer select karta hai.
High dimensions mein random search grid search se aksar zyada efficient kyun hai?
n trials aur d dimensions ke liye, grid search har hyperparameter ke liye sirf n^(1/d) unique values try karta hai, jabki random search approximately n unique values try karta hai. Jab d bada hota hai, n^(1/d) bahut chota ho jaata hai (e.g., 256^(1/4)=4 vs 256).
Random search ke liye log-uniform distribution kab use karni chahiye?
Log-uniform un hyperparameters ke liye use karein jo multiple orders of magnitude span karte hain (learning rate: 10^-5 se 10^-1 tak). Yeh ensure karta hai ki har order of magnitude ke liye equal sampling probability ho, jo uniform sampling se hone wale larger values ki taraf bias ko prevent karta hai.
Nested cross-validation kya hai aur yeh kyun zaroori hai?
Nested CV mein outer loop (performance estimation ke liye K-fold CV) aur inner loop (CV ke saath hyperparameter search) hota hai. Yeh test set leakage prevent karta hai jo tab hoti hai jab hyperparameter tuning ka best CV score report kiya jaata hai, jo overly optimistic hota hai kyunki validation sets ne model selection decision ko influence kiya.
3 hyperparameters ke saath grid search ki computational cost kya hai jinka 4, 5, aur 6 values hain aur 5-fold CV ke saath?
Total models = 4 × 5 × 6 = 120 configurations. 5-fold CV ke saath: 120 × 5 = 600 training runs.
Grid search hyperparameter space mein resolution kyun waste karta hai?
Grid search importance ki parwah kiye bina saare hyperparameters ko equal numbers of values allocate karta hai. Agar learning rate critical hai lekin batch size nahi, toh dono ko 5 values dena batch size par resolution waste karta hai. Better hoga learning rate ko 15 values aur batch size ko 3 dena.
Random search ke mukable grid search ka main advantage kya hai?
Grid search defined grid ke andar best configuration dhundne ki guarantee deta hai (exhaustive). Yeh deterministic aur reproducible hai. Chote discrete spaces (≤3 hyperparameters) ke liye clear choices ke saath achha hai.
100 trials ke saath random search ek important hyperparameter ke liye kitne unique values sample karta hai?
Approximately 100 unique values (har trial independently sample karta hai). Compare karein grid search se jo 4D space mein 100 trials ke saath: sirf 100^(1/4) ≈ 3.16 values per dimension.

Concept Map

contrasts with

must tune to reach

difficult because

motivates

motivates

does

does

incurs

multiplied by

selects

selects

Hyperparameters set before training

Parameters learned during training

Find h star maximizing val score

Hard problem no gradient expensive

Grid Search

Random Search

Try all combinations

Sample randomly

Cost = product of value counts

Cross-validation runs

Best config retrain test on hold-out