diff --git a/_posts/2026-10-18-from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference.md b/_posts/2026-10-18-from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference.md new file mode 100644 index 0000000..8eb485f --- /dev/null +++ b/_posts/2026-10-18-from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference.md @@ -0,0 +1,770 @@ +--- +layout: post +title: "From RLHF to DPO and GRPO: A Lineage Map of LLM Preference" +date: 2026-10-14 01:47:37 +description: "언어 모델 선호 최적화를 보상 모델과 PPO 기반 RLHF, AI 피드백, 직접 선호 최적화, 참조 모델 없는 손실, 게임 이론적 온라인 학습, 비평가 없는 강화학습 GRPO까지 여섯 갈래로 나눠 보상 과최적화 문제와 함께 정리합니다." +categories: ["Paper Surveys", "Finetuning"] +tags: ["Reward-Overoptimization", "Constitutional-AI", "Nash-Learning", "Reference-Free-Preference-Optimization", "Bradley-Terry-Model", "Alignment"] +cover: /assets/images/finetuning.jpg +use_math: true +--- +## 들어가며: 왜 선호 최적화인가 + +사전 학습을 마친 언어 모델은 다음 토큰을 맞히는 교차 엔트로피 손실로 학습했을 뿐, 어떤 답이 "좋은" 답인지 배운 적이 없습니다. Hugging Face의 RLHF 해설 글(Nathan Lambert 외)은 이 어려움을 이렇게 짚습니다. 이야기에는 창의성이, 정보성 글에는 사실성이, 코드에는 실행 가능성이 필요한데, 이런 성질을 담은 손실 함수를 직접 쓰기는 사실상 불가능합니다. BLEU나 ROUGE 같은 지표도 생성문을 참조 문장과 단순한 규칙으로 비교하는 데 그칩니다. 반면 사람은 두 응답을 나란히 놓고 어느 쪽이 나은지는 비교적 쉽게 고릅니다. 선호 최적화는 이런 비교 판단을 모델이 학습할 수 있는 신호로 바꾸는 방법론 전체를 가리키며, 오늘날 언어 모델 사후 훈련(post training)의 중심에 있습니다. + +출발점은 언어 모델이 아니라 강화학습 에이전트였습니다. ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741))은 짧은 궤적 구간 두 개를 사람이 비교한 결과로 보상 예측기를 학습하고, 정책은 그 예측 보상을 최대화하도록 함께 학습했습니다. 이 방식에서는 사람 피드백이 에이전트 상호작용의 1% 미만이어도 충분했습니다. ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593))이 이 방법을 GPT-2에 옮겨 비교 라벨로 보상 모델(reward model)을 학습하고, 원래 언어 모델과의 KL 페널티(KL penalty)를 둔 채 PPO로 미세 조정했습니다. 이후 요약 과제 ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)), 지시 따르기 ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)), 유용성(helpfulness)과 무해성을 함께 다룬 어시스턴트 ([Bai et al., 2022](https://arxiv.org/abs/2204.05862))로 적용 범위가 넓어졌고, 공개 대화 모델 Llama 2-Chat ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288))도 이 계보에서 함께 다룹니다. 같은 시기에 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760))은 고정된 골드 보상 모델이 사람을 대신하는 합성 환경을 만들고, 대리 보상 모델을 최적화할수록 골드 보상이 어떤 함수 형태로 변하는지, 그 계수가 규모에 따라 어떻게 달라지는지를 실험으로 측정했습니다. 이렇게 보상 과최적화(reward overoptimization)를 정량적으로 다루기 시작했습니다. + +이 고전적 RLHF 파이프라인은 사람 라벨이 비싸고, 보상 모델과 PPO 루프가 무거우며, 대리 보상이 실제 선호와 어긋날 수 있다는 약점을 안고 있었습니다. 이후 연구는 이 약점 가운데 어느 것을 먼저 해결하느냐에 따라 여러 갈래로 나뉩니다. 이 글은 이를 여섯 갈래의 계보로 정리합니다. + +- **RLHF의 기초**: 보상 모델 학습과 PPO 미세 조정이라는 기본 틀, 그리고 그 틀의 과최적화 문제입니다. +- **AI 피드백**: 사람 라벨을 짧은 원칙 목록과 모델의 자기 비판으로 대체한 헌법 AI ([Bai et al., 2022](https://arxiv.org/abs/2212.08073)), 기성 LLM의 선호로 보상 모델을 학습하는 RLAIF ([Lee et al., 2023](https://arxiv.org/abs/2309.00267))가 여기에 속합니다. +- **직접 선호 최적화**: DPO ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290))는 RLHF 목적을 강화학습 없이 이진 분류 손실로 최적화합니다. IPO ([Azar et al., 2023](https://arxiv.org/abs/2310.12036))는 Bradley-Terry 가정을 걷어내고, KTO ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306))는 쌍 비교 대신 좋음·나쁨의 이진 신호만으로 학습합니다. ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900))은 이 계열도 높은 KL 예산에서는 고전적 RLHF와 비슷한 성능 저하 양상을 보인다는 것을 실험으로 보였습니다. +- **참조 모델 없는 손실**: RRHF ([Yuan et al., 2023](https://arxiv.org/abs/2304.05302))는 응답의 로그 조건부 확률이 사람의 선호 순서와 맞도록 순위 손실로 학습합니다. ORPO ([Hong et al., 2024](https://arxiv.org/abs/2403.07691))는 참조 모델 없이 SFT와 선호 정렬을 한 단계로 묶고, SimPO ([Meng et al., 2024](https://arxiv.org/abs/2405.14734))는 평균 로그 확률을 암묵적 보상으로 써서 참조 모델을 없앱니다. +- **온라인·게임 이론적 접근**: Nash-MD ([Munos et al., 2023](https://arxiv.org/abs/2312.00886))는 보상 모델 대신 선호 모델(preference model)을 학습하고 그 내시 균형(Nash equilibrium)을 찾습니다. IPO-MD ([Calandriello et al., 2024](https://arxiv.org/abs/2403.08635))는 온라인 IPO가 Nash-MD와 동등하다는 것을 보였고, SPPO ([Wu et al., 2024](https://arxiv.org/abs/2405.00675))는 자기 대결(self-play)로 균형을 찾습니다. ([Dong et al., 2024](https://arxiv.org/abs/2405.07863))은 온라인 반복 RLHF를 재현 가능한 레시피로 공개했습니다. +- **비평가 없는 RL**: DeepSeekMath ([Shao et al., 2024](https://arxiv.org/abs/2402.03300))의 GRPO는 PPO의 가치 모델 없이 그룹 점수로 기준선을 추정하며, 수학 추론에 적용됩니다. ([Mroueh, 2025](https://arxiv.org/abs/2503.06639))는 이 손실을 가중 대조 손실로 해석했습니다. + +여섯 갈래를 가르는 질문은 세 가지로 모입니다. 피드백을 사람, AI, 검증 가능한 보상(verifiable reward) 가운데 어디서 얻는지, 명시적인 강화학습 루프가 필요한지, 고정된 오프라인 데이터로 학습하는지 아니면 현재 정책에서 새로 샘플을 뽑는지입니다. 연표를 보면 2023년에는 오프라인 직접 최적화 논문이 두드러지고, 2024년 이후에는 온라인 샘플링과 RL 형태의 손실을 쓰는 논문이 함께 늘어납니다. + +아래 연표는 모든 논문을 발표 순서와 계보별로 정리한 것입니다. 2022년까지는 거의 한 계보만 이어지다가 2023~2024년에 여러 계보가 한꺼번에 나타나 시기가 겹칩니다. 그래서 같은 해에 나온 논문이라도 서로 다른 약점을 겨냥하고 있습니다. + +| 연도 | 논문 | 계보 | 핵심 아이디어 | +| --- | --- | --- | --- | +| 2017 | [Deep RL from Human Preferences](https://arxiv.org/abs/1706.03741) | RLHF의 기초: 보상 모델과 PPO | 짧은 궤적 구간 두 개에 대한 사람의 선호 비교로 보상 예측기를 지도학습하고, 정책은 예측된 보상을 최대화하도록 동시에 학습합니다. 이렇게 하면 사람 피드백이 에이전트 상호작용의 1% 미만이어도 됩니다. | +| 2019 | [Fine-tuning LMs from human preferences](https://arxiv.org/abs/1909.08593) | RLHF의 기초: 보상 모델과 PPO | 사전 학습한 GPT-2에 인간 비교 라벨로 보상 모델을 학습시키고, 원래 언어 모델과의 KL 페널티를 둔 채 PPO로 정책을 미세 조정합니다. | +| 2020 | [Learning to summarize from human feedback](https://arxiv.org/abs/2009.01325) | RLHF의 기초: 보상 모델과 PPO | 요약 쌍에 대한 사람의 선호 비교로 보상 모델을 학습하고, 이 보상 모델을 보상 함수로 삼아 강화학습으로 요약 정책을 미세 조정합니다. | +| 2022 | [InstructGPT](https://arxiv.org/abs/2203.02155) | RLHF의 기초: 보상 모델과 PPO | 사람의 시연과 선호 순위로 GPT-3를 지도 미세조정하고, 보상 모델을 학습한 뒤 PPO로 강화학습해 사용자 의도에 정렬합니다. 사전 훈련 기울기를 섞어 성능 저하를 줄입니다. | +| 2022 | [RLHF 도움·무해 어시스턴트](https://arxiv.org/abs/2204.05862) | RLHF의 기초: 보상 모델과 PPO | 선호 모델링과 인간 피드백 기반 강화학습(RLHF)으로 언어 모델을 미세조정해 유용하고 무해한 어시스턴트로 만듭니다. 선호 모델과 RL 정책을 새 인간 피드백 데이터로 매주 갱신하는 반복 온라인 학습도 함께 씁니다. | +| 2022 | [Reward Model Overoptimization Scaling Laws](https://arxiv.org/abs/2210.10760) | RLHF의 기초: 보상 모델과 PPO | 고정된 골드 보상 모델이 사람 역할을 하며 대리 보상 모델의 학습 라벨을 만드는 합성 환경을 씁니다. 이 환경에서 최적화 정도에 따른 골드 보상의 함수 형태와 그 계수의 규모 변화를 실험으로 측정합니다. | +| 2022 | [Constitutional AI (CAI)](https://arxiv.org/abs/2212.08073) | AI 피드백: 헌법 AI와 RLAIF | 사람의 감독을 짧은 원칙 목록(헌법)으로 대체하고, AI가 스스로 비판·수정하며 AI 피드백(RLAIF)으로 무해성 선호 모델을 학습합니다. 그 결과 회피하지 않으면서도 해롭지 않은 어시스턴트를 만듭니다. | +| 2023 | [RRHF](https://arxiv.org/abs/2304.05302) | 참조 모델 없이: RRHF, ORPO, SimPO | 여러 출처에서 샘플링한 응답을 조건부 확률의 로그로 점수화하고, 이 확률이 사람의 선호 순서와 맞도록 순위 손실로 학습합니다. | +| 2023 | [DPO](https://arxiv.org/abs/2305.18290) | 직접 선호 최적화: DPO와 그 일반화 | 보상 함수와 KL 제약 하의 최적 정책 사이의 해석적 관계를 이용해 보상에 대한 선호 손실을 정책에 대한 손실로 바꿉니다. 그러면 강화학습 없이 간단한 이진 분류 손실만으로 RLHF 목적을 정확히 최적화할 수 있습니다. | +| 2023 | [Llama 2](https://arxiv.org/abs/2307.09288) | RLHF의 기초: 보상 모델과 PPO | 70억에서 700억 파라미터 규모의 사전 훈련 모델과 대화에 최적화한 Llama 2-Chat을 공개하고, 미세 조정과 안전성 개선 방식을 자세히 설명합니다. | +| 2023 | [RLAIF / d-RLAIF](https://arxiv.org/abs/2309.00267) | AI 피드백: 헌법 AI와 RLAIF | 사람 대신 기성 LLM이 만든 선호로 보상 모델을 학습해도 RLHF와 비슷한 성능을 냅니다. 더 나아가 보상 모델 학습 없이 LLM에서 보상을 직접 얻는 d-RLAIF도 제안합니다. | +| 2023 | [ΨPO / IPO](https://arxiv.org/abs/2310.12036) | 직접 선호 최적화: DPO와 그 일반화 | 쌍별 선호만으로 표현한 일반 목적함수 ΨPO를 세우고, Ψ를 항등함수로 둔 IPO로 보상 모델링과 Bradley-Terry 가정 없이 정규화가 유지되는 오프라인 손실을 얻습니다. | +| 2023 | [Nash-MD (NLHF)](https://arxiv.org/abs/2312.00886) | 온라인·반복·게임 이론적 선호 최적화 | 보상 모델 대신 두 응답을 입력받는 선호 모델을 학습하고, 이 선호 모델의 내시 균형 정책을 찾습니다. 이를 위해 현재 정책과 참조 정책의 기하 혼합을 상대로 미러 디센트를 하는 Nash-MD를 제안합니다. | +| 2024 | [KTO](https://arxiv.org/abs/2402.01306) | 직접 선호 최적화: DPO와 그 일반화 | 카너먼-트버스키의 전망 이론 가치 함수를 바탕으로, 선호 우도 대신 생성물의 효용을 직접 최대화하는 손실을 설계했습니다. 출력이 좋은지 나쁜지에 대한 이진 신호만 있으면 학습할 수 있습니다. | +| 2024 | [DeepSeekMath](https://arxiv.org/abs/2402.03300) | 비평가 없는 RL과 검증 가능한 보상: GRPO | Common Crawl에서 반복적인 fastText 분류기로 1200억 토큰 수학 말뭉치를 구축해 코드 모델을 계속 사전 훈련하고, 가치 모델 없이 그룹 점수로 기준선을 추정하는 GRPO로 강화학습을 합니다. | +| 2024 | [ORPO](https://arxiv.org/abs/2403.07691) | 참조 모델 없이: RRHF, ORPO, SimPO | SFT의 음의 로그 가능도 손실에 로그 오즈비 항을 더해 SFT와 선호 정렬을 한 번에 하는 단일 단계 방법입니다. 참조 모델이 필요 없습니다. | +| 2024 | [IPO-MD](https://arxiv.org/abs/2403.08635) | 온라인·반복·게임 이론적 선호 최적화 | 온라인 IPO는 선호 모델의 내시 균형을 자기 대결로 찾는 Nash-MD와 동등함을 보입니다. 이를 바탕으로 Nash-MD의 정규화 샘플링을 쓰는 IPO 일반화인 IPO-MD를 제안합니다. | +| 2024 | [SPPO](https://arxiv.org/abs/2405.00675) | 온라인·반복·게임 이론적 선호 최적화 | 정렬을 상수합 2인 게임으로 보고 내시 균형을 찾습니다. 승수 가중치 갱신을 제곱 손실 회귀로 근사하는 자기 대결 방식입니다. | +| 2024 | [Online Iterative RLHF](https://arxiv.org/abs/2405.07863) | 온라인·반복·게임 이론적 선호 최적화 | 공개 데이터셋으로 만든 프록시 선호 모델을 사람 피드백 대신 쓰고, 온라인 반복 RLHF의 전체 과정을 재현하기 쉬운 레시피로 공개합니다. | +| 2024 | [SimPO](https://arxiv.org/abs/2405.14734) | 참조 모델 없이: RRHF, ORPO, SimPO | 응답의 평균 로그 확률을 암묵적 보상으로 쓰면 참조 모델이 필요 없고 생성 지표와도 맞습니다. 여기에 승패 응답 사이의 목표 보상 마진을 더합니다. | +| 2024 | [DAA 보상 과최적화 스케일링 법칙](https://arxiv.org/abs/2406.02900) | 직접 선호 최적화: DPO와 그 일반화 | 보상 해킹을 DAA에 맞게 정의하고, 높은 KL 예산에서 DAA가 고전적 RLHF와 비슷한 성능 저하 양상을 보임을 실험으로 밝힙니다. | +| 2025 | [GRPO 유효 손실 분석](https://arxiv.org/abs/2503.06639) | 비평가 없는 RL과 검증 가능한 보상: GRPO | 보상을 평균과 분산으로 보정하면 이전 정책에서 뽑은 합성 데이터를 대조 샘플로 쓰는 가중 대조 손실이 됩니다. 이 손실의 최적 정책은 닫힌 형태로 나오고, 반복하면 성공 확률이 참조 모델보다 높은 고정점으로 수렴합니다. | + +## RLHF의 기초: 보상 모델과 PPO + +### 궤적 구간 비교로 보상을 학습하기 + +강화학습은 보상 함수가 주어져 있다고 전제합니다. 그런데 복잡하거나 말로 정하기 어려운 목표는 보상 함수로 옮기기 어렵습니다. 시연을 모방하는 방법은 사람이 직접 보여 주기 힘든 행동에는 쓸 수 없습니다. 사람이 매 순간 보상을 매기게 하면, 수백~수천 시간의 경험을 소비하는 심층 강화학습에서는 비용이 너무 커집니다. 선호 기반 학습 연구도 있었지만 단순한 환경에 머물렀습니다. ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741))은 이 세 가지 한계를 피하려고 평가 방식을 바꿨습니다. 사람은 짧은 행동 구간 두 개를 비교만 하고, 시스템은 그 비교 결과로 보상 함수 자체를 학습합니다. + +시스템은 세 과정이 서로 비동기로 돌아가는 구조입니다. + +- **정책**: 현재 보상 예측기가 주는 예측 보상을 받아 학습합니다. 아타리에서는 A2C, MuJoCo 로봇 시뮬레이션에서는 TRPO를 씁니다. +- **사람 비교 수집**: 평가자가 1~2초 길이 영상 두 개를 보고 더 나은 쪽, 둘이 동등함, 판단 불가 가운데 하나를 고릅니다. +- **보상 예측기**: 쌓인 비교 데이터로 지도학습합니다. + +![보상 예측기가 궤적 구간 비교로 비동기 학습되고 에이전트가 예측 보상을 최대화하는 구조도](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-1.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +구조도에서 사람은 환경과 직접 상호작용하지 않습니다. 사람과 에이전트 사이에는 보상 예측기만 있고, 정책은 사람 대신 이 예측기의 출력을 보상으로 받습니다. + +보상 예측기 학습에는 Bradley-Terry 모델을 씁니다. 구간 $$\sigma$$는 관측 $$o_t$$와 행동 $$a_t$$의 짧은 연쇄이고, $$\hat{r}(o_t, a_t)$$는 예측기가 한 시점에 매긴 보상입니다. 사람이 구간 $$\sigma^{1}$$을 $$\sigma^{2}$$보다 선호할 확률은 두 구간의 예측 보상 합에 소프트맥스를 씌운 값으로 모델링합니다. + +$$\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)}}.$$ + +사람의 판단은 구간 전체에 내려지지만, 예측기가 출력하는 값은 시점별 보상입니다. 그래서 학습이 끝나면 구간 합만 비교하던 신호가 각 시점의 보상으로 나뉘어 배정되고, 정책은 이 시점별 보상을 일반적인 강화학습 보상처럼 씁니다. 손실은 사람 라벨과 예측 선호 확률 사이의 교차 엔트로피입니다. + +$$\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$$는 사람이 내린 판단을 두 구간 위의 분포로 적은 것입니다. $$\mu(1)$$과 $$\mu(2)$$는 각각 첫째, 둘째 구간이 낫다고 본 비중이며, "동등함"은 두 값을 반씩 나눈 분포로 표현됩니다. 이 두 수식은 이후 언어 모델 RLHF에서 쓰는 보상 모델 손실의 원형입니다. + +실제 구현에는 공학적 장치가 여럿 더해졌습니다. 예측기는 하나가 아니라 앙상블로 두고, 앙상블 예측의 분산이 가장 큰 쌍을 골라 사람에게 질의합니다. 사람이 10% 확률로 무작위로 답한다고 가정해 라벨 잡음을 흡수하고, 학습이 진행될수록 라벨을 요청하는 비율을 줄이는 라벨 어닐링(label annealing)도 씁니다. + +![MuJoCo 로봇 과제에서 실제 사람 피드백, 오라클 합성 피드백, 진짜 보상 강화학습의 학습 곡선 비교](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-2.png) + +*출처: [Christiano et al., 2017](https://arxiv.org/abs/1706.03741)* + +로봇 과제 곡선에서는 실제 사람 피드백 곡선이 진짜 보상 곡선에 얼마나 다가가는지를 보면 됩니다. MuJoCo 과제에서는 700번의 선호 질의로 진짜 보상 강화학습의 성능에 거의 근접했습니다. 아타리 게임 7종에는 5,500번의 질의를 썼습니다. 보상 함수로 쓰기 어려운 새로운 행동도 학습했습니다. 저자들이 직접 피드백을 주어 Hopper의 백플립은 900번 질의, Half-Cheetah의 한 다리 서기는 800번 질의로 가르쳤고, 둘 다 1시간이 채 걸리지 않았습니다. + +한계도 분명했습니다. 질의 선택에 쓴 앙상블 분산은 거친 근사여서 일부 과제에서는 오히려 성능을 떨어뜨렸습니다. 아타리에서는 진짜 보상 강화학습을 따라잡기 어려웠고, Qbert는 사람 피드백만으로 첫 단계도 깨지 못했습니다. 평가자 오류와 들쭉날쭉한 라벨링 속도도 결과에 영향을 줬습니다. 가장 오래 남은 관찰은 피드백 시점에 관한 것입니다. 사람 피드백을 학습 전에 정적으로 한꺼번에 주면 보상의 일부만 학습되어 이상한 행동이 나왔고, 그래서 피드백 수집을 강화학습과 함께 진행해야 했습니다. 피드백을 오프라인으로 줄지 온라인으로 줄지는 언어 모델 RLHF에서도 다시 등장하는 문제입니다. + +### 언어 모델로 옮기다: GPT-2 미세 조정 + +([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593))은 앞의 방법을 사전 학습 언어 모델에 적용했습니다. 이 논문이 기반으로 삼은 선행 연구로는 Christiano 등의 선호 학습, GPT-2, PPO, 그리고 원래 모델과의 KL 발산을 제어하는 Jaques 등(2017)의 KL 제어가 있습니다. 문제 설정은 이렇습니다. 사람의 판단으로만 정의되는 언어 과제에는 지도 데이터가 없거나 부족합니다. BLEU나 ROUGE 같은 프로그램형 보상은 실제 목표를 잘 대신하지 못합니다. 기존 보상 학습 연구는 단순한 시뮬레이션 환경에만 적용됐습니다. + +라벨 형식은 쌍 비교가 아니라 넷 중 하나 고르기입니다. 라벨러는 입력 $$x$$ 하나에 대한 응답 4개 $$\{y_i\}$$ 가운데 가장 나은 $$y_b$$를 고르고, 보상 모델 $$r$$은 이 선택이 소프트맥스 확률로 재현되도록 학습합니다. + +$$\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]$$ + +$$S$$는 수집한 라벨 데이터, $$b$$는 사람이 고른 응답의 번호입니다. 괄호 안은 고른 응답의 로그 확률이므로, 보상 모델은 이 값을 키우는 방향으로 학습합니다. 후보가 둘이면 Christiano 등의 Bradley-Terry 손실과 같아집니다. 보상 모델은 언어 모델 위에 무작위로 초기화한 선형층을 얹어 만듭니다. + +정책 $$\pi$$는 사전 학습 모델 $$\rho$$로 초기화하고, PPO로 다음 보상을 최대화합니다. + +$$R(x,y)=r(x,y)-\beta\log\frac{\pi(y|x)}{\rho(y|x)}.$$ + +둘째 항의 로그 비율을 $$y \sim \pi$$에 대해 평균하면 $$\pi$$와 $$\rho$$ 사이의 KL 발산이 되고, $$\beta$$는 그 강도를 정하는 계수입니다. 보상 모델은 학습 데이터 근처의 텍스트에서만 믿을 만하므로, 정책이 원래 언어 모델에서 너무 멀어지지 않도록 묶어 두는 장치가 이 KL 페널티입니다. 이후 RLHF 논문에서 기준 모델과 부가 항은 바뀌지만, 보상에서 KL 페널티를 빼는 기본 형태는 유지됩니다. + +![보상 모델 학습과 정책 학습 과정을 나타낸 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-3.png) + +*출처: [Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)* + +도식에는 보상 모델 학습과 정책 학습이 별도의 과정으로 그려져 있고, 온라인 설정에서는 두 과정이 번갈아 돕니다. 요약 과제에서는 정책이 개선되는 동안 새 라벨을 계속 수집해 보상 모델을 다시 학습했습니다. 반면 긍정적 감성이나 묘사적 문체 같은 스타일 연속 생성 과제는 초기 모델 샘플만으로 라벨을 모으는 오프라인 수집으로 충분했습니다. 라벨은 Scale AI가 수집했습니다. + +스타일 과제 결과는 깔끔합니다. 오프라인 비교 5천 개로 미세 조정한 모델은 BookCorpus 테스트 발췌 1024개에서 라벨러 3명 다수결로, 감성 과제 기준 88% 비율로 제로샷 모델보다 선호됐습니다. 모의 감성 분류기를 보상으로 쓴 모델과 비교해도 77% 비율로 선호됐습니다. + +요약 결과는 해석에 주의가 필요합니다. 비교 6만 개로 온라인 미세 조정한 모델은 참조 요약보다 TL;DR에서 96%, CNN/Daily Mail에서 84% 비율로 선호됐습니다. 그러나 같은 모델이 문장 전체를 그대로 복사한 비율도 TL;DR 71%, CNN/Daily Mail 98%였습니다. 저자들은 이 정책을 "똑똑한 복사기"라고 불렀고, 이 복사 행동이 라벨러가 복사 여부만 휴리스틱으로 확인한 탓일 수 있다고 봤습니다. 라벨러가 쉽게 확인하는 신호와 사람이 실제로 원하는 품질이 어긋날 수 있다는 대리 신호 문제가 언어 모델 설정에서 드러난 사례입니다. 라벨 자체도 모호했습니다. 4지선다에서 저자끼리도 일치율이 약 60%에 그쳤습니다. 온라인 수집은 소프트웨어와 ML 양쪽에서 복잡하고 품질 관리가 어려웠습니다. 학습 실행 간 편차도 커서 데이터 양을 늘린 효과가 분명하지 않았습니다. + +### 요약에서 다듬은 파이프라인: SFT 초기화와 쌍 비교 + +([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325))은 Ziegler 등의 작업과 Christiano 등의 선호 학습을 기반으로 삼아 요약 하나에 집중했습니다. 문제의식은 요약 학습 관행에 대리 지표가 두 겹으로 쌓여 있다는 데 있습니다. 모델은 사람이 쓴 참조 요약을 따라 하도록 학습하고 ROUGE로 평가받는데, 둘 다 실제 요약 품질을 거칠게 근사할 뿐입니다. 최대 가능도 목표는 치명적인 오류와 사소한 오류를 구분하지 못합니다. + +![사람 피드백 수집, 보상 모델 학습, 정책 학습 절차를 단계별로 나타낸 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-4.png) + +*출처: [Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)* + +절차 도식을 Ziegler 등의 도식과 나란히 보면 달라진 곳이 눈에 띕니다. 먼저 Reddit TL;DR 데이터로 지도학습 미세 조정한 초기 정책을 만듭니다. 여러 정책과 참조 요약에서 뽑은 요약을 쌍으로 라벨러에게 보내 더 나은 쪽을 고르게 합니다. 보상 모델은 이 지도학습 모델 위에 선형 헤드를 얹은 구조이고, 넷 중 하나 고르기 대신 쌍 비교 손실을 씁니다. + +$$\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})))]$$ + +$$x$$는 게시물, $$y_0$$와 $$y_1$$은 두 요약, $$i$$는 사람이 고른 요약의 번호, $$\sigma$$는 시그모이드 함수, $$D$$는 비교 데이터셋입니다. 보상 차이에 시그모이드를 씌우면 앞서 본 Bradley-Terry 확률과 같은 식이 되고, 손실은 그 음의 로그 우도입니다. + +정책 최적화에서는 KL 페널티의 기준 모델이 바뀝니다. + +$$R(x,y)=r_{\theta}(x,y)-\beta\log[\pi^{\text{RL}}_{\phi}(y|x)/\pi^{\text{SFT}}(y|x)]$$ + +$$\pi^{\text{RL}}_{\phi}$$는 파라미터 $$\phi$$로 학습하는 강화학습 정책이고, $$\pi^{\text{SFT}}$$는 지도학습 정책입니다. Ziegler 등은 정책을 사전 학습 모델에 묶어 두었고, 이 논문은 지도학습 모델에 묶어 둡니다. 보상 모델 점수는 요약 전체에 하나만 주어집니다. + +PPO의 가치 함수 설계도 바뀌었습니다. 가치 함수는 정책과 파라미터를 공유하지 않는 별도 모델로 두고, 보상 모델로 초기화합니다. 가치 함수가 하는 일은 지금까지 생성한 토큰을 보고 요약이 끝났을 때 받을 보상을 미리 예측하는 것입니다. 보상 모델은 이미 완성된 요약의 점수를 매기도록 학습되어 있으므로, 거기서 출발하면 무작위 초기값보다 처음부터 의미 있는 예측을 냅니다. 파라미터를 분리하면 가치 예측을 맞추려는 기울기가 정책의 언어 능력을 건드리지 않습니다. 대신 정책, 보상 모델, 지도학습 기준 모델에 더해 가치 함수까지, 같은 규모의 모델을 메모리에 여럿 올려야 합니다. PPO 루프가 무거워진 원인 가운데 하나가 이 가치 모델이고, 뒤에 등장하는 비평가 없는 RL 계열은 바로 이 부분을 걷어냅니다. + +이 과정을 배치 단위로 반복하면서 라벨러와 연구자의 일치율을 계속 점검해 데이터 품질을 관리했습니다. Ziegler 등에서는 라벨 모호성과 품질 관리가 약점이었는데, 여기서는 품질 점검이 절차 안에 명시적으로 들어갔습니다. + +![TL;DR에서 모델 요약이 사람이 쓴 참조 요약보다 선호된 비율을 모델 크기별로 나타낸 그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-5.png) + +*출처: [Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)* + +모델 크기별 곡선에서 눈여겨볼 부분은 인간 피드백 곡선과 지도학습 곡선 사이의 간격입니다. TL;DR에서 13억 파라미터 인간 피드백 모델은 61% 비율로 참조 요약보다 선호됐고, 그보다 10배 큰 지도학습 모델은 43%였습니다. 보상 모델이 더 긴 요약을 선호하는 편향이 있어 저자들은 길이를 보정한 결과도 냈습니다. 길이를 보정한 뒤에도 67억 인간 피드백 모델의 참조 요약 대비 선호도는 약 65%였습니다. 7점 리커트 평가에서 만점을 받은 비율은 67억 PPO 모델이 45%로, 67억 지도학습 기준선 20%와 참조 요약 23%를 크게 앞섰습니다. 보상 모델 자체의 정확도도 측정했습니다. CNN/DM 요약 비교에서 보상 모델과 라벨러의 일치율은 13억 모델이 62.4%, 67억 모델이 66.5%였고, 라벨러끼리의 일치율 66.9%에 근접했습니다. + +비용은 무거웠습니다. 67억 모델을 강화학습으로 미세 조정하는 데 약 320 GPU-일이 들었고, 데이터 수집에도 수천 시간의 라벨러 작업이 들었습니다. 같은 양의 고품질 시연으로 학습한 지도학습 기준선은 비용 때문에 만들지 못했습니다. 보상 모델을 과도하게 최적화하면 정책이 사람 선호와 반대 방향으로 갔고, 길이 선호 편향도 남았습니다. 과최적화와 길이 선호는 이후 계보에서도 계속 문제가 됩니다. + +### 지시 따르기와 어시스턴트: InstructGPT와 유용·무해 RLHF + +([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155))은 요약에서 다듬은 절차를 일반적인 지시 따르기로 넓혔습니다. 출발점은 모델을 키워도 사용자 의도를 더 잘 따르지는 않는다는 관찰입니다. 대규모 언어 모델이 거짓이거나 유해하거나 쓸모없는 출력을 내는 이유는, 다음 토큰 예측이라는 사전 훈련 목표가 지시를 유용하고 안전하게 따르는 목표와 다르기 때문입니다. 이 논문은 Stiennon 등과 Ziegler 등, Christiano 등의 작업, PPO, GPT-3, 그리고 Askell 등(2021)의 정렬용 범용 어시스턴트 연구를 기반으로 삼았습니다. + +![지도 미세조정, 보상 모델 학습, PPO 강화학습의 세 단계를 나타낸 InstructGPT 방법 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-6.png) + +*출처: [Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)* + +세 단계 도식에서 둘째 단계의 A~D 상자는 모델이 뽑은 샘플이고, 라벨러가 이들의 순위를 매깁니다. + +1. **지도 미세조정(SFT)**: 라벨러가 직접 작성한 시연으로 GPT-3를 미세조정해 SFT 모델을 만듭니다. +2. **보상 모델 학습**: 프롬프트마다 모델 출력 4~9개를 라벨러가 순위화하고, 60억 파라미터 보상 모델이 선호 출력에 더 높은 스칼라 점수를 주도록 학습합니다. +3. **PPO 강화학습**: 보상 모델 출력을 보상으로 삼아 SFT 모델을 PPO로 미세조정합니다. + +순위 하나에서는 $$K$$개 출력의 모든 쌍, 즉 $$\binom{K}{2}$$개의 비교가 나옵니다. 보상 모델 손실은 쌍 비교 손실을 그 수로 정규화한 형태입니다. + +$$\begin{split}\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]\end{split}$$ + +$$y_w$$는 선호된 출력, $$y_l$$은 덜 선호된 출력이고, $$r_\theta$$는 파라미터 $$\theta$$의 보상 모델입니다. 한 프롬프트에서 나온 비교 쌍들은 서로 강하게 상관되어 있습니다. 그래서 쌍들을 데이터셋에 섞어 따로따로 학습하면 같은 출력을 여러 번 보게 되어 과적합이 생깁니다. InstructGPT는 한 프롬프트의 모든 비교 쌍을 하나의 배치 원소로 묶어 학습해 이를 막았습니다. + +강화학습 목적함수에는 항이 하나 더 붙습니다. + +$$\begin{split}\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{split}$$ + +첫 줄은 Stiennon 등과 같은 구조입니다. 정책 $$\pi_{\phi}^{\mathrm{RL}}$$이 만든 $$(x, y)$$에서 보상 모델 점수를 받고, SFT 모델과의 KL 페널티를 계수 $$\beta$$로 뺍니다. InstructGPT는 이 KL을 토큰별로 계산해 보상 모델 과최적화를 완화했습니다. 둘째 줄은 사전 훈련 분포 $$D_{\textrm{pretrain}}$$의 텍스트에 대한 로그 우도를 계수 $$\gamma$$로 더합니다. 이 항을 넣은 모델이 PPO-ptx이고, $$\gamma = 0$$이면 그냥 PPO입니다. 정렬 학습 과정에서 공개 NLP 데이터셋 성능이 떨어지는 문제를 사전 훈련 기울기를 섞어 줄이려는 장치입니다. + +![API 프롬프트 분포에서 각 모델 출력이 1750억 SFT 모델보다 선호된 비율을 모델 크기별로 비교한 그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-7.png) + +*출처: [Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)* + +모델 크기별 선호율 그래프에서는 PPO와 PPO-ptx 곡선이 GPT-3 기준선과 프롬프트를 준 GPT-3 곡선에 비해 어디에 놓이는지를 보면 됩니다. 같은 1750억 규모끼리 보면, API 프롬프트에서 InstructGPT는 GPT-3보다 85 ± 3%, 퓨 샷 프롬프트를 준 GPT-3보다 71 ± 4% 비율로 선호됐습니다. 퓨 샷 프롬프트는 간격을 일부 좁히지만 없애지는 못합니다. 공개 지시 데이터로 미세조정한 FLAN과 T0와 비교한 선호율은 각각 78 ± 4%, 79 ± 4%였습니다. 요약이나 폐쇄형 QA 같은 폐쇄 도메인 과제의 환각 비율도 GPT-3의 41%에서 21%로 낮아졌습니다. + +한계는 데이터 출처와 안전성 양쪽에 있습니다. 라벨러는 약 40명이고 대부분 영어권이며, 데이터도 거의 영어입니다. 그래서 모델이 정렬되는 대상은 특정 집단과 연구자의 선호이고, 전체 사용자를 대표하지 못합니다. 독성·편향 출력, 거짓 정보, 거짓 전제에 대한 동조, 지나친 얼버무림이 남았고, 편향은 GPT-3보다 나아지지 않았습니다. 사용자가 요구하면 유해한 출력도 따랐고, 편향적으로 쓰라는 지시를 받으면 GPT-3보다 더 독성 있는 출력을 냈습니다. 지시를 잘 따르도록 학습한 결과, 해로운 지시도 그만큼 잘 따르게 되었습니다. 사전 훈련 혼합도 DROP, SQuADv2, 번역에서의 성능 저하를 완전히 없애지는 못했습니다. + +같은 해 ([Bai et al., 2022](https://arxiv.org/abs/2204.05862))은 유용성과 무해성을 함께 겨냥한 어시스턴트를 선호 모델링과 RLHF로 학습했습니다. 두 논문은 거의 동시에 나와 서로를 인용합니다. 이 논문에서 가장 두드러진 설계는 반복 온라인 학습입니다. 선호 모델과 RL 정책을 매주 새로 모은 사람 피드백으로 갱신해 데이터셋과 모델을 함께 개선했습니다. InstructGPT의 방법이 시연, 순위 라벨, PPO를 차례로 거치는 세 단계로 설명되는 것과 비교하면, 여기서는 그 순환을 주 단위로 계속 다시 돌립니다. 정적 피드백의 한계를 보고한 Christiano 등과 달리 데이터를 반복해서 다시 모읍니다. + +정렬 학습을 파이썬 코딩이나 요약 같은 특화 기술 학습과 함께 쓸 수 있는지도 살폈고, 보정, 상충하는 목표, OOD 탐지 활용에 대한 부수 분석과 사람 작성자와의 비교도 담았습니다. RLHF의 견고성은 RL 보상과, 정책과 초기값 사이 KL 발산의 관계로 분석했습니다. 보상이 KL 발산의 제곱근과 대략 선형으로 움직인다는 관찰입니다. 이 관계를 받아들이면 $$\sqrt{\mathrm{KL}}$$이 정책이 초기 모델에서 이동한 거리의 자연스러운 척도가 되고, 거리 한 단위당 얻는 보상이 거의 일정하다는 뜻이 됩니다. 반대로 보면 보상을 두 배로 올리려면 KL 발산은 네 배로 늘어나야 하므로, 보상을 더 얻을수록 초기 모델에서 훨씬 멀어집니다. 다만 이 관계는 대략적인 선형 관계로만 제시됐습니다. ([Gao et al., 2022](https://arxiv.org/abs/2210.10760))도 같은 척도 $$d=\sqrt{\mathrm{KL}}$$를 쓰므로, 두 논문의 결과는 같은 가로축 위에서 비교할 수 있습니다. + +### 보상 과최적화의 스케일링 법칙 + +Stiennon 등과 InstructGPT 모두 보상 모델을 지나치게 최적화하면 실제 품질이 떨어진다고 보고했습니다. 학습된 보상 모델은 사람 선호의 불완전한 대리 지표이므로, 대리 지표를 목표로 삼으면 그 지표는 더 이상 좋은 지표가 아니라는 Goodhart 법칙이 그대로 적용됩니다. 문제는 측정이었습니다. 과최적화 곡선을 정밀하게 그리려면 최적화 정도마다 사람 평가를 새로 모아야 하는데, 비용이 너무 큽니다. + +([Gao et al., 2022](https://arxiv.org/abs/2210.10760))은 사람을 고정된 모델로 대체해 이 비용 문제를 피했습니다. InstructGPT, WebGPT, Stiennon 등의 설정과 PPO, 그리고 Goodhart 법칙의 유형을 정리한 Manheim and Garrabrant(2018)를 기반으로 삼았습니다. InstructGPT 환경에서 60억 파라미터 보상 모델을 "골드" 보상 모델로 정해 사람 대신 쓰고, 정책이 만든 응답 쌍을 골드 점수로 결정적으로 라벨링해 합성 비교 데이터 10만 개를 만듭니다. 이 데이터로 300만~30억 파라미터의 대리 보상 모델(proxy reward model)을 학습하고, 대리 보상 모델을 PPO 강화학습 또는 best-of-n 샘플링으로 최적화하면서 골드 점수가 어떻게 변하는지 기록합니다. 골드 점수는 언제든 비용 없이 다시 계산할 수 있으므로 과최적화 곡선 전체를 얻습니다. + +최적화 정도는 초기 정책과의 KL 발산의 제곱근 $$d = \sqrt{\mathrm{KL}}$$로 잽니다. best-of-n에서 골드 보상은 다음 형태를 따릅니다. + +$$R_{\text{bo}n}\left(d\right)=d\left(\alpha_{\text{bo}n}-\beta_{\text{bo$n$}}d\right)$$ + +강화학습에서는 다른 형태가 맞았습니다. + +$$R_{\text{RL}}\left(d\right)={d}\left(\alpha_{\text{RL}}-\beta_{\text{RL}}\log{d}\right)$$ + +두 식에서 $$R$$은 초기 정책 대비 골드 보상의 변화이고, $$\alpha$$와 $$\beta$$는 보상 모델 크기와 데이터 양 등에 따라 달라지는 계수입니다. $$\alpha$$는 최적화 초반에 골드 보상이 오르는 기울기를, $$\beta$$는 과최적화로 깎이는 정도를 나타냅니다. 두 식 모두 처음에는 오르다가 정점을 지나 떨어집니다. 미분해서 0으로 두면 best-of-n의 정점은 $$d^{*} = \alpha_{\text{bo}n} / (2\beta_{\text{bo}n})$$이고, 강화학습의 정점은 $$d^{*} = \exp(\alpha_{\text{RL}}/\beta_{\text{RL}} - 1)$$입니다. 두 경우 모두 정점의 위치는 $$\alpha/\beta$$ 비율로만 정해지며, 비율이 클수록 정점이 더 먼 거리에서 옵니다. 정점의 높이는 비율만으로 정해지지 않습니다. 예를 들어 best-of-n의 정점 높이는 $$\alpha_{\text{bo}n}^{2}/(4\beta_{\text{bo}n})$$입니다. + +두 방식이 서로 다른 형태를 따르는 이유도 생각해 볼 만합니다. 식만 보면 best-of-n의 감소 항 $$\beta d^{2}$$는 강화학습의 $$\beta d \log d$$보다 빠르게 커지므로, 정점을 지난 뒤 best-of-n 쪽이 더 가파르게 꺾입니다. 직관적인 해석 하나는 최적화 방식의 차이입니다. best-of-n은 모델 파라미터를 바꾸지 않고, 초기 정책에서 뽑은 $$n$$개 샘플 가운데 대리 점수가 가장 높은 것을 고를 뿐입니다. 거리를 더 늘리려면 샘플 수를 크게 늘려 대리 점수 분포의 극단을 골라야 하고, 그 극단은 대리 모델의 오차가 가장 크게 작용하는 영역입니다. 강화학습은 파라미터를 바꿔 출력 분포 전체를 옮기므로 이동하는 경로가 다르고, KL 페널티 같은 장치의 영향도 받습니다. 이 해석은 함수 형태를 설명하는 하나의 관점일 뿐이고, 저자들이 측정한 것은 어디까지나 두 형태가 각 방식의 곡선에 맞는다는 사실입니다. + +![정책 크기를 12억으로 고정하고 보상 모델 크기를 바꿨을 때 best-of-n 최적화에서 골드 보상과 대리 보상의 변화](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-8.png) + +*출처: [Gao et al., 2022](https://arxiv.org/abs/2210.10760)* + +best-of-n 실험 그래프의 가로축은 제곱근 척도입니다. 대리 보상은 최적화할수록 계속 오르지만, 골드 보상은 오르다가 꺾여 내려갑니다. 대리 지표와 실제 목표가 갈라지는 지점이 Goodhart 법칙의 모습을 그대로 보여 줍니다. 함수 형태가 사후에 끼워 맞춘 것이 아니라는 검증도 있습니다. 12억 정책의 best-of-n 실험에서 저자들은 $$n = 1{,}000$$(KL 약 6 nats)까지의 데이터만으로 형태를 정한 뒤, $$n = 60{,}000$$(KL 약 10 nats)까지를 미리 예측해 맞혔습니다. 데이터 양에도 임계점이 있었습니다. 비교 데이터가 약 2,000개 미만이면 보상 모델 크기와 상관없이 손실이 무작위 수준에서 거의 나아지지 않았습니다. 보상 모델 크기와 데이터 크기 외에 정책 크기와 KL 페널티도 바꿔 가며 계수 변화를 측정했습니다. + +반복 RLHF에 대한 식도 얻었습니다. 같은 총 거리 $$d$$를 $$k$$번으로 나누고, 매번 새 데이터로 보상 모델을 갱신하면 최종 골드 보상은 다음과 같습니다. + +$$R_{\text{RL}}\left(d\right)={d}\left(\alpha_{\text{RL}}-\beta_{\text{RL}}\log\left({d}\right)+\beta_{\text{RL}}\log\left(k\right)\right)$$ + +강화학습 식과 비교하면 $$\beta_{\text{RL}} \log k$$ 항이 더해졌습니다. 반복 횟수를 늘리면 과최적화로 깎이는 부분이 그만큼 상쇄됩니다. 매주 선호 모델을 갱신한 Bai 등의 반복 온라인 학습, 그리고 정적인 피드백이 이상한 행동을 낳았다는 Christiano 등의 관찰과 같은 방향의 결과입니다. 저자들도 Bai 등(2022)을 관련 연구로 듭니다. + +다만 이 법칙이 다루는 것은 대리 보상과 골드 보상 사이의 어긋남뿐입니다. 골드 보상 자체가 실제 사람 의도와 어긋나서 생기는 과최적화는 이 설정 밖에 있습니다. 실험은 InstructGPT 환경 하나에 한정되고, 정책 크기는 두 가지만 봤으며, PPO는 기본 하이퍼파라미터로 돌렸습니다. 합성 설정의 결론이 실제 사람 피드백 환경으로 그대로 옮겨진다는 보장도 없습니다. 대리 보상 점수의 함수 형태는 만족스럽게 맞추지 못했습니다. 더 강력한 모델이 보상 모델의 허점을 적극적으로 찾아내는 적대적 Goodhart 효과도 포착하지 못했으므로, 규모가 커지면 추세가 깨질 가능성이 남습니다. + +### 공개 모델로 넘어간 레시피: Llama 2 + +([Touvron et al., 2023](https://arxiv.org/abs/2307.09288))은 공개 대화 모델이 성능과 안전성 모두에서 비공개 모델에 미치지 못하고, 미세 조정과 안전성 개선 방식이 충분히 공개되지 않아 커뮤니티가 재현하고 발전시키기 어렵다는 문제에서 출발합니다. Llama 2는 70억에서 700억 파라미터 규모의 사전 훈련 모델을 공개하고, 이를 대화용으로 미세 조정한 Llama 2-Chat을 함께 내놓았습니다. + +Llama 2-Chat은 유용성과 안전성을 기준으로 사람이 평가했고, 오픈소스 대화 모델과 비공개 대화 모델을 비교 대상으로 삼았습니다. 유용성과 무해성을 함께 겨냥한 Bai 등의 설정과 같은 두 축입니다. 또 미세 조정과 안전성 개선 접근법을 커뮤니티가 이어서 연구할 수 있도록 자세히 기술했습니다. 가중치와 방법이 함께 공개되면서, 사람 평가로 검증한 대화 모델 위에서 외부 연구자가 정렬 실험을 재현할 기반이 생겼습니다. + +### 단계별로 본 파이프라인의 변화 + +| 논문 | 초기 정책 | 비교 데이터 | 보상 모델 규모 | 정책 최적화 | KL 기준 정책 | +| --- | --- | --- | --- | --- | --- | +| ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)) | 별도 지도학습 단계 없음 | 1~2초 영상 두 개 비교(MuJoCo 700회, 아타리 5,500회 질의) | 보상 예측기 앙상블 | A2C(아타리), TRPO(로봇) | — | +| ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)) | 사전 학습 GPT-2 | 응답 4개 중 최선 선택(스타일 5천 개, 요약 6만 개) | 언어 모델 + 무작위 초기화 선형층 | PPO, 요약은 온라인 라벨 수집 | 사전 학습 모델 $$\rho$$ | +| ([Stiennon et al., 2020](https://arxiv.org/abs/2009.01325)) | Reddit TL;DR 지도학습 미세 조정 모델 | 요약 쌍 비교 | 13억·67억, 지도학습 모델 + 선형 헤드 | PPO, 정책과 분리한 가치 함수 | 지도학습 정책 $$\pi^{\text{SFT}}$$ | +| ([Ouyang et al., 2022](https://arxiv.org/abs/2203.02155)) | 라벨러 시연으로 지도 미세조정한 GPT-3 | 프롬프트당 출력 4~9개 순위 | 60억 | PPO-ptx(사전 훈련 기울기 혼합) | SFT 모델, 토큰별 KL | +| ([Bai et al., 2022](https://arxiv.org/abs/2204.05862)) | — | 매주 새로 모은 사람 피드백 | — | RLHF, 선호 모델과 정책 매주 갱신 | 초기 정책(보상과 KL 관계 분석) | +| ([Gao et al., 2022](https://arxiv.org/abs/2210.10760)) | InstructGPT 환경의 정책(12억 등 두 가지) | 60억 골드 보상 모델이 매긴 합성 비교 10만 개 | 대리 보상 모델 300만~30억 | PPO 또는 best-of-n | 초기 정책 | +| ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288)) | 70억~700억 사전 훈련 모델 | — | — | 대화용 미세 조정 | — | + +([Bai et al., 2022](https://arxiv.org/abs/2204.05862))와 ([Touvron et al., 2023](https://arxiv.org/abs/2307.09288))은 여기서 개요 수준으로만 다루므로, 세부 설정이 정리되지 않은 칸은 비워 두었습니다. + +표를 위에서 아래로 읽으면 변화가 세 가지 보입니다. 첫째, 정책의 출발점이 사전 학습 모델에서 지도학습 모델로 옮겨 갔고, KL 페널티가 묶어 두는 기준 모델도 함께 바뀌었습니다. 보상 모델의 학습 분포와 정책의 출발 분포를 맞추는 방향입니다. 둘째, 라벨 형식이 넷 중 하나 고르기에서 쌍 비교로, 다시 여러 출력의 순위로 바뀌었습니다. 수학적으로는 모두 같은 Bradley-Terry 손실에서 나오며, 달라진 것은 라벨 한 번에서 뽑아내는 비교의 수입니다. 셋째, 데이터를 한 번 모으고 끝내는 대신 정책이 바뀔 때마다 새로 모으는 반복 구조가 Christiano 등부터 Bai 등까지 계속 등장하고, 과최적화 스케일링 법칙의 반복 RLHF 식이 합성 설정에서 그 효과를 정량적으로 보여 줍니다. 다섯 해 동안 손실의 형태는 거의 그대로였습니다. 대신 사람 라벨의 비용, 보상 모델·가치 함수·정책을 함께 돌리는 PPO 루프의 무게, 대리 보상이 실제 선호에서 벗어나는 정도가 점점 더 분명한 문제로 드러났습니다. + +## AI 피드백: 헌법 AI와 RLAIF + +### 헌법 AI: 원칙 목록과 자기 비판 + +앞서 본 RLHF 파이프라인은 수만 건의 사람 비교 라벨을 모아야 했습니다. ([Bai et al., 2022](https://arxiv.org/abs/2212.08073))은 여기에 문제를 두 가지 더 짚습니다. 첫째는 무해성 라벨입니다. 사람이 무해성을 기준으로 응답을 고르면 모델은 회피적인 답변만 하게 되고, 그 결과 유용성과 무해성이 서로 부딪칩니다. 둘째는 투명성입니다. 라벨이 수만 건이나 되면 모델이 정확히 어떤 목표를 배우는지 드러나지 않습니다. 저자들은 사람 감독을 짧은 원칙 목록, 즉 "헌법"으로 바꿨습니다. 모델은 그 원칙에 따라 스스로 답을 비판하고 고치며, 무해성은 모델이 매긴 선호로 학습합니다. 이 방식을 AI 피드백 기반 강화학습(RLAIF)이라고 부릅니다. + +이 논문은 Christiano 등의 RLHF ([Christiano et al., 2017](https://arxiv.org/abs/1706.03741)), Wei 등(2022)의 사고 사슬(chain-of-thought), Ganguli 등(2022)의 레드팀 연구, Kadavath 등(2022)을 기반으로 삼았습니다. 비교 대상은 사람 피드백으로 학습한 유용·무해 RLHF 모델 ([Bai et al., 2022](https://arxiv.org/abs/2204.05862))입니다. + +![헌법 원칙이 이끄는 지도 학습 단계(비판·수정)와 강화학습 단계(AI 선호 라벨, 선호 모델, RL)로 이루어진 헌법 AI 과정 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-9.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2212.08073)* + +과정 도식은 지도 학습 단계와 강화학습 단계로 이루어집니다. 비판과 수정을 이끌고 AI 피드백을 이끄는 것이 모두 헌법에서 뽑은 원칙입니다. + +1. **지도 학습 단계(SL-CAI)**: 유용성만 학습한 RLHF 모델이 레드팀 프롬프트에 답합니다. 그다음 헌법에서 무작위로 뽑은 원칙 하나를 기준으로 자기 답변을 비판하고, 비판에 맞춰 답변을 고칩니다. 이 비판과 수정을 여러 번 반복합니다. 이렇게 고친 답변을 유용성 응답과 섞어 사전 훈련 모델을 미세조정하면 SL-CAI가 됩니다. 레드팀 프롬프트는 사람이 쓴 42,496개와 모델이 만든 140,335개를 더해 모두 182,831개였습니다. +2. **강화학습 단계(RL-CAI)**: SL-CAI가 강화학습의 출발점입니다. SL-CAI가 프롬프트마다 답변을 두 개 만들면, 피드백 모델이 16개 원칙 가운데 무작위로 뽑은 원칙에 따라 더 무해한 쪽을 객관식으로 고릅니다. 이렇게 얻은 비교 데이터와 사람이 단 유용성 비교를 섞어 선호 모델을 학습합니다. 그 선호 모델을 보상으로 SL-CAI를 강화학습하면 RL-CAI가 됩니다. 선호 모델 학습에는 사람의 유용성 비교 135,296개와 헌법 기반 무해성 비교 182,831개를 썼습니다. + +피드백 모델은 둘 중 하나를 딱 잘라 고르지 않습니다. 객관식 질문의 두 선택지에 피드백 모델이 매긴 로그 확률을 $$\ell_A$$, $$\ell_B$$라고 하겠습니다. 저자들은 이 두 값을 정규화해 소프트 라벨로 썼습니다. + +$$p_A = \frac{\exp(\ell_A)}{\exp(\ell_A)+\exp(\ell_B)}, \qquad p_B = 1 - p_A$$ + +$$p_A$$는 응답 A가 더 무해하다고 피드백 모델이 판단하는 정도입니다. 피드백 모델이 A를 70%, B를 30%로 본다면 $$p_A = 0.7$$이 학습 목표가 됩니다. 이렇게 소프트 라벨은 0과 1 사이의 연속값을 냅니다. 피드백 모델이 사고 사슬로 먼저 추론한 뒤 답을 고르는 경우에는 이 확률을 40~60% 범위로 제한했습니다. + +저자들은 AI가 매긴 비교를 믿을 수 있는지도 따로 확인했습니다. BIG Bench에 있는 원래 HHH 평가의 비교 221개에서 언어 모델의 이진 정확도는 90%를 넘었습니다. 저자들은 여기에 비교 217개를 새로 써서 평가를 모두 438개로 넓혔습니다. + +![크라우드워커 비교로 계산한 RL 실행들의 무해성 대 유용성 Elo 점수 그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-10.png) + +*출처: [Bai et al., 2022](https://arxiv.org/abs/2212.08073)* + +Elo 그래프는 크라우드워커가 모델 응답을 비교해 매긴 점수입니다. 유용성 축과 무해성 축에서 AI 피드백으로 학습한 RL-CAI가 사람 피드백 모델들과 비교해 어디에 놓이는지를 보면 됩니다. 저자들은 RL-CAI가 회피하지 않으면서도 해롭지 않은 어시스턴트가 되었다고 결론 내립니다. + +한계는 저자들이 직접 밝혔습니다. 사람 라벨을 모두 없애지는 못했고, 유용성 라벨은 여전히 사람 피드백에 의존합니다. 원칙 16개는 연구용으로 임의로 고른 것입니다. 모델이 만든 비판은 부정확하거나 과장된 경우가 많았고, 선호 모델 점수는 높은 값에서 보정이 어긋났습니다. RL-CAI를 지나치게 학습하면 너무 엄격해지거나 상투적인 문구를 되풀이했습니다. 이 현상은 앞서 본 보상 과최적화와 닮은 모습으로 읽을 수 있습니다. + +### RLAIF: 기성 LLM의 선호로 보상 모델 학습하기 + +헌법 AI에서 AI 피드백은 무해성 비교에만 쓰였고, 유용성 라벨은 여전히 사람이 달았습니다. ([Lee et al., 2023](https://arxiv.org/abs/2309.00267))은 헌법 AI와 RLAIF를 기반으로 삼아 질문을 넓혔습니다. 고품질 선호 라벨을 모으는 비용이 RLHF 확장을 가로막는다면, 기성 LLM이 만든 선호로 그 라벨 전체를 대신할 수 있는지 묻습니다. + +방법은 고전적 RLHF와 같고, 라벨을 다는 주체만 다릅니다. 기성 LLM이 응답 쌍에 선호 라벨을 달고, 그 라벨로 보상 모델을 학습한 뒤 강화학습으로 정책을 최적화합니다. 저자들은 요약, 유용한 대화 생성, 무해한 대화 생성 세 과제에서 이 방식을 RLHF 및 지도 미세조정 기준선과 비교했습니다. 저자들은 AI 피드백으로 학습해도 RLHF와 비슷한 성능이 나온다고 보고합니다. + +실험 설계에서는 두 가지가 눈에 띕니다. 첫째, AI 라벨러를 정책과 같은 크기로 두거나 초기 정책과 같은 체크포인트로 둔 경우도 실험했습니다. 라벨러가 정책보다 나은 모델이 아닐 때에도 모델이 스스로를 개선할 수 있는지 보려는 실험입니다. 둘째, d-RLAIF는 보상 모델 학습 단계를 건너뜁니다. 강화학습을 하는 동안 기성 LLM에 직접 물어 보상을 받으므로 대리 보상 모델을 따로 두지 않습니다. 다만 이 방식들의 성능은 기성 LLM 라벨러의 품질에 좌우됩니다. + +두 논문을 나란히 놓으면 피드백 출처가 어떻게 옮겨 갔는지 보입니다. 헌법 AI는 사람이 쓴 원칙을 거쳐 무해성 판단만 모델에 넘겼습니다. RLAIF는 기성 LLM의 판단을 과제 전반의 선호 라벨로 썼고, d-RLAIF는 학습된 보상 모델 대신 LLM을 보상 함수로 직접 호출했습니다. 사람이 맡던 일도 비교 라벨을 하나하나 다는 것에서 원칙을 쓰고 라벨러 모델을 고르는 것으로 바뀌었습니다. 온라인 반복 RLHF ([Dong et al., 2024](https://arxiv.org/abs/2405.07863))는 공개 데이터셋으로 만든 대리 선호 모델을 사람 피드백 대신 씁니다. 사람 피드백을 새로 모으지 않고 학습된 모델을 라벨러로 쓴다는 점에서 이 흐름과 나란히 비교할 수 있습니다. + +## 직접 선호 최적화: DPO와 그 일반화 + +### DPO: 언어 모델 안에 숨어 있던 보상 모델 + +앞서 본 RLHF는 단계가 많습니다. 선호 비교로 보상 모델을 학습하고, 그 보상 모델을 상대로 PPO 루프를 돌리며, 루프 안에서 정책이 계속 새 응답을 샘플링합니다. ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290))은 이 구조가 복잡하고 불안정하며 계산 비용이 크다고 지적합니다. 학습 중 정책에서 샘플링해야 하고, 하이퍼파라미터도 많이 조정해야 하기 때문입니다. DPO가 대체하려는 대상은 Ziegler 등 이후의 RLHF 파이프라인 ([Ziegler et al., 2019](https://arxiv.org/abs/1909.08593)) 전체입니다. 강화학습을 쓰지 않고 이진 분류 손실 하나로 같은 목적함수를 정확히 최적화하려고 합니다. + +출발점은 RLHF 목적함수 그대로입니다. 보상 $$r(x,y)$$의 기댓값을 최대화하면서 참조 정책(reference policy) $$\pi_{\text{ref}}$$와의 KL 발산을 계수 $$\beta$$로 벌점 주는 문제입니다. 파라미터화된 정책이 아니라 가능한 모든 정책 위에서 이 문제를 풀면 해가 닫힌 형태로 나옵니다. + +$$\pi_{r}(y\mid x)=\frac{1}{Z(x)}\pi_{\text{ref}}(y\mid x)\exp\left(\frac{1}{\beta}r(x,y)\right)$$ + +$$\pi_r$$은 보상 $$r$$에 대한 최적 정책이고, $$Z(x)$$는 모든 $$y$$에 대한 합이 1이 되도록 맞추는 분배 함수(partition function)입니다. 참조 정책의 확률에 보상의 지수를 곱해 다시 정규화한 꼴입니다. 보상이 높은 응답일수록 확률이 커지고, $$\beta$$가 클수록 참조 정책에서 덜 벗어납니다. 이 식은 이미 알려진 결과이지만 그대로 쓸 수는 없습니다. $$Z(x)$$를 구하려면 가능한 모든 응답에 대해 합을 내야 하는데, 언어 모델의 응답 공간에서는 그 계산이 불가능하기 때문입니다. + +DPO는 이 식을 반대 방향으로 읽습니다. 양변에 로그를 취해 보상에 대해 정리하면 보상이 정책의 함수로 바뀝니다. + +$$r(x,y)=\beta\log\frac{\pi_{r}(y\mid x)}{\pi_{\text{ref}}(y\mid x)}+\beta\log Z(x)$$ + +보상은 최적 정책과 참조 정책의 로그 비율에 $$\beta$$를 곱한 값과, 응답과 무관한 항 $$\beta\log Z(x)$$의 합입니다. 여기서 Bradley-Terry 모델의 성질이 중요해집니다. 선호 확률은 두 응답 보상의 차이에만 의존하므로, 같은 $$x$$에 대해 두 응답의 보상을 빼면 $$\beta\log Z(x)$$가 상쇄됩니다. 계산할 수 없던 항이 사라지고, 선호 확률이 정책과 참조 정책만의 함수가 됩니다. 그러면 선호 데이터의 최대 우도 손실을 보상 모델이 아니라 정책 $$\pi_\theta$$에 대해 바로 쓸 수 있습니다. + +$$\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]$$ + +$$\mathcal{D}$$는 프롬프트 $$x$$, 선호 응답 $$y_w$$, 비선호 응답 $$y_l$$로 이루어진 비교 데이터셋이고 $$\sigma$$는 시그모이드입니다. 괄호 안의 두 항 $$\beta\log(\pi_\theta/\pi_{\text{ref}})$$를 DPO는 암묵적 보상(implicit reward)이라고 부릅니다. Stiennon 등의 보상 모델 손실과 모양이 똑같고, 보상 모델 $$r_\theta$$ 자리에 정책의 로그 비율이 들어갔을 뿐입니다. 논문 제목처럼 언어 모델이 곧 보상 모델이 됩니다. + +![보상 모델 학습 후 강화학습하는 기존 RLHF와, 선호 데이터에서 분류 손실로 정책을 바로 학습하는 DPO를 나란히 비교한 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-11.png) + +*출처: [Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)* + +두 파이프라인을 나란히 놓은 도식에서 DPO 쪽에는 보상 모델 학습과 강화학습 루프가 빠져 있습니다. 선호 데이터에서 최종 정책까지 화살표 하나로 이어지고, 그 화살표가 분류 손실 최적화입니다. + +기울기를 보면 이 손실이 무엇을 하는지 드러납니다. 기울기는 선호 응답의 가능도를 높이고 비선호 응답의 가능도를 낮춥니다. 그리고 암묵적 보상이 순서를 잘못 매긴 예제, 즉 $$y_l$$에 더 높은 암묵적 보상을 주고 있는 예제에 더 큰 가중치를 줍니다. 이미 올바르게 구분한 쌍은 시그모이드가 포화되어 거의 기여하지 않습니다. 저자들은 PPO, Best of N, 선호 응답만으로 미세 조정하는 Preferred-FT와 함께 비우도(unlikelihood) 학습과도 비교했습니다. 참조 정책으로는 SFT 모델을 쓰고, SFT 모델이 없으면 선호 응답의 가능도를 최대화해 만듭니다. 학습 중에는 샘플링이 필요 없고, 보상 모델도 따로 필요 없습니다. + +![참조 정책과의 KL 발산에 따른 기대 보상의 경계를 방법별로 비교한 그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-12.png) + +*출처: [Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)* + +경계 그래프의 가로축은 참조 정책과의 KL 발산, 세로축은 기대 보상입니다. 같은 목적함수를 풀면서 참조 정책에서 얼마나 멀어졌는지와 보상을 얼마나 얻었는지를 한 평면에 놓고 방법끼리 비교합니다. + +요약 과제에서 GPT-J SFT 모델로 출발해 Reddit TL;DR 테스트 분할을 온도 0.0으로 생성했을 때, GPT-4가 판정한 사람 작성 요약 대비 승률은 DPO가 약 61%, PPO가 57%였습니다. TL;DR로 학습한 정책을 분포 밖 입력인 CNN/DailyMail에 적용했을 때 정답 요약 대비 승률은 DPO가 0.36(온도 0)과 0.31(온도 0.25), PPO가 0.26과 0.23이었습니다. 사람 평가에서도 DPO(온도 0.25) 샘플이 PPO(온도 0) 샘플보다 58% 비율로 선호됐습니다. 저자들은 GPT-4를 평가자로 써도 되는지도 확인했습니다. DPO 대 PPO 비교에서 GPT-4와 사람의 판단 일치율은 67%로, 사람끼리의 일치율 65%와 비슷했습니다. + +저자들이 남긴 질문은 세 가지입니다. 명시적 보상 함수로 학습한 경우와 비교한 분포 밖 일반화는 초기 결과만 있습니다. 실험은 최대 60억 파라미터 모델까지였습니다. 그리고 보상 모델이 없는 방법에서 보상 과최적화가 어떤 모습으로 나타나는지 불분명했습니다. 저자들은 학습 후반에 성능이 약간 떨어지는 현상이 그 사례인지도 모른다고 적었습니다. + +### ΨPO와 IPO: Bradley-Terry 가정을 걷어내다 + +DPO의 유도는 Bradley-Terry 모델에 기대고 있습니다. ([Azar et al., 2023](https://arxiv.org/abs/2310.12036))은 이 가정에서 문제를 찾습니다. RLHF와 DPO는 둘 다 쌍별 선호를 점별 보상으로 바꿀 수 있다고 가정합니다. 그래서 선호가 결정적이거나 거의 결정적이면 KL 정규화가 약해져 모델이 선호 데이터에 과적합합니다. + +이유는 Bradley-Terry 식을 거꾸로 따라가면 보입니다. 데이터에서 $$y_w$$가 항상 이긴다면 선호 확률은 1이고, 시그모이드가 1이 되려면 보상 차이가 무한대여야 합니다. DPO에서는 그 보상 차이가 로그 비율의 차이이므로, 손실을 계속 줄이려면 $$\pi_\theta(y_l\mid x)$$를 0으로 밀어붙여야 합니다. $$\beta$$는 무한대로 가는 속도만 바꿀 뿐 도착점을 바꾸지 못합니다. + +저자들은 먼저 선호 확률만으로 쓴 일반 목적함수를 세웁니다. + +$$\max_{\pi}\mathop{\mathbb{E}}_{\begin{subarray}{c}x\sim\rho\\ +y\sim\pi(.|x)\\ +y^{\prime}\sim\mu(.|x)\end{subarray}}[\Psi(p^{*}(y\succ y^{\prime}|x))]-\tau D_{\text{KL}}(\pi\;||\;\pi_{\text{ref}})\,.$$ + +$$\rho$$는 프롬프트 분포, $$\mu$$는 비교 상대 응답 $$y'$$을 뽑는 행동 정책, $$p^{*}(y\succ y'\mid x)$$는 $$y$$가 $$y'$$보다 선호될 실제 확률입니다. $$\Psi$$는 선호 확률에 적용하는 비감소 함수이고, $$\tau$$는 참조 정책과의 KL을 벌점 주는 계수로 DPO의 $$\beta$$에 해당합니다. 보상이라는 개념이 식 어디에도 없습니다. 정책은 상대 응답을 이길 확률을 $$\Psi$$로 변환한 값을 최대화합니다. 이 목적함수의 최적 정책도 닫힌 형태로 나옵니다. + +$$\pi^{*}(y)\propto\pi_{\text{ref}}(y)\exp\Big(\tau^{-1}\mathbb{E}_{y^{\prime}\sim\mu}[\Psi(p^{*}(y\succ y^{\prime}))]\Big)\,.$$ + +DPO가 출발한 최적 정책 식과 구조가 같고, 보상 자리에 "$$\mu$$에서 뽑은 상대를 이기는 정도"가 들어갔습니다. $$\Psi$$를 로짓 함수로 두고 Bradley-Terry 모델이 성립한다고 가정하면, 로짓이 시그모이드를 풀어 보상 차이를 되돌려 주므로 RLHF와 DPO가 이 목적함수의 특수한 경우가 됩니다. 저자들은 같은 틀로 문제의 원인을 설명합니다. 로짓은 확률 0과 1 근처에서 무한대로 발산하므로, 선호 확률이 극단에 가까우면 지수 안의 값이 $$\tau$$를 압도해 최적 정책이 $$\tau$$와 무관하게 퇴화합니다. + +해결책은 $$\Psi$$를 유계 함수로 바꾸는 것이고, 가장 단순한 선택이 항등함수입니다. 이것이 IPO입니다. 이 경우 최적 정책을 구하는 문제는 근 찾기 문제가 되고, 저자들은 이를 정책에 대한 제곱 손실 하나로 바꿉니다. + +$$\underset{(y_{w},y_{l})\sim D}{\mathbb{E}}\left[\left(h_{\pi}(y_{w},y_{l})-\frac{\tau^{-1}}{2}\right)^{2}\right]$$ + +$$h_\pi(y_w,y_l)$$는 정책과 참조 정책의 로그 우도비를 두 응답에 대해 뺀 값, 즉 $$\log\frac{\pi(y_w)}{\pi_{\text{ref}}(y_w)}-\log\frac{\pi(y_l)}{\pi_{\text{ref}}(y_l)}$$입니다. DPO 손실의 괄호 안과 같은 양에서 $$\beta$$만 뺀 것입니다. 차이는 손실의 모양에 있습니다. DPO는 이 차이를 시그모이드에 넣어 무한히 키울수록 손실이 줄지만, IPO는 이 차이를 유한한 목표 $$\tau^{-1}/2$$로 회귀합니다. 목표를 넘어서면 오히려 손실이 커지므로, 모든 쌍에서 선호가 결정적이어도 로그 비율 차이는 정해진 값에 머뭅니다. 정규화 강도 $$\tau$$가 목표값을 직접 정하므로 KL 정규화가 사라지지 않습니다. 이 손실의 전역 최적해는 유일하고, 최소화는 참조 정책에서 시작합니다. + +저자들은 행동이 둘인 밴딧에서 그 효과를 해석적으로 계산합니다. $$\pi_{\text{ref}}$$와 $$\mu$$가 균등하고 $$y_1$$이 항상 선호될 때, IPO의 최적 정책은 $$\pi^{*}(y_1)=\sigma(0.5\tau^{-1})$$입니다. $$\tau$$가 커지면 균등 정책으로 수렴하므로, 선호가 결정적이어도 정규화가 확률을 1에서 떼어 놓습니다. + +![한 선호 데이터셋에서 IPO와 DPO가 학습하는 동안 각 행동 확률이 변하는 곡선 비교](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-13.png) + +*출처: [Azar et al., 2023](https://arxiv.org/abs/2310.12036)* + +해석적 결과대로라면 IPO의 행동 확률은 $$\tau$$로 정해지는 0과 1 사이의 값에서 멈춰야 하고, 결정적 선호를 받은 DPO는 극단으로 계속 밀려야 합니다. 학습 곡선에서 확인할 것은 두 방법의 확률이 각각 이 예측대로 수렴하는지입니다. + +![구성이 다른 또 하나의 선호 데이터셋에서 IPO와 DPO의 행동 확률 학습 곡선 비교](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-14.png) + +*출처: [Azar et al., 2023](https://arxiv.org/abs/2310.12036)* + +저자들은 구성을 바꾼 데이터셋에서도 같은 비교를 반복했습니다. + +검증 범위는 좁습니다. 실험은 행동 3개짜리 단순 밴딧 예제뿐이고, 실제 언어 모델과 사람 선호 데이터로는 검증하지 않았습니다. 비교 대상도 DPO뿐이고 RLHF나 다른 방법과 실증 비교하지는 않았습니다. 최적해의 유일성도 $$\mu$$와 $$\pi_{\text{ref}}$$의 지지집합이 같아야 성립하고, 그렇지 않으면 최적해가 무수히 많을 수 있습니다. 그래도 ΨPO는 RLHF와 DPO를 같은 목적함수의 두 경우로 놓았고, 보상 없이 선호 확률만으로 정렬 문제를 쓰는 틀을 제공했습니다. + +### KTO: 쌍이 아니라 좋고 나쁨만으로 + +DPO와 IPO는 모두 같은 프롬프트에 대한 응답 쌍과 그 비교 라벨을 요구합니다. ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306))은 이 데이터 형식 자체를 문제 삼습니다. 선호 쌍 데이터는 구하기 어렵고 비쌉니다. 저자들은 기존 손실이 선호의 로그 우도를 최대화할 뿐, 사람이 결과를 인식하는 방식, 예컨대 같은 크기의 이득보다 손실을 더 크게 느끼는 손실 회피를 직접 반영하지 않는다고도 지적합니다. + +이론적 바탕은 카너먼과 트버스키의 전망 이론입니다. 전망 이론에서 사람은 결과의 절대값이 아니라 참조점 대비 이득과 손실로 결과를 평가하고, 손실 쪽 기울기가 더 가파릅니다. 저자들은 먼저 DPO와 PPO-Clip이 사람 인식 손실(HALO) 계열에 속함을 보입니다. 그다음 가치 함수를 직접 설계해, 선호 우도가 아니라 생성물의 효용을 최대화하는 손실을 만듭니다. + +$$L_{\text{KTO}}(\pi_{\theta},\pi_{\text{ref}})=\mathbb{E}_{x,y\sim D}[\lambda_{y}-v(x,y)]\\$$ + +$$D$$는 출력 하나하나에 바람직함 여부만 붙은 데이터셋이고, $$\lambda_y$$는 그 출력이 바람직하면 $$\lambda_D$$, 나쁘면 $$\lambda_U$$입니다. $$v(x,y)$$는 정책이 그 출력에서 얻는 가치이며, 손실은 가치가 최대치 $$\lambda_y$$에 얼마나 못 미치는지를 잽니다. 가치 함수는 이렇게 정의합니다. + +$$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}\\$$ + +$$r_\theta(x,y)$$는 참조 모델 대비 로그 확률비로, DPO의 암묵적 보상에서 $$\beta$$를 뺀 양입니다. $$z_0$$는 참조점이고, $$\beta$$는 위험 회피 정도를 정합니다. 바람직한 출력은 암묵적 보상이 참조점보다 높을수록, 나쁜 출력은 참조점보다 낮을수록 가치가 커집니다. 비교 상대가 다른 응답이 아니라 참조점이므로 쌍이 필요 없습니다. 가치 함수는 로지스틱 함수로 바꿨으므로, 참조점에서 멀리 떨어진 출력일수록 기울기가 0에 가까워집니다. + +구현상 핵심은 참조점 $$z_0$$입니다. KTO는 정책과 참조 모델 사이의 KL 발산을 참조점으로 쓰고, 이 항으로는 역전파하지 않습니다. KL은 같은 마이크로배치 안에서 출력을 한 칸씩 밀어, 프롬프트와 맞지 않는 응답을 짝지은 불일치 쌍으로 추정합니다. 0 이하의 추정치는 잘라냅니다. 선호 쌍 데이터가 있으면 $$y_w$$를 바람직한 예, $$y_l$$을 나쁜 예로 나눠 씁니다. 두 종류의 수가 불균형하면 $$\lambda_D$$와 $$\lambda_U$$의 비율로 보정합니다. 저자들은 학습률로 DPO의 2~10배, 기본값 5e-6이 적합하다고 보고합니다. + +![여러 모델 규모에서 KTO와 DPO로 정렬한 모델의 GPT-4 판정 승률을 비교한 막대그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-15.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +규모별 막대그래프의 승률은 정렬된 모델의 생성물을 SFT 타깃으로 쓰였을 출력과 비교한 GPT-4 판정 승률이며, 오차 막대는 90% 이항 신뢰구간입니다. 그중 Mistral-7B를 OpenAssistant로 정렬했을 때 승률은 KTO 0.652 ± 0.036, 프롬프트당 출력을 하나만 쓴 KTO 0.631 ± 0.036, DPO 0.600 ± 0.037이었습니다. 신뢰구간이 겹치므로 GPT-4 판정만으로는 차이가 크지 않습니다. 같은 Mistral 7B의 OpenAssistant 테스트 프롬프트 214개로 한 사람 평가에서는 KTO 72.9% ± 5.3, DPO 62.1% ± 5.7로 간격이 더 벌어졌습니다. Zephyr-β-SFT를 UltraFeedback으로 1 에폭 정렬할 때 DPO를 KTO로 바꾸면 GSM8K 정확도가 13.5점 올랐습니다. + +![바람직한 예의 비율을 줄인 불균형 데이터로 KTO 정렬한 Llama-7B와 DPO 정렬 모델의 성능 비교](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-16.png) + +*출처: [Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)* + +불균형 실험은 바람직한 예를 점점 덜어 낸 데이터로 KTO를 학습해 DPO 기준선과 겨룹니다. Llama-7B에서 바람직한 데이터를 최대 90%까지 버려도 KTO는 DPO 이상의 성능을 유지했습니다. 쌍 구조를 맞출 필요가 없으니 이렇게 한쪽으로 치우친 데이터도 그대로 쓸 수 있습니다. + +저자들은 한계도 분명히 적었습니다. 근거로 삼은 가치 함수는 금전적 도박에서 나온 것이어서, 사람이 텍스트의 좋고 나쁨을 인식하는 방식과는 거의 확실히 다릅니다. 선호 쌍을 단순히 바람직한 출력과 나쁜 출력으로 나눴고, 더 정교한 분해는 시도하지 않았습니다. 잡음과 비일관성이 적은 선호 데이터에서는 KTO가 어려운 예제를 무시해 과소적합할 위험이 있고, 그런 데이터에서는 DPO가 더 나을 수 있습니다. + +### 보상 모델 없이도 생기는 과최적화 + +DPO 계열은 보상 모델을 따로 두지 않으므로, 대리 보상을 지나치게 최적화하는 문제에서 벗어난 것처럼 보입니다. ([Rafailov et al., 2024](https://arxiv.org/abs/2406.02900))은 그렇지 않다는 문제의식에서 출발합니다. DPO 같은 직접 정렬 알고리즘(DAA)도 고전적 RLHF와 비슷하게 성능이 나빠지지만, 이 현상은 정의된 적조차 없었습니다. DPO 저자들이 학습 후반의 성능 하락을 두고 남긴 의문과 같은 주제입니다. + +저자들은 먼저 보상 해킹(reward hacking)을 DAA에 맞게 정의합니다. DAA에는 별도의 대리 보상 모델이 없기 때문입니다. 그다음 목적함수, 훈련 방식, 모델 규모를 바꿔 가며 DAA를 실험했습니다. KL 예산을 폭넓게 바꾸면서 성능 변화를 관찰했고, 데이터셋 한 에포크를 마치기 전인 훈련 초기 구간도 함께 살폈습니다. 결론은 높은 KL 예산에서 DAA가 고전적 RLHF와 비슷한 성능 저하 양상을 보인다는 것입니다. 보상 모델을 없애도 참조 정책에서 멀리 갈수록 품질이 꺾이는 현상은 남습니다. 고전적 RLHF의 과최적화 스케일링 법칙 ([Gao et al., 2022](https://arxiv.org/abs/2210.10760))과 비슷한 질문을 보상 모델이 정책 안에 들어간 설정에서 다룹니다. 다만 DAA에는 별도의 대리 보상 모델이 없으므로, 보상 해킹의 정의도 보상 모델이 있는 경우만큼 명확하지 않습니다. + +### 세 손실의 비교 + +| 손실 | 필요한 데이터 형태 | 선호에 대한 가정 | 정규화 방식 | 손실의 형태 | +| --- | --- | --- | --- | --- | +| DPO ([Rafailov et al., 2023](https://arxiv.org/abs/2305.18290)) | 프롬프트별 선호·비선호 응답 쌍 | Bradley-Terry 모델 | 계수 $$\beta$$의 참조 정책 KL, 로그 비율에 내장 | 암묵적 보상 차이에 대한 로지스틱 손실 | +| IPO ([Azar et al., 2023](https://arxiv.org/abs/2310.12036)) | 프롬프트별 응답 쌍 | 선호 확률만 사용, Bradley-Terry 가정 없음 | 로그 우도비 차이를 유한한 목표 $$\tau^{-1}/2$$로 고정 | 로그 우도비 차이에 대한 제곱 회귀 손실 | +| KTO ([Ethayarajh et al., 2024](https://arxiv.org/abs/2402.01306)) | 출력별 바람직함·나쁨 이진 신호, 불균형 허용 | 전망 이론의 손실 회피 가치 함수 | 배치에서 추정한 KL 참조점 $$z_0$$, 역전파 없음 | 참조점 대비 시그모이드 가치 손실 | + +세 손실은 모두 같은 양, 즉 정책과 참조 정책의 로그 확률비를 다룹니다. 서로 다른 것은 그 양을 무엇과 비교하고 얼마나 멀리 밀도록 허용하느냐입니다. DPO는 쌍 안의 다른 응답과 비교하고 상한을 두지 않습니다. IPO는 같은 비교에 고정된 목표를 줘서 결정적 선호에서도 멈추게 합니다. KTO는 비교 상대를 배치에서 추정한 KL 참조점으로 바꿔 쌍 자체를 없앴습니다. 세 방법 모두 참조 정책을 손실 안에 들고 다니고, 그 참조 정책이 정규화의 닻입니다. DAA 과최적화 연구가 보여 주듯 높은 KL 예산에서 품질이 떨어지는 현상은 그대로 남습니다. DPO는 학습 중 샘플링이 필요 없고, IPO도 오프라인 손실입니다. + +## 참조 모델 없이: RRHF, ORPO, SimPO + +DPO 계열의 손실은 모두 참조 정책을 손실 안에 넣고 다닙니다. 학습하는 동안 정책 외에 고정된 참조 모델을 메모리에 올려 두고, 배치마다 그 모델로 순전파를 한 번 더 돌려야 합니다. 참조 모델은 보통 SFT를 먼저 마친 체크포인트이므로, 선호 학습 앞에 SFT 단계도 하나 더 붙습니다. RRHF, ORPO, SimPO는 모두 정렬 파이프라인을 가볍게 만들려 했습니다. RRHF는 PPO의 복잡한 구조를 순위 손실로 바꿨고, ORPO는 SFT와 선호 정렬을 한 손실로 합쳤으며, SimPO는 DPO의 보상에서 참조 모델을 빼고 길이로 정규화했습니다. + +### RRHF: 여러 응답의 순위를 맞추는 손실 + +([Yuan et al., 2023](https://arxiv.org/abs/2304.05302))은 DPO보다 조금 앞서 나왔고, PPO에 대한 불만에서 출발했습니다. InstructGPT 방식의 PPO는 하이퍼파라미터에 민감하고, 표준 구현에는 모델이 여러 개 필요합니다. 그래서 학습이 어렵고 더 큰 파라미터 규모로 키우기도 어렵습니다. RRHF는 InstructGPT의 틀과 SFT, 보상 모델 학습을 기반으로 삼아 이 문제를 순위 학습으로 바꿨습니다. + +방법은 단순합니다. 한 프롬프트에 대한 응답을 여러 출처에서 모읍니다. 학습 중인 모델 자신의 응답, 다른 대규모 언어 모델의 응답, 사람 전문가의 응답이 함께 들어갑니다. 각 응답에는 모델이 매긴 조건부 확률의 로그로 점수를 줍니다. 그다음 순위 손실로 이 점수의 순서가 사람의 선호 순서와 일치하도록 모델을 학습합니다. 정책은 강화학습 루프 없이 이 손실로 바로 갱신됩니다. 튜닝하는 동안 필요한 모델은 1~2개이고, 코드와 모델 수, 하이퍼파라미터 모두 PPO보다 적습니다. 저자들은 RRHF를 SFT와 보상 모델 학습을 확장한 형태로 봅니다. SFT가 좋은 응답 하나의 가능도를 올린다면, RRHF는 여러 응답의 가능도를 선호 순서대로 줄 세웁니다. + +이 구조는 DPO의 암묵적 보상과 닮은 데가 있습니다. 응답의 점수를 별도의 보상 모델이 아니라 정책의 로그 확률에서 읽어 냅니다. 다만 RRHF의 점수는 조건부 확률의 로그 그 자체이고, 참조 모델과의 비율은 들어 있지 않습니다. + +저자들이 밝힌 한계는 둘입니다. 첫째, 성능이 샘플링 품질에 크게 좌우됩니다. 후보 응답 가운데 좋은 것이 있어야 그쪽으로 끌어올릴 수 있으므로, RRHF는 best-of-n 학습기에 가깝습니다. 둘째, 평가가 Helpful and Harmless 데이터셋에 한정됩니다. + +### ORPO: SFT 손실에 오즈비 항을 더하다 + +([Hong et al., 2024](https://arxiv.org/abs/2403.07691))은 기존 선호 정렬이 다단계 과정이라는 데서 출발합니다. SFT 워밍업 단계가 먼저 있고, 그 결과물을 참조 모델로 삼아 다시 선호 정렬을 합니다. 저자들은 SFT 단계 자체의 문제도 짚습니다. SFT는 선택된 응답의 가능도를 올리도록 학습하지만, 그 과정에서 거부된 응답의 확률도 함께 올라갑니다. SFT 손실에는 이를 막는 장치가 없습니다. 저자들은 SFT를 하는 바로 그 단계에서 거부 응답을 조금씩 눌러 주면 별도의 정렬 단계와 참조 모델이 필요 없다고 봤습니다. + +![SFT 후 참조 모델을 두고 정렬하는 RLHF·DPO와, 음의 로그 가능도 손실에 로그 오즈비 항을 붙여 한 단계로 정렬하는 ORPO를 비교한 도식](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-17.png) + +*출처: [Hong et al., 2024](https://arxiv.org/abs/2403.07691)* + +정렬 기법을 나란히 놓은 도식에서 RLHF와 DPO는 SFT 모델에서 갈라져 나오는 두 번째 단계를 거칩니다. ORPO에는 그 단계가 없고, 선택된 응답에 대한 SFT 손실과 거부된 응답을 누르는 오즈비 항을 한 번에 줍니다. + +ORPO의 중심 양은 오즈입니다. + +$$\textbf{odds}_{\theta}(y|x)=\frac{P_{\theta}(y|x)}{1-P_{\theta}(y|x)}$$ + +$$P_\theta(y\mid x)$$는 입력 $$x$$가 주어졌을 때 모델 $$\theta$$가 출력 $$y$$를 생성할 확률이고, 오즈는 그 확률을 생성하지 않을 확률로 나눈 값입니다. 확률이 0.5이면 오즈는 1이고, 확률이 1에 가까워질수록 오즈는 빠르게 커집니다. 선택된 응답 $$y_w$$와 거부된 응답 $$y_l$$의 오즈를 비교하는 손실은 다음과 같습니다. + +$$\mathcal{L}_{OR}=-\log\sigma\left(\log\frac{\textbf{odds}_{\theta}(y_{w}|x)}{\textbf{odds}_{\theta}(y_{l}|x)}\right)$$ + +$$\sigma$$는 시그모이드입니다. 로그 오즈비가 클수록, 즉 모델이 $$y_w$$를 $$y_l$$보다 상대적으로 더 생성하려 할수록 손실이 작아집니다. 모양은 DPO 손실과 같은 로그 시그모이드이지만 안에 들어가는 양이 다릅니다. DPO는 정책과 참조 모델의 로그 확률비를 두 응답에 대해 뺐고, ORPO는 정책 하나만으로 계산한 두 응답의 오즈를 비교합니다. 참조 모델은 식 어디에도 없습니다. 전체 목적함수는 이 항을 SFT 손실에 더한 것입니다. + +$$\mathcal{L}_{ORPO}=\mathbb{E}_{(x,y_{w},y_{l})}\left[\mathcal{L}_{SFT}+\lambda\cdot\mathcal{L}_{OR}\right]$$ + +$$\mathcal{L}_{SFT}$$는 선택된 응답 $$y_w$$에 대한 음의 로그 가능도, 곧 평소의 SFT 손실이고, $$\lambda$$는 오즈비 손실의 가중치입니다. 참조 모델이 하던 닻 노릇은 SFT 항이 맡습니다. 모델은 선택된 응답을 계속 흉내 내면서, 동시에 거부된 응답보다 선택된 응답의 오즈를 키웁니다. + +기울기를 풀어 보면 두 부분이 보입니다. 첫째는 보정항입니다. 모델이 거부 응답을 더 선호하고 있을수록 업데이트를 키웁니다. 로그 시그모이드가 포화되기 전, 즉 순서를 아직 틀리게 매긴 쌍에서 기울기가 크게 남고, 이미 선택 응답의 오즈가 충분히 앞선 쌍에서는 작아집니다. DPO 기울기가 잘못 순위를 매긴 예제에 가중치를 더 주던 것과 같은 성질입니다. 둘째는 가중 대조항으로, 확률이 낮은 쪽의 기울기를 증폭합니다. + +저자들은 확률비 대신 오즈비를 고른 이유도 설명합니다. 오즈비는 대조를 더 완만하게 만들기 때문에, SFT와 함께 학습할 때 거부 응답의 토큰을 과도하게 억제하지 않습니다. 이렇게 해석할 수 있습니다. SFT 항은 언어 모델로서의 생성 능력을 유지하려 하므로, 거부 응답을 너무 세게 깎는 대조 항은 그 목표와 부딪칠 수 있습니다. ORPO는 원치 않는 출력의 확률을 낮추는 비우도 학습을 기반으로 삼았습니다. 참조 모델이 없으니 배치당 순전파 횟수도 DPO의 절반입니다. + +![Llama-2(70억)와 Mistral(70억)을 ORPO로 미세 조정한 모델의 AlpacaEval 2.0 결과를 기존 모델들과 비교한 그래프](/assets/images/from-rlhf-to-dpo-and-grpo-a-lineage-map-of-llm-preference-18.png) + +*출처: [Hong et al., 2024](https://arxiv.org/abs/2403.07691)* + +AlpacaEval 2.0 그래프에서는 UltraFeedback만으로 학습한 Mistral-ORPO-α와 β가 Zephyr와 Llama-2-Chat 같은 기존 모델과 비교해 어디에 놓이는지 보면 됩니다. 70억 규모의 Mistral-ORPO-α와 β는 UltraFeedback만으로 학습해 AlpacaEval 2.0 승률 11.33%와 12.20%, MT-Bench 점수 7.23과 7.32를 기록했습니다. IFEval 명령 수준 느슨한 정확도는 각각 0.6163과 0.6619였습니다. Llama-2(70억)에 ORPO를 적용한 모델은 AlpacaEval 1.0에서 81.26%, 2.0에서 9.44%의 승률을 냈습니다. + +비교의 폭은 넓지 않습니다. 저자들은 RLHF와 DPO 외의 선호 정렬 알고리즘과는 비교하지 않았고, IPO와 KTO는 관련 연구로만 다뤘습니다. 70억을 넘는 규모는 검증하지 않았고, 학습 데이터가 UltraFeedback 등 일부에 한정되어 다른 도메인과 과제로 일반화되는지도 확인하지 않았습니다. + +### SimPO: 생성 지표와 맞춘 길이 정규화 보상 + +([Meng et al., 2024](https://arxiv.org/abs/2405.14734))은 DPO의 보상 정의 자체를 문제 삼고 DPO를 대체하려 합니다. DPO는 학습할 때 정책과 참조 모델의 로그 비율을 보상으로 씁니다. 그런데 모델이 실제로 응답을 생성할 때 따르는 것은 참조 모델과의 비율이 아니라 정책 자신의 평균 로그 우도입니다. 학습에서 최적화하는 양과 생성에서 쓰이는 양이 다릅니다. 저자들은 학습 세트에서 DPO의 보상으로 매긴 순위와 우도로 매긴 순위가 일치하는 비율이 약 50%에 그친다고 보고합니다. 거의 동전 던지기 수준이므로, DPO가 $$y_w$$의 암묵적 보상을 $$y_l$$보다 높게 만들어도 생성 때 $$y_w$$ 쪽이 더 잘 나온다는 보장이 없습니다. 참조 모델을 들고 다니는 메모리와 연산 비용도 따로 듭니다. + +SimPO는 보상을 생성 지표에 바로 맞춥니다. + +$$r_{\text{SimPO }}(x,y)=\frac{\beta}{|y|}\log\pi_{\theta}(y\mid x)=\frac{\beta}{|y|}\sum_{i=1}^{|y|}\log\pi_{\theta}(y_{i}\mid x,y_{