Hyperparameter Optimizasyonu: Modelin Ayarlanmasının Bilimi
Learning rate, batch size, derinlik — ML modellerinin yüzlerce ayarlanabilir parametresi var. Bunları seçmek ayrı bir bilim oldu.

Parametre mi, hiperparametre mi?
- Parametre: model veriden öğrenir (sinir ağı ağırlıkları).
- Hiperparametre: insan seçer (öğrenme hızı, batch size, ağaç sayısı).
Hiperparametre seçimi deneyim + matematik karışımı. Modern ML'de otomatikleştirilmesi ana araştırma alanı.
Tipik hiperparametreler
Sinir ağı
- Learning rate: 0.001-0.1.
- Batch size: 16-1024.
- Optimizer: Adam, SGD, AdamW.
- Weight decay: 0.0-0.1.
- Dropout: 0.0-0.5.
- Layer count: 2-100+.
- Hidden size: 64-8192.
Gradient Boosting
- n_estimators: 100-5000.
- max_depth: 3-15.
- learning_rate: 0.01-0.3.
- min_child_weight, subsample, colsample.
Random Forest
- n_estimators: 100-1000.
- max_features, min_samples_leaf.
Klasik yöntemler
1. Grid Search
Her hiperparametre için kombinasyon listesi, hepsini dene.
from sklearn.model_selection import GridSearchCV
grid = {'lr': [0.01, 0.1], 'depth': [3, 5, 7]}
Sorun: kombinasyonlar üstel patlar. 6 hiperparametre × 5 değer = 15625 deneme.
2. Random Search
Hiperparametre dağılımlarından rastgele örnekle.
Bergstra-Bengio 2012: random search grid search'ten daha iyi çoğu zaman, çünkü:
- Çoğu hiperparametre önemsiz.
- Önemli olanların kapsamı daha geniş aranır.
3. Bayesian Optimization
Akıllı arama: önceki denemelerden öğren, sonrakini seç.
- Surrogate model: hiperparametre → performans tahmin (Gaussian Process).
- Acquisition function: nereyi denesem? (Expected Improvement, UCB).
Daha az denemeyle daha iyi sonuç.
Optuna, scikit-optimize, Hyperopt Python araçları.
Modern araçlar
Optuna (Preferred Networks, Japan)
Çok popüler:
import optuna
def objective(trial):
lr = trial.suggest_loguniform('lr', 1e-5, 1e-1)
depth = trial.suggest_int('depth', 3, 10)
# model eğit, score döndür
return score
study = optuna.create_study()
study.optimize(objective, n_trials=100)
TPE (Tree-structured Parzen Estimator) algoritması.
Ray Tune
Dağıtık hyperparameter arama — büyük modeller için.
Population Based Training (PBT)
DeepMind. Birden fazla model paralel; kötü performansta hiperparametreyi başka iyi modellinkiyle değiştir.
Hyperband / ASHA
Erken başarısız denemeleri erkenden öldür, kaynak tasarrufu.
Modern derin öğrenmede
LLM eğitiminde hyperparameter taraması çok pahalı:
- 1 deneme = milyonlarca dolar.
- Bunun için küçük modelde tara, büyük modele aktar (μ-parametrization, Hoffmann scaling).
Chinchilla scaling laws: optimal LR + batch size + model boyutu denklem ile.
Cross-validation içinde
Hyperparameter taraması eğitim setinde yapılmalı. Test seti sadece son değerlendirme.
Toplam veri → Train (HP tarama + CV) + Test (1 kez)
Nested cross-validation: dış K-fold + iç HP tarama.
Pratik tavsiyeler
1. Önce baseline
Default hiperparametrelerle eğit. Improvement gelecek %5-15.
2. Bir-iki kritik HP'ye odaklan
Learning rate ve batch size en önemli — çok zaman onlara ayır.
3. Log scale
LR, weight decay gibi parametreler logaritmik dağılım.
4. Erken durma
Patience parametresi ile gereksiz deneme önle.
5. Random > Grid
Random search çoğu zaman daha hızlı.
6. Bayesian > Random
Optuna gibi araçlarla başla.
7. Pruning
İyi olmayan denemeleri erken durdur.
AutoML
Tam otomatik ML:
- Veri ön işleme.
- Model seçimi.
- Hyperparameter ayarlama.
- Ensemble.
Araçlar: AutoSklearn, TPOT, AutoGluon (Amazon), H2O.ai.
Avantaj: uzman olmayan kullanıcı için baseline. Dezavantaj: siyah kutu — özelleştirme zor.
Türk endüstri örnekleri
- Trendyol: Optuna ile öneri sisteminde günlük hyperparameter ayarlama.
- Garanti BBVA: H2O.ai ile fraud modellerinin otomatik tuning.
- TCMB: forecasting modelleri Bayesian optimization.
- TÜBİTAK BİLGEM: AutoSklearn ile baseline.
Felsefe
Hyperparameter optimizasyon = dış parametre öğrenmesi. Modelin veriden öğrendiği parametrelerin yanında, şirket veya araştırmacı'nın öğrendiği "iyi başlangıç" değerleri.
Meta-learning vizyonunun pratik yansıması: yeni problem için eskilerden ne öğrenebiliriz?
Kapanış
Hyperparameter optimizasyonu ML'in görünmez emeği. Modelinin %5 doğruluğu burada saklanıyor. Modern araçlar (Optuna, Ray Tune) bunu otomatik ve hızlı hale getirdi.
Bir veri biliminin olgunluk işareti: default değerlerle yetinmemek, akıllı arama kullanmak.
Etiketler
Kendinizi Test Edin
Cevaplarınız profilinizde istatistik olarak saklanır.
1. Parametre vs hiperparametre?
2. Random search'in Grid Search'a üstünlüğü?
3. Bayesian optimization ne yapar?
4. Modern Python aracı?
5. AutoML ne yapar?
İlgili Yazılar
Patates Paradoksu: 100 Kilo Patates Biraz Kuruyunca Neden 50 Kiloya Düşer?
100 kilo patatesiniz var ve %99’u sudan oluşuyor. Biraz beklettiniz, su oranı %98’e düştü. Şimdi patatesler kaç kilo? Sezginiz "neredeyse 100" diyor. Doğru cevap ise tam 50 kilo — ve bu, oranların ne kadar aldatıcı olduğunu gösteriyor.
MatematikLanchester’ın Savaş Yasaları: Bir Ordunun Gücü Neden Asker Sayısının Karesiyle Artar?
İki ordu çarpışırken sonucu ne belirler? Sezgi "daha kalabalık olan kazanır" der. Ama bir mühendis, modern savaşta sayısal üstünlüğün etkisinin doğrusal değil, asker sayısının karesiyle orantılı olduğunu gösterdi. Bu, neden "böl ve yönet" işe yaradığını açıklar.
Matematik"Yüzde 30 Yağmur İhtimali" Tam Olarak Ne Demek? Çoğu Kişi Yanlış Anlıyor
Hava durumu "bugün yüzde 30 yağmur ihtimali" dediğinde ne anlıyorsunuz? Gökyüzünün yüzde 30’u mu kapanacak? Günün yüzde 30’unda mı yağacak? Aslında ikisi de değil — ve gerçek anlamı, olasılığın ne kadar incelikli olduğunu gösteriyor.