DPO
2023.05
https://arxiv.org/abs/2305.18290
RM와 RL 없이 LLM policy model만을 학습하여, 사람의 선호도를 반영한 문장을 생성하도록 LLM을 직접적으로 최적화 하는 알고리즘
ABSTRACT
본 논문은 대규모 언어 모델(LM)의 동작을 제어하기 어려운 문제를 해결하기 위해 DPO(Direct Preference Optimization) 알고리즘을 제안합니다.
- 문제점: 기존 대규모 비지도 학습 LM은 제어하기 어려우며, RLHF(Reinforcement Learning from Human Feedback)는 복잡하고 불안정한 학습 절차를 가집니다. RLHF는 보상 모델을 학습한 후 강화 학습을 통해 LM을 미세 조정합니다.
- DPO 제안: DPO는 보상 모델을 재해석하여 최적 정책을 직접 도출할 수 있도록 함으로써, 기존 RLHF 문제를 단순한 분류 손실(classification loss)만으로 해결합니다.
- DPO의 장점:
- 안정적이고 고성능이며 계산 비용이 적게 듭니다.
- 미세 조정 시 LM 샘플링이나 광범위한 하이퍼파라미터 튜닝이 필요 없습니다.
- 실험 결과: DPO는 기존 RLHF(PPO 기반)와 비교하여 인간 선호도에 맞춰 LM을 미세 조정하는 데 동등하거나 더 나은 성능을 보여주며, 특히 감정 제어에서 우수하고 요약 및 대화 품질을 향상시킵니다. 또한 구현 및 학습이 훨씬 간단합니다.
1. INTRODUCTION
기존의 대규모 언어 모델(LM)의 동작을 정밀하게 제어하기 어렵고, 기존 RLHF(Reinforcement Learning from Human Feedback) 방식이 복잡하고 불안정하다는 문제점을 제기하며 DPO를 제안합니다.
- 문제점:
- 대규모 비지도 학습 LM은 뛰어난 능력을 지녔지만, 학습 데이터의 다양성으로 인해 모델의 원하는 동작을 정확하게 제어하기 어렵습니다.
- 기존 RLHF는 보상 모델 학습과 강화 학습 기반 fine-tuning이라는 복잡한 두 단계를 거쳐야 하며, 이는 높은 계산 비용과 불안정성을 야기합니다.
- DPO의 핵심:
- DPO는 RLHF의 보상 모델을 재매개변수화하여 최적 정책을 닫힌 형식으로 직접 추출할 수 있게 합니다.
- 이로써 복잡한 강화 학습 루프나 명시적인 보상 모델 학습 없이, 간단한 이진 분류 손실(binary classification loss)만으로 LM을 인간 선호도에 맞춰 직접 최적화할 수 있습니다.
- DPO의 장점:
- 안정성 및 성능: DPO는 PPO 기반 RLHF보다 안정적이고, 감정 제어(Sentiment Modulation) task에서 더 우수한 성능을 보이며, 요약(Summarization) 및 대화(Dialogue) task에서는 비슷하거나 더 나은 품질을 제공합니다.
- 구현 및 훈련 용이성: fine-tuning 과정에서 LM 샘플링이 필요 없고, 하이퍼파라미터 튜닝이 거의 필요 없어 구현 및 훈련이 훨씬 간단하고 계산적으로 효율적입니다.

⇒ 결론적으로, DPO는 기존 RLHF의 복잡성을 크게 줄이면서도 동등하거나 더 나은 성능을 제공하여, 인간 선호도에 따른 언어 모델 훈련의 장벽을 낮춥니다.
- 대규모 언어 모델(LM)의 발전: 초기 LM은 대규모 비지도 학습을 통해 놀라운 능력을 보였지만, 특정 작업에서의 성능 향상과 사용자 의도에 맞추기 위해 fine-tuning의 필요성이 대두되었습니다.
- Instruction-tuning의 등장: 인간이 작성한 고품질 응답 데이터셋을 사용하여 모델을 fine-tuning하는 'instruction-tuning' 방식이 도입되어 LM의 일반화 능력이 향상되었습니다.
- RLHF(Reinforcement Learning from Human Feedback)의 부상: 이후, 인간의 선호도(어떤 응답이 더 좋은지)를 직접 수집하여 LM을 fine-tuning하는 RLHF 방식이 주류가 되었습니다. 이는 보상 모델을 학습하고 이를 기반으로 강화 학습(예: PPO)을 통해 LM을 최적화하는 방식으로 진행됩니다.
- 기존 RLHF의 한계: RLHF는 효과적이었지만, 보상 모델 학습 및 강화 학습 과정의 복잡성, 불안정성, 높은 계산 비용 등의 문제가 있었습니다.
- DPO(Direct Preference Optimization)의 기여: 본 논문에서 제안하는 DPO는 이러한 RLHF의 복잡한 과정을 단순화한 알고리즘입니다. DPO는 명시적인 보상 모델 학습이나 강화 학습 없이도, 인간 선호도 데이터를 사용하여 언어 모델의 정책을 직접 최적화합니다. 이는 기존 RLHF와 동일한 목표를 달성하면서도 더 간단하고 효율적입니다.
3. Preliminaries — 파이프라인의 핵심 단계
RLHF 파이프라인은 일반적으로 다음 세 가지 주요 단계로 구성됩니다.
1단계: SFT (Supervised Fine-Tuning) — 지도 Fine-Tuning
목표하는 작업(예: 대화, 요약)에 대한 고품질 데이터셋을 사용하여 사전 훈련된 Language Model을 추가로 학습(fine-tune)시킵니다.
이 과정을 통해 얻어지는 모델을 πSFT 라고 부르며, 이는 이후 RLHF 과정의 '기본 모델'이 됩니다.
2단계: Reward Modelling Phase — 보상 모델링 단계
① 선호도 데이터 수집
SFT 모델 πSFT 가 생성한 답변 쌍 (y1,y2)을 인간에게 보여주고,
인간이 어떤 답변을 더 선호하는지 (yw≻yl∣x) 선택하도록 하여 선호도 데이터를 수집합니다.
여기서 yw는 선호되는 답변, yl은 비선호되는 답변입니다.
② 보상 모델 학습
이 선호도 데이터로부터 Reward Model rϕ(x,y)를 학습합니다.
이 모델은 주어진 프롬프트와 답변 쌍에 대해 '보상 값'을 예측합니다.
③ Bradley-Terry 모델
인간의 선호도가 특정 잠재적 보상 모델 r∗(y,x)에 의해 생성된다고 가정하며,
이를 Bradley-Terry 모델을 사용하여 확률적으로 모델링합니다.
p∗(y1≻y2∣x)=exp(r∗(x,y1))+exp(r∗(x,y2))exp(r∗(x,y1))(1)
- p∗(y1≻y2∣x) : 질문 x에 대해 답변 y1이 y2보다 선호될 확률
- r∗(x,y1), r∗(x,y2) : 인간이 실제로 생각하는 숨겨진 보상 점수
- exp(⋅) : 지수 함수. 보상 점수를 양수로 변환하여 확률 계산에 사용
- 의미: 보상 점수가 높은 답변이 선택될 확률이 높아짐
④ 손실 함수
수집된 선호도 데이터 D를 이용해 보상 모델 rϕ를 학습시키기 위한 손실 함수는 다음과 같습니다.
LR(rϕ,D)=−E(x,yw,yl)∼Dlogσ(rϕ(x,yw)−rϕ(x,yl))(2)
- LR(rϕ,D) : 보상 모델 학습 손실 값 (최소화 목표)
- E(x,yw,yl)∼D : 데이터셋 D의 모든 선호도 쌍 평균
- log : 자연 로그
- σ(z)=1+exp(−z)1 : 시그모이드 함수
- rϕ(x,yw) : 선호된 답변의 보상 점수
- rϕ(x,yl) : 비선호된 답변의 보상 점수
- 의미: 선호된 답변에는 높은 점수를, 비선호된 답변에는 낮은 점수를 주도록 학습
3단계: RL Fine-Tuning Phase — 강화 학습 Fine-Tuning 단계
① 정책 최적화
2단계에서 학습된 Reward Model rϕ를 사용하여 Language Model πθ를 강화 학습 방식으로 fine-tuning 합니다.
② KL-divergence 제약
모델 πθ가 참조 모델 πref (대개 πSFT)에서 너무 멀어지지 않도록 KL-divergence 제약을 추가합니다.
πθmaxEx∼D,y∼πθ(y∣x)rϕ(x,y)−βDKL[πθ(y∣x)∥πref(y∣x)](3)
- maxπθ : 정책 πθ를 최적화
- Ex∼D,y∼πθ(y∣x)rϕ(x,y) : 평균 보상
- β : KL 제약 강도 조절 파라미터
- DKL[P∥Q] : 두 확률 분포 차이 측정
- 의미: 높은 보상을 주는 답변을 생성하되, 참조 모델과 지나치게 다르지 않도록 균형 유지
📌 기존 RLHF의 단점
이 마지막 단계는 주로 PPO 알고리즘을 사용하며,
복잡하고 불안정하며 계산 비용이 많이 듭니다.
본 논문에서 제안하는 DPO는 이러한 복잡한 RL 단계를 제거하고 더 간단하게 fine-tuning하는 방법을 제시합니다.
4. Direct Preference Optimization
DPO는 인간의 선호도에 맞춰 언어 모델(LM)을 학습시키는 새롭고 더 간단한 방법입니다.
-
기존 방식 (RLHF)의 문제점:
- RLHF(Reinforcement Learning from Human Feedback)는 보상 모델(Reward Model)을 학습한 뒤 강화 학습(RL)으로 LM을 fine-tuning하는 복잡하고 불안정한 과정입니다.
- 계산 비용이 많이 들고, 하이퍼파라미터(hyperparameter) 튜닝이 어렵습니다.
-
DPO의 핵심 아이디어:
- 명시적인 보상 모델 학습이나 복잡한 강화 학습 과정 없이, LM을 인간의 선호도에 직접적으로 최적화합니다.
- 보상 함수(reward function)와 최적 정책(optimal policy) 간의 분석적 매핑(analytical mapping)을 활용하여, 간단한 분류 손실(classification loss)만으로 학습이 가능합니다.
- 이는 정책 네트워크(policy network)가 언어 모델과 암묵적인(implicit) 보상 모델 역할을 동시에 수행하게 합니다.
-
DPO의 장점:
- 안정적이고 효율적입니다.
- Fine-tuning 중 LM에서 샘플링하거나 과도한 하이퍼파라미터 튜닝이 필요 없습니다.
- 감정 조절(sentiment modulation), 요약(summarization), 대화(dialogue)와 같은 Task에서 기존 PPO 기반 RLHF (Proximal Policy Optimization)와 동등하거나 더 우수한 성능을 보여줍니다.
-
학습 과정 (간략화):
- 인간 선호도 데이터셋((y_w) (선호), (y_l) (비선호) 쌍)을 사용합니다.
- 아래와 같은 간단한 목적 함수((L{DPO}))를 사용하여 정책((\pi{\theta}))을 직접 업데이트합니다.
(L{DPO}(\pi{\theta} ; \pi{ref}) = -\mathbb{E}{(x,yw,y_l)\sim\mathcal{D}} \left[ \log \sigma \left( \beta \log \frac{\pi{\theta}(yw | x)}{\pi{ref}(yw | x)} - \beta \log \frac{\pi{\theta}(yl | x)}{\pi{ref}(yl | x)} \right) \right])
이때, (\pi{ref})는 참조 모델이고, (\beta)는 KL-divergence 제어 파라미터입니다.
이러한 방식으로 DPO는 RLHF의 복잡성을 크게 줄이면서도 강력한 성능을 제공합니다.
5. Theoretical Analysis of DPO
DPO 방법의 추가적인 해석을 제공하고, 이론적 근거를 제시하며, RLHF에 사용되는 액터-크리틱 알고리즘(예: PPO)의 문제점과 관련된 DPO의 장점을 설명합니다.
5.1 Your Language Model Is Secretly a Reward Mode
5.2 Instability of Actor-Critic Algorithm
-
기존 RLHF(PPO)의 문제점 :
기존 RLHF는 보상 모델 학습과 강화 학습을 통한 언어 모델 파인튜닝이라는 두 단계로 진행됩니다.
특히 강화 학습 단계에서 파티션 함수(partition function)나 소프트 가치 함수(soft value function)와 같은 복잡한 정규화 항 때문에 정책 기울기(policy gradient)의 분산이 높아져 학습이 불안정해지는 문제가 있었습니다.
이러한 불안정성을 완화하기 위해 여러 복잡한 기법(예: 학습된 가치 함수 사용, 보상 정규화)이 필요했습니다.
-
DPO의 해결책: '보상 모델 재매개변수화'
DPO는 RLHF의 목적 함수를 수학적 변환을 통해 언어 모델의 정책(policy) 자체에 대한 간단한 손실 함수로 바꿉니다.
핵심 아이디어는 보상 모델을 언어 모델의 정책과 참조 모델의 비율((\beta \log \frac{\pi\theta(y|x)}{\pi{ref}(y|x)}))로 재매개변수화하는 것입니다.
이 재매개변수화를 통해 기존 방식의 불안정성을 유발하던 복잡한 정규화 항이 자연스럽게 상쇄되어 사라집니다.
-
DPO의 장점
- 간단한 구현: 보상 모델을 명시적으로 학습하거나 별도의 강화 학습 루프를 돌릴 필요 없이, 언어 모델을 선호도에 따라 직접 최적화할 수 있습니다.
- 높은 안정성: 정책 기울기의 분산 문제를 해결하여 학습 과정이 훨씬 안정적입니다.
- 뛰어난 성능: 실험 결과, DPO는 PPO 기반 RLHF보다 보상과 KL-divergence 간의 효율적인 트레이드오프를 보여주며, 더 나은 성능을 달성하거나 최소한 동등한 성능을 보입니다.
6. Experiments
⇒ DPO가 RLHF의 복잡성을 줄이면서도 기존 방법론과 동등하거나 더 나은 성능을 달성할 수 있음을 입증함.
6.1 How well can DPO optimize the RLHF objective?
RLHF 목표: RLHF는 언어 모델이 인간의 선호도를 따르도록 학습시키는 것이 목표입니다. 이 과정에서 모델은 높은 보상을 얻으면서도, 원래 모델(SFT (Supervised Fine-Tuning) 모델)에서 너무 멀리 벗어나지 않도록 KL-divergence 제약을 유지해야 합니다.
DPO의 성능:
DPO는 기존 RLHF 방식인 PPO (Proximal Policy Optimization)와 동일한 목적 함수를 최적화합니다.
하지만 DPO는 PPO보다 더 효율적인 보상-KL 프론티어(reward-KL frontier)를 보여줍니다. 이는 DPO가 동일한 KL-divergence에서 더 높은 보상을 달성하거나, 동일한 보상 수준에서 KL-divergence를 더 낮게 유지할 수 있다는 의미입니다.
심지어 PPO가 실제 보상 정보(ground-truth rewards)에 접근할 수 있는 PPO-GT보다도 DPO가 더 나은 성능을 보였습니다.
DPO의 장점: DPO는 보상 모델을 명시적으로 학습하거나 별도의 강화 학습 없이도 직접 정책을 최적화할 수 있어, 구현이 훨씬 간단하고 계산 효율적입니다. 이러한 장점에도 불구하고, Sentiment Modulation, Summarization, Dialogue 등 다양한 Language Model fine-tuning task에서 기존 방법들과 비슷하거나 더 나은 성능을 달성합니다
6.2 Can DPO scale to real preference datasets?
실제 데이터셋에서의 성능 입증: DPO는 요약(Summarization)(Reddit TL;DR)과 단일 턴 대화(Single-turn Dialogue)(Anthropic Helpful and Harmless)와 같은 실제 선호도 데이터셋에서 언어 모델을 fine-tuning하는 능력을 평가했습니다.
PPO 대비 우수한 성능:
요약: DPO는 요약 task에서 최적의 샘플링 온도(sampling temperature)에서 약 61%의 승률(win rate)을 달성하여 PPO의 57%를 능가했습니다.
강건성(Robustness): DPO는 PPO보다 샘플링 온도 변화에 훨씬 강건(robust)하여, 성능 저하가 적었습니다.
대화: DPO는 Anthropic HH dataset에서 선호되는 응답보다 성능이 향상된 유일한 계산적으로 효율적인 방법이었으며, 계산 비용이 높은 Best of 128 baseline과 비슷하거나 더 나은 성능을 보였습니다.
간단하고 효율적인 훈련: hyperparameter tuning이 거의 필요 없으며, 빠르게 최상의 성능에 수렴(converges)합니다. 이는 RLHF 파이프라인의 복잡성을 크게 줄여줍니다.
일반화 능력: DPO는 새로운 입력 분포(CNN/DailyMail dataset)에 대해서도 PPO보다 더 나은 일반화(generalization) 성능을 보였습니다.
DPO의 일반화 능력: 학습 시 사용되지 않은 새로운 종류의 데이터(예: Reddit TL;DR 요약으로 학습 후 CNN/DailyMail 뉴스 기사 요약)에 대해서도 뛰어난 성능을 보였습니다.
PPO와의 비교: DPO는 PPO(Proximal Policy Optimization) 기반 RLHF(Reinforcement Learning from Human Feedback)보다 새로운 데이터 분포에서 더 높은 '승률(win rate)'을 달성하며 우수성을 입증했습니다.
핵심 이점: DPO는 PPO처럼 추가적인 레이블 없는 프롬프트를 사용하지 않음에도 불구하고, 효율적인 학습 방식과 더불어 경쟁력 있는 일반화 능력을 보여주어 실제 적용 가능성이 높음을 시사합니다.
6.4 Validating GPT-4 judgments with human judgments
연구 목적: GPT-4와 같은 대규모 언어 모델(LLM)이 생성 모델의 품질을 평가하는 데 있어 인간 평가의 신뢰할 수 있는 대리(proxy)가 될 수 있는지 확인합니다.
주요 방법론:
GPT-4 프롬프트 활용: 요약 품질 평가를 위해 두 가지 GPT-4 프롬프트('단순' 프롬프트와 '간결성 강조' 프롬프트)를 사용했습니다. '간결성 강조' 프롬프트는 GPT-4가 인간보다 길고 반복적인 요약을 선호하는 경향을 보완하기 위해 도입되었습니다.
인간 연구 진행: 다양한 알고리즘(DPO, SFT, PPO)이 생성한 요약문을 대상으로 인간 평가자들을 모집하여 선호도 판단 데이터를 수집했습니다. 인간 평가자 간의 동의율과 GPT-4-인간 간의 동의율을 비교했습니다.
7. Discussion
DPO 소개: RLHF(인간 피드백 기반 강화 학습)의 복잡성을 줄이고, 보상 모델을 명시적으로 학습하거나 강화 학습 없이도 언어 모델을 인간의 선호도에 맞춰 직접 최적화하는 새로운 알고리즘입니다.
주요 장점: DPO는 기존 RLHF 알고리즘(PPO 기반 포함)과 비슷하거나 더 나은 성능을 보이면서도 구현이 훨씬 간단하며, 하이퍼파라미터 튜닝이 거의 필요 없어 모델 훈련의 진입 장벽을 낮춥니다.
향후 연구 방향:
일반화 능력: DPO 정책이 학습 데이터 분포 밖의 새로운 상황에서 얼마나 잘 작동하는지에 대한 더 깊은 연구가 필요합니다.
보상 과최적화: DPO에서 보상 과최적화 문제가 어떻게 나타나는지, 그리고 이로 인해 성능이 저하될 수 있는지 탐구해야 합니다.
규모 확장: 현재 최대 6B(60억) 매개변수 모델에 적용되었지만, 훨씬 더 큰 최신 모델에 DPO를 적용하는 연구가 필요합니다.
자동 평가 개선: GPT-4와 같은 자동화된 평가 시스템에서 더 신뢰성 높은 판단을 얻기 위한 프롬프트 연구가 요구됩니다.
다양한 분야 적용: 언어 모델 외에 이미지, 오디오 등 다른 양식의 생성 모델 훈련에도 DPO를 적용할 가능성이 있습니다.
주요 결과:
GPT-4의 신뢰성: GPT-4의 판단은 인간 평가자들 간의 동의율과 비슷하거나 더 높은 수준으로 인간과 일치하는 것으로 나타났습니다. 이는 GPT-4가 인간 평가를 대체할 수 있는 합리적인 도구임을 시사합니다.
프롬프트의 중요성: 특히 '간결성 강조' 프롬프트(GPT-4 (C))가 인간의 판단과 더 유사한 결과를 제공하여, GPT-4를 평가에 활용할 때 프롬프트 설계의 중요성을 강조합니다.
의의: 이 연구는 대규모 언어 모델(LLM)을 활용한 자동화된 평가 방식이 인간 피드백 수집의 높은 비용과 복잡성을 줄일 수 있는 잠재력을 보여줍니다.