Direct Preference Optimization
Prosisz model: „Napisz krótką odmowę zaproszenia, bez podawania powodu”. Odpowiedź A brzmi: „Dziękuję za zaproszenie. Tym razem nie przyjdę”. B dopisuje: „Nie przyjdę, bo wyjeżdżam”. Wskazujesz A jako lepszą. Można douczać model, pokazując mu tylko A do naśladowania, ale wtedy odrzuca się część informacji: A była lepsza od konkretnej B. Jak wykorzystać całe porównanie, żeby zmienić sposób odpowiadania?
Direct Preference Optimization (DPO) to metoda dalszego uczenia modelu językowego na parach odpowiedzi oznaczonych jako preferowana i odrzucona. Porównania bezpośrednio wyznaczają błąd, na podstawie którego zmienia się model generujący. Oryginalna metoda nie wymaga osobnego trenowania oceniacza, który punktuje nowe odpowiedzi, ani pętli uczenia ze wzmocnieniem, w której generator uczy się z takich ocen. Opis i regułę podają Rafailov i współautorzy, Direct Preference Optimization: Your Language Model is Secretly a Reward Model, §4, równanie (7).

Co zmienia porównanie
Zachowujemy prośbę, oba teksty i wskazanie A. Model przypisuje każdej odpowiedzi prawdopodobieństwo jej wygenerowania. DPO zestawia wzajemną przewagę A nad B z przewagą w niezmienianym modelu odniesienia — zwykle kopii modelu z początku tego etapu uczenia. Gdy przewaga A rośnie względem tego punktu startu, błąd tej pary maleje. Trening dostosowuje liczbowe ustawienia modelu, aby zmniejszać takie błędy w zbiorze porównań.
We własnym, celowo małym przykładzie dopuszczamy tylko dwie całe odpowiedzi. Model odniesienia daje A 40%, a B 60%. Po zmianie ustawień model daje A 60%, a B 40%. Stosunek A do B wzrósł z 2/3 do 3/2, czyli 2,25 raza. β jest dodatnim współczynnikiem związanym z kontrolą odejścia od modelu odniesienia; tutaj ustawiamy go na 1. Wtedy błąd DPO tej pary spada z około 0,693 do 0,368. To ocena zgodności z zapisanym porównaniem, nie pomiar prawdy. Liczby pokazują możliwą zmianę, a nie gwarantowany wynik jednego kroku treningu.
W rzeczywistym modelu możliwych odpowiedzi jest znacznie więcej. Prawdopodobieństwa A i B nie muszą sumować się do 100%; prawdopodobieństwo całego tekstu powstaje z prawdopodobieństw kolejnych jego kawałków. Uprościliśmy przestrzeń odpowiedzi, zachowując regułę porównania.
Punkt startu ma znaczenie
Jeśli kopia odniesienia dawała A 80%, przejście do 60% zmniejsza jej przewagę nad B, choć A nadal jest częstsza. Dlatego DPO nie sprowadza się do sprawdzenia „czy A ma ponad połowę?”. Poniżej możesz porównać oba punkty startu.
Granica obietnicy
DPO może nauczyć się również złej preferencji. Gdy ktoś stale wybiera B za uprzejme brzmienie, etykieta nagradza dopisywanie wyjazdu. Samo zmniejszanie błędu nie odkryje, że powód jest niepodany. To ograniczenie naszego przykładu; §7 pracy omawia otwarte pytania o nadmierną optymalizację i przenoszenie zachowania na nowe zadania.
Dla chętnych: skąd liczba błędu
Niech oznaczają bieżące prawdopodobieństwa całych odpowiedzi, a — te same wartości w modelu odniesienia. Najpierw liczymy zmianę stosunku:
Symbol ln oznacza logarytm naturalny. Po zmianie znaku ta funkcja zamienia wartość bliską 1 w błąd bliski 0, a małą wartość w duży błąd. Reguła oryginalnego DPO daje przewidywaną preferencję i błąd ; dodatni współczynnik β ustawiliśmy na 1. Dla R = 2,25 otrzymujemy q ≈ 0,692 i L ≈ 0,368. To przepisanie równania (7) z §4 i kodu z dodatku B, nie osobny algorytm. Im bliżej q do 1, tym mniejszy błąd przypisania etykiety „A lepsza”.
Powiązania:
- Reinforcement Learning from Human Feedback w klasycznym wariancie używa osobnego modelu nagrody i późniejszego uczenia ze wzmocnieniem; DPO upraszcza etap uczenia z porównań.
- Fine-tuning jest dalszym uczeniem już istniejącego modelu; DPO określa cel takiego uczenia z par preferencji.
- KL Divergence mierzy różnicę między rozkładami prawdopodobieństw. Ograniczenie tej różnicy występuje w celu, z którego wyprowadzono DPO.
- Cross-entropy wyjaśnia logarytmiczny błąd przypisania etykiety; tutaj etykieta dotyczy porównania dwóch odpowiedzi.