FTRL, “Follow-The-Regularized-Leader” ifadesinin kısaltmasıdır ve özellikle çevrim içi öğrenme (online learning) senaryoları için tasarlanmış bir optimizasyon algoritmasıdır. Büyük ölçekte ve seyrek (sparse) özelliklere sahip verilerle çalışmak üzere geliştirilmiştir. Google tarafından önerilen bu algoritma, özellikle reklam tahmini, öneri sistemleri ve gerçek zamanlı öğrenme sistemlerinde yaygın şekilde kullanılır.
FTRL Optimizasyon Algoritması
Temel Yaklaşım
FTRL, klasik gradyan inişi yöntemlerinden farklı olarak önceki adımlarda biriken gradyanların ve düzenlileştirme terimlerinin bir kombinasyonu üzerinden güncelleme yapar. Özellikle ve düzenlileştirme terimlerini doğrudan güncelleme fonksiyonunun bir parçası hâline getirerek, parametrelerin seyrekliğini teşvik eder. Bu özelliğiyle Lasso () gibi etkili özellik seçim mekanizmalarıyla benzer davranışlar sergiler.
Matematiksel Tanım
FTRL güncellemesi şu şekilde ifade edilir:
Burada:
- : s adımındaki gradyan
- : adım başına artan ağırlıklandırma katsayısı
- : L1 düzenlileştirme katsayısı
- : öğrenilen parametreler
Bu formül, önceki tüm gradyanları ve düzenlileştirme cezalarını göz önünde bulundurarak parametreleri günceller.
Özellikleri
Avantajları
- Seyrek veri ile uyumlu: L1 düzenlileştirme ile çok sayıda gereksiz özelliği sıfırlayabilir.
- Çevrim içi güncellemeye uygun: Büyük veri akışları ile çalışmak için uygundur.
- Gerçek zamanlı öğrenme: Özellikle internet reklamcılığı ve öneri motorlarında yaygındır.
- Dengeli genelleme: L1 ve L2’nin birlikte kullanımı aşırı uyum riskini azaltır.
Dezavantajları
- Parametre ayarlaması hassastır: L1 ve L2 katsayıları dikkatle belirlenmelidir.
- GPU/derin öğrenme için optimize edilmemiştir: Daha çok CPU tabanlı modellerde kullanılır.
- Yoğun veri için uygun değildir: Seyrek olmayan (dense) verilerde performansı sınırlıdır.
Uygulama Alanları
- Tıklama tahmini (CTR) sistemleri
- Reklam açık artırmaları (RTB)
- Öneri sistemleri
- Gerçek zamanlı kullanıcı davranışı modelleme
- Büyük ölçekli metin sınıflandırma
FTRL'nin adım adım düzenlileştirilmiş optimizasyon süreci görselleştirildi. (Github)
FTRL, geçmiş gradyanlar ve düzenlileştirme terimlerini hesaba katarak çevrim içi ve seyrek öğrenmeyi mümkün kılar.