Bayesian Optimization, değerlendirilmesi pahalı kara kutu fonksiyonlarını olasılıksal bir vekil modelle minimum sayıda denemeyle optimize eden bir makine öğrenmesi stratejisidir.

Bayesian Optimization (Bayesci Eniyileme), gradient bilgisi olmadan ve fonksiyonun matematiksel formu bilinmeden, kara kutu niteliğindeki pahalı amaç fonksiyonlarını en az sayıda değerlendirmeyle optimize etmeye yarayan ileri bir arama yöntemidir. Temel fikir şudur: geçmiş değerlendirmelerden elde edilen bilgiyi bir olasılık modeline (vekil/surrogate model) aktarmak, ardından bu modeli kullanarak bir sonraki en umut verici noktayı akıllıca seçmek ve gereksiz denemelerden kaçınmak. Yöntem döngüsel ve sıralı biçimde çalışır. İlk olarak birkaç rastgele nokta değerlendirilir; elde edilen sonuçlar bir Gaussian Process (Gaussian Süreç) gibi probabilistik bir vekil modele fit edilir. Daha sonra bir kazanım fonksiyonu (acquisition function) — çoğunlukla Beklenen İyileşme (Expected Improvement, EI), Üst Güven Sınırı (Upper Confidence Bound, UCB) veya İyileşme Olasılığı (Probability of Improvement, PI) — vekil modelden hesaplanarak yeni bir aday nokta seçilir. Gerçek amaç fonksiyonu bu noktada değerlendirilir, ortaya çıkan sonuç modele eklenir ve döngü devam eder. Her iterasyonda vekil model daha isabetli hale gelir. Bayesian Optimization, özellikle derin öğrenme modellerinde hiperparametre optimizasyonu, otomatik makine öğrenmesi (AutoML) çerçeveleri ve sinir mimarisi arama (Neural Architecture Search, NAS) gibi her değerlendirmenin saatler sürebildiği senaryolarda Grid Search veya Random Search'e kıyasla büyük verimlilik avantajı sunar. Tipik olarak Random Search'e göre 5–10 kat daha az değerlendirmeyle benzer veya daha iyi sonuçlara ulaşılır. Popüler uygulamalar arasında Hyperopt, Optuna, SMAC ve Google Vizier yer almaktadır. Yöntemin başlıca sınırlılığı, Gaussian Process tabanlı vekil modelin yüksek boyutlarda hesaplama maliyetinin O(n³) ile artması ve doğası gereği sıralı işlem gerektirmesidir. Bu güçlükleri aşmak için Tree-structured Parzen Estimator (TPE), Random Forest tabanlı SMAC ve paralel değerlendirmeye uygun asenkron BO varyantları geliştirilmiştir.

Bayesian Optimization Nedir?

Bayesian Optimization (Bayesci Eniyileme), her değerlendirmesi hesaplama açısından pahalı olan kara kutu (black-box) fonksiyonlarını minimum sayıda denemeyle optimize eden ileri bir arama stratejisidir. Gradient bilgisi gerekmez; fonksiyonun formülü de bilinmek zorunda değildir. Bunun yerine yöntem, geçmiş değerlendirmelerden edinilen bilgiyi kullanarak bir sonraki en umut verici deneme noktasını akıllıca seçer. Klasik Grid Search tüm olası kombinasyonları sistematik olarak dener, Random Search ise rastgele örnekler alır. Her iki yöntem de geçmiş sonuçları görmezden gelir. Bayesian Optimization ise her değerlendirmeden 'öğrenerek' bir sonraki adımı belirler; bu şekilde tipik olarak Random Search'e göre 5-10 kat daha az değerlendirmeyle benzer veya daha iyi sonuçlara ulaşılır.

Çalışma Prensibi

Bayesian Optimization döngüsel bir süreç izler: **1. Başlangıç örnekleme:** Birkaç nokta rastgele veya Latin Hypercube Sampling gibi düzenli bir yöntemle seçilir ve gerçek fonksiyon değerlendirilir. **2. Vekil model eğitimi:** Mevcut gözlemler bir Gaussian Process (GP) gibi probabilistik bir modele fit edilir. GP, her noktada hem bir tahmin ortalaması hem de tahminin ne kadar belirsiz olduğunu gösteren bir varyans değeri üretir. **3. Kazanım fonksiyonu optimizasyonu:** Expected Improvement (EI), UCB veya PI gibi kazanım fonksiyonu, vekil modelden hesaplanır. Bu fonksiyon 'keşif' (belirsiz bölgeleri araştırma) ile 'sömürü' (iyi bilinen bölgelerde iyileştirme arama) arasındaki dengeyi yönetir. Kazanım fonksiyonunun maksimum olduğu nokta bir sonraki aday olarak seçilir. **4. Gerçek değerlendirme:** Aday nokta gerçek fonksiyonda değerlendirilir (örneğin bir derin öğrenme modeli eğitilir). **5. Model güncelleme:** Yeni gözlem vekil modele eklenir ve döngü 2–4 adımlarıyla devam eder.

Temel Bileşenler

  • check_circle Gaussian Process (GP) Vekil Modeli: Fonksiyonlar üzerinde olasılık dağılımı tanımlayan probabilistik model. Her noktada hem tahmin değeri hem de belirsizlik (varyans) üretir. Kernel fonksiyonu (RBF, Matérn gibi) GP'nin fonksiyon uzayındaki önsel varsayımlarını kodlar.
  • check_circle Expected Improvement (EI) Kazanım Fonksiyonu: En yaygın kullanılan kazanım fonksiyonu. Mevcut en iyi değeri f* olarak alır ve her aday noktanın bu değeri ne kadar iyileştireceğinin beklentisini hesaplar. EI(x) = E[max(f(x) - f*, 0)]. Hem ortalamayı hem belirsizliği dengeli biçimde kullanır.
  • check_circle Upper Confidence Bound (UCB): UCB(x) = μ(x) + β·σ(x). β parametresi keşif/sömürü dengesini kontrol eder. Büyük β daha fazla keşfi teşvik eder. Bant genişliği teorisi ile regret sınırları analitik olarak türetilebilir.
  • check_circle Tree-structured Parzen Estimator (TPE): Hyperopt kütüphanesinde kullanılan GP alternatifi. İyi sonuç veren ve kötü sonuç veren gözlemleri ayrı yoğunluk tahminleriyle modeller. EI ≈ l(x)/g(x) oranını maksimize eder. Koşullu ve kategorik hiperparametre uzaylarında GP'den daha verimlidir.
  • check_circle SMAC (Sequential Model-Based Algorithm Configuration): Random Forest tabanlı vekil model kullanan BO çerçevesi. O(n log n) eğitim karmaşıklığıyla GP'nin O(n³)'üne kıyasla büyük veri setlerinde çok daha hızlıdır. Karmaşık koşullu hiperparametre uzaylarını doğal olarak destekler.

Kullanım Alanları

  • check_circle Hiperparametre Optimizasyonu (HPO): En yaygın uygulama alanıdır. Öğrenme oranı, batch boyutu, dropout oranı, ağaç derinliği gibi ML/DL hiperparametrelerini optimize eder. Tek bir derin öğrenme model eğitiminin saatler sürebildiği durumlarda Grid Search yerine tercih edilir.
  • check_circle AutoML Çerçeveleri: Auto-sklearn, TPOT, H2O AutoML ve Google Cloud AutoML gibi sistemler Bayesian Optimization'ı algoritma seçimi ve hiperparametre ayarı için motor olarak kullanır. Bu sayede veri bilimciler olmadan bile makul modeller üretilebilir.
  • check_circle Neural Architecture Search (NAS): Sinir ağı mimarisini (katman sayısı, bağlantı topolojisi, aktivasyon fonksiyonu) otomatik keşfetmek için kullanılır. BANANAS (Bayesian Optimization with Neural Architectures for NAS) bu alanda önemli bir çalışmadır.
  • check_circle Bilimsel ve Endüstriyel Optimizasyon: İlaç keşfi (moleküler özellik tahmini), malzeme bilimi (yeni alaşım tasarımı), robotik kontrolcü ayarı ve A/B testi tasarımı gibi gerçek dünya deneyleri pahalı olan her alanda kullanılabilir.

Avantajlar ve Sınırlılıklar

**Avantajlar:** - Geçmiş değerlendirmelerden öğrenerek daha az denemeyle iyi sonuçlara ulaşır. - Belirsizlik tahmini hangi bölgelerin araştırılacağını belirler. - Koşullu ve hiyerarşik hiperparametre uzaylarını destekleyen varyantları mevcuttur. - Paralel değerlendirme için q-EI ve asenkron BO varyantları geliştirilmiştir. **Sınırlılıklar:** - GP tabanlı BO yüksek boyutlarda (>20 boyut) hesaplama açısından zorlanır. - Doğası gereği sıralıdır; agresif paralelleştirme zor ve karmaşıktır. - Güvenilir bir posterior oluşturmak için başlangıçta yeterli sayıda gözlem gerektirir. - Vekil model gerçek fonksiyonu yanlış temsil ederse optimizasyon yanlış yönlere sapabilir.

Sıkça Sorulan Sorular

  • check_circle Bayesian Optimization ne zaman kullanılmalıdır?: Her değerlendirmenin maliyetli olduğu (saatler/günler süren) durumlarda tercih edilmelidir. Fonksiyon değerlendirmesi milisaniyeler alıyorsa Random Search veya Grid Search yeterlidir. 20'den az hiperparametre ve sınırlı arama bütçesi varsa Bayesian Optimization'ın avantajı belirginleşir.
  • check_circle GP tabanlı BO yüksek boyutlarda neden zorlanır?: Gaussian Process'in eğitim karmaşıklığı O(n³) ve tahmin karmaşıklığı O(n²)'dir. Veri noktası sayısı arttıkça veya boyut büyüdükçe (>20 boyut) bu maliyet katlanarak artar. Bu durumda TPE (Hyperopt), SMAC veya gradient-based BO yöntemleri (BoTorch) daha uygun alternatiflerdir.
  • check_circle Optuna, Hyperopt ve SMAC arasındaki fark nedir?: Optuna hem TPE hem de CMA-ES gibi çeşitli algoritmalar sunar; kullanıcı dostu API'si ve dinamik arama uzayı tanımıyla öne çıkar. Hyperopt klasik TPE uygulamasıdır. SMAC ise Random Forest tabanlı vekil modeli ile kategorik ve koşullu uzaylarda güçlüdür; AutoML araştırmalarında standart referans olarak kabul görür.
  • check_circle Bayesian Optimization ile Reinforcement Learning arasındaki fark nedir?: Her iki yöntem de dış ortamla etkileşerek öğrenir; ancak amaçları farklıdır. RL politika geliştirerek sıralı karar almayı öğrenir ve ortam geçişlerine ihtiyaç duyar. BO ise fonksiyon değerini tahmin eden bir vekil model ile tek adımlı kara kutu optimizasyon yapar. RL'nin hiperparametrelerini ayarlamak için BO kullanmak yaygın bir kombinasyondur.