Machine Learning

Hyperparameter Tuning: Model ko optimize karein

Hyperparameter Tuning

Aapne model train kiya aur accuracy 85% aayi. Kya ye limit hai? Nahi! Har model ke paas kuch "Setting Knobs" hote hain jinhe hum Hyperparameters kehte hain. Inhein sahi set karna ek art hai jise Hyperparameter Tuning kehte hain. Ye model ko "Good" se "Great" banata hai.


1. Parameters vs Hyperparameters

  • Parameters: Jo model data se seekhta hai (e.g., Weights).
  • Hyperparameters: Jo Aap decide karte hain training se pehle (e.g., Learning Rate, Number of Trees). Ise ek car ki tarah samjhein: Engine ka gear (Hyperparameter) aap badalte hain, par engine ki speed (Parameter) gear ke hisab se badalti hai.

2. GridSearchCV vs RandomizedSearchCV

  • Grid Search: Ye har ek combination ko check karta hai. Ye 100% accurate hai par bahut Slow hai.
  • Random Search: Ye kuch random combinations check karta hai. Ye bahut Fast hai aur 95% cases mein best result de deta hai.

3. Optuna: Bayesian Optimization (The 2026 Way)

Grid aur Random search "Galti" se seekhte nahi hain.

  • Optuna ek modern library hai jo Bayesian Optimization use karti hai.
  • Ye har fail hue experiment se seekhti hai aur agla "Guess" zyada smart lagati hai.
  • Ye 10x kam time mein behtar hyperparameters dhoondh sakti hai.

4. The Bias-Variance Tradeoff

Tuning karte waqt humein ek balance dhoondhna hota hai.

  • Agar model bahut complex kar diya (High Tuning), toh wo Overfit ho jayega.
  • Agar bahut simple rakha, toh wo Underfit ho jayega. Hum hamesha wo "Sweet Spot" dhoondhte hain jahan error sabse kam ho.

5. Summary Table: Tuning Comparison

Method Speed Accuracy Intelligence
Grid Search Very Slow Perfect 0% (Brute force)
Random Search Fast Good 0% (Random)
Bayesian (Optuna) Fast Best 100% (Learns from history)


Grid Search vs Random Search vs Bayesian Optimization (Optuna)

Hyperparameters wo settings hoti hain jo model khud learn nahi karta, balki engineer ko manually set karni padti hain:

  1. GridSearchCV: Diye gaye parameters ke har possible combination ko try karta hai. Exhaustive hai lekin computationally bohot heavy aur slow hota hai.

  2. RandomizedSearchCV: Parameter space se randomly combinations sample karta hai. Grid Search ke mukable 80% kam time mein 95% optimal result dhoondh leta hai.

  3. Bayesian Optimization (Modern Industry Standard - Optuna): Pichle trials ke results se seekhta hai aur un parameter ranges par focus karta hai jahan loss kam hone ki probability sabse zyada ho:

    import optuna
    from sklearn.ensemble import RandomForestClassifier
    from sklearn.model_selection import cross_val_score
    
    def objective(trial):
        n_estimators = trial.suggest_int('n_estimators', 50, 300)
        max_depth = trial.suggest_int('max_depth', 3, 20)
        min_samples_split = trial.suggest_int('min_samples_split', 2, 10)
        
        clf = RandomForestClassifier(
            n_estimators=n_estimators,
            max_depth=max_depth,
            min_samples_split=min_samples_split,
            random_state=42
        )
        return cross_val_score(clf, X_train, y_train, cv=3).mean()
    
    study = optuna.create_study(direction="maximize")
    study.optimize(objective, n_trials=30)
    print("Best Hyperparameters:", study.best_params)
    

๐Ÿ“š Sambandhit Tutorials & Agle Kadam

Agar aap is topic par apni pakad mazboot karna chahte hain, toh in dedicated guides ko zaroor padhein:


FAQs

1. "Learning Rate" sabse zaroori kyon hai? Kyonki ye decide karta hai ki model kitni jaldi seekhega. Agar ye bahut bada hua toh model kabhi "Minima" (Goal) tak nahi pahunch payega.

2. Tuning kab stop karni chahiye? Jab aapki accuracy "Validation Set" par badhna band ho jaye par "Training Set" par badhti rahe. Ise Early Stopping kehte hain.

3. Kya main 50 parameters tune kar sakta hoon? Haan, par ye bekar hai. Sirf 3-4 top parameters tune karein, baki default rehne dein. Ise Pareto Principle (80/20 rule) kehte hain.

4. Kya hardware matter karta hai? Haan! Tuning bahut heavy kaam hai. Agar aapke paas GPU ya multiple CPU cores hain, toh tuning 10x fast ho sakti hai.


Hyperparameter tuning model ko "Professional" touch deti hai. Ise master karke aap Kaggle top charts par pahunch sakte hain! ๐Ÿ› ๏ธ

โ† Pichla Tutorial

Ensemble Learning: Super Models ka raaz โ€” AI Gyani

Agla Tutorial โ†’

Cross-Validation: Luck ko khatam karein โ€” AI Gyani

About the Author

TM
Verified Author
Software Engineer & AI Educator

Main ek Software Engineer hoon jo AI aur Machine Learning ke baare mein Hinglish mein likhta hai. Maine AI Gyani isliye banaya taaki koi bhi Indian student bina English ki tension ke AI seekh sake โ€” bilkul free, bilkul asaan.