PPO, DPO, GRPO는 모두 AI 모델(특히 강화학습 및 대규모 언어 모델)을 최적화하는 알고리즘이지만, 학습하는 방식과 사용하는 데이터의 종류에서 근본적인 차이가 있습니다.

간단히 요약하면 다음과 같습니다.

  • PPO (Proximal Policy Optimization): **'보상 점수'**를 최대로 받도록 학습합니다. (예: 게임에서 높은 점수 받기)
  • DPO (Direct Preference Optimization): **'A가 B보다 낫다'**는 인간의 선호도 데이터를 기반으로 학습합니다. (예: 더 좋은 답변 고르기)
  • GRPO (Generalized Reward/Preference Optimization): DPO와 PPO(보상)를 포함하는 더 일반화된 이론적 프레임워크를 의미하는 경우가 많습니다.

🚀 알고리즘 핵심 비교

기준 PPO (Proximal Policy Optimization) DPO (Direct Preference Optimization) GRPO (Generalized R/P Optimization)
주요 패러다임 강화학습 (RL) 선호도 기반 학습 (RLHF의 일종) 일반화된 최적화 프레임워크
학습 데이터 보상 신호 (Reward Signal)

(예: +1점, -10점 등)
선호도 데이터 (Preference Pair)

(예: 답변 A > 답변 B)
보상과 선호도를 모두 포함 (이론적)
핵심 목표 누적 보상(Reward) 극대화 인간의 선호도(Preference)와 일치 다양한 피드백 기반 최적화
주요 사용처 로보틱스, 게임 (Atari, StarCraft),

(과거) 언어 모델 튜닝
대규모 언어 모델 (LLM) 얼라인먼트

(예: ChatGPT, Claude 튜닝)
DPO 등을 포함하는 이론적 개념
학습 방식 On-Policy (환경과 실시간 상호작용) Offline (미리 수집된 데이터셋으로 학습) 프레임워크 (DPO가 한 예시)

1. PPO (Proximal Policy Optimization)

PPO는 **'보상(Reward)'**을 기반으로 작동하는 가장 표준적이고 널리 쓰이는 강화학습 알고리즘 중 하나입니다.

  • 작동 원리:
    1. AI 에이전트(모델)가 환경에서 어떤 행동을 합니다. (예: 게임 캐릭터가 오른쪽으로 이동)
    2. 환경은 그 행동에 대한 **보상(점수)**을 줍니다. (예: 아이템을 먹으면 +10점)
    3. PPO는 이 누적 보상을 최대화하는 방향으로 모델의 정책(행동 방식)을 업데이트합니다.
  • 핵심 특징: 'Proximal'(근접한)이라는 이름처럼, 정책을 한 번에 너무 급격하게 바꾸지 않고 안정적으로 조금씩 업데이트하는 '클리핑(clipping)' 기법을 사용합니다.
  • 주요 용도: 게임 플레이, 로봇 제어 등 명확한 '점수'나 '보상'을 정의할 수 있는 대부분의 강화학습 문제에 사용됩니다.

2. DPO (Direct Preference Optimization)

DPO는 **'인간의 선호도(Preference)'**를 기반으로 LLM을 튜닝하는, 비교적 최신(2023년)이면서 매우 영향력 있는 알고리즘입니다.

  • 등장 배경: 기존의 LLM 튜닝 방식(RLHF)은 '보상 모델'을 별도로 학습해야 해서 복잡했습니다. DPO는 이 과정을 획기적으로 단순화했습니다.
  • 작동 원리:
    1. 'A 답변이 B 답변보다 낫다' (A > B)와 같이 인간이 직접 평가한 선호도 데이터셋을 준비합니다.
    2. DPO는 별도의 보상 모델 없이, 이 선호도 데이터를 분류 문제처럼 직접 사용하여 모델(LLM)을 학습시킵니다.
    3. '선호되는(A) 답변'이 나올 확률은 높이고, '선호되지 않는(B) 답변'이 나올 확률은 낮추도록 모델을 직접 업데이트합니다.
  • 핵심 특징: '보상 모델'이 필요 없습니다. 선호도 데이터만으로 직접 정책을 최적화하여 훨씬 간단하고 안정적입니다.
  • 주요 용도: LLM을 더 유용하고, 안전하며, 인간의 가치관에 맞게 '얼라인(align)'시키는 데 핵심적으로 사용됩니다.

3. GRPO (Generalized Reward/Preference Optimization)

GRPO는 PPO나 DPO처럼 **하나의 특정 알고리즘을 지칭하기보다는, 이들을 아우르는 더 큰 '프레임워크'나 '개념'**을 의미할 가능성이 큽니다.

  • 의미: 이름 그대로 '일반화된' 최적화 방식을 뜻합니다.
  • 개념:
    • PPO는 '보상(Reward)'이라는 피드백을 사용합니다.
    • DPO는 '선호(Preference)'라는 피드백을 사용합니다.
    • GRPO는 보상이든, 선호도든, 혹은 다른 어떤 형태의 피드백이든 다양한 형태의 피드백을 일반화하여 모델을 최적화하려는 이론적 접근을 의미할 수 있습니다.
  • DPO와의 관계: DPO 논문이나 관련 연구에서, DPO가 이러한 **'일반화된 보상/선호도 최적화'의 한 가지 성공적인 특수 사례(special case)**라고 설명하기도 합니다.

※ 참고: 만약 GRPO가 **TRPO (Trust Region Policy Optimization)**의 오타라면, TRPO는 PPO의 전신이 되는 알고리즘으로, PPO보다 수학적으로 더 복잡하지만 안정적인 정책 업데이트를 보장하려 했던 초기 알고리즘입니다. 하지만 현재는 계산이 더 간단한 PPO가 훨씬 널리 쓰입니다.


📊 핵심 차이 요약

  1. PPO vs DPO:
    • PPO는 '보상 점수' (예: 10점)를 가지고 학습합니다.
    • DPO는 '선호도 쌍' (예: A가 B보다 좋다)을 가지고 학습합니다.
  2. 학습 환경:
    • PPO는 (주로) 환경과 실시간으로 상호작용하며 데이터를 얻습니다. (On-policy)
    • DPO는 이미 수집된 정적 데이터셋(선호도 DB)으로 학습합니다. (Offline)
  3. 목적:
    • PPO는 주어진 환경에서 **작업 성능(누적 보상)**을 극대화하는 것이 목표입니다.
    • DPO는 모델의 출력이 인간의 선호도와 일치하도록 만드는 것이 목표입니다.
  4. GRPO의 위치:
    • GRPO는 PPO(보상)와 DPO(선호도) 같은 다양한 피드백을 하나의 **일반화된 틀(framework)**로 보려는 상위 개념입니다.

+ Recent posts