AI.zip
  • AI 모델
  • 방법론
  • AI 서비스
  • 가격 비교
  • 블로그

AI.zip

AI 모델, 서비스, 방법론을 큐레이션하는 에디토리얼 플랫폼

탐색

  • AI 모델
  • AI 서비스
  • 방법론
  • 블로그

커뮤니티

  • 소개
  • 디스코드 참여
  • 문의

법적고지

  • 이용약관
  • 개인정보처리방침

© 2026 ai.zip. All rights reserved.

Discord 커뮤니티
방법론Transfer LearningFine-tuningDPO (Direct Preference Optimization)

DPO (Direct Preference Optimization)

Fine-tuning

쉽게 이해하기

DPO(직접 선호도 최적화)는 AI를 인간의 취향에 맞게 정렬하는 방법 중에서 가장 효율적인 최신 기법입니다. RLHF의 핵심 아이디어는 살리면서, 복잡한 중간 단계를 통째로 건너뜁니다.

RLHF는 먼저 "좋은 답변 감별사" 역할을 하는 보상 모델을 따로 만들고, 그 감별사의 판단에 따라 PPO 알고리즘으로 본래 AI를 강화학습시킵니다. 과정이 복잡하고, 동시에 여러 모델을 메모리에 올려야 하며, PPO 알고리즘 자체가 불안정하다는 단점이 있습니다.

DPO는 이 중간 단계를 통째로 제거합니다. 비유하자면, RLHF는 학생에게 전담 교사가 붙어서 매번 "이 답이 저 답보다 낫다"고 채점해주는 방식이고, DPO는 처음부터 "A 답과 B 답 중 A가 더 좋다"는 비교 쌍 목록을 학생에게 직접 주고 스스로 공부하게 하는 방식입니다. 결과물의 품질은 비슷하지만, 과정이 훨씬 단순하고 구현도 쉽습니다.

Meta의 LLaMA-3 훈련 파이프라인에 DPO가 적극적으로 활용됐고, Mistral, Gemma, Qwen 등 대부분의 현대적 오픈소스 모델도 DPO 또는 그 변형을 채택하고 있습니다. DPO 등장 이후 RLHF의 복잡한 구현을 피하고 싶은 연구자와 엔지니어들에게 사실상의 표준이 되었습니다.

기술 심층 분석

📚 선수학습: RLHF의 KL-제약 보상 최적화 프레임워크와 SFT 파이프라인을 먼저 숙지하세요.

핵심 유도 과정RLHF의 최적화 문제에서 출발한다:

max⁡πθEy∼πθ(⋅∣x)[r(x,y)−β⋅KL[πθ(y∣x)∥πref(y∣x)]]\max_{\pi_\theta} \mathbb{E}_{y \sim \pi_\theta(\cdot|x)}\left[r(x, y) - \beta \cdot \text{KL}\left[\pi_\theta(y|x) \| \pi_\text{ref}(y|x)\right]\right]maxπθ​​Ey∼πθ​(⋅∣x)​[r(x,y)−β⋅KL[πθ​(y∣x)∥πref​(y∣x)]]

이 KL-제약 보상 최대화 문제의 해석적 최적해는:

π∗(y∣x)=1Z(x)πref(y∣x)exp⁡(r(x,y)β)\pi^*(y|x) = \frac{1}{Z(x)} \pi_\text{ref}(y|x) \exp\left(\frac{r(x,y)}{\beta}\right)π∗(y∣x)=Z(x)1​πref​(y∣x)exp(βr(x,y)​)

이를 보상 rrr에 대해 역으로 풀면:

r(x,y)=βlog⁡π∗(y∣x)πref(y∣x)+βlog⁡Z(x)r(x,y) = \beta \log \frac{\pi^*(y|x)}{\pi_\text{ref}(y|x)} + \beta \log Z(x)r(x,y)=βlogπref​(y∣x)π∗(y∣x)​+βlogZ(x)

이를 Bradley-Terry 선호 모델1에 대입하면, 정규화 상수 Z(x)Z(x)Z(x)가 대소 비교 시 상쇄되어:

P(yw≻yl∣x)=σ(βlog⁡π∗(yw∣x)πref(yw∣x)−βlog⁡π∗(yl∣x)πref(yl∣x))P(y_w \succ y_l | x) = \sigma\left(\beta \log \frac{\pi^*(y_w|x)}{\pi_\text{ref}(y_w|x)} - \beta \log \frac{\pi^*(y_l|x)}{\pi_\text{ref}(y_l|x)}\right)P(yw​≻yl​∣x)=σ(βlogπref​(yw​∣x)π∗(yw​∣x)​−βlogπref​(yl​∣x)π∗(yl​∣x)​)

따라서 DPO 손실 함수:

LDPO=−E(x,yw,yl)[log⁡σ(β⋅(log⁡πθ(yw∣x)πref(yw∣x)−log⁡πθ(yl∣x)πref(yl∣x))⏟암묵적 보상 차이)]\mathcal{L}_\text{DPO} = -\mathbb{E}_{(x,y_w,y_l)}\left[\log \sigma\left(\beta \cdot \underbrace{\left(\log \frac{\pi_\theta(y_w|x)}{\pi_\text{ref}(y_w|x)} - \log \frac{\pi_\theta(y_l|x)}{\pi_\text{ref}(y_l|x)}\right)}_{\text{암묵적 보상 차이}}\right)\right]LDPO​=−E(x,yw​,yl​)​​logσ​β⋅암묵적 보상 차이(logπref​(yw​∣x)πθ​(yw​∣x)​−logπref​(yl​∣x)πθ​(yl​∣x)​)​​​​

분리된 각 항 log⁡πθ(y∣x)πref(y∣x)\log \frac{\pi_\theta(y|x)}{\pi_\text{ref}(y|x)}logπref​(y∣x)πθ​(y∣x)​는 **암묵적 보상(Implicit Reward)**이다. 별도의 보상 모델 없이 언어 모델 자체가 보상 함수를 내재화한다.

β\betaβ 파라미터의 역할

β→0:πθ≈πref (레퍼런스 모델 고수)\beta \to 0: \pi_\theta \approx \pi_\text{ref} \text{ (레퍼런스 모델 고수)}β→0:πθ​≈πref​ (레퍼런스 모델 고수) β→∞:보상 최대화만 추구 (KL 패널티 무시)\beta \to \infty: \text{보상 최대화만 추구 (KL 패널티 무시)}β→∞:보상 최대화만 추구 (KL 패널티 무시)

실무 권장값: β=0.1\beta = 0.1β=0.1 ~ 0.50.50.5. 너무 낮으면 정렬 효과가 미미하고, 너무 높으면 보상 해킹(reward hacking)2 발생 위험이 있다.

RLHF vs DPO 비교

기준RLHFDPO
보상 모델필요 (별도 학습)불필요
알고리즘PPO (복잡)지도학습 (단순)
동시 메모리4개 모델2개 모델
학습 안정성낮음높음
온라인 샘플링가능기본적으로 오프라인
구현 코드 수수백 줄수십 줄

데이터 형식: 선호도 쌍

DPO는 (prompt, chosen, rejected) 트리플렛을 사용한다:

json
{
  "prompt": "파이썬으로 피보나치 수열을 출력하는 코드를 작성해줘",
  "chosen": "def fibonacci(n):
    a, b = 0, 1
    for _ in range(n):
        print(a)
        a, b = b, a+b",
  "rejected": "피보나치 수열은 이탈리아 수학자 피보나치가 발견한..."
}

선호 데이터 수집 방법: (1) 인간 평가자 A/B 비교, (2) 기존 ChatGPT 등 강력 모델 출력 vs 약한 모델 출력, (3) Constitutional AI를 통한 자동 생성.

주요 변형

IPO(Azar et al., 2023): Bradley-Terry 가정을 완화. 선호 확률이 0 또는 1에 가까운 극단적 경우를 더 잘 처리한다.

KTO(Ethayarajh et al., 2024): 쌍대 비교(pairwise) 없이 개별 "좋음/나쁨" 레이블만으로 학습 가능. Kahneman-Tversky의 손실 회피 이론을 기반으로 한다.

온라인 DPO: 학습 중 현재 정책 πθ\pi_\thetaπθ​에서 새 응답을 실시간 샘플링하여 분포 불일치(distribution shift) 문제를 완화한다.

ORPO: SFT와 DPO를 단일 단계로 통합. SFT 손실에 오즈비(odds-ratio) 기반 패널티를 더한다. 학습 단계를 2→1로 줄여 효율적이다.

Footnotes

Footnotes

  1. Bradley, R. A., & Terry, M. E. (1952). Rank Analysis of Incomplete Block Designs: I. The Method of Paired Comparisons. Biometrika. 두 항목 중 하나를 선호하는 확률을 모델링하는 고전적 통계 모형으로, DPO 유도의 핵심 가정. ↩

  2. Rafailov, R. et al. (2023). Direct Preference Optimization: Your Language Model is Secretly a Reward Model. NeurIPS 2023. 보상 모델 없이 선호 데이터만으로 RLHF 최적해를 달성하는 DPO 원논문. ↩

이전글

Denoising Pretraining

다음글

Extended Thinking

댓글

0개

댓글을 작성하려면

로그인

해주세요

방법론 정보

상위 카테고리

Transfer LearningFine-tuning

관련 게시글

4개

사용 서비스

0개

관련 게시글

AI 모델 평가 완전 가이드: RAGAS, LangSmith, Promptfoo 실전 비교

COMPARISON

DeepSeek R1 완전 분석: 중국 오픈소스 AI가 바꾼 게임의 규칙

DEEP_DIVE

LLM 파인튜닝 실전 가이드: QLoRA로 나만의 모델 만들기 (2025)

TUTORIAL

관련 방법론

Adapter Tuning

LoRA

ORPO

Prefix Tuning

QLoRA

RLHF (Reinforcement Learning from Human Feedback)

Self-Improvement

SFT (Supervised Fine-Tuning)