생성모델의 강화학습: DPO에서 GRPO까지
들어가며
"이 답변이 저 답변보다 낫다."라는 판단은 직관적이고 간단하다.
DPO(Direct Preference Optimization)는 이 판단 위에 세워졌고, 코드 몇 줄이면 기존 학습 파이프라인에 붙일 수 있다. 그래서 많은 사람이 생성모델의 강화학습을 DPO로 처음 만나는데, 이 교재도 거기서 출발한다.
하지만 이 한 줄을 오래 들여다보면 질문이 생긴다. 왜 하필 로그인가? 레퍼런스 모델은 왜 거기 있나? 시그모이드는 어디서 왔나? DPO 논문의 부제 *“당신의 언어 모델은 사실 보상 모델이다”*는 원래 보상 모델이 따로 있었다는 뜻인데, 그 보상 모델로 무엇을 하고 있었나?
답은 수십 년에 걸친 강화학습의 두 줄기인 정책 그래디언트와 가치 기반 방법이 만나는 자리에 있다. DPO는 그 진화의 한가운데에서, 너무 무거워진 RLHF 파이프라인(보상 모델 학습 + PPO)을 수식 변환으로 건너뛴 우회로다. 그리고 그 우회로가 한계에 부딪힌 자리에서 GRPO가 나왔다.
그래서 이 교재는 DPO로 문을 연 뒤, 곧바로 정책 그래디언트의 기초로 내려간다.
이야기의 흐름
graph LR
DPO1["<b>DPO 맛보기</b><br/>Ch1"] -.->|"이 식은 어디서?"| VPG
VPG["<b>VPG</b><br/>점수를 미분 없이 올리기<br/>Ch2"] -->|"샘플로 추정"| RF["<b>REINFORCE</b><br/>베이스라인<br/>Ch3"]
RF -.->|"상태마다의 평균은?"| VAL["<b>가치 기반</b><br/>MDP · 벨먼 · 시간차 · Q-러닝 · DQN<br/>Ch4–8"]
RF -->|"분산을 더 줄이려면"| AC["<b>Actor-Critic</b><br/>비평가 V, 어드밴티지<br/>Ch9"]
VAL -->|"비평가가 된다"| AC
AC -->|"멀리 가지 않게"| PPO["<b>PPO + RLHF</b><br/>클리핑, KL, 보상 모델<br/>Ch10"]
PPO -->|"무겁다 → 우회로"| DPO["<b>DPO 재등장</b><br/>해부와 진화<br/>Ch11–20"]
PPO -->|"비평가를 내려놓다"| GRPO["<b>RLVR + GRPO</b><br/>Ch21–22"]
DPO -.->|"오프라인의 한계"| GRPO
GRPO --> VAR["<b>GRPO 변종들</b><br/>Ch23"]
VAR --> APP["<b>응용</b><br/>디퓨전·영상·로보틱스·에이전트<br/>Ch24–28"]
이 흐름 전체를 꿰는 식은 Ch2 「VPG」에서 유도하는 정책 그래디언트 하나다.
정책 그래디언트 식이 하는 말은 "내가 뽑은 답의 로그확률을,
가치 기반 줄기(Ch4–8)는 가중치
구성
| 파트 | 장 | 질문 |
|---|---|---|
| I. 출발점 | Ch1 DPO 맛보기 | 한 줄 수식은 무엇을 하는가? |
| II. 정책 그래디언트: VPG와 REINFORCE | Ch2 VPG · Ch3 REINFORCE | 미분할 수 없는 점수를 어떻게 올리는가? 추정치의 분산은 어떻게 줄이는가? |
| III. 가치 기반: 마르코프 결정 과정에서 DQN까지 | Ch4 마르코프 결정 과정 · Ch5 벨먼 방정식 · Ch6 시간차 학습 · Ch7 Q-러닝 · Ch8 DQN | 지금 이 상태는 앞으로 얼마나 좋은가? 결과를 끝까지 기다리지 않고 그 좋음(가치)을 배울 수 있는가? |
| IV. 두 줄기의 만남: 액터–크리틱과 PPO | Ch9 Actor-Critic · Ch10 PPO와 RLHF | 정책이 고르고 가치함수가 평가하면 무엇이 나아지는가? 원래 모델에서 멀어지지 않게 하려면? |
| V. 우회로: DPO | Ch11 DPO의 재등장 · Ch12–17 요소별 해부(선호 쌍의 조건 · 로그확률 · 길이 편향 · 레퍼런스 모델 · Bradley-Terry · 다차원 보상) · Ch18 DPO의 진화 · Ch19 온라인과 오프라인 · Ch20 실전사례 | 보상 모델과 RL 루프를 건너뛰면 무엇을 얻고 무엇을 잃는가? |
| VI. 비평가 없이: RLVR과 GRPO | Ch21 RLVR과 GRPO · Ch22 RL이 작동하는 조건 · Ch23 GRPO의 변종들 | 정답을 검증할 수 있다면, 비평가도 보상 모델도 없이 스스로 배울 수 있는가? |
| VII. 응용 | Ch24 디퓨전에서 DPO를 쓰려면 · Ch25 DDPO · Ch26 이미지·로보틱스의 강화학습 · Ch27 영상 생성 모델의 학습 · Ch28 에이전틱 AI | 로그확률을 구하기 어려운 모델, 여러 번 행동하는 모델, 모델을 감싼 하네스에서는? |
| 부록 | A 디퓨전 이론 · B 기호표 · C LLM↔디퓨전 대응 · D 알고리즘 족보 · E BM25와 로그오즈 · F ELBO |
Part V의 해부(Ch12 「선호 쌍의 조건」부터 Ch17 「다차원 보상」까지)는 DPO 수식을 여섯 요소(선호 쌍, 로그확률, 길이, 레퍼런스와
이 교재를 읽는 법
위젯. 핵심 개념마다 슬라이더와 버튼으로 조작해 볼 수 있는 예제가 있으니, 식을 읽고 넘어가기 전에 한 번씩 움직여 보길 권한다. 예컨대 Ch2 「VPG」의 위젯에서 보상에 상수를 더해 보면, Ch3 「REINFORCE」가 왜 필요한지 먼저 눈으로 보게 된다.
장의 짜임과 연습문제. 각 장은 개념 하나를 한 페이지에 담은 절들로 이루어지고, 절마다 그 개념을 연습하는 문제가 절 끝에 바로 붙는다. 문제 뒤에는 세 사람이 같은 문제를 푸는 대화가 이어지며, 여러 개념을 엮는 까다로운 "킬러 문제"는 그 개념들이 다 나온 절 끝에 있다. 절의 문제는 일상의 비유로 몸을 푸는 문제에서 시작해 그 절의 식으로 이어진다. 위젯에 「문제 N」 단추가 있으면 그 문제의 값을 불러오니, 답은 먼저 스스로 구한 뒤 수치판으로 확인해 보라. 장의 마지막 페이지는 혼동하기 쉬운 점과 요약이다.
트릭의 뿌리. 본문 옆의 곁글 「트릭의 뿌리」는 그 절에서 쓴 요령이 ML 밖의 어느 분야에서 먼저 쓰였는지를 짧게 보여 준다. 기법 하나가 아니라 문제에 다가가는 자세 하나를 다룬다.
| 인물 | 소개 |
|---|---|
| 선생님 | 강의자. 정답을 먼저 말하지 않고, 모순이 드러나는 질문을 던진다. |
| 김민준 | 학부 3학년. 소프트맥스, NumPy, PyTorch 과제 정도를 해봤다. 코드로 먼저 돌려보고 답이 빠르다. |
| 이서연 | 수학과 3학년. 해석학과 선형대수는 탄탄하지만 물리적 감각은 약하다. 이상한 결과를 스스로 알아챈다. |
두 학생은 자주 틀리고, 틀리는 이유도 서로 다르다. 대화를 읽기 전에 먼저 스스로 풀어 보고, 내가 둘 중 누구의 방식으로 틀렸는지 확인해 보라.
대상 독자와 전제 지식. 언어 모델을 파인튜닝해 봤거나 DPO·GRPO 논문을 읽으려는 ML 실무자와 학생. 시그모이드와 소프트맥스, 로그, 조건부 확률, 기댓값, 그래디언트의 직관적 의미를 알면 충분하다. 강화학습 사전 지식은 필요 없다. Part II(정책 그래디언트)와 Part III(가치 기반)가 처음부터 쌓는다.