Makine öğrenimi modelinin eğitim sürecini dışarıdan yöneten, eğitimden önce belirlenen yapılandırma değişkeni.

Hiperparametre, bir makine öğrenimi modelinin eğitim sürecini dışarıdan yöneten ve eğitim başlamadan önce belirlenmesi gereken yapılandırma değişkenidir. Öğrenme hızı (learning rate), katman sayısı, gizli birim sayısı, batch boyutu, dropout oranı ve regularizasyon katsayısı bunun başlıca örnekleridir. Model parametrelerinden temel farkı şudur: parametreler (ağırlıklar, bias değerleri) eğitim sırasında gradyan inişiyle otomatik olarak güncellenir; hiperparametreler ise öğrenme algoritmasının dışındadır ve araştırmacı ya da otomatik bir arama süreci tarafından belirlenir. Yanlış ayarlanmış bir hiperparametre, model ne kadar güçlü olursa olsun yetersiz öğrenmeye (underfitting) veya eğitim verisini ezberlemeye (overfitting) yol açar. Öğrenme hızı çok yüksek ayarlandığında model ıraksar; çok düşük olduğunda ise eğitim aşırı yavaşlar ve yerel minimumlara takılır. Bu nedenle hiperparametre optimizasyonu (HPO), başarılı bir ML projesinin ayrılmaz parçasıdır. Günümüzde Optuna, Ray Tune ve Weights & Biases Sweeps gibi kütüphaneler bu süreci otomatikleştirir. Büyük dil modeli eğitimlerinde hiperparametre seçimi milyarlarca dolarlık hesaplama bütçelerini doğrudan etkiler; bu yüzden küçük proxy modeller üzerinde yapılan HPO denemeleri, maliyeti kısıtlamak için kritik bir strateji haline gelmiştir. Transformer mimarisinde hiperparametre uzayı geleneksel derin öğrenme modellerine kıyasla çok daha geniştir: dikkat başlığı sayısı (num_attention_heads), gömme boyutu (d_model), ileri besleme katmanı genişliği (d_ff) ve bağlam penceresi uzunluğu (context length) birbirine bağlı değerlerdir. Araştırmalar d_model ile num_attention_heads arasındaki 64:1 oranının çoğu görevde iyi bir başlangıç noktası olduğunu göstermektedir. Bu nedenle yalnızca öğrenme hızını optimize etmek yetmez; mimariye özgü değerler de sistematik biçimde keşfedilmelidir. Hiperparametre duyarlılık analizi, hangi değişkenlerin modeli en çok etkilediğini belirlemeye yarar; önemsiz boyutları sabitleyip kritik olanlara odaklanmak arama süresini önemli ölçüde kısaltır. Bütçe kısıtlı projelerde deneyimli pratisyenlerin kullandığı başlangıç değerleri bunun tipik örnekleridir: öğrenme hızı için 3e-4 (yaygın olarak Karpathy sabiti adıyla anılır), weight decay için 0.1, dropout oranı için 0.1. Bu değerlerden başlayıp küçük kapsamlı bir arama ile kendi veri setine göre rafine etmek mühendislik maliyetini minimize eder.

Hiperparametre Nedir?

Hiperparametre, bir makine öğrenimi modelinin eğitim sürecini dışarıdan yöneten ve eğitim başlamadan önce belirlenmesi gereken yapılandırma değişkenidir. Öğrenme hızı (learning rate), katman sayısı, gizli birim sayısı, batch boyutu, dropout oranı ve regularizasyon katsayısı birer hiperparametredir. Model parametrelerinden temel farkı şudur: parametreler (ağırlıklar, bias değerleri) eğitim sırasında gradyan inişiyle otomatik olarak güncellenir; hiperparametreler ise öğrenme algoritmasının dışındadır ve araştırmacı ya da otomatik bir arama süreci tarafından belirlenir. Yanlış ayarlanmış bir hiperparametre yetersiz öğrenmeye (underfitting) veya eğitim verisini ezberlemeye (overfitting) yol açar. Bu nedenle hiperparametre optimizasyonu (HPO), başarılı model geliştirmenin ayrılmaz parçasıdır.

En Kritik Hiperparametreler

Öğrenme Hızı (Learning Rate)

En etkili hiperparametre; çok yüksek → ıraksar, çok düşük → çok yavaş. Tipik aralık: 1e-5 ila 1e-1; warmup + decay ile dinamik ayar

Batch Boyutu

Her gradient güncellemesinde kullanılan örnek sayısı; büyük batch → stabil gradyan; küçük batch → gürültülü ama düzenleyici etki

Epoch Sayısı

Eğitim setinin kaç kez tam geçildiği; erken durdurma (early stopping) ile validation loss'a göre otomatik tespit edilir

Dropout Oranı

Eğitim sırasında rastgele sıfırlanan nöron oranı (0.1-0.5); overfitting'e karşı güçlü düzenleme aracı

Regularizasyon (L1/L2)

Ağırlıkları küçük tutmaya zorlayan ceza terimi; L1 seyreklik, L2 dengeli küçülme; lambda katsayısı hiperparametredir

Hiperparametre Arama Stratejileri

  • check_circle Grid Search: Tüm kombinasyonları sistematik dene; küçük uzaylarda garantili ama boyut arttıkça hesaplama patlar
  • check_circle Random Search: Belirlenen dağılımdan rastgele örnekle; Grid Search'ten sıklıkla daha verimli; Bergstra & Bengio (2012) ampirik üstünlüğünü kanıtladı
  • check_circle Bayesian Optimization: Geçmiş denemeleri öğrenip en umut verici bölgeyi hedef alır; Gaussian Process veya TPE kullanır; Optuna bu yaklaşımı uygular
  • check_circle Hyperband / ASHA: Kötü performanslı denemeleri erken keser, kaynakları umut verici olanlara aktarır; büyük ölçekli aramalarda tercih edilir
  • check_circle Population Based Training (PBT): Google DeepMind'ın yaklaşımı; paralel ajan popülasyonu arasında hiperparametreleri evrimsel olarak geliştirir

Popüler HPO Araçları

  • check_circle Optuna: Python tabanlı, TPE algoritması; dashboard, dağıtık arama, PyTorch/TF entegrasyonu; açık kaynak en popüler seçim
  • check_circle Ray Tune: Dağıtık HPO; Hyperband, PBT ve Bayesian desteği; büyük ölçekli bulut aramaları için
  • check_circle Weights & Biases Sweeps: W&B ile entegre; YAML tabanlı arama konfigürasyonu; takım paylaşımı ve görselleştirme
  • check_circle Keras Tuner: Keras modelleri için; RandomSearch, BayesianOptimization, Hyperband stratejileri
  • check_circle scikit-learn GridSearchCV: Klasik ML için standart; çapraz doğrulamayla birleşik arama

Büyük Modellerde Hiperparametre Transferi

Büyük modellerde hiperparametre aramak son derece pahalıdır: GPT-3 (175B) için tek eğitim ~4.6 milyon dolar maliyetindeydi. Bu sorunu çözmek için μP (Maximal Update Parametrization) yöntemi küçük ölçekte bulunan optimal öğrenme hızını doğrudan büyük modele aktarmayı mümkün kılar. Neural Architecture Search (NAS) ise hangi mimarinin kullanılacağını da hiperparametre gibi optimize eder; DARTS ve EfficientNet bu yöntemle bulunmuştur. Pratikte çoğu takım literatürdeki paylaşılmış değerlerden (learning rate için 3e-4 'Karpathy sabiti' gibi) başlar ve küçük bir arama ile rafine eder.

Sık Sorulan Sorular

  • check_circle Hiperparametre ile parametre arasındaki fark nedir? Parametreler (ağırlıklar, bias) eğitim sırasında gradyan inişiyle öğrenilir; hiperparametreler eğitim başlamadan önce belirlenir ve öğrenme algoritması tarafından güncellenmez.
  • check_circle Hangi hiperparametre en önemlidir? Öğrenme hızı genellikle en kritiktir; yanlış ayarlanırsa diğer hiperparametreler ne kadar iyi olursa olsun model başarısız olabilir.
  • check_circle Random Search neden Grid Search'ten daha iyi olabilir? Bazı hiperparametreler sonucu çok az etkiler; Random Search bu önemsiz boyutlara eşit kaynak ayırmaz, önemli boyutları daha geniş keşfeder.
  • check_circle Bayesian Optimization ne zaman kullanılır? Her denemenin maliyetli olduğu durumlarda; az sayıda denemede iyi hiperparametre bulmak için tercih edilir.
  • check_circle Learning rate scheduler ne işe yarar? Eğitim boyunca öğrenme hızını dinamik olarak değiştirir; sabit orana göre genellikle daha iyi yakınsama sağlar.