Federe Öğrenme (Federated Learning)
Veri & eğitimFedere öğrenme nedir?
Federe öğrenme, makine öğrenmesi modelini veriyi tek bir merkezde toplamadan eğitme yaklaşımı. Klasik yöntemde tüm veri bir sunucuya taşınır ve model orada eğitilir. Federe öğrenmede ise tam tersi olur: model veriye gider. Eğitim, verinin bulunduğu yerde — telefonlarda, hastane sunucularında, bankaların kendi sistemlerinde — yapılır; merkeze yalnızca öğrenilen güncellemeler gönderilir.
Nasıl çalışır?
Süreç döngüsel ilerler. Merkezi sunucu, modelin güncel halini katılımcı cihazlara dağıtır. Her cihaz modeli kendi yerel verisiyle birkaç adım eğitir ve yalnızca ağırlık güncellemelerini (gradyanları ya da model farklarını) sunucuya yollar. Sunucu bu güncellemeleri birleştirir — en bilinen yöntem Federated Averaging (FedAvg) — ve ortaya çıkan yeni modeli tekrar dağıtır. Bu döngü model olgunlaşana kadar tekrarlanır.
Ham veri hiçbir zaman cihazdan çıkmadığı için gizlilik temelden korunur. Daha da ileri gitmek isteyenler differential privacy ve secure aggregation gibi tekniklerle, güncellemelerin kendisinden bile bilgi sızmasını engeller.
Neden önemli?
Veri gizliliği regülasyonları (KVKK, GDPR) ve kullanıcı beklentileri, veriyi merkeze toplamayı her geçen gün zorlaştırıyor. Federe öğrenme, "ya gizlilik ya iyi model" ikilemini kırıyor: hassas veri yerinde kalırken model herkesin verisinden öğrenebiliyor.
Sağlık gibi alanlarda bu fark yaratıyor — hastaneler hasta verisini paylaşmadan ortak bir teşhis modeli eğitebiliyor. Mobil tarafta ise klavye tahmini ve ses tanıma gibi özellikler, milyonlarca cihazın katkısıyla, kullanıcı verisi sunucuya gitmeden iyileşiyor.
Zorluksuz da değil: cihazlar arasındaki veri dağılımı dengesiz (non-IID) olduğunda model yakınsamakta zorlanır, iletişim maliyeti yüksektir ve kötü niyetli katılımcılara karşı önlem almak gerekir.
Kullanım alanları
- Mobil klavyelerde sonraki kelime tahmini
- Hastaneler arası ortak teşhis modelleri
- Bankalarda dolandırıcılık tespiti iş birlikleri
- IoT cihazlarında yerel öğrenme
- Otomotiv sektöründe filo verisiyle sürüş modeli geliştirme