논문: Direct Preference Optimization: Your Language Model is Secretly a Reward Model 저자: Rafailov et al. (Stanford) 링크: https://arxiv.org/abs/2305.18290


논문 핵심

DPO(Direct Preference Optimization)는 RLHF의 복잡한 파이프라인(보상 모델 + PPO)을 단일 분류 손실 함수로 대체합니다.

RLHF의 복잡성

"DPO implicitly optimizes the same objective as existing RLHF algorithms, but is simple to implement and train."

RLHF 파이프라인: SFT → 보상 모델 학습 → PPO 강화학습 (3단계, 4개 모델) DPO: SFT → 선호도 데이터로 직접 최적화 (2단계, 1개 모델)

핵심 아이디어

DPO의 통찰: 보상 함수를 최적화하는 것은 선호/비선호 응답의 확률 비율을 직접 조정하는 것과 수학적으로 동일

L_DPO = -log σ(β · (log π(y_w|x)/π_ref(y_w|x) - log π(y_l|x)/π_ref(y_l|x)))

실무 시사점

DPO는 구현이 간단하여 소규모 팀에서도 모델 정렬을 수행할 수 있게 해줍니다. 2024-2025년 대부분의 오픈소스 모델이 DPO를 정렬 기법으로 채택하고 있으며, RLHF 대비 학습 안정성도 높습니다.