DPO Nedir?
İngilizce: Direct Preference Optimization
Yayın: · Son güncelleme:
DPO Nedir? Kısaca
DPO (Direct Preference Optimization, doğrudan tercih optimizasyonu), dil modellerini insanların tercih ettiği cevaplara yaklaştırmak için ayrı bir ödül modeli eğitmeden ve pekiştirmeli öğrenme döngüsü kurmadan, tercih çiftleri üzerinde doğrudan eğiten bir hizalama yöntemidir.

DPO nedir?
DPO, Rafael Rafailov ve arkadaşlarının 2023'te yayımladığı bir dil modeli hizalama yöntemidir. Amacı, RLHF (insan geri bildirimiyle pekiştirmeli öğrenme) ile benzer bir sonuca daha basit bir yoldan ulaşmaktır: Modelin, insanların daha iyi bulduğu cevapları üretme olasılığını artırmak ve daha kötü bulduklarını azaltmak.
Hangi sorunu çözer?
Klasik RLHF iki aşamalıdır. Önce insan tercihleriyle bir ödül modeli eğitilir, ardından dil modeli bu ödül modeline göre PPO gibi bir pekiştirmeli öğrenme algoritmasıyla güncellenir. Bu süreç çok sayıda modeli aynı anda bellekte tutmayı gerektirir, ayarlaması zordur ve kararsız olabilir.
Nasıl çalışır?
DPO için veri, tercih çiftlerinden oluşur:
- Bir istem (prompt)
- Tercih edilen cevap
- Tercih edilmeyen cevap
Yöntem, matematiksel bir dönüşümle ödül modelini kayıp fonksiyonunun içine gömer. Eğitim sırasında model, tercih edilen cevaba verdiği olasılığı, tercih edilmeyene göre artırmaya çalışır. Bunu yaparken eğitime başlanan sabit bir referans modelden çok uzaklaşmaması sağlanır; bu uzaklığın ne kadar sıkı tutulacağını bir katsayı (genellikle β) belirler.
Sonuçta eğitim, tıpkı sıradan bir ince ayar gibi, tek bir kayıp fonksiyonu üzerinden yapılır.
Avantajları ve sınırları
| Avantaj | Sınır |
|---|---|
| Ayrı ödül modeli gerekmez | Tercih verisinin kalitesine çok bağlıdır |
| Daha basit ve kararlı eğitim | Veri dağılımı dışındaki durumlarda zayıf kalabilir |
| Daha az bellek ve hesaplama | Aşırı öğrenmeye karşı dikkat gerekir |
DPO'nun ardından benzer fikre dayanan birçok türev yöntem önerildi. Yöntem, açık ağırlıklı modellerin hizalanmasında yaygın kullanılan tekniklerden biri hâline geldi.
Sıkça Sorulan Sorular
DPO ile RLHF arasındaki fark nedir?
RLHF önce ayrı bir ödül modeli eğitir, sonra dil modelini pekiştirmeli öğrenmeyle günceller. DPO ise aynı tercih verisini kullanarak dil modelini doğrudan, tek aşamalı bir kayıp fonksiyonuyla eğitir.
DPO için nasıl bir veri gerekir?
Her örnekte bir istem, tercih edilen bir cevap ve tercih edilmeyen bir cevap bulunan tercih çiftleri gerekir. Bu tercihler insanlardan ya da bazı durumlarda başka modellerden toplanabilir.
İlgili terimler
İlgili yazılar
Kendi Bilgisayarında Ücretsiz Yapay Zekâ Sistemi Kur: Ekran Kartı, İşlemci ve RAM ile Adım Adım
Kendi bilgisayarında ücretsiz ve limitsiz bir yapay zekâ sistemi kurmak mümkün: Ollama ya da LM Studio ile dil modeli, Continue ile kod asistanı, ComfyUI ya da Forge ile görsel üretim. Belirleyici olan ekran kartının belleğidir (VRAM); 8 GB'lık kartta 7-8B modeller rahat çalışır, kart yoksa işlemci ve RAM ile daha yavaş çalışır.
