DPO: reward model을 없애면 무엇을 잃는가

Direct Preference Optimization: Your Language Model is Secretly a Reward Model (Rafailov et al., Stanford University, NeurIPS 2023)

Introduction

14편부터 17편까지, 이 시리즈의 4부는 전부 같은 전제 위에 서 있었다. “reward model \(r_\phi\)는 이미 있다. 그걸로 정책을 어떻게 최적화할 것인가?” PPO(14편)는 clipped surrogate로, Secrets of RLHF I(15편)는 그 PPO를 안정시키는 트릭으로, GRPO(16편)는 value network를 버리는 방식으로, RLOO(17편)는 아예 REINFORCE로 되돌아가는 방식으로 이 질문에 답했다. 네 편 모두 “정책 최적화 알고리즘”을 다퉜을 뿐, reward model이라는 부품 자체는 건드리지 않았다.

DPO는 이 전제를 정면으로 부순다. “reward model이 꼭 따로 있어야 하나?” KL 제약 하 reward 최대화 문제의 닫힌 해를 뒤집어보면, 최적 정책과 참조 정책의 로그비 자체가 이미 reward라는 것을 알 수 있다. 그러면 굳이 reward model을 학습시키고, 그걸로 PPO를 돌릴 이유가 없다. Bradley-Terry 손실(1편, 4편)을 reward가 아니라 정책 파라미터에 대해 직접 최소화하면 된다. 이 시리즈에서 DPO를 다루는 이유는 정답이라서가 아니라 안티테제이기 때문이다. reward 설계가 척추인 시리즈에서, reward를 설계하는 대신 아예 지워버리는 방법을 다뤄야 그 설계의 가치가 거꾸로 드러난다.

이 논문은 2023년 5월 arXiv에 공개됐고 NeurIPS 2023에서 Outstanding Main Track Runner-Up으로 선정됐다. 저자는 Stanford University의 Rafael Rafailov, Archit Sharma, Eric Mitchell, Stefano Ermon, Christopher D. Manning, Chelsea Finn이다. 이후 수많은 오픈소스 정렬 파이프라인이 PPO 대신 DPO를 기본값으로 채택할 만큼 실무 영향력이 컸다.

이 글은 단순히 “DPO가 무엇인가”를 소개하지 않는다. reward model을 없애서 얻은 것과 잃은 것을 항목별로 대차대조표처럼 정리하는 것이 목표다. 얻은 쪽은 짧다 — 안정성과 단순함. 잃은 쪽은 길고, 그 길이가 곧 뒤에 이어질 5부(Process & Verifiable Reward)와 6부(Generative Reward Model)가 왜 다시 명시적인, 심지어 더 촘촘한 reward로 돌아가는지를 설명해준다.

위 그림(논문 Figure 1)이 이 글 전체의 요약이다. 왼쪽은 기존 RLHF 파이프라인 — 선호 데이터로 reward model을 학습하고, 그 reward로 RL(PPO)을 돌려 정책을 업데이트한다. 오른쪽은 DPO — 선호 데이터에서 곧바로 정책으로 간다. 중간 단계(reward model 학습, RL 루프)가 통째로 사라졌다.

Background

KL 제약 하 reward 최대화와 닫힌 해

RLHF의 최종 목적함수는 14편에서 다룬 것과 동일하다.

\[\max_{\pi_\theta} \; \mathbb{E}_{x \sim D,\, y \sim \pi_\theta(y \mid x)}\left[ r(x,y) \right] - \beta \, \mathbb{D}_{KL}\left[ \pi_\theta(y \mid x) \, \| \, \pi_{ref}(y \mid x) \right]\]
  • \(r(x,y)\): 프롬프트 \(x\)에 대한 응답 \(y\)의 reward. 지금까지는 2부에서 다룬 Bradley-Terry 기반 RM이 이 값을 매겼다.
  • \(\pi_\theta\): 학습 대상 정책(=언어모델).
  • \(\pi_{ref}\): 보통 SFT 직후 체크포인트. 정책이 여기서 얼마나 벗어나는지를 억제하는 기준점이다.
  • \(\beta\): reward를 얼마나 밀어붙일지, 참조 정책에서 얼마나 벗어날 수 있는지를 조절하는 온도 계수.

PPO는 이 목적함수를 샘플링·클리핑·GAE로 근사해서 푼다. 그런데 사실 이 문제는 닫힌 형태의 해가 존재한다. 통계역학의 Boltzmann 분포와 같은 형태로,

\[\pi_r(y \mid x) = \frac{1}{Z(x)} \, \pi_{ref}(y \mid x) \, \exp\!\left(\frac{1}{\beta} r(x,y)\right), \qquad Z(x) = \sum_y \pi_{ref}(y \mid x)\exp\!\left(\frac{1}{\beta} r(x,y)\right)\]
  • \(\pi_r\): reward \(r\)이 주어졌을 때 위 목적함수를 최대화하는 최적 정책.
  • \(\exp(r(x,y)/\beta)\): reward가 높은 응답일수록 참조 정책의 확률을 지수적으로 끌어올리는 “가중치”다. \(\beta\)가 작을수록(온도가 낮을수록) 이 가중치가 뾰족해져서 reward가 큰 소수의 응답에 확률이 몰린다. \(\beta\)가 크면 거의 \(\pi_{ref}\) 그대로 남는다.
  • \(Z(x)\): 모든 가능한 \(y\)에 대해 합산하는 정규화 상수(partition function). 어휘 크기와 시퀀스 길이에 지수적인 항이라 실제로 계산할 수 없다.

일상적인 비유를 들면 이렇다. 경매에서 “가격이 높을수록 낙찰 확률이 지수적으로 커진다”는 규칙을 정해놓고, 그 규칙에 따라 확률적으로 낙찰자를 뽑는 것과 같다. \(\pi_{ref}\)는 애초에 각 참가자가 얼마나 자주 등장했는지(기본 확률)이고, \(\exp(r/\beta)\)는 가격표가 확률을 얼마나 왜곡시키는지를 나타낸다. \(Z(x)\)는 이 경매 전체의 “정규화 상수”—몇 명이 참가했든, 가격이 전반적으로 얼마나 높든 상관없이 확률 합을 1로 맞춰주는 항이다.

PPO는 이 \(Z(x)\)를 계산하지 않고도 \(\pi_r\)에 도달하도록 정책 경사(policy gradient)로 우회한다. DPO는 정반대 방향에서 접근한다 — 이 식을 뒤집어서 reward를 정책의 함수로 표현해버린다.

Method

핵심 유도: reward를 정책으로 역산하기

위 닫힌 해를 \(r(x,y)\)에 대해 정리하면 다음과 같다.

\[r(x,y) = \beta \log \frac{\pi_r(y \mid x)}{\pi_{ref}(y \mid x)} + \beta \log Z(x)\]

이 식이 DPO의 출발점이다. 임의의 reward \(r\)이 주어지면 그에 대응하는 최적 정책 \(\pi_r\)이 유일하게 정해지는데, 거꾸로 임의의 정책 \(\pi\)가 주어지면 그것을 “최적 정책으로 갖는” reward를 역산할 수 있다는 뜻이다. 문제는 \(\log Z(x)\) 항 — 계산 불가능한 정규화 상수가 여전히 남아있다.

여기서 Bradley-Terry 선호 모델(1편, 4편)을 다시 꺼낸다.

\[p^*(y_1 \succ y_2 \mid x) = \sigma\big(r^*(x,y_1) - r^*(x,y_2)\big)\]
  • \(p^*(y_1 \succ y_2 \mid x)\): \(y_1\)이 \(y_2\)보다 선호될 확률.
  • \(\sigma\): 시그모이드 함수.
  • \(r^*(x,y_1) - r^*(x,y_2)\): 두 응답의 reward 차이.

핵심 트릭은 이 차이를 취하는 순간 일어난다. 위에서 역산한 \(r(x,y) = \beta \log(\pi(y\mid x)/\pi_{ref}(y\mid x)) + \beta \log Z(x)\)를 대입하면,

\[r(x,y_1) - r(x,y_2) = \beta \log \frac{\pi(y_1 \mid x)}{\pi_{ref}(y_1 \mid x)} - \beta \log \frac{\pi(y_2 \mid x)}{\pi_{ref}(y_2 \mid x)}\]

\(\log Z(x)\) 항이 통째로 사라졌다. \(y_1\)과 \(y_2\)가 같은 \(x\)에서 나온 응답이라 \(Z(x)\)가 양쪽에 똑같이 붙어 있고, 뺄셈 과정에서 상쇄되기 때문이다. 같은 트랙에서 달린 두 선수의 기록을 비교할 때, 그날의 바람 세기(모든 선수에게 공통으로 작용하는 조건)는 순위 비교에서 저절로 상쇄되는 것과 같은 이치다. 계산 불가능한 항이 계산할 필요가 없는 항으로 바뀐 것이다.

이걸 Bradley-Terry 손실에 대입하고 \(y_1 = y_w\)(선호), \(y_2 = y_l\)(비선호)로 두면 최종 DPO 손실이 나온다.

\[\mathcal{L}_{DPO}(\pi_\theta; \pi_{ref}) = -\mathbb{E}_{(x,y_w,y_l) \sim D} \left[ \log \sigma\!\left( \beta \log \frac{\pi_\theta(y_w \mid x)}{\pi_{ref}(y_w \mid x)} - \beta \log \frac{\pi_\theta(y_l \mid x)}{\pi_{ref}(y_l \mid x)} \right) \right]\]
  • \(D\): (프롬프트, 선호 응답, 비선호 응답) 삼중항으로 구성된 고정 선호 데이터셋.
  • \(\pi_\theta\): 학습 중인 정책 하나뿐 — reward model 네트워크가 따로 없다.
  • 전체 식은 사실상 로지스틱 회귀(이진 분류) 손실이다. “정답 라벨”은 \(y_w\)가 \(y_l\)보다 선호된다는 사실이고, “로짓”은 정책과 참조 정책의 로그비 차이다.

“Your Language Model is Secretly a Reward Model”이라는 제목은 정확히 이 지점을 가리킨다. 우리가 학습시키는 대상은 겉보기엔 언어모델 \(\pi_\theta\) 하나뿐이고, 손실 함수도 평범한 분류 손실처럼 보인다. 하지만 파라미터 \(\theta\) 안에는 이미 앞서 유도한 reward의 재파라미터화가 그대로 숨어 있다. 언어모델을 SFT처럼 학습시키는 동안, 수학적으로는 reward model을 학습시키는 것과 동치인 일이 벌어지고 있다는 뜻이다. “Secretly”는 이 이중성을 가리키는 단어다.

암묵적 reward와 \(\beta\)의 역할

DPO 학습이 끝난 정책은 다음 식으로 정의되는 암묵적 reward를 품고 있다.

\[\hat r(x,y) = \beta \log \frac{\pi_\theta(y \mid x)}{\pi_{ref}(y \mid x)}\]
  • 참조 정책 대비 정책이 그 응답의 확률을 얼마나 끌어올렸는지의 로그비에 \(\beta\)를 곱한 값이다.
  • \(\beta\)는 두 가지 역할을 동시에 한다. (1) 원래 KL 제약의 강도를 결정하는 하이퍼파라미터, (2) 동시에 암묵적 reward의 스케일을 결정하는 계수. \(\beta\)가 크면 정책이 참조에서 멀어지는 것을 강하게 억제하므로 로그비 자체가 작게 유지되고, reward 신호도 보수적으로 눌린다. \(\beta\)가 작으면 정책이 자유롭게 벗어날 수 있어 reward가 더 예리하게 반응한다. 논문은 태스크별로 0.05~5 범위에서 \(\beta\)를 스윕했고, 실무에서는 0.1 근처의 값이 흔히 쓰인다.

토이 예제: 틀리게 예측할수록 그래디언트가 커진다

DPO 손실의 그래디언트를 정리하면 다음과 같다.

\[\nabla_\theta \mathcal{L}_{DPO} = -\beta \, \mathbb{E}_{(x,y_w,y_l)} \Big[ \underbrace{\sigma\big(\hat r(x,y_l) - \hat r(x,y_w)\big)}_{\text{가중치}} \; \underbrace{\big[\nabla_\theta \log \pi_\theta(y_w \mid x) - \nabla_\theta \log \pi_\theta(y_l \mid x)\big]}_{\text{방향}} \Big]\]
  • 방향 항은 항상 같다 — 선호 응답의 로그확률을 올리고, 비선호 응답의 로그확률을 내리는 쪽.
  • 가중치 항 \(\sigma(\hat r(x,y_l) - \hat r(x,y_w))\)이 핵심이다. 현재 정책이 비선호 응답에 선호 응답보다 더 높은 암묵적 reward를 매길수록(즉 틀리게 예측할수록) 이 값이 1에 가까워진다. 반대로 이미 잘 맞히고 있으면 이 값은 0에 가까워져 그래디언트가 약해진다.

숫자로 확인해보자. 프롬프트 \(x\) = “오늘 기분 어때?”, 선호 응답 \(y_w\) = “좋아, 고마워!”, 비선호 응답 \(y_l\) = “네가 알 바 아니야”. 참조 정책은 둘을 구분하지 못해 \(\pi_{ref}(y_w) = \pi_{ref}(y_l) = 0.5\)라 하고, \(\beta = 0.1\)로 고정한다(이하 표에서는 \(x\)를 생략).

상황 \(\pi_\theta(y_w)\) \(\pi_\theta(y_l)\) \(\hat r(y_w)\) \(\hat r(y_l)\) \(\hat r(y_w)-\hat r(y_l)\) \(\mathcal{L}_{DPO}\) 그래디언트 가중치 \(\sigma(\hat r(y_l)-\hat r(y_w))\)
학습 전 (참조와 동일) 0.50 0.50 0.000 0.000 0.000 0.693 0.500
살짝 틀림 0.30 0.70 -0.051 0.034 -0.085 0.736 0.521
많이 틀림 0.10 0.90 -0.161 0.059 -0.220 0.809 0.555
많이 맞음 0.90 0.10 0.059 -0.161 0.220 0.589 0.445

계산 방식: \(\hat r(y) = 0.1 \times \log(\pi_\theta(y)/0.5)\). 예를 들어 “많이 틀림” 행에서 \(\hat r(y_w) = 0.1 \times \log(0.1/0.5) = 0.1 \times (-1.609) = -0.161\)이다.

읽는 법:

  • “많이 틀림” 행의 그래디언트 가중치(0.555)가 “많이 맞음” 행(0.445)보다 크다. 모델이 비선호 응답을 더 선호하는 방향으로 크게 틀려 있을수록, 그 샘플이 다음 업데이트에서 더 세게 반영된다.
  • “학습 전” 행은 정확히 중간값(0.5)이다. 아직 아무 판단도 하지 않은 상태이므로 절반의 가중치로 시작한다.
  • 이 성질은 hard-example mining을 손실 함수 안에 자동으로 내장한 것과 같다. 과외 선생님이 학생이 이미 잘 아는 문제는 가볍게 넘어가고, 자주 틀리는 문제일수록 더 오래 붙잡고 반복시키는 것과 비슷하다.

RLHF-PPO 파이프라인과 DPO 비교

구성 요소 RLHF + PPO (14~17편) DPO
Reward model 학습 별도 단계, pairwise BT 손실로 학습 (2부 전체) 불필요 — 정책 자체가 암묵적 RM
정책 최적화 PPO/GRPO/RLOO 같은 RL 알고리즘 지도학습 스타일의 이진 분류 손실
정책에서의 샘플링 매 스텝 온폴리시 rollout 필요 불필요 — 고정 데이터셋에 대한 오프라인 학습
Value/Critic 네트워크 PPO는 필요 (16, 17편에서 제거 시도) 없음
재사용 가능한 reward 산출물 있음 — 독립된 RM 체크포인트 없음 — 특정 \(\pi_\theta, \pi_{ref}\) 쌍에 얽매인 암묵적 reward
주요 튜닝 대상 KL 계수, PPO clip, GAE \(\lambda\) 등 다수 \(\beta\) 위주로 상대적으로 단순

변형들: IPO와 KTO

DPO가 발표된 직후, 그 약점을 하나씩 겨냥한 변형들이 빠르게 뒤따랐다. 두 가지만 짚는다.

방법 겨냥한 DPO의 약점 핵심 아이디어 데이터 형태
DPO (Rafailov 2023, Stanford, NeurIPS 2023) BT 로그시그모이드 손실을 정책 파라미터에 대해 직접 최소화 pairwise \((y_w, y_l)\)
IPO (Azar 2023, Google DeepMind, AISTATS 2024) 선호가 거의 결정적일 때 시그모이드 손실이 reward 마진을 무한대로 밀어붙여 KL 정규화가 사실상 무력화되고 과적합됨 pairwise 확률 자체를 목표로 삼고, 로그비 마진을 유한한 목표값 \(1/(2\beta)\)으로 회귀시키는 제곱오차 손실로 교체 pairwise
KTO (Ethayarajh 2024, Contextual AI, ICML 2024) 같은 프롬프트에 대한 pairwise 비교 데이터가 필요해 수집 비용이 크고, DPO의 손실이 인간의 실제 효용함수(전망 이론상 손실회피 등)와 다름 Kahneman-Tversky 전망 이론 기반 효용함수를 도입해, desirable/undesirable 이진 신호만으로 직접 효용을 최대화 unpaired 이진(desirable/undesirable)

IPO는 DPO가 “확신에 찬(=거의 결정적인) 선호 데이터”를 만나면 오히려 위험해진다는 점을 짚는다. 시그모이드 손실은 마진이 커질수록 계속 줄어들기 때문에, \(\beta\)로 정규화를 걸어도 정책이 선호 응답 쪽으로 확률을 계속 밀어붙이며 발산에 가깝게 수렴한다. IPO는 손실을 유한한 목표값에 대한 회귀 문제로 바꿔 이 발산을 원천 차단한다.

KTO는 방향이 다르다. DPO의 수학적 구조 자체보다, 데이터 요구조건인간 행동 모델의 정합성을 문제 삼는다. 실서비스에서는 같은 프롬프트에 대한 두 응답을 나란히 비교시키기보다, 하나의 응답에 대해 좋다/싫다 이진 신호를 받는 경우가 훨씬 흔하고 싸다. KTO는 그런 unpaired 데이터만으로도 1B~30B 규모에서 DPO와 동등하거나 그 이상의 성능을 보고했다.

Experiments

DPO 논문이 보여준 숫자

태스크 모델 지표 결과
IMDB 긍정 감성 제어 GPT-2-large reward-KL frontier 동일 KL에서 PPO(참 reward에 직접 접근 가능한 경우 포함)보다 높은 reward 달성
TL;DR 요약 GPT-J (6B) GPT-4 win rate vs 사람 요약, \(T=0\) 약 61% (PPO 최고 성능은 57%)
Anthropic-HH 단일턴 대화 Pythia-2.8B GPT-4 win rate vs 선호 응답 선호 응답 대비 개선을 보인 유일한 방법. Best-of-128 샘플링과 비슷하거나 더 나은 성능

위 그림(논문 Figure 2 왼쪽)이 IMDB 실험의 reward-KL frontier다. 가로축이 \(\pi_{ref}\)와의 KL 거리, 세로축이 얻은 reward다. 같은 KL 예산에서 DPO가 PPO보다 항상 위쪽(더 높은 reward)에 있다. RL 루프 없이도 PPO보다 효율적인 reward-KL trade-off를 달성했다는 것이 논문의 핵심 실험 근거다.

위 그림(논문 Figure 3 왼쪽)은 Anthropic-HH 단일턴 대화에서 GPT-4 평가 기준 win rate다. DPO만이 데이터셋의 선호 응답 자체보다 높은 win rate를 안정적으로 달성했다.

얻은 것: 무엇이 사라졌는가

  • RM 학습 단계 제거: 별도 reward model을 위한 pairwise 데이터 학습 라운드, 체크포인트 관리, calibration 검증(9편 RewardBench 2류의 평가)이 통째로 사라진다.
  • RL 루프 제거: on-policy rollout, PPO clip, GAE, value network(16, 17편에서 이미 문제 삼은 것들)에서 자유로워진다.
  • 안정성과 구현 단순성: 손실이 표준 이진 분류 손실 형태라 SFT 파이프라인에 몇 줄만 추가하면 된다. 논문은 “거의 하이퍼파라미터 튜닝 없이도” 강한 베이스라인과 동등하거나 더 나은 성능을 냈다고 보고한다.

잃은 것: 회계 장부의 이면

reward model을 지우는 대가는 네 갈래로 나뉜다.

(a) off-policy 한계. DPO는 고정된 오프라인 선호 데이터셋 \(D\)에 대해서만 학습한다. 학습이 진행되며 정책 \(\pi_\theta\)가 만들어내는 응답 분포는 \(D\)를 수집할 때 썼던 정책의 분포와 점점 달라지는데, DPO는 그 새로운 분포에서 인간이 실제로 어떻게 반응할지 전혀 관측하지 못한다. 지난달 설문조사 결과만 보고 이번 달 신메뉴를 계속 내놓는 것과 비슷하다 — 손님 취향이 바뀌었는지 확인할 방법이 없다. 반면 PPO 기반 RLHF는 매 스텝 정책에서 새로 샘플링하고, 그 샘플에 reward model이 점수를 매기므로 최소한 “정책이 지금 어디 있는지”는 계속 관측한다.

(b) 명시적 reward 신호의 부재. 암묵적 reward \(\hat r(x,y) = \beta \log(\pi_\theta(y\mid x)/\pi_{ref}(y\mid x))\)는 수식으로는 임의의 \(y\)에 대해 계산할 수 있지만, 특정 \(\pi_\theta\) 체크포인트에 통째로 얽매여 있다. Best-of-N 샘플링이나 tree search 같은 inference-time scaling은 여러 후보를 안정적인 기준으로 재채점할 독립된 scoring 함수를 필요로 하는데, DPO는 그런 재사용 가능한 산출물을 남기지 않는다. 이 공백이 5부와 6부(19~26편)에서 명시적·생성형 reward model이 다시 부상하는 이유 중 하나다.

(c) 분포 밖 응답의 확률을 밀어내는 부작용. DPO 손실은 \(y_w\)와 \(y_l\)의 상대적 확률 차이만 키우도록 설계됐다. 그런데 후속 연구(Razin et al., 2024)는 이 그래디언트가 실제로는 선호 응답 \(y_w\)의 절대 확률까지 함께 떨어뜨리는 현상—likelihood displacement—을 자주 일으킨다는 것을 보였다. 두 응답의 순서만 맞으면 손실은 줄어들기 때문에, 모델이 “선호 응답의 확률을 올리는” 대신 “비선호 응답의 확률을 더 많이 내려서” 마진을 맞추는 경로로도 최적화가 흘러갈 수 있다.

(d) 선호 데이터 품질에 그대로 종속. RM을 따로 학습하는 파이프라인에서는 노이즈 필터링, 앙상블(13편 WARM), 다목적 분해(7편 ArmoRM) 같은 완충 장치를 RM 학습 단계에 끼워 넣을 수 있었다. DPO는 그 단계 자체가 없으므로, 선호 라벨의 노이즈와 편향이 필터링 없이 그래디언트에 곧바로 반영된다.

구분 항목 내용
얻은 것 RM 학습 단계 제거 pairwise 데이터 학습·체크포인트 관리·평가 단계가 사라짐
얻은 것 RL 루프 제거 on-policy rollout, PPO clip, value network 불필요
얻은 것 안정성·구현 단순성 이진 분류 손실 하나로 학습, 하이퍼파라미터 민감도 낮음
잃은 것 off-policy 한계 정책이 이동하며 만드는 새 분포에서의 인간 반응을 관측 불가
잃은 것 명시적 reward 부재 best-of-N, tree search에 재사용할 안정적 scoring 함수 없음
잃은 것 OOD 확률 밀어내기 likelihood displacement — 선호 응답 확률도 함께 하락 가능
잃은 것 데이터 품질 종속 노이즈·편향 필터링 단계 부재로 원시 라벨이 그대로 반영

다시 명시적 RM으로 돌아온 흐름

17편에서 다룬 RLOO는 여러 정렬 벤치마크에서 DPO보다 나은 성능을 보고하며, online RL이 offline DPO보다 유리한 지점이 있다고 주장했다. 근거는 정확히 위 (a)와 궤를 같이한다 — RLOO는 매 스텝 정책에서 직접 샘플링하고 그 샘플에 reward model이 점수를 매기므로, 정책이 이동한 지점에서의 reward를 계속 관측할 수 있다.

6부(22~26편)의 GenRM(Generative Reward Model) 부흥도 같은 공백에서 출발한다. DPO가 남긴 두 가지 공백 — 명시적으로 재사용 가능한 reward 산출물의 부재(b), 그리고 그 reward를 process 수준으로 세분화할 수 없다는 한계 — 를 정면으로 채우는 것이 GenRM이다. reward를 다음 토큰 예측으로 재정의하고(22편), inference-time scaling에 재사용 가능한 채점기로 되돌리는 흐름이 여기서 시작된다.

Conclusion

DPO는 KL 제약 하 reward 최대화 문제의 닫힌 해를 뒤집어, reward를 정책과 참조 정책의 로그비로 역산한다. 그 결과 Bradley-Terry 손실이 reward model이 아니라 정책 파라미터에 대한 손실로 바뀌고, RM 학습과 RL 루프가 통째로 사라진다. “Your Language Model is Secretly a Reward Model”이라는 제목은 이 재파라미터화—겉보기엔 SFT형 분류 손실이지만 속에는 이미 reward model이 인코딩돼 있다는 사실—를 정확히 가리킨다. 토이 예제로 확인했듯, DPO의 그래디언트는 모델이 틀리게 예측할수록(비선호 응답에 더 높은 암묵적 reward를 줄수록) 자동으로 커지는 가중치를 갖는다.

그러나 이 글의 회계 장부가 보여주듯, 얻은 것(안정성·단순함)보다 잃은 것(off-policy 한계, 명시적 reward의 부재, OOD 확률 밀어내기, 데이터 품질 종속)의 목록이 더 무겁다. IPO는 그중 과적합 문제를, KTO는 pairwise 데이터 의존성을 각각 겨냥해 DPO를 보완했지만, 근본적인 “reward model 없음”이라는 구조는 그대로 남는다.

이제 4부(14~18편) 전체를 한 줄로 요약할 수 있다. PPO(14편)로 시작해 그것을 안정화하고(15편), 단순화하고(16편), 최소화하고(17편), 마침내 제거해본(18편) 다섯 편은 결국 “reward를 소비하는 알고리즘을 어디까지 가볍게 만들 수 있는가”에 대한 실험이었다. 다음 5부는 정반대 방향으로 움직인다. reward를 없애는 대신, 응답 전체가 아니라 한 단계 한 단계에 reward를 매기는 방향으로 촘촘하게 만든다. 19편 Let’s Verify Step by Step에서 이어진다.


RLHF Reward 설계 시리즈

이 글은 RLHF Reward 설계 시리즈의 열여덟 번째 글이다.

1부. 지형도

  1. Deep RL from Human Preferences (Christiano 2017) — 선호로 보상을 배우는 원형
  2. InstructGPT (Ouyang 2022) — RLHF 3단계 표준 레시피
  3. HH-RLHF (Bai 2022) — helpful·harmless preference model

2부. 스칼라 RM 해부

  1. Rethinking Bradley-Terry (2024) — reward 변환의 수학적 기반
  2. Secrets of RLHF II (2024) — 선호 데이터 노이즈와 RM 일반화
  3. Skywork-Reward (2024) — 데이터 큐레이션이 아키텍처를 이긴다
  4. ArmoRM (2024) — 다목적 분해와 MoE 게이팅
  5. Llama 2 (2023) — helpfulness·safety RM 분리 프로덕션 레시피
  6. RewardBench 2 (2025) — RM을 어떻게 평가할 것인가

3부. Reward Hacking

  1. Overoptimization Scaling Laws (2022) — Goodhart의 법칙 정량화
  2. Length Correlations in RLHF (2023) — 성능 향상의 얼마가 길이인가
  3. ODIN (2024) — 길이를 reward에서 분리
  4. WARM (2024) — weight averaging으로 hacking 방어

4부. reward를 정책으로

  1. PPO (2017) — clipped surrogate objective
  2. Secrets of RLHF I (2023) — PPO 학습 안정화 트릭
  3. GRPO / DeepSeekMath (2024) — value network를 버리다
  4. RLOO (2024) — REINFORCE로 충분한가
  5. (현재 글) DPO (2023) — reward를 없애면 어떻게 되는가

5부. Process & Verifiable Reward

  1. Let’s Verify Step by Step (2023) — 과정 감독이 결과 감독을 이긴다
  2. Math-Shepherd (2023) — 사람 라벨 없는 PRM
  3. DeepSeek-R1 (2025) — RLVR, 규칙이 reward가 될 때

6부. Generative Reward Model

  1. Generative Verifiers (2024) — reward를 next-token prediction으로
  2. Generative Reward Models (2024) — GenRM과 선호 학습의 결합
  3. DeepSeek-GRM / SPCT (2025) — inference-time scaling
  4. Rubrics as Rewards (2025) — 비검증 도메인으로
  5. One Token to Fool LLM-as-a-Judge (2025) — GenRM도 뚫린다

참고 문헌




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • One Token to Fool: GenRM도 결국 뚫린다
  • Rubrics as Rewards: 정답이 없는 도메인에 reward를 만드는 법
  • DeepSeek-GRM: reward model이 평가 기준을 스스로 만든다
  • Generative Reward Models: GenRM과 선호 학습을 잇다
  • Generative Verifiers: reward를 분류가 아니라 생성으로 풀다