Weights and Biases (Ağırlıklar ve Sapmalar)

Sinir ağının eğitimle öğrenilen parametreleri: ağırlıklar girdi katkısını, sapmalar ise nöronun tetiklenme eşiğini belirler.

Ağırlıklar (Weights) ve Sapmalar (Biases), bir yapay sinir ağındaki öğrenilebilir parametrelerin iki temel bileşenidir. Ağırlıklar, bir önceki katmandan gelen her girdinin çıktıya katkısının gücünü; sapmalar ise nöronun girdi sinyalinden bağımsız olarak tetiklenme eşiğini belirler. Model eğitimi bu iki parametre grubunun kayıp fonksiyonunu minimize edecek biçimde güncellenmesinden ibarettir. Matematiksel açıdan bir tam bağlantılı (fully connected) nöron şu işlemi gerçekleştirir: giriş vektörü x ile ağırlık matrisi W'nın iç çarpımı alınır, bias terimi b eklenir ve aktivasyon fonksiyonundan geçirilir: y = f(Wx + b). Ağırlıklar genellikle Xavier veya He başlatma yöntemleriyle rastgele, sapma değerleri ise sıfır veya küçük sabitlerle başlatılır; rastgele simetri kırma olmadan tüm nöronlar özdeş kalır. Eğitim sürecinde stokastik gradyan inişi (SGD) ve türevleri (Adam, AdamW, RMSProp) geri yayılım algoritmıyla hesaplanan gradyanlar yönünde parametreleri günceller. Öğrenme hızı (learning rate) bu adım büyüklüğünü kontrol eden kritik hiper parametredir; çok büyük öğrenme hızı kararsız eğitime, çok küçük öğrenme hızı ise yavaş yakınsamaya neden olur. Parametre sayısı model kapasitesini doğrudan belirler. GPT-3'ün 175 milyar, Llama 3.1 405B'nin ise 405 milyar parametresi mevcuttur. Bu parametrelerin tamamı çoğunlukla Float16 veya BF16 biçiminde depolanır; 7 milyar parametreli bir model FP16'da yaklaşık 14 GB VRAM gerektirir. L1 ve L2 düzenlileştirme (regularization) yöntemleri, ağırlıkların aşırı büyümesini cezalandırarak aşırı öğrenmeyi (overfitting) dizginler. Transferi öğrenme (transfer learning) bağlamında önceden eğitilmiş bir modelin ağırlıkları yeni bir görev için başlangıç noktası olarak kullanılır. Sadece son katmanların ağırlıkları güncellenmesi (fine-tuning), tüm modeli sıfırdan eğitmeye kıyasla çok daha az veri ve hesaplama gerektirir. LoRA (Low-Rank Adaptation) ise ağırlık matrislerini düşük ranklı matrislerle temsil ederek eğitilecek parametre sayısını dramatik biçimde azaltır; bu yöntem büyük dil modellerinin tüketici donanımında ince ayarlanmasını mümkün kılan temel tekniktir.

balance Mantığı Anlamak

Evin fiyatını tahmin eden bir model düşünün. Oda sayısı ve evin rengi iki girdidir. Evin fiyatını belirlemede 'Oda sayısı' çok daha önemlidir, bu yüzden model eğitim sırasında bu girdiye çok yüksek bir 'Ağırlık' (Weight) atar, renge ise çok düşük bir ağırlık verir. 'Sapma' (Bias) ise, evin konumundan bağımsız olarak o şehirdeki evlerin en düşük taban fiyatını belirleyen sabit bir artı (+) değer gibi çalışır.

Matematiksel Karşılığı

  • check_circle Formül: y = (w * x) + b şeklindedir. Burada x girdi, w ağırlık, b ise sapmadır.
  • check_circle Eğitim Süreci: Makine öğrenimi dediğimiz şey, aslında milyonlarca veriyi tekrar tekrar bu formüle sokup, hata payını en aza indirecek en kusursuz 'w' ve 'b' değerlerini bulma sürecinden ibarettir.

Weights & Biases Temel Özellikleri

  • check_circle Experiment Tracking: Eğitim sırasında loss, accuracy, learning rate gibi metrikleri otomatik olarak loglar ve görselleştirir. wandb.log({'loss': 0.25, 'accuracy': 0.92}) tek satırla entegrasyon. Farklı çalıştırmalar arasında paralel karşılaştırma grafikleri; en iyi çalıştırmayı anında tespit etme.
  • check_circle Hyperparameter Sweep: Grid search, random search veya Bayesian optimization ile hiperparametre arama otomatize edilir. YAML veya Python dict ile arama uzayı tanımlanır; paralel ajanlar farklı kombinasyonları dener. Early stopping: umut vaat etmeyen çalıştırmalar otomatik sonlandırılır.
  • check_circle Model ve Artifact Yönetimi: Model checkpoint'leri, veri setleri ve diğer dosyalar versiyonlanarak saklanır. Model Registry: production'a gönderilecek modeli etiketle ve izle. Lineage tracking: hangi veri, hangi kod, hangi hiperparametrelerle üretildiği tam izlenebilir.
  • check_circle W&B Tables ve Media Logging: Görüntü, ses, video, 3D nokta bulutu gibi medyayı logla ve incele. Hatalı tahminleri görselleştir: hangi görüntüleri model yanlış sınıflandırdı? NLP için: metin örneklerini, attention ağırlıklarını veya model çıktılarını tablo formatında karşılaştır.

W&B ile MLflow Karşılaştırması

Weights & Biases bulut öncelikli, kullanıma hazır bir MLOps platformudur. MLflow ise açık kaynak ve kendi sunucunuzda barındırılabilir. W&B avantajları: zengin görselleştirme, kolay kurulum (3 satır kod), güçlü sweep arayüzü, aktif topluluk. MLflow avantajları: tam kontrol, veri gizliliği, kurumsal lisans maliyeti yok. Comet ML, Neptune ve ClearML diğer rakip platformlardır. W&B fiyatlandırma: bireysel kullanım ücretsiz (sınırlı depolama); takım planları ücretlidir; on-premise seçenek mevcut. Framework entegrasyonu: PyTorch, TensorFlow, Keras, Hugging Face Trainer, scikit-learn, XGBoost hepsiyle native entegrasyon.

📊 Weights & Biases Kurumsal Kullanım İpuçları

  • check_circle Proje hiyerarşisi: ekip bazlı proje organizasyonu ile deneyler karışmaz, izleme netleşir
  • check_circle Run grupları: aynı hiperparametre aramasına ait çalışmaları grup etiketiyle birleştirin
  • check_circle Özel metrik paneller: farklı ekip üyeleri için farklı görünüm şablonları oluşturun
  • check_circle Model registry: üretim onaylı modelleri registry'de etiketleyin ve CI/CD'ye bağlayın
  • check_circle Uyarı kuralları: eğitim kaybı platolaşınca veya metrik eşik aşılınca Slack bildirimi kurun

Sıkça Sorulan Sorular

  • check_circle Weights & Biases nedir? Makine öğrenmesi deneylerini takip etmek, görselleştirmek ve yönetmek için kullanılan MLOps platformudur. Eğitim metriklerini, model ağırlıklarını ve hiperparametreleri bulutta saklar.
  • check_circle W&B nasıl kurulur? pip install wandb && wandb login ile kurulum yapılır. Eğitim koduna import wandb; wandb.init(project='proje-adı') eklenir. wandb.log() ile metrikler anlık olarak buluta gönderilir.
  • check_circle W&B ücretsiz mi? Bireysel kullanım için ücretsiz plan mevcuttur: sınırsız çalıştırma, 100GB depolama, herkese açık projeler. Özel projeler ve takım özellikleri için ücretli planlar gereklidir.
  • check_circle W&B MLflow'dan ne zaman tercih edilir? Hızlı kurulum ve görsel zenginlik öncelikliyse W&B tercih edilir: 3 satır kodla entegrasyon, zengin grafikler, güçlü sweep arayüzü. Tam veri gizliliği veya self-hosting gerekiyorsa MLflow veya Neptune daha uygundur. Büyük takımlarda her ikisi de kullanılabilir; seçim altyapı ve bütçeye bağlıdır.