diff --git a/_posts/2026-11-12-from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization.md b/_posts/2026-11-12-from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization.md new file mode 100644 index 0000000..cdf0925 --- /dev/null +++ b/_posts/2026-11-12-from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization.md @@ -0,0 +1,831 @@ +--- +layout: post +title: "From RLHF to DPO and GRPO: Lineages of LLM Preference Optimization" +date: 2026-10-14 01:47:37 +description: "LLM 선호 최적화를 하나의 KL 정규화 목표로 묶어, 보상 모델과 PPO, AI 피드백, DPO 계열 직접 정렬, 참조 모델 제거, 내시 균형 기반 온라인 학습, GRPO까지 여섯 갈래의 흐름과 보상 해킹, 길이 편향 문제를 계보별로 정리합니다." +categories: ["Paper Surveys", "Finetuning"] +tags: ["Reward-Modeling", "Constitutional-AI", "Reward-Overoptimization", "Nash-Learning", "KL-Regularization", "Alignment"] +cover: /assets/images/finetuning.jpg +use_math: true +--- +## 사람의 비교 한 번에서 출발한 여섯 갈래의 정렬 계보 + +LLM 정렬 방법들은 참조 정책(reference policy) 근처에 머물면서 사람이 선호하는 응답을 늘린다는 하나의 KL 정규화 목표를 공유합니다. 이 목표를 어떻게 근사하느냐에 따라 방법들이 여섯 갈래로 나뉘었습니다. 좋은 응답은 맥락에 따라 달라서 교차 엔트로피 같은 손실로 곧바로 적기 어렵습니다. 그래서 이 분야는 두 응답 중 어느 쪽이 나은지 고른 비교를 학습 신호로 씁니다. + +가상의 예를 하나 들겠습니다. Reddit 글 하나를 프롬프트 $$x$$로 주고 TL;DR 요약을 요청하자 모델이 두 요약을 냈고, 평가자가 나은 쪽을 $$y_w$$, 못한 쪽을 $$y_l$$로 골랐다고 해 봅니다. 이 비교 한 쌍 $$(x, y_w, y_l)$$이 뒤에 나오는 모든 계보의 공통 입력입니다. + +출발점은 표준 RLHF 레시피입니다. DPO 논문은 RLHF를 지도 미세조정(supervised fine-tuning, SFT), 선호 샘플링과 보상 학습, RL 최적화의 세 단계로 정리합니다. 여기서 KL 항은 정책이 보상 모델(reward model)이 믿을 만한 분포를 벗어나거나 모드 붕괴에 빠지는 일을 막습니다. DPO 논문은 이 파이프라인 전체를 대체 대상으로 삼습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). 갈래들을 한 지도에 놓을 때는 DeepSeekMath의 통합 관점이 쓸모 있습니다. 이 논문은 SFT, 거절 샘플링 미세조정(rejection sampling fine-tuning, RFT), DPO, PPO를 데이터 소스, 보상 함수, 알고리즘(그래디언트 계수)의 세 구성 요소로 나눠 비교합니다. 이 틀에서 GRPO는 보상 모델에 기반해 그룹 샘플을 온라인으로 뽑는 방법에 해당합니다 ([Shao et al., 2024](https://arxiv.org/abs/2402.03300)). + +여섯 갈래는 같은 비교 쌍을 무엇으로 바꾸느냐로 갈립니다. + +- **보상 모델과 PPO:** 비교 쌍으로 보상 모델을 학습하고, KL 페널티(KL penalty)를 붙인 RL로 정책을 최적화합니다. +- **AI 피드백(AI feedback):** 비교를 고르는 사람을 원칙 목록과 LLM 판정으로 바꿉니다. +- **닫힌 형태 직접 최적화:** 보상 모델 없이 정책의 로그비로 손실을 씁니다. +- **참조 모델 제거:** 참조 모델이나 별도 SFT 단계를 덜어냅니다. +- **온라인·게임 이론:** 고정된 쌍 대신 현재 정책에서 새로 뽑은 응답 사이의 선호 게임을 풉니다. +- **크리틱 없는 RL:** 같은 질문에 대한 여러 샘플끼리 상대 점수를 매깁니다. + +| 연도 | 논문 | 계보 | 핵심 아이디어 | +| --- | --- | --- | --- | +| 2017 | Deep RL from Human Preferences ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)) | RLHF와 PPO | 궤적 구간 쌍 비교로 학습한 브래들리-테리 보상 예측기 | +| 2019 | Ziegler et al. 2019 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)) | RLHF와 PPO | KL 페널티 보상으로 PPO 미세조정한 사전학습 언어 모델 | +| 2020 | Learning to Summarize ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)) | RLHF와 PPO | SFT·보상 모델·PPO 세 단계 요약 RLHF 레시피 | +| 2022 | InstructGPT ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)) | RLHF와 PPO | 지시 따르기를 위한 표준 3단계 RLHF 파이프라인 | +| 2022 | Anthropic HH-RLHF ([Bai et al., 2022](https://arxiv.org/abs/2204.05862)) | RLHF와 PPO | 반복 온라인 RLHF로 학습한 유용·무해 어시스턴트 | +| 2022 | RM Overoptimization ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)) | RLHF와 PPO | 합성 gold 보상으로 측정한 보상 모델 과최적화 스케일링 법칙 | +| 2022 | Constitutional AI ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)) | AI 피드백 | 헌법 원칙 기반 자기 비평과 AI 선호 라벨 | +| 2023 | RRHF ([Yuan et al., 2023](https://arxiv.org/abs/2304.05302)) | 참조 모델 없는 목적 | 길이 정규화 로그확률 랭킹 손실과 SFT의 결합 | +| 2023 | DPO ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)) | DPO와 일반화 | 정책 로그비를 암묵적 보상으로 쓰는 닫힌 형태 선호 손실 | +| 2023 | Llama 2-Chat ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)) | RLHF와 PPO | 안전·유용성 이중 보상 모델과 거절 샘플링+PPO 반복 | +| 2023 | RLAIF ([Lee et al., 2023](https://arxiv.org/abs/2309.00267)) | AI 피드백 | 기성 LLM 선호 라벨로 대체한 RLHF | +| 2023 | ΨPO/IPO ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)) | DPO와 일반화 | 선호 확률의 비선형 함수 Ψ를 최대화하는 일반 목적과 IPO | +| 2023 | NLHF ([Munos et al., 2023](https://arxiv.org/abs/2312.00886)) | 온라인·게임 이론 | 정규화 선호 모델의 내시 균형을 찾는 미러 디센트 | +| 2024 | KTO ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)) | DPO와 일반화 | 쌍 없는 좋음·나쁨 신호에 대한 전망 이론 가치 함수 손실 | +| 2024 | DeepSeekMath/GRPO ([Shao et al., 2024](https://arxiv.org/abs/2402.03300)) | 크리틱 없는 RL | 가치 모델 대신 그룹 상대 어드밴티지를 쓰는 GRPO | +| 2024 | ORPO ([Hong et al., 2024](https://arxiv.org/abs/2403.07691)) | 참조 모델 없는 목적 | SFT 손실에 더한 오즈비 페널티로 단일 단계 정렬 | +| 2024 | Online IPO ([Calandriello et al., 2024](https://arxiv.org/abs/2403.08635)) | 온라인·게임 이론 | 현재 정책 샘플로 최적화하는 온라인 IPO와 자기 대결 동치 | +| 2024 | SPPO ([Wu et al., 2024](https://arxiv.org/abs/2405.00675)) | 온라인·게임 이론 | 승률에 로그비를 맞추는 자기 대결 곱셈 가중치 갱신 | +| 2024 | RLHF Workflow ([Dong et al., 2024](https://arxiv.org/abs/2405.07863)) | 온라인·게임 이론 | 보상 모델링부터 반복 DPO까지의 온라인 RLHF 레시피 | +| 2024 | SimPO ([Meng et al., 2024](https://arxiv.org/abs/2405.14734)) | 참조 모델 없는 목적 | 길이 정규화 평균 로그우도 보상과 목표 마진 | +| 2024 | DAA Overoptimization ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900)) | DPO와 일반화 | 직접 정렬 알고리즘에서의 과최적화 스케일링 법칙 | +| 2025 | GRPO Effective Loss ([Mroueh, 2025](https://arxiv.org/abs/2503.06639)) | 크리틱 없는 RL | 검증 가능한 보상 아래 GRPO의 가중 대조 손실과 성공률 고정점 | + +## 비교 학습 보상 모델과 KL로 묶인 PPO, 그리고 그 보상의 과최적화 + +사람의 쌍 비교를 브래들리-테리 모델(Bradley-Terry model)로 보상에 옮기고, 그 보상을 KL 페널티가 붙은 PPO로 최적화하는 방식은 Atari와 로봇 제어에서 시작해 SFT→RM→PPO 세 단계 레시피로 굳어졌습니다. 그런데 이 프록시 보상을 너무 세게 밀어붙이면 진짜 목표가 오히려 떨어집니다. 이 현상은 나중에 KL 거리에 대한 함수형과 스케일링 법칙으로 정량화되었습니다. + +### 궤적 구간 비교를 보상으로 바꾸는 브래들리-테리 손실 + +Deep RL from Human Preferences는 보상 함수가 없는 과제에서 출발합니다. 이 방법은 정책과 보상 추정치를 함께 유지하면서 세 과정을 비동기로 돌립니다. 정책은 예측 보상을 최대화하도록 RL로 갱신됩니다. 정책이 만든 궤적에서 뽑은 구간 쌍을 사람이 비교합니다. 보상 예측기는 그 비교에 지도학습으로 맞춥니다. 궤적은 첫 과정에서 둘째 과정으로, 사람의 비교는 둘째에서 셋째로, 보상 파라미터는 셋째에서 다시 첫째로 흐릅니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +![궤적 구간 비교로 보상 예측기를 비동기 학습하고 에이전트가 예측 보상을 최대화하는 구조도](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-1.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +구조도의 핵심은 사람이 보상 값을 직접 매기지 않는 데 있습니다. 사람은 두 구간 중 어느 쪽이 나은지만 고르고, 보상 예측기가 그 비교로부터 학습됩니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). 비교를 보상으로 바꾸는 모델은 다음과 같습니다. + +$$\hat{P}\left[\sigma^{1}\succ\sigma^{2}\right]=\frac{\exp{\sum\hat{r}\left(o^{1}_{t},a^{1}_{t}\right)}}{\exp{\sum\hat{r}\left(o^{1}_{t},a^{1}_{t}\right)}+\exp{\sum\hat{r}\left(o^{2}_{t},a^{2}_{t}\right)}}$$ + +$$\sigma^{1}, \sigma^{2}$$는 두 궤적 구간이고, $$o^{i}_{t}, a^{i}_{t}$$는 구간 $$i$$의 시점 $$t$$ 관측과 행동이며, $$\hat{r}$$은 학습할 보상 예측기입니다. 사람이 $$\sigma^{1}$$을 고를 확률은 구간 안에서 합산한 잠재 보상의 지수에 비례합니다. 저자들은 이를 체스의 Elo 레이팅에 빗댑니다. 두 선수의 Elo 점수 차가 한쪽이 이길 확률을 추정하듯, 두 구간의 예측 보상 차가 사람이 한쪽을 고를 확률을 추정합니다. 학습은 이 예측과 사람 라벨 사이의 교차 엔트로피를 최소화하는 방식으로 이뤄집니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +$$\mathrm{loss}\left(\hat{r}\right)=-\sum_{\left(\sigma^{1},\sigma^{2},\mu\right)\in\mathcal{D}}\mu\left(1\right)\log\hat{P}\left[\sigma^{1}\succ\sigma^{2}\right]+\mu\left(2\right)\log\hat{P}\left[\sigma^{2}\succ\sigma^{1}\right]$$ + +$$\mathcal{D}$$는 비교 데이터 집합이고, $$\mu$$는 두 구간에 대한 사람 라벨입니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). 사람이 고른 구간의 예측 보상이 다른 구간보다 클수록 손실이 작아지므로, 기울기는 두 점수를 그 방향으로 벌립니다. 이 손실에서는 보상의 절대값이 아니라 차이만 의미가 있습니다. + +비교 대신 점수를 직접 회귀하는 방식도 가능합니다. 하지만 연속 제어 과제에서는 비교 예측이 점수 예측보다 훨씬 잘 작동했고, 긴 클립을 비교할 때 클립당 정보량도 훨씬 컸습니다. 보상 예측기는 하나가 아니라 앙상블로 학습합니다. 각 예측기를 $$\mathcal{D}$$에서 복원추출한 $$\left\vert\mathcal{D}\right\vert$$개 삼중쌍으로 따로 학습하고, 결과를 정규화해 평균합니다. 앙상블은 어떤 비교를 사람에게 물을지 정하는 데도 쓰입니다. 구간 쌍을 많이 뽑은 뒤 앙상블 구성원들의 예측 분산이 가장 큰 쌍을 질의합니다. 저자들은 이 질의 선택을 조잡한 근사라고 부르며, 절제 실험에서는 일부 과제의 성능을 오히려 해쳤다고 밝힙니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +### 정책과 함께 움직여야 하는 보상 예측기 + +이 설계에서 가장 중요한 교훈은 보상 학습을 RL 바깥에서 한 번에 끝낼 수 없다는 사실입니다. 보상 예측기를 처음에만 오프라인으로 학습하고 온라인 질의를 끊는 절제 실험이 이를 보여 줍니다. 정책이 바뀌면 방문하는 상태의 분포가 바뀌기 때문에, 고정된 예측기는 보상의 일부만 포착합니다. 그 결과 Pong에서 공을 끝없이 주고받기만 하는 이상 행동이 나왔습니다. 저자들은 사람 피드백이 정적으로 주어지기보다 RL 학습과 얽혀서 제공되어야 한다고 결론짓습니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). 정책이 평가자의 허점을 파고드는 보상 해킹(reward hacking)의 이른 사례이기도 합니다. + +![MuJoCo 과제에서 실제 사람 피드백, 오라클 합성 피드백, 진짜 보상 RL을 진짜 보상 기준으로 비교한 학습 곡선](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-2.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +MuJoCo 결과는 같은 방법을 실제 사람 피드백과 오라클이 주는 합성 피드백으로 각각 돌리고, 진짜 보상으로 RL을 돌린 경우와 함께 과제의 진짜 보상으로 측정합니다. 곡선을 읽을 때는 보상 함수를 한 번도 보지 않은 방법이 진짜 보상 RL에 얼마나 다가가는지를 보면 됩니다. 사람 피드백이 합성 피드백을 넘어선 과제도 있습니다. Ant에서는 사람 피드백이 합성 피드백을 크게 앞섰는데, 저자들은 사람에게 로봇이 "똑바로 서 있는" 궤적을 선호하도록 요청한 것이 유용한 보상 쉐이핑으로 작용한 것으로 봅니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +![Atari 게임에서 사람 피드백, 합성 피드백, 진짜 보상 RL의 진짜 보상 기준 학습 곡선](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-3.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +Atari 결과도 같은 세 조건을 진짜 보상 기준으로 나란히 놓습니다. 진짜 보상이 정의되지 않은 행동도 학습되었습니다. Half-Cheetah가 한 다리로 서서 전진하는 행동은 저자들의 피드백 질의 800개로, 한 시간이 채 안 걸려 학습되었습니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +![MuJoCo 과제에서 앙상블, 온라인 질의, 정규화, 구간 길이 등의 구성 요소를 하나씩 제거했을 때의 성능](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-4.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +절제 그래프는 구성 요소를 하나씩 제거했을 때 MuJoCo 과제에서의 성능을 보여 줍니다. 앞서 말한 오프라인 보상 학습의 실패와 앙상블 기반 질의 선택의 한계가 이 실험에서 드러납니다 ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)). + +### KL 페널티로 초기 정책에 묶인 언어 모델 보상 학습 + +Ziegler 등은 이 보상 학습을 사전학습된 언어 모델로 옮겼습니다. 과제는 긍정 감성 연속 생성, 묘사적 연속 생성, 그리고 TL;DR과 CNN/DM 요약입니다. 절차는 다음과 같습니다. 정책에서 샘플을 뽑아 사람이 그중 최선을 고르게 합니다. 초기 언어 모델 $$\rho$$로 초기화한 보상 모델을 이 선택에 맞춥니다. 그 보상으로 정책 $$\pi$$를 PPO로 학습합니다. 온라인 설정에서는 보상 모델을 주기적으로 다시 학습합니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +![언어 모델의 보상 모델 학습 과정과 정책 학습 과정을 나란히 그린 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-5.png) + +*출처: [Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)* + +도식에서는 보상 모델 학습과 정책 학습이 별개의 과정으로 그려져 있고, 온라인 설정에서는 두 과정이 번갈아 진행됩니다. 보상 모델 손실은 쌍이 아니라 여러 후보 가운데 사람이 고른 하나에 대한 소프트맥스 로그우도입니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +$$\textrm{loss}(r)=\mathbb{E}_{\left(x,\left\{y_{i}\right\}_{i},b\right)\sim S}\left[\log{\frac{e^{r(x,y_{b})}}{\sum_{i}e^{r(x,y_{i})}}}\right]$$ + +$$\left\{y_{i}\right\}_{i}$$는 한 프롬프트 $$x$$에 대한 후보 응답들이고, $$b$$는 사람이 고른 후보의 번호이며, $$S$$는 수집된 선택 데이터입니다. 이 식은 손실이라는 이름과 달리 부호가 붙어 있지 않으므로, 실제로는 이 로그우도를 최대화합니다. 후보가 두 개뿐이면 앞의 브래들리-테리 형태로 돌아갑니다. + +언어 모델에서 새로 생긴 장치가 KL 페널티입니다. PPO는 보상 모델 점수를 그대로 쓰지 않고, 다음의 수정 보상을 최적화합니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +$$R(x,y)=r(x,y)-\beta\log\frac{\pi(y\mid x)}{\rho(y|x)}.$$ + +$$\pi$$는 학습 중인 정책, $$\rho$$는 초기 정책, $$\beta$$는 페널티의 세기입니다. 정책이 초기 정책보다 어떤 응답에 확률을 더 몰아줄수록 그 응답의 보상이 깎입니다. 예를 들어 가상으로 $$\beta=0.1$$일 때 정책이 한 요약에 초기 정책보다 로그 확률 2만큼 더 높은 값을 준다면, 보상 모델 점수에서 0.2가 빠집니다. 저자들은 이 항의 역할을 셋으로 설명합니다. 엔트로피 보너스처럼 작동하고, 정책이 보상 모델이 유효한 범위를 벗어나지 못하게 막으며, 스타일 연속 생성 과제에서는 문장의 일관성과 주제를 지키는 과제 정의의 일부가 됩니다. $$\beta$$는 고정값이 아닙니다. 특정 $$\operatorname{KL}(\pi,\rho)$$ 목표값을 맞추도록 로그 공간 비례 제어기로 동적으로 조정합니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +이 KL 제약 아래 최적 정책은 닫힌 형태로 적을 수 있습니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +$$\pi_{\textrm{opt}}(y\mid x) \displaystyle\propto\rho(y|x)e^{r_{s}(x,y)/\beta}$$ + +$$r_{s}$$는 모의 실험에서 쓴 감성 보상입니다. 최적 정책은 초기 정책에 보상의 지수를 곱한 분포이고, $$\beta$$가 작을수록 보상이 높은 응답 쪽으로 더 날카롭게 쏠립니다. 이 형태는 뒤에 나오는 닫힌 형태 직접 최적화 계보가 출발하는 지점과 같습니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +![초기 정책에서의 KL 거리를 늘릴수록 보상이 오르고 표본의 자연스러움은 떨어지는 모의 감성 실험 결과](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-6.png) + +*출처: [Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)* + +모의 감성 실험은 KL 페널티가 무엇을 교환하는지 보여 줍니다. 정책이 $$\operatorname{KL}(\pi,\rho)$$ 기준으로 초기 정책에서 더 멀어질수록 보상은 높아지지만 표본은 덜 자연스러워집니다. 같은 모의 설정에서는 질의 20k~60k개만으로, 감성 보상을 RL로 직접 최적화한 것에 거의 맞먹는 수준까지 $$r_{s}$$를 최적화했습니다. 실제 사람 평가에서도 효과가 컸습니다. 사람 평가에서 오프라인 비교 5k개로 미세조정한 모델이 제로샷 모델보다 감성 과제에서 88%, 묘사 과제에서 86% 선호되었습니다. 요약에서는 지도학습 뒤 60k 비교로 미세조정한 모델(supervised + 60k fine-tune)이 논문의 자체 모델 가운데 TL;DR ROUGE가 가장 높았습니다(R-1 18.434, R-AVG 12.478). 다만 표에 함께 실린 SOTA 값(TL;DR R-1 22)에는 미치지 못했습니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). + +한계도 이 논문에서 먼저 드러났습니다. 요약처럼 모호한 과제에서는 성실한 라벨러, 저자 자신도 일관되게 비교하기 어려웠고 문제 있는 라벨러를 빨리 걸러내기도 힘들었습니다. 완전 온라인 수집은 소프트웨어와 ML 양쪽의 복잡도, 품질 관리 문제가 커서, 저자들은 오프라인과 온라인 사이의 중간 지점으로 배치 단위 수집을 제안합니다. 보상과 KL 항의 부호가 함께 뒤집힌 버그 사례도 기록되어 있습니다. 모델은 KL 항 때문에 자연스러운 문장을 유지한 채 부정적 감성을 최적화했고, 결국 일관된 문장으로 최악의, 성적으로 노골적인 출력을 냈습니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). KL 페널티가 언어의 자연스러움을 지켜 줄 뿐, 보상의 방향이 옳은지는 보장하지 않는다는 사례입니다. + +### SFT→RM→PPO로 굳어진 세 단계 레시피 + +Learning to Summarize는 이 절차를 세 단계 레시피로 정리했습니다. SFT로 만든 초기 정책에서 시작해 정책 샘플 쌍을 사람에게 비교하게 하고, 보상 모델을 학습한 뒤, 보상 모델의 로짓 출력을 보상으로 삼아 PPO로 정책을 최적화합니다 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)). + +![사람 피드백 수집, 보상 모델 학습, 정책 학습 절차를 단계별로 그린 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-7.png) + +*출처: [Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)* + +도식은 피드백 수집에서 보상 모델 학습, 정책 학습으로 이어지는 흐름을 한 장에 담고 있습니다. 보상 모델 손실은 앞서 세운 비교 쌍과 정확히 같은 모양입니다 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)). + +$$\text{loss}(r_{\theta})=-E_{(x,y_{0},y_{1},i)\sim D}[\log(\sigma(r_{\theta}(x,y_{i})-r_{\theta}(x,y_{1-i})))]$$ + +$$y_{0}, y_{1}$$은 같은 Reddit 글 $$x$$에 대한 두 요약이고, $$i$$는 사람이 고른 쪽의 번호, $$\sigma$$는 시그모이드, $$r_{\theta}$$는 보상 모델입니다. PPO 보상도 Ziegler 등의 KL 수정 보상과 같은 형태이며, 초기 정책 자리에 SFT 정책 $$\pi^{\text{SFT}}$$가 들어갑니다. KL 항의 역할도 Ziegler 등과 같습니다. PPO의 가치 함수(value function)는 정책과 분리된 Transformer이며 보상 모델로 초기화합니다 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)). + +![TL;DR 데이터셋에서 모델 크기별로 사람이 모델 요약을 사람이 쓴 참조 요약보다 선호한 비율](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-8.png) + +*출처: [Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)* + +주요 결과는 모델 크기별로 사람이 모델 요약을 사람이 쓴 참조 요약보다 선호한 비율입니다. 오차 막대는 1 표준오차입니다. 이 그래프에서 볼 것은 사람 피드백 모델과 지도학습 기준선 사이의 격차가 모델 크기 축 전반에 걸쳐 이어지는지입니다. 보상 모델 자체의 스케일링도 측정되었습니다. 학습 데이터를 두 배로 늘리면 보상 모델 검증 정확도가 약 1.1% 오르고, 모델 크기를 두 배로 늘리면 약 1.8% 오릅니다. TL;DR로 학습한 정책은 추가 학습 없이 CNN/DM 뉴스 요약으로 옮겨 갔습니다. 6.7B 사람 피드백 모델은 훨씬 짧은 요약을 내면서도, CNN/DM 참조 요약으로 미세조정한 6.7B 모델에 거의 필적했습니다 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)). + +InstructGPT는 로봇·Atari의 RLHF와 요약 RLHF를 이어받아, 넓은 언어 과제 분포에 RLHF를 직접 적용한 작업입니다. 파이프라인은 라벨러 시연으로 하는 SFT, 출력 비교로 하는 보상 모델(RM) 학습, RM 보상을 PPO로 최적화하는 단계의 셋으로 이뤄집니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +![지도 미세조정, 보상 모델 학습, PPO 강화학습으로 이어지는 InstructGPT의 세 단계 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-9.png) + +*출처: [Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)* + +이 도식이 지금도 RLHF를 설명할 때 가장 자주 인용되는 그림입니다. 단계 (1)이 SFT, (2)가 RM 학습, (3)이 RM에 대한 PPO 강화학습입니다. 비교 수집 방식은 Learning to Summarize와 다릅니다. 라벨러는 한 프롬프트에 대한 응답 $$K$$개를 한꺼번에 순위 매기고, 손실은 그 순위에서 나오는 모든 쌍을 평균합니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +$$\operatorname{loss}\left(\theta\right)=-\frac{1}{% raw %}{{K\choose 2}}{% endraw %}E_{\left(x,y_{w},y_{l}\right)\sim D}\left[\log\left(\sigma\left(r_{\theta}\left(x,y_{w}\right)-r_{\theta}\left(x,y_{l}\right)\right)\right)\right]$$ + +$${K\choose 2}$$는 응답 $$K$$개에서 나오는 쌍의 수입니다. 같은 프롬프트에서 나온 쌍들은 서로 상관되어 있습니다. 이 쌍들을 데이터셋에 섞어 따로따로 학습하면 한 epoch 만에 과적합되었고, 그래서 저자들은 한 프롬프트의 모든 비교를 하나의 배치 원소로 학습합니다. 이렇게 하면 완성문마다 순전파를 한 번만 해도 됩니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +RL 단계의 목적함수에는 항이 하나 더 붙습니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +$$\begin{aligned}\operatorname{objective}\left(\phi\right)=&E_{\left(x,y\right)\sim D_{\pi_{\phi}^{\mathrm{RL}}}}\left[r_{\theta}(x,y)-\beta\log\left(\pi_{\phi}^{\mathrm{RL}}(y\mid x)/\pi^{\mathrm{SFT}}(y\mid x)\right)\right]+\\&\gamma E_{x\sim D_{\textrm{pretrain}}}\left[\log(\pi_{\phi}^{\mathrm{RL}}(x))\right]\end{aligned}$$ + +$$\pi_{\phi}^{\mathrm{RL}}$$은 학습 중인 정책, $$D_{\textrm{pretrain}}$$은 사전학습 분포, $$\gamma$$는 사전학습 로그우도 항의 계수입니다. $$\gamma>0$$인 변형을 PPO-ptx라고 부릅니다. 환경은 밴딧입니다. 무작위 프롬프트를 제시하고, 응답이 끝나면 RM 보상을 주고 에피소드가 끝납니다. 저자들은 RM 과최적화를 완화하려고 SFT 모델에 대한 토큰별 KL 페널티를 더하고, 가치 함수를 RM으로 초기화합니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +![API 프롬프트 분포에서 각 모델의 출력이 175B SFT 모델보다 선호된 비율을 비교한 사람 평가](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-10.png) + +*출처: [Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)* + +사람 평가 그래프는 API 프롬프트에서 각 모델의 출력이 SFT 기준 모델 출력보다 얼마나 자주 선호되었는지를 보여 줍니다. 1.3B PPO-ptx 모델의 출력이 175B GPT-3보다 선호되었습니다. 파라미터 수가 100배 적은 모델이 이긴 결과입니다. TruthfulQA에서도 PPO 모델은 GPT-3보다 진실하고 유익한 출력을 냈는데, 개선 폭은 작지만 유의했습니다. 비용 측면에서 175B SFT 모델 학습에는 4.9 petaflops/s-days, 175B PPO-ptx 모델 학습에는 60 petaflops/s-days가 들어, GPT-3의 3,640 petaflops/s-days에 비하면 작은 비용입니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +![KL 보상 계수에 따른 공개 NLP 데이터셋 평가 결과](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-11.png) + +*출처: [Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)* + +사전학습 혼합 항이 왜 필요한지는 공개 NLP 데이터셋 결과에서 드러납니다. KL 계수를 키워도 DROP과 SQuAD에서 생긴 성능 회귀는 완전히 사라지지 않았습니다. 반면 사전학습 혼합 계수는 그 회귀를 되돌리면서 검증 보상 손실도 최소화했습니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)). + +### 반복 수집과 다중 보상 모델로 확장된 레시피 + +Anthropic HH-RLHF는 앞서 Deep RL from Human Preferences(Christiano 등)가 강조한 온라인 피드백을 언어 모델 규모에서 다시 다뤘습니다. 그 시점의 최선 RLHF 정책으로 크라우드워커 비교 데이터를 새로 모으고, 기존 데이터와 섞어 새 선호 모델(PM)과 새 정책을 다시 학습하는 과정을 반복합니다. 저자들의 목적은 점수가 높은 영역에서 PM의 보정이 부족한 문제를 해결하는 것이었습니다 ([Bai et al., 2022](https://arxiv.org/abs/2204.05862)). + +![같은 크기의 데이터와 같은 하이퍼파라미터로 학습한 두 52B RLHF 실행의 크라우드워커 Elo 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-12.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2204.05862)* + +이 비교는 데이터 크기와 하이퍼파라미터를 같게 맞춘 두 RLHF 실행을 놓고 크라우드워커 Elo를 잽니다. 한쪽은 기본 데이터셋으로, 다른 쪽은 기본·거절 샘플링·온라인 데이터를 섞은 혼합으로 학습했고, 크라우드워커들은 반복 온라인 모델을 선호했습니다. 유용성(helpfulness)만 학습한 이 통제 실험에서, 저자들은 성능 향상이 데이터 양이나 하이퍼파라미터 차이 때문이 아니라 온라인 학습 덕분이라고 결론짓습니다. 같은 논문은 RLHF 도중 PM 점수가 정책과 초기 정책 사이 KL의 제곱근에 대략 선형으로 비례한다고 관찰합니다. 저자들은 이 관찰이 대부분의 학습이 초기 정책에서 크게 벗어나지 않는 작은 변화 영역에서 일어난다는 뜻이라고 해석합니다 ([Bai et al., 2022](https://arxiv.org/abs/2204.05862)). + +Llama 2-Chat은 이 레시피를 대규모 제품 수준으로 확장했습니다. 사전학습한 Llama 2에서 SFT로 초기 Llama 2-Chat을 만들고, 이후 RM 학습, 거절 샘플링, PPO를 반복하는 RLHF로 다듬습니다 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)). + +![사전학습, 지도 미세조정, 보상 모델 학습·거절 샘플링·PPO를 반복하는 Llama 2-Chat 학습 파이프라인](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-13.jpg) + +*출처: [Touvron et al., 2023](https://arxiv.org/abs/2307.09288)* + +InstructGPT의 세 단계 도식과 비교하면, 세 번째 단계가 한 번으로 끝나지 않고 거절 샘플링과 PPO가 함께 돌아가는 반복 고리로 바뀐 것이 눈에 띕니다. 보상 모델 손실에는 마진이 들어갑니다 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)). + +$$\mathcal{L}_{\text{ranking}}=-\text{log}(\sigma(r_{\theta}(x,y_{c})-r_{\theta}(x,y_{r})-m(r)))$$ + +$$y_{c}$$와 $$y_{r}$$은 선택된 응답과 거절된 응답이고, $$m(r)$$은 라벨러가 매긴 선호 등급에 따른 마진입니다. 차이가 뚜렷한 쌍일수록 마진이 커서, 보상 모델은 그런 쌍의 점수를 더 크게 벌리도록 학습됩니다. 보상 모델은 하나가 아니라 둘입니다. 안전과 유용성 사이의 긴장 때문에 두 목표를 각각 맡는 RM을 따로 학습하는 편이 보상 모델링을 쉽게 만들었습니다. PPO 단계에서는 두 RM을 조합한 보상에 logit 변환과 화이트닝을 거친 뒤, 초기 정책 $$\pi_{0}$$에 대한 KL 페널티 $$\beta D_{KL}(\pi_{\theta}(g\mid p)\parallel\pi_{0}(g\mid p))$$를 빼서 보상 해킹을 줄입니다 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)). + +거절 샘플링은 70B 모델에서만 합니다. 프롬프트마다 응답 $$K$$개를 뽑아 RM 점수가 가장 높은 답으로 미세조정하고, 더 작은 모델들은 이 데이터로 학습해 큰 모델의 능력을 증류받습니다. 뒤 반복에서는 이전 모든 반복의 상위 샘플을 함께 써서 망각을 완화했습니다 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)). + +![샘플 수 N을 1에서 100까지 늘릴 때 학습 프롬프트 평균 최대 보상과 중앙 보상](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-14.png) + +*출처: [Touvron et al., 2023](https://arxiv.org/abs/2307.09288)* + +$$N$$개 샘플 가운데 최대 보상과 중앙 보상의 차이가 거절 샘플링으로 얻을 수 있는 잠재적 이득을 나타냅니다 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)). 샘플을 늘릴수록 이 간격이 어떻게 벌어지는지가 그래프의 요점입니다. 다만 여기서 말하는 이득은 RM 점수 기준이며, 그 점수가 진짜 품질을 얼마나 따라가는지는 별개의 문제입니다. + +### 프록시 보상을 따라가다 떨어지는 진짜 보상 + +KL 페널티가 막으려던 위험은 Learning to Summarize에서 이미 곡선으로 확인되었습니다. + +![보상 모델 최적화 정도에 따른 사람 선호 점수 변화](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-15.png) + +*출처: [Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)* + +이 그래프의 가로축은 보상 모델에 대한 최적화 정도이고, 세로축은 선호 점수입니다. 보상 모델을 상대로 최적화하면 처음에는 요약이 좋아지지만, 결국 과적합해서 더 나쁜 요약이 나옵니다. 최적화를 계속하면 진짜 선호가 보상 모델의 예측보다 처지기 시작하고, 마지막에는 보상 모델이 사람 선호와 역상관을 보입니다 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)). 이것이 보상 과최적화(reward overoptimization)입니다. + +RM Overoptimization은 이 현상을 Goodhart 법칙의 사례로 보고 정량화합니다. 사람 라벨로 매번 진짜 목표를 재는 일은 비용이 너무 크기 때문에, 저자들은 고정된 "gold" RM이 사람 라벨 역할을 대신하는 합성 설정을 씁니다. 합성 비교는 결정적으로 만듭니다. 두 궤적 중 gold RM 점수가 높은 쪽을 항상 선호로 표시하고, 이 데이터로 학습한 RM이 프록시가 됩니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). 정책은 프록시를 최적화하고, 평가는 gold로 합니다. + +진짜 보상의 변화는 초기 정책에서 잰 거리 $$d=\sqrt{\text{KL}}$$의 함수로 적습니다. 최적화 방식마다 함수형이 다릅니다. RL에서는 다음 형태가 잘 맞습니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). + +$$R_{\text{RL}}\left(d\right)={d}\left(\alpha_{\text{RL}}-\beta_{\text{RL}}\log{d}\right)$$ + +Best-of-$$n$$(BoN) 샘플링에서는 이차식이 맞습니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). + +$$R_{\text{bo}n}\left(d\right)=d\left(\alpha_{\text{bo}n}-\beta_{\text{bo}n}d\right)$$ + +$$R$$은 gold 보상이고, $$\alpha$$는 초반 상승 기울기, $$\beta$$는 과최적화로 꺾이는 세기를 정하는 계수입니다. 여기서 $$\beta$$는 KL 페널티 계수가 아니라 적합 계수입니다. 두 식 모두 $$d$$가 작을 때는 오르다가 어느 지점에서 정점을 찍고 내려갑니다. RL 식은 $$\log d$$ 항 때문에 BoN의 이차식보다 꺾이는 속도가 느립니다. + +![정책 크기를 1.2B로 고정하고 보상 모델 크기를 바꾼 BoN과 RL 실험의 gold 보상 곡선과 적합 함수](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-16.png) + +*출처: [Gao et al., 2022](https://arxiv.org/abs/2210.10760)* + +이 실험에서는 InstructGPT 환경에서 정책 크기를 고정하고 RM 크기만 바꿨습니다. 학습된 프록시를 최적화할 때 gold 보상은 처음에는 오르다가 나중에는 떨어지고, 앞의 함수형이 곡선을 잘 따라갑니다. 계수는 RM 크기에 따라 매끄럽게 변합니다. RM 크기를 키우면 $$\alpha$$와 $$\beta$$가 로그 추세로 바뀝니다. RL에서는 모든 RM 크기에서 $$\alpha_{\text{RL}}$$을 고정해도 되고, $$\beta_{\text{RL}}$$만 깔끔한 스케일링 곡선을 그립니다. 그래서 최대 gold 점수를 미리 예측할 수 있습니다. 데이터 쪽에는 문턱이 있습니다. 모든 RM 크기에서 비교 약 2,000개 미만으로 학습한 RM은 무작위에 가까웠고, 그보다 데이터가 많아질수록 gold 점수가 좋아지고 goodharting은 줄었습니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). + +![정책과 보상 모델을 1.2B로 고정하고 KL 페널티를 바꾼 RL 실험의 프록시 보상과 gold 보상](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-17.png) + +*출처: [Gao et al., 2022](https://arxiv.org/abs/2210.10760)* + +KL 페널티를 바꾼 실험에서는 점선이 프록시 보상, 실선이 gold 보상이며, 페널티가 gold 점수에 미치는 효과는 조기 종료와 같았습니다. 이 RL 설정에서 KL 페널티는 gold 점수를 더 일찍 수렴시킬 뿐, KL 대비 gold 보상의 프론티어 자체는 바꾸지 못했습니다. 저자들은 이 결론이 하이퍼파라미터에 민감할 수 있다고 덧붙입니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). InstructGPT가 과최적화 완화책으로 넣은 토큰별 KL 페널티는, 이 결과에 따르면 같은 KL 거리에서 더 나은 정책을 만들기보다 정책이 덜 멀리 가게 하는 장치에 가깝습니다 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155))([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). 정책 크기의 효과는 제한적으로만 확인되었습니다. 정책이 클수록 최적화로 얻는 이득은 작았지만, gold 점수가 최대가 되는 KL과 프록시-gold 격차는 두 정책 크기에서 거의 같았습니다. 이 탐색은 정책 크기 두 개에 한정되어 있습니다 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). + +## 원칙 목록과 AI 라벨로 대체한 무해성 피드백 + +사람 선호 라벨을 모델이 만든 비평과 비교로 바꿔도 RLHF는 작동했습니다. Constitutional AI는 무해성(harmlessness) 라벨을 사람에게서 받지 않고 무해한 어시스턴트를 학습했고, RLAIF는 기성 LLM의 선호 라벨이 요약과 대화에서 사람 라벨과 대등한 결과를 낸다는 것을 보였습니다. + +### 사람 감독을 원칙 목록 하나로 줄인 Constitutional AI + +Constitutional AI에서 사람이 감독하는 대상은 규칙이나 원칙의 목록, 즉 "헌법"뿐입니다. 저자들은 이 원칙만으로 자기 비평·수정을 거치는 지도학습 단계와 AI 선호에 기반한 RL 단계를 돌려, 무해하면서도 회피적이지 않은 어시스턴트를 학습합니다. 파이프라인 자체는 앞서 본 Anthropic HH-RLHF를 그대로 유지합니다. 사람 라벨 가운데 무해성 라벨만 AI 라벨로 바꿉니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +![지도학습 단계(비평→수정→미세조정)와 RL 단계(AI 비교 평가→선호 모델→RL)로 이뤄진 Constitutional AI 전체 과정 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-18.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2212.08073)* + +도식의 위쪽 흐름이 지도학습 단계이고 아래쪽이 RL 단계입니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). RL 단계에서 사람 비교가 들어가던 자리에 AI 비교 평가가 들어가 있습니다. + +지도학습 단계(SL-CAI)는 레드팀 프롬프트에서 출발합니다. 모델이 자기 응답을 원칙에 비추어 비평(critique)하고, 그 비평에 따라 응답을 수정(revision)합니다. 이 과정을 여러 번 되풀이하는데, 매번 원칙을 무작위로 뽑습니다. 그 뒤 모든 수정 단계에서 나온 응답으로 사전학습 모델을 미세조정합니다. 유용성을 최대한 지키려고 크라우드워커가 모은 유용성 프롬프트에 대한 helpful RLHF 모델의 응답도 학습 데이터에 섞습니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +비평 단계를 빼고 곧바로 수정하게 해도 큰 모델에서는 무해성 점수에 눈에 띄는 차이가 없었습니다. 작은 모델에서는 비평을 거친 수정이 더 나은 점수를 받았습니다. 비평은 부정확하거나 과장된 경우가 잦았지만, 저자들은 투명성을 이유로 비평을 거치는 수정을 택했습니다. 수정 횟수를 늘리면 무해성 PM 점수는 단조롭게 오르고 순수 유용성 점수는 떨어졌습니다. 원칙의 수를 늘려도 PM 점수는 오르지 않았습니다. 저자들은 원칙이 많으면 응답이 다양해져 RL 단계의 탐색에 도움이 될 것으로 기대합니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +### 소프트 확률 라벨과 그 클램핑 + +RL 단계(RL-CAI)에서는 피드백 모델이 비교 라벨을 만듭니다. 한 프롬프트에 대한 두 응답을 (A)와 (B)로 제시하고, 비교마다 무작위로 뽑은 원칙에 따라 어느 쪽이 나은지 묻습니다. 모델이 (A)와 (B)에 주는 로그 확률을 정규화한 값이 선호 모델링 예제의 타깃이 됩니다. 이 라벨로 PM을 학습하고 RL을 돌리는 과정은 RLHF와 같습니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). 이 라벨은 0과 1 중 하나로 정해지지 않고 확률값으로 남는 소프트 타깃입니다. + +체인 오브 소트(chain-of-thought, CoT)로 추론하게 한 피드백은 이 확률이 극단으로 쏠렸습니다. 그대로 쓰면 RL-CAI가 극단적인 응답을 학습했고, 그래서 저자들은 확률을 40-60% 범위로 클램핑합니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). 예를 들어 가상의 CoT 라벨이 (A)에 0.97을 준다면, 클램핑을 거친 타깃은 0.6이 됩니다. + +![유용성·정직성·무해성을 평가하는 438개 이진 비교 문항에서 사람 피드백으로 학습한 선호 모델과 사전학습 언어 모델(체인 오브 소트 포함)의 성능 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-19.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2212.08073)* + +AI가 라벨러 역할을 할 수 있는지는 이 HHH 비교에서 가늠할 수 있습니다. 비교 대상은 사람 피드백으로 학습한 선호 모델과, 별도 학습 없이 객관식으로 답하는 사전학습 언어 모델입니다. 체인 오브 소트 추론을 붙이면 사전학습 모델의 성능이 크게 오릅니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +### 회피하지 않으면서 더 무해해진 정책 + +CoT 버전은 유용성이 약간 낮은 대신 무해성이 약간 높았습니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +![크라우드워커 비교로 판정한 유용성 Elo와 무해성 Elo를 RL 학습 시퀀스 수에 따라 그린 곡선](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-20.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2212.08073)* + +두 곡선을 함께 놓으면, RL 학습이 진행되는 동안 RL-CAI의 무해성 Elo가 높게 올라가도 유용성 Elo는 크게 깎이지 않습니다. 응답의 성격도 달랐습니다. 기존 HH RLHF 모델은 "답할 수 없다"는 식의 회피 응답이 잦았지만, RL-CAI는 거의 회피하지 않았고 대부분의 레드팀 프롬프트에 이유를 설명하는 섬세하고 무해한 응답을 했습니다. 다만 0~4점 척도의 절대 유해성 점수에는 작업자마다 다른 채점 편향이 섞여 있어 보정되지 않았을 수 있고, 높은 PM 점수 영역도 보정이 덜 되어 있다고 저자들은 경고합니다. 저자들은 새 AI 피드백으로 PM을 갱신해 정책 분포를 따라가게 하면, 반복 온라인 학습도 AI 감독으로 자동화할 수 있다고 전망합니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +### 요약과 대화로 넓힌 RLAIF + +RLAIF는 무해성에 그치지 않고 일반 과제로 범위를 넓힙니다. 기성 LLM이 만든 선호 라벨로 보상 모델을 학습해 요약, 도움이 되는 대화, 무해한 대화 생성에서 RLHF와 대등한 성능을 냈습니다 ([Lee et al., 2023](https://arxiv.org/abs/2309.00267)). + +![위쪽 RLAIF와 아래쪽 RLHF 파이프라인을 나란히 놓은 비교 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-21.png) + +*출처: [Lee et al., 2023](https://arxiv.org/abs/2309.00267)* + +두 파이프라인을 위아래로 맞대어 보면 바뀌는 곳은 선호 라벨의 출처 하나뿐입니다. 보상 모델을 아예 빼는 변형도 있습니다. d-RLAIF는 RL 중에 LLM에서 직접 보상을 받습니다. PaLM 2 XS를 라벨러로 쓴 요약 과제의 사람 평가에서 d-RLAIF는 SFT 대비 74% 승률을 기록했습니다. 저자들은 LLM 라벨링 비용이 사람 주석보다 10배 이상 저렴하다고 추정합니다. 사람 피드백과 AI 피드백을 결합한 경우는 사람 피드백만 쓴 경우보다 나아지지 않았습니다 ([Lee et al., 2023](https://arxiv.org/abs/2309.00267)). + +이 글은 두 논문의 세부 결과를 이렇게 읽습니다. AI 라벨이 사람 라벨을 대신할 수 있는지는 라벨러가 고르는 답의 방향만큼이나 확률이 얼마나 보정되어 있는지에 달려 있습니다. 클램핑이 필요했던 CoT 확률과 보정이 덜 된 높은 PM 점수 모두 이 보정 문제를 가리킵니다 ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)). + +## 보상 모델을 지운 닫힌 형태 정책 손실과 그 일반화, 그리고 남은 과최적화 + +DPO는 KL 제약 보상 최대화의 최적 정책을 뒤집어 보상을 정책 로그비로 표현했고, 그 결과 RL 루프 없이 이진 교차 엔트로피 하나로 정렬을 학습합니다. 후속 연구는 이 손실을 두 방향으로 넓혔습니다. ΨPO/IPO는 결정적 선호에서 생기는 과적합을 다뤘고, KTO는 쌍이 없는 신호로 일반화했습니다. 그럼에도 직접 정렬 알고리즘 역시 과최적화를 피하지 못합니다. + +### 최적 정책을 뒤집어 얻은 암묵적 보상 + +DPO의 출발점은 앞서 본 RLHF 세 단계의 마지막 목적식입니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +$$\max_{\pi_{\theta}}\mathbb{E}_{x\sim\mathcal{D},y\sim\pi_{\theta}(y\mid x)}\bigl[r_{\phi}(x,y)\bigr]-\beta\mathbb{D}_{\textrm{KL}}\bigl[\pi_{\theta}(y\mid x)\mid\mid\pi_{\text{ref}}(y\mid x)\bigr]$$ + +$$r_{\phi}$$는 학습된 보상 모델이고, $$\pi_{\text{ref}}$$는 참조 정책이며, $$\beta$$는 참조 정책에서 멀어지는 정도를 억제하는 계수입니다. 이 문제의 최적 정책은 참조 정책에 지수 보상을 곱한 닫힌 형태가 되고, 이 형태는 Ziegler 등이 이미 정리해 두었습니다 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)). DPO는 이 관계를 반대 방향으로 읽어 보상을 정책으로 표현합니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +$$r(x,y)=\beta\log\frac{\pi_{r}(y\mid x)}{\pi_{\text{ref}}(y\mid x)}+\beta\log Z(x)$$ + +$$\pi_{r}$$는 보상 $$r$$에 대한 최적 정책이고, $$Z(x)$$는 프롬프트마다 정해지는 분배함수입니다. $$Z(x)$$는 직접 계산하기 어렵지만 응답 $$y$$와 무관합니다. 그래서 브래들리-테리 모델처럼 같은 프롬프트의 두 응답 사이에서 보상 차이만 쓰면 이 항이 상쇄됩니다. 저자들은 이를 변수 변환으로 설명합니다. 보상에서 최적 정책으로 가는 해석적 매핑을 이용해 보상 함수에 대한 손실을 정책에 대한 손실로 바꾸고, 그러면 정책 네트워크 하나가 언어 모델이자 암묵적 보상 모델이 됩니다. 이렇게 파라미터화해도 표현력은 줄지 않습니다. 완만한 가정 아래 Plackett-Luce 모델, 특히 브래들리-테리 모델과 일치하는 모든 보상 클래스를 $$\beta\log\pi/\pi_{\text{ref}}$$ 형태로 나타낼 수 있다는 정리가 있습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +이 보상을 브래들리-테리 우도에 넣으면 DPO 손실이 됩니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +$$\mathcal{L}_{\text{DPO}}(\pi_{\theta};\pi_{\text{ref}})=-\mathbb{E}_{(x,y_{w},y_{l})\sim\mathcal{D}}\left[\log\sigma\left(\beta\log\frac{\pi_{\theta}(y_{w}\mid x)}{\pi_{\text{ref}}(y_{w}\mid x)}-\beta\log\frac{\pi_{\theta}(y_{l}\mid x)}{\pi_{\text{ref}}(y_{l}\mid x)}\right)\right]$$ + +$$y_{w}$$는 선호된 응답, $$y_{l}$$은 선호되지 않은 응답이고, $$\sigma$$는 로지스틱 함수입니다. 손실 안에는 별도의 보상 모델도, 정책 샘플링도 없습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +![보상 모델을 먼저 학습한 뒤 RL을 돌리는 RLHF와, 선호 데이터에 단일 이진 교차 엔트로피 목적을 바로 최적화하는 DPO를 나란히 놓은 도식](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-22.png) + +*출처: [Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)* + +두 흐름을 비교하면 DPO 쪽에서 보상 모델 학습과 RL 루프가 통째로 빠져 있습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +TL;DR 요약 비교 한 쌍 $$(x, y_w, y_l)$$에 이 손실을 적용해 보겠습니다. 예를 들어 가상의 숫자로 $$\beta=0.1$$을 두고, 현재 정책이 참조 정책보다 선호 요약 $$y_w$$의 로그확률을 2만큼 높였고 비선호 요약 $$y_l$$의 로그확률은 1만큼 낮췄다고 합시다. 그러면 시그모이드 안의 값은 $$0.1\times(2-(-1))=0.3$$이고, $$\sigma(0.3)\approx0.574$$이므로 이 쌍의 손실은 약 0.554입니다. 손실을 미분하면 각 쌍에는 암묵적 보상 $$\hat{r}_{\theta}=\beta\log\pi_{\theta}/\pi_{\text{ref}}$$의 차이를 뒤집어 넣은 가중치 $$\sigma(\hat{r}_{\theta}(x,y_l)-\hat{r}_{\theta}(x,y_w))$$가 곱해집니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). 같은 가상 예에서 이 가중치는 $$\sigma(-0.3)\approx0.426$$입니다. 만약 $$y_l$$을 오히려 높게 매기고 있었다면 이 가중치는 0.5를 넘습니다. + +이 가중치가 DPO 기울기의 핵심입니다. 기울기는 선호 응답의 가능도를 올리고 비선호 응답의 가능도를 내리는데, 이때 각 예시는 암묵적 보상이 순서를 얼마나 틀리게 매겼는지에 비례하는 가중치를 받습니다. 저자들은 이 가중치를 뺀 단순한 버전이 모델을 퇴화시킬 수 있다고 보고합니다. 저자들은 PPO의 불안정성도 같은 관점에서 설명합니다. 액터-크리틱 방식은 참조 정책의 소프트 가치 함수에 해당하는 정규화 항이 없으면 정책 기울기의 분산이 커집니다. DPO로 재파라미터화한 보상은 이런 베이스라인이 필요 없습니다. 학습 절차는 오프라인 선호 데이터셋을 만들고 이 손실을 최소화하는 것이 전부입니다. $$\pi_{\text{ref}}$$는 지도 미세조정(supervised fine-tuning, SFT) 모델로 초기화하고, SFT 모델이 없으면 선호 응답의 우도를 최대화해 직접 만듭니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +### 보상-KL 프런티어와 대화 승률 + +DPO 논문의 IMDb 제어 감성 생성 설정은 정답 보상을 계산할 수 있어서, 저자들은 여러 실행을 모아 보상-KL 프런티어를 그렸습니다. DPO의 보상/KL 교환은 PPO를 엄밀하게 지배했고, 정답 보상에 직접 접근하는 PPO-GT보다도 나은 프런티어를 얻었습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +![참조 정책 대비 KL에 따른 기대 보상 프런티어와 TL;DR 요약 승률](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-23.png) + +*출처: [Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)* + +같은 KL 예산에서 보상이 더 높다는 결과는 RL 루프를 빼도 최적화 정확도가 떨어지지 않는다는 해석을 뒷받침합니다. + +![Anthropic-HH 단일 턴 대화에서 GPT-4가 판정한 방법별 승률과, 학습 중 여러 샘플링 온도에서의 승률 변화](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-24.png) + +*출처: [Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)* + +대화 과제에서 기준선은 데이터셋에 들어 있는 선호 응답입니다. GPT-4 판정 승률로 이 기준선을 넘어선 방법은 DPO 하나였고, 개선 폭은 학습 과정과 여러 샘플링 온도에서 안정적으로 유지되었습니다. DPO는 비용이 큰 Best-of-128과 비슷하거나 더 나았습니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). + +### 결정적 선호에서 사라지는 KL 정규화: ΨPO와 IPO + +ΨPO/IPO 논문은 RLHF가 두 가지 근사에 기대고 있다고 봅니다. 하나는 쌍별 선호를 점별 보상으로 바꾸는 근사이고, 다른 하나는 보상 모델이 분포 밖으로도 일반화한다는 가정입니다. DPO가 우회하는 것은 이 중 두 번째뿐입니다. 저자들은 첫 번째 근사까지 걷어내기 위해 선호 확률 자체를 목적에 넣습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +$$\max_{\pi}\mathop{\mathbb{E}}_{\begin{subarray}{c}x\sim\rho\\ +y\sim\pi(.\mid x)\\ +y^{\prime}\sim\mu(.|x)\end{subarray}}[\Psi(p^{*}(y\succ y^{\prime}\mid x))]-\tau D_{\text{KL}}(\pi\;||\;\pi_{\text{ref}})$$ + +$$p^{*}(y\succ y^{\prime}\mid x)$$는 $$y$$가 $$y^{\prime}$$보다 선호될 실제 확률이고, $$\mu$$는 비교 대상 응답을 뽑는 분포, $$\rho$$는 프롬프트 분포, $$\tau$$는 KL 정규화 계수, $$\Psi$$는 비감소 함수입니다. 이 목적은 선호 확률의 비선형 함수를 최대화하는 일과 참조 정책 근처에 머무는 일을 저울질하며, 보상 모델링이나 브래들리-테리 가정 없이 RLHF와 DPO를 특수한 경우로 포함합니다. $$\Psi$$가 로짓 함수이고 브래들리-테리 모델이 성립하면 ΨPO, RLHF, DPO의 최적 정책은 같습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +문제는 이 로짓에서 나옵니다. 선호가 결정적일수록 KL 정규화가 점점 약해집니다. 데이터가 유한하면 상황은 더 나빠집니다. 실제 선호가 0.8이어도 데이터 몇 개로 추정하면 1이 나올 수 있고, 그러면 경험적 최적 정책은 $$\tau$$를 얼마로 두든 $$y^{\prime}$$의 확률을 0으로 만듭니다. TL;DR 비교 한 쌍이 데이터에 한 번만 등장하는 경우가 바로 이 상황입니다. 관측된 선호는 1이 되고, DPO는 그 한 번의 비교에 맞춰 $$y_l$$을 끝까지 밀어냅니다. RLHF에서는 보상 모델이 과소적합되면서 정책이 참조 정책 쪽으로 정규화되는 효과가 생기는데, 보상 모델을 학습하지 않는 DPO에는 이 정규화가 없습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +IPO는 $$\Psi$$를 항등함수로 둡니다. 그러면 로짓이 발산할 일이 없습니다. 저자들은 최적 정책이 만족해야 하는 조건을 근 찾기 문제로 세운 뒤, 이를 하나의 제곱 손실로 바꿉니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +$$L(\pi)=\mathop{\mathbb{E}}_{y,y^{\prime}\sim\mu}\left[\left(h_{\pi}(y,y^{\prime})-\frac{p^{*}(y\succ\mu)-p^{*}(y^{\prime}\succ\mu)}{\tau}\right)^{2}\right]$$ + +$$h_{\pi}(y,y^{\prime})=\log\frac{\pi(y)\,\pi_{\text{ref}}(y^{\prime})}{\pi(y^{\prime})\,\pi_{\text{ref}}(y)}$$는 두 응답의 정책 대 참조 정책 로그비 차이이고, $$p^{*}(y\succ\mu)$$는 $$y$$가 $$\mu$$에서 뽑은 응답을 이길 확률입니다. 즉 이 손실은 로그비 차이를 선호 차이를 $$\tau$$로 나눈 값에 맞춥니다. 이 식에는 아직 모르는 $$p^{*}$$가 들어 있습니다. 저자들은 기록된 선호의 지시변수 $$I(y,y^{\prime})$$로 이를 대신해, 데이터셋의 쌍과 선호 기록만으로 비편향 추정할 수 있는 손실을 얻습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). 여기서 $$I(y,y^{\prime})$$는 평균이 $$p^{*}$$인 베르누이 변수입니다. + +$$\mathop{\mathbb{E}}_{y,y^{\prime}\sim\mu}\Big[\big(h_{\pi}(y,y^{\prime})-\tau^{-1}I(y,y^{\prime})\big)^{2}\Big]$$ + +DPO가 로그비 차이를 무한히 키우려 한다면, IPO는 그 차이를 유한한 목표값 $$\tau^{-1}$$에 회귀시킵니다. 행동이 세 개뿐인 장난감 실험이 이 차이를 직접 보여 줍니다. 전순서 데이터셋 D1에서 DPO는 모든 $$\tau$$에서 결정적 정책으로 수렴해 참조 정책을 무시했고, IPO는 정규화가 강하면 탐욕 정책으로 가지 않았습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +![D1에서 τ 값별로 IPO와 DPO의 행동 확률 학습 곡선 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-25.png) + +*출처: [Azar et al., 2023](https://arxiv.org/abs/2310.12036)* + +관측되지 않은 행동의 처리에서도 두 방법은 다르게 움직입니다. + +![D3에서 관측되지 않은 행동을 포함한 IPO와 DPO의 행동 확률 학습 곡선 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-26.png) + +*출처: [Azar et al., 2023](https://arxiv.org/abs/2310.12036)* + +세 행동 가운데 하나가 비교 데이터에 전혀 나타나지 않도록 구성한 데이터셋 D3에서 DPO는 이 관측되지 않은 행동을 정책에서 제외했지만, IPO는 그 확률을 $$\tau$$에 따라 조절했습니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +### 쌍 없이 좋음과 나쁨만 쓰는 KTO + +KTO는 신호의 형태를 바꿉니다. 같은 보상 동치류에 속한 보상들은 최적 정책과 브래들리-테리 선호 분포가 같아도 가치 분포는 서로 다릅니다. 따라서 선호 우도만으로는 전망 이론(prospect theory)의 가치를 식별할 수 없습니다. KTO는 쌍 선호 대신, 각 출력이 바람직한지 아닌지만 알려 주는 이진 신호로 카너먼-트버스키 가치함수를 최대화합니다. 원래의 가치함수는 로지스틱 함수로 대체합니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +$$L_{\text{KTO}}(\pi_{\theta},\pi_{\text{ref}})=\mathbb{E}_{x,y\sim D}[\lambda_{y}-v(x,y)]$$ + +$$\lambda_{y}$$는 출력의 라벨에 따라 $$\lambda_{D}$$나 $$\lambda_{U}$$가 되는 계수이고, 가치함수 $$v$$는 다음과 같습니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +$$\begin{aligned}v(x,y)&=\begin{cases}\lambda_{D}\sigma(\beta(r_{\theta}(x,y)-z_{0}))\ \text{if }y\sim y_{\text{desirable}}|x\\ +\lambda_{U}\sigma(\beta(z_{0}-r_{\theta}(x,y)))\ \text{if }y\sim y_{\text{undesirable}}|x\\ +\end{cases}\end{aligned}$$ + +$$r_{\theta}(x,y)=\log\frac{\pi_{\theta}(y\mid x)}{\pi_{\text{ref}}(y\mid x)}$$는 DPO와 같은 로그비 형태의 암묵적 보상이고, $$z_{0}=\mathrm{KL}(\pi_{\theta}(y^{\prime}\mid x)\lVert\pi_{\text{ref}}(y^{\prime}\mid x))$$는 보상을 비교하는 기준점입니다. $$\lambda_{D}$$와 $$\lambda_{U}$$는 손실 회피 정도를 조절합니다. 기준점 $$z_{0}$$는 KL 항이며, 학습을 안정시키려고 역전파하지 않습니다. 이 항의 역할은 손실 포화를 제어하는 데 그칩니다. 실제 계산에서는 마이크로배치 안의 출력을 한 칸씩 밀어 프롬프트와 맞지 않는 쌍을 만들고, 그 쌍들의 로그비 평균으로 편향된 추정치를 구한 뒤 0 아래로 내려가지 않게 클램프합니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). TL;DR 예에 대입하면 비교 한 쌍은 서로 묶이지 않은 두 신호로 나뉩니다. $$(x, y_w)$$는 바람직한 예로, $$(x, y_l)$$는 바람직하지 않은 예로 따로 손실에 들어갑니다. + +저자들은 이런 손실을 묶어 인간 인지 손실(HALO)이라는 족을 정의합니다. 암묵적 보상과 기준점 기대 보상의 차에 비감소 가치함수를 적용하는 형태이며, DPO와 PPO 변형은 HALO에 속하고 SLiC과 CSFT는 속하지 않습니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +![GPT-4-0613이 판정한 승률로 비교한 HALO(DPO, 오프라인 PPO 변형)와 비HALO(SLiC, CSFT)의 모델 규모별 성능](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-27.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +규모별로 보면 HALO가 비HALO보다 승률이 높지만, 그 차이가 유의한 것은 13B 이상에서뿐입니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +![SFT에 쓰였을 출력 대비 GPT-4-0613 판정 승률로 비교한 KTO와 DPO의 모델 규모별 성능](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-28.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +KTO는 모든 규모에서 DPO와 같거나 더 좋았고, Llama 계열에서는 KTO만 단독으로 쓴 경우가 SFT+DPO와 대등했습니다. Llama 7B/13B/30B에서는 KTO 단독이 DPO 단독보다 나았고, 7B와 30B에서는 다중 비교 보정 뒤에도 그 차이가 유의했습니다($$p<0.01$$). Pythia에서는 차이가 없었습니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +![같은 데이터셋을 작고 매우 불균형하게 줄였을 때 KTO로 정렬한 Llama-7B와 DPO로 정렬한 모델의 성능 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-29.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +데이터 측면에서도 KTO는 까다로운 조건을 견뎠습니다. 바람직한 예가 바람직하지 않은 예보다 훨씬 적은, 작고 매우 불균형한 데이터에서도 KTO로 정렬한 Llama-7B는 DPO로 정렬한 모델과 대등하거나 더 나았습니다. SFT를 건너뛰는 실험에서는 차이가 더 분명했습니다. Llama-13B와 30B에서 KTO는 SFT 없이도 SFT+KTO와 겨룰 만했고, 시험한 정렬 방법 가운데 이런 행동을 보인 것은 KTO뿐이었습니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +![SFT 없이 정렬했을 때 DPO와 KTO 모델의 응답 길이 비교](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-30.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +SFT 없이 정렬한 DPO 모델은 장황하게 늘어지며 대화 전체를 환각하는 경향이 있었고, KTO 모델에서는 이 문제가 나타나지 않았습니다. 참조 모델을 없앤 KTO 변형은 메모리를 아끼는 대신 표준 KTO보다 성능이 낮았고, 손실 회피 하이퍼파라미터에도 더 민감했습니다. $$\lambda_{D}$$를 1.5나 2.0으로 두면 GSM8K와 BBH 성능이 몇 포인트씩 떨어졌습니다. 그래도 이 변형은 참조 모델이 필요 없는 ORPO를 앞섰고 메모리도 더 적게 썼습니다 ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)). + +### 보상 모델 없이도 되돌아온 과최적화 + +보상 모델을 지웠다고 과최적화까지 사라지지는 않았습니다. DAA Overoptimization 연구는 DPO, IPO, SLiC 같은 직접 정렬 알고리즘(DAA)이 별도의 프록시 보상 모델을 쓰지 않는데도, 높은 KL 예산에서 고전적 RLHF와 비슷한 성능 저하를 보이고, 종종 한 에폭이 끝나기도 전에 열화된다고 보고합니다 ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900)). + +![6.9B 모델에서 DPO·SLiC·IPO의 에폭 진행에 따른 승률(위)과 KL(아래) 변화](/assets/images/from-rlhf-to-dpo-and-grpo-lineages-of-llm-preference-optimization-31.png) + +*출처: [Rafailov et al., 2024](https://arxiv.org/abs/2406.02900)* + +KL이 커지는 동안 승률은 초반에 정점을 찍고 내려갑니다. KL 제약이 낮은 설정에서는 대부분의 실험이 에폭의 처음 25% 안에 최고 성능에 닿고, 그 뒤로 학습을 더 할수록 나빠집니다 ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900)). 승률을 골드 보상 대신 쓰면, 앞서 본 고전 RLHF의 과최적화 함수형 $$R(d)=d(\alpha-\beta\log d)$$, $$d=\sqrt{\mathrm{KL}}$$이 DAA에도 맞습니다 ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900))([Gao et al., 2022](https://arxiv.org/abs/2210.10760)). 이 스케일링 법칙의 적합 오차를 $$D_{\text{KL}}(\pi\lVert\pi_{\text{ref}})$$와 승률 사이 이차식 적합과 비교하면 RMSE가 상대적으로 절반이 됩니다. 저자들은 원인을 암묵적 보상 모델의 제약 부족에서 찾습니다. DAA 목적은 엄밀한 볼록 함수가 아니어서 전역 최적해가 여러 개일 수 있고, 선호 데이터는 응답 공간의 극히 일부만 덮습니다. 그 결과 분포 밖 응답에 확률을 두는 해가 많이 남습니다 ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900)). 앞서 IPO가 지적한, 결정적 선호에서 KL 정규화가 약해지는 문제와 같은 축에 놓이는 진단입니다 ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)). + +이 글은 이렇게 봅니다. DPO 계열이 없앤 것은 보상 모델이라는 부품이지, 선호 데이터가 응답 공간을 덮지 못한다는 근본 조건이 아닙니다. 그래서 오프라인 직접 정렬에서는 $$\beta$$나 $$\tau$$ 같은 손실 설계보다 체크포인트를 언제 멈추느냐가 결과를 더 크게 좌우할 수 있습니다. 쌍을 모으기 어렵거나 SFT를 건너뛰어야 한다면 KTO가 더 나은 출발점입니다. + +## 참조 모델과 별도 SFT 단계를 덜어낸 랭킹·오즈비·길이 정규화 보상 + +참조 모델과 앞단의 SFT 단계는 손실을 바꾸는 것만으로 덜어낼 수 있습니다. RRHF의 랭킹+SFT 손실에서 출발해, ORPO는 오즈비 페널티로 SFT와 정렬을 한 단계로 합쳤고, SimPO는 길이 정규화 평균 로그우도와 목표 마진으로 참조 모델을 없앴습니다. DPO는 보상 모델과 RL 루프를 지웠지만, 여전히 SFT 모델로 초기화한 $$\pi_{\text{ref}}$$를 학습 내내 함께 계산합니다 ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)). 아래 세 방법은 그 남은 부담을 하나씩 걷어냅니다. + +### 순위 힌지에 SFT를 더한 RRHF + +RRHF는 프롬프트 하나에 대한 응답 $$k$$개를 보상 순위에 맞춥니다. 각 응답의 점수 $$p_i$$로는 길이로 정규화한 로그확률을 쓰고, 여기에 최고 보상 응답에 대한 SFT 교차 엔트로피를 더해 RL 없이 정렬합니다 ([Yuan et al., 2023](https://arxiv.org/abs/2304.05302)). + +$$ +L_{rank}=\sum_{r_{i}