Direct Preference Optimization (DPO), geliştiricilerin ayrı bir ödül modeli (reward model) eğitmeden veya bir pekiştirmeli öğrenme (RL) döngüsü çalıştırmadan büyük dil modellerini ince ayar (fine-tune) yapmalarına olanak tanıyarak hem hesaplama maliyetlerini hem de geleneksel insan geri bildiriminden pekiştirmeli öğrenme (RLHF) süreçlerini sıkça zorlayan istikrarsızlığı azaltır.
RLHF (İnsan Geri Bildiriminden Pekiştirmeli Öğrenme) Neden Ağır Bir Süreçtir?
Standart RLHF (insan geri bildiriminden pekiştirmeli öğrenme) yöntemi üç aşamadan oluşur. İlk olarak, temel bir model seçilmiş bir veri seti üzerinde ince ayar işleminden geçirilir. Ardından, bir ödül modeli, çıktı çiftleri arasındaki insan tercihlerini tahmin etmeyi öğrenir. Son olarak uygulayıcılar, politikayı orijinal modele yakın tutarken daha yüksek tahmin edilen ödüllere doğru itmek için klasik bir RL algoritması olan Proximal Policy Optimization (PPO) çalıştırırlar.
Bu üçlü model kurulumu bellekte eş zamanlı olarak yer kaplar ve her güncellemede yeni metin örnekleyen maliyetli bir RL döngüsüne zorlar. Ekipler genellikle politikanın ödülü "kandırmayı" (game) öğrendiğini, yani vekil (proxy) modelde yüksek puan alan ancak hedeflenen kaliteyi karşılamayan çıktılar ürettiğini görürler. Sonuç; pahalı, kırılgan ve ölçeklendirilmesi zor bir süreçtir.
DPO'nun Cebirsel Kısayolu
DPO, ödül modelini tamamen devre dışı bırakır. Buradaki temel gözlem, RLHF hedefinin —bir referans modelden sapmayı cezalandırırken beklenen ödülü maksimize etmek— kapalı formlu bir ifadeye sahip olmasıdır. Matematiksel işlemler yeniden düzenlendiğinde, herhangi bir token için ödül, politika tarafından atanan log-olasılık ile referans model tarafından atanan log-olasılık arasındaki fark haline gelir.
Uygulamada bu, "ödülün" politikanın kendisi içinde var olduğu anlamına gelir. Eğitim, tercih çiftleri üzerindeki tek bir sınıflandırma kaybına (classification loss) indirgenir: seçilen bir yanıt ve reddedilen bir yanıt verildiğinde, model seçilen metne daha yüksek olasılık atamaya yönlendirilir. Örnekleme yok, PPO güncellemeleri yok, saklanacak ekstra bir model yok.
Yeni Kayıp Fonksiyonu (Loss) Nasıl Görünür?
Kayıp fonksiyonu, mevcut politika altındaki tercih edilen yanıtın log-olasılığını, referans model altındaki log-olasılık ile karşılaştırır ve bunu sıcaklık benzeri bir hiperparametre olan β ile ölçeklendirir. Yüksek bir β, politikanın referansa yakın kalmasını sağlayarak akıcılığı ve güvenliği korur. Düşük bir β ise politikanın daha fazla sapmasına izin vererek seçilen yanıta olan tercihini keskinleştirir.
Geliştiriciler İçin Önemli Avantajlar
- Ödül modeli yok – ayrı bir tahminci için ek insan geri bildirimi toplama ihtiyacını ortadan kaldırır.
- Eğitim sırasında örnekleme yok – model, gradyanları hesaplamak için asla yeni metin üretmez, bu da GPU süresini önemli ölçüde azaltır.
- İstikrar – standart bir ikili çapraz entropi (binary-cross-entropy) kaybı, genellikle ıraksamaya (divergence) neden olan yüksek varyanslı RL gradyanlarının yerini alır.
- Verimlilik – her tercih çifti üzerinde tek bir gradyan adımı yeterlidir; eğitim, PPO'dan çok daha az epoch ile yakınsar.
İlk deneyler, DPO'nun hesaplama bütçesinin çok küçük bir kısmını kullanarak kıyaslama (benchmark) tercih veri setlerinde PPO performansına ulaştığını veya onu geçtiğini göstermektedir. Bu maliyet avantajı, birçok açık kaynaklı projenin neden DPO'yu veya yakın bir varyantını varsayılan hizalama (alignment) yöntemi olarak benimsediğini açıklamaktadır.
Tavizler (Trade-offs)
DPO, sabit bir tercih çiftleri seti üzerinde çalışır. Eğitim sırasında asla yeni tamamlamalar örneklemediği için, orijinal verilerde bulunmayan yanıt uzaylarını keşfedemez. Buna karşılık, çevrimiçi (online) bir PPO çalışması, modeli sürekli test ederek yeni ve daha yüksek ödüllü davranışlar keşfedebilir.
Eğer β çok düşük ayarlanırsa veya eğitim çok fazla adım boyunca sürerse, politika akıcılığı kaybedecek veya istenmeyen yapaylıklar (artefacts) oluşturacak kadar referans modelden uzaklaşabilir.
Özet
Direct Preference Optimization; üç modelli ve RL ağırlıklı RLHF yığınını, doğrudan insan tercih çiftlerinden öğrenen tek ve istikrarlı bir kayıp fonksiyonu ile değiştirir. Sonuç; eğitim verilerinin ihtiyacınız olan davranışları yakalaması ve sapma (drift) parametresini kontrol altında tutmanız koşuluyla, dil modellerini hizalamak için daha ucuz ve daha öngörülebilir bir yoldur.
