KTO: 선호 쌍 없이, 좋다·나쁘다만으로 정렬한다
KTO: Model Alignment as Prospect Theoretic Optimization (Ethayarajh et al., Stanford University, ICML 2024)
Introduction
이 시리즈에서 지금까지 다룬 정렬 방법은 거의 전부 같은 전제 위에 서 있었다. 같은 프롬프트에 대한 두 응답 중 어느 쪽이 더 나은가를 사람이 판단해야 한다는 전제다. RLHF의 reward model도, #23 DPO도, #24 SimPO도 전부 선호 쌍(preference pair) \((y_w, y_l)\)을 원재료로 삼는다.
문제는 이 원재료 자체가 비싸다는 데 있다. #3 HH-RLHF와 #5 Secrets of RLHF II에서 확인했듯, 같은 프롬프트에 두 응답을 나란히 놓고 사람이 랭킹을 매기는 작업은 라벨러 간 합의도 낮고 노이즈도 크다. 게다가 실제 서비스에서 나오는 데이터는 애초에 쌍의 형태가 아니다. 사용자가 챗봇 응답에 남기는 신호는 좋아요/싫어요, 신고, 재질문 여부 같은 이진(binary) 신호이지, “이 응답이 저 응답보다 낫다”는 비교가 아니다.
KTO(Kahneman-Tversky Optimization)는 이 지점을 정면으로 파고든다. 핵심 주장은 두 가지다. 첫째, DPO 같은 기존 선호 최적화 방법들은 이미 암묵적으로 인간의 인지 편향을 모델링하고 있다는 것. 저자들은 이런 손실 함수 계열을 HALO(human-aware losses) 라 부른다. 둘째, 그렇다면 굳이 선호 쌍을 거치지 않고, 행동경제학의 prospect theory(전망 이론)를 직접 가져와 “이 출력이 바람직한가(desirable) 아닌가(undesirable)”라는 이진 신호만으로도 정렬이 가능하다는 것. 결과부터 말하면, KTO는 1B에서 30B까지의 스케일에서 DPO 같은 선호 기반 방법과 대등하거나 그 이상의 성능을 낸다.
이 시리즈의 5부(“reward를 정책으로”)는 #23 DPO를 시작으로 RL 없이 정책을 직접 최적화하는 흐름을 다뤄왔다. #24 SimPO가 reference 정책을 없애는 방향으로 DPO를 단순화했다면, KTO는 다른 축을 건드린다. 손실 함수의 형태가 아니라 입력 데이터의 형태 자체를 바꾸는 쪽이다.
Background
Prospect theory: 사람은 절대값이 아니라 기준점 대비로 느낀다
Kahneman과 Tversky는 1979년 논문에서 사람이 결과를 평가하는 방식이 고전 경제학이 가정하는 기대효용이론과 다르다는 것을 보였다. 두 가지가 핵심이다.
- 사람은 결과의 절대적 크기가 아니라 기준점(reference point) 대비 이득인지 손실인지로 그 가치를 느낀다.
- 손실은 같은 크기의 이득보다 심리적으로 더 크게 느껴진다. 이를 loss aversion(손실 회피)이라 부른다. 만원을 잃었을 때의 고통이 만원을 얻었을 때의 기쁨보다 크다.
이 관찰을 정식화한 것이 그 유명한 가치 함수(value function)다.
\[v(x) = \begin{cases} x^{\alpha} & x \geq 0 \text{ (이득)} \\ -\lambda (-x)^{\beta} & x < 0 \text{ (손실)} \end{cases}\]- \(x\)는 기준점 대비 결과의 크기, 양수면 이득, 음수면 손실이다.
- \(\alpha, \beta\)는 이득/손실 각각에 대한 체감(diminishing sensitivity)을 나타내는 지수다.
- \(\lambda\)는 손실 회피 계수다. Tversky와 Kahneman의 1992년 후속 연구(cumulative prospect theory)에서 이 값은 경험적으로 약 \(2.25\)로 추정됐다. 손실이 같은 크기의 이득보다 약 두 배 이상 아프게 느껴진다는 뜻이다.
여기서 KTO가 실제로 LLM 정렬에 사용하는 효용 함수의 정확한 형태나 하이퍼파라미터 값은 이 고전적 형태를 그대로 쓰는 것이 아니라, 이 아이디어를 LLM 정렬 문제에 맞게 변형한 것이다. 중요한 건 정확한 수식이 아니라 구조다. 기준점 대비 이득/손실을 나눠 평가하고, 손실 쪽에 더 큰 가중치를 준다는 뼈대가 그대로 이어진다.
일상의 비유로 보면 더 와닿는다. 별점 리뷰를 떠올려보자. 평소 4점을 주던 식당이 5점짜리 경험을 줬을 때의 만족감보다, 3점짜리 경험을 줬을 때의 실망감이 사람 기억에 훨씬 오래 남는다. “평소 수준”이 기준점이고, 그 위로 올라간 것보다 아래로 내려간 것에 더 민감하게 반응하는 것이 loss aversion이다. KTO는 정책이 만드는 응답에도 이 논리를 그대로 적용한다.
DPO도 사실 HALO였다
저자들의 관찰이 흥미로운 지점은 여기다. DPO의 손실 함수를 뜯어보면, 이미 암묵적으로 기준점(reference policy) 대비 이득·손실을 비교하고 있고, 특정 형태의 편향을 내포하고 있다는 것이다. #4 Rethinking Bradley-Terry에서 짚었듯, DPO가 기반한 Bradley-Terry 모델은 애초에 “둘 중 누가 이겼는가”라는 쌍 비교(pairwise comparison)를 모델링하도록 설계됐다. 이런 손실 함수들을 저자들은 HALO(human-aware losses)라 부르고, DPO를 포함한 여러 기존 방법이 이 범주에 속한다고 정리한다.
KTO의 기여는 이 관찰을 뒤집어, 굳이 쌍 비교 확률 모델(Bradley-Terry)을 거치지 않고 prospect theory의 효용 함수를 곧바로 정렬 목적함수로 쓰자는 것이다.
Method
선호 확률 대신 utility를 직접 최대화한다
DPO는 “\(y_w\)가 \(y_l\)보다 선호될 확률”을 최대화한다. 이 확률을 정의하려면 같은 프롬프트에 대한 두 응답이 동시에 있어야 한다. KTO는 이 확률 최대화를 생성의 utility(효용) 직접 최대화로 바꾼다. 정책이 생성한 응답 하나하나에 대해 “이게 바람직한 정도”를 효용으로 매기고, 그 기댓값을 올리는 방향으로 학습한다는 뜻이다.
이때 필요한 정보는 쌍이 아니라 하나의 이진 라벨이다. \((x, y)\)라는 (프롬프트, 응답) 쌍에 대해, 그 응답이 desirable(좋다)인지 undesirable(나쁘다)인지만 있으면 된다. 같은 프롬프트에 대응하는 다른 응답이 존재할 필요가 없다.
기준점(reference point)의 역할
Prospect theory에서 이득·손실은 기준점 대비로 계산된다. KTO에서 이 기준점 역할을 하는 것이 DPO와 유사하게 KL 발산 항이다. 즉 “지금 정책이 이 프롬프트에 대해 평균적으로 생성할 것으로 기대되는 수준”을 기준점으로 잡고, 그보다 나은 desirable 응답에는 이득 항을, 그보다 못한 undesirable 응답에는 손실 항을 적용하는 구조다.
- desirable 응답: 기준점보다 위 → 이득 항 → 정책이 이 응답의 확률을 높이는 방향으로 업데이트.
- undesirable 응답: 기준점보다 아래 → 손실 항 → 정책이 이 응답의 확률을 낮추는 방향으로 업데이트.
- loss aversion 구조상 손실 항의 가중치가 이득 항보다 크게 설계된다. 나쁜 응답을 밀어내는 압력이 좋은 응답을 끌어올리는 압력보다 세다는 뜻이다.
왜 이진 신호가 저렴한가
선호 쌍을 모으려면 같은 프롬프트에 대해 최소 두 개의 응답을 만들고, 그 둘을 나란히 놓고 사람(혹은 judge 모델)이 비교해야 한다. 응답 생성 비용도 두 배, 비교 판단이라는 추가 인지 작업도 필요하다. 반면 desirable/undesirable 라벨은 응답 하나만 보고 “이게 괜찮은가”만 판단하면 된다. 더 중요한 건, 이 라벨이 굳이 사람이 일부러 매길 필요조차 없다는 점이다. 서비스에 이미 있는 좋아요/싫어요 버튼, 사용자가 답변을 다시 요청(regenerate)했는지, 신고했는지 같은 제품 로그 자체가 이미 desirable/undesirable 라벨이다. #3 HH-RLHF에서 다뤘던 전용 라벨링 파이프라인을 새로 만들 필요 없이, 이미 쌓여 있는 로그를 그대로 재활용할 수 있다는 뜻이다.
DPO와 KTO 비교
| DPO | KTO | |
|---|---|---|
| 필요한 데이터 | 같은 프롬프트에 대한 선호 쌍 \((y_w, y_l)\) | \((x, y, \text{desirable/undesirable})\) 단일 튜플 |
| 라벨링 방식 | 두 응답을 비교해 랭킹 | 응답 하나에 이진 라벨 |
| 이론적 기반 | Bradley-Terry (쌍 비교 확률 모델) | Kahneman-Tversky 효용 모델 (HALO) |
| 최적화 대상 | 선호 확률 | utility 직접 최대화 |
| 기준점 | reference policy (KL 항) | reference point (KL 항 기반) |
| 서비스 로그 재활용 | 쌍이 안 맞으면 대부분 버려짐 | 로그의 이진 신호를 거의 그대로 사용 |
토이 예제: 서비스 로그로 학습하기
가상의 AI 상담 챗봇을 생각해보자. 사용자 1,000명이 챗봇과 대화하고, 각 응답 아래에 좋아요(👍)/싫어요(👎) 버튼만 누른다. 로그를 모아보니 좋아요가 900건, 싫어요가 100건으로, 9:1로 불균형하다.
DPO로 이 로그를 쓰려면. DPO는 같은 프롬프트 \(x\)에 대해 선호 응답 \(y_w\)와 비선호 응답 \(y_l\)이 동시에 있어야 쌍을 만들 수 있다. 그런데 실제 로그에서는 프롬프트당 응답이 보통 하나뿐이다. 같은 질문을 두 번 던져 두 응답을 받고 그중 하나를 싫어요 누른 경우가 아니라면, 대부분의 로그 항목은 쌍을 이루지 못하고 버려진다. 1,000건 중 실제로 학습에 쓸 수 있는 쌍은 극히 일부만 남는다.
KTO로 같은 로그를 쓰면. \((x, y, \text{좋아요})\) 900건과 \((x, y, \text{싫어요})\) 100건을 그대로 desirable/undesirable 라벨로 바꿔 학습에 투입할 수 있다. 쌍을 맞출 필요가 없으니 로그 1,000건이 거의 그대로 학습 데이터가 된다.
9:1 불균형은 어떻게 되나. 싫어요가 100건뿐이라 걱정할 수 있지만, KTO의 손실 회피 구조 자체가 이 불균형을 어느 정도 완충한다. undesirable 쪽 손실 항의 가중치가 desirable 쪽 이득 항보다 크게 설계되어 있기 때문에, 적은 수의 싫어요 신호도 정책 업데이트에 상대적으로 크게 반영된다. “나쁜 응답 하나를 밀어내는 힘이 좋은 응답 하나를 끌어올리는 힘보다 세다”는 구조가, 데이터가 적은 쪽(싫어요)의 정보 부족을 부분적으로 상쇄해주는 셈이다. 물론 이것이 극단적인 불균형까지 자동으로 해결해준다는 뜻은 아니고, 데이터 구성 자체는 여전히 신경 써야 할 변수다.
이 구조를 체감하기 위해 완전히 단순화한 가상의 숫자로 감을 잡아보자. 아래 값은 논문이 실제로 쓰는 계수가 아니라, loss aversion의 방향성만 보여주기 위한 illustration이다. desirable 응답 하나의 이득 기여를 \(+1\), undesirable 응답 하나의 손실 기여를 손실 회피 배율만큼 키운 \(-2.25\)라고 가정해보자.
- 단순 평균이라면: desirable 900건의 기여 합은 \(900 \times (+1) = +900\), undesirable 100건의 기여 합은 \(100 \times (-1) = -100\). 배치 평균은 압도적으로 desirable 쪽에 쏠린다.
- 손실 쪽에 배율을 적용하면: undesirable 100건의 기여 합이 \(100 \times (-2.25) = -225\)로 커진다. 절대 건수는 여전히 9배 차이가 나지만, 싫어요 신호 하나하나가 정책 업데이트에 미치는 영향력은 좋아요 신호 하나보다 크게 잡혀 있어서, 소수의 부정 신호가 다수의 긍정 신호에 묻히지 않는다.
물론 실제 KTO의 utility 항이 정확히 이런 형태인지는 원 논문에서 확인해야 하고, 여기서는 “손실 쪽 가중이 크다”는 구조적 사실만 숫자로 체감하기 위한 단순화임을 다시 한번 짚어둔다.
Experiments
논문은 1B부터 30B까지 여러 스케일에서 KTO를 검증했다. 결과를 정성적으로 정리하면 다음과 같다.
| 스케일 | 데이터 형태 | KTO vs 선호 기반(DPO 등) |
|---|---|---|
| 1B급 | 이진 desirable/undesirable | 대등 이상 |
| 중간 규모 | 이진 desirable/undesirable | 대등 이상 |
| 30B급 | 이진 desirable/undesirable | 대등 이상 |
즉 모델 규모가 커져도 “선호 쌍이 아닌 이진 신호만으로 학습했다”는 데이터 형식의 차이가 성능 저하로 이어지지 않는다. 선호 쌍을 모으는 비용을 들이지 않고도 같은 수준의 정렬 품질에 도달할 수 있다는 뜻이고, 이는 #5 Secrets of RLHF II에서 짚었던 선호 라벨링의 노이즈·비용 문제를 데이터 형식 자체를 바꿔 우회하는 접근이라 볼 수 있다.
언뜻 보면 직관에 반하는 결과다. 이진 라벨 하나는 선호 쌍 하나보다 정보량이 적어 보이기 때문이다(“A가 B보다 낫다”는 두 응답을 동시에 비교하는 정보인 반면, “이 응답은 나쁘다”는 한 응답에 대한 정보 하나뿐이다). 그런데도 성능이 밀리지 않는다는 것은, 실무적으로는 두 가지를 시사한다. 첫째, 서비스 로그처럼 원래도 쌍 형태가 아니던 대량의 데이터를 거의 손실 없이 정렬에 재활용할 수 있는 길이 열린다는 것. 둘째, 데이터 형식을 원래의 신호 그대로 유지할수록(가공을 덜 거칠수록) 오히려 라벨링 과정에서 생기는 노이즈가 줄어들 수 있다는 것이다.
Conclusion
KTO의 메시지는 두 층위로 읽힌다. 하나는 방법론적 기여로, “정렬은 반드시 쌍 비교 확률 모델을 거쳐야 한다”는 암묵적 전제를 깨고, 사람의 효용 모델(prospect theory)을 직접 목적함수로 쓸 수 있음을 보였다. 다른 하나는 실무적 기여로, 선호 쌍이라는 비싼 라벨링 대신 서비스 로그의 좋아요/싫어요 같은 값싼 이진 신호로도 정렬이 가능하다는 것을 보였다.
다만 저자들의 결론 자체가 조심스럽다는 점도 함께 새겨둘 만하다. “보편적으로 우월한 단 하나의 HALO는 없다. 최선의 손실은 그 상황에 맞는 inductive bias가 무엇이냐에 달렸다.” DPO가 쌍 비교라는 inductive bias를 갖듯, KTO는 손실 회피라는 inductive bias를 갖는다. 어느 쪽이 나은지는 데이터 형태와 태스크 성격에 달렸다는 뜻이다. 실무적으로도, 좋아요/싫어요 같은 이진 신호가 응답 품질을 얼마나 충실히 대리하는지는 서비스마다 다르므로, 라벨 자체의 신뢰도는 여전히 별도로 점검해야 할 변수로 남는다.
시리즈 관점에서 보면 KTO는 #23 DPO와 #24 SimPO가 “손실 함수를 어떻게 바꿀 것인가”에 집중했던 것과 결이 다르다. 손실 함수의 이론적 근거(prospect theory)를 새로 들여오면서, 동시에 “애초에 어떤 데이터로 학습할 것인가”라는 질문 자체를 다시 던진 것에 가깝다. 선호 쌍 수집이라는 병목을 손실 함수 설계로 우회할 수 없다면, 데이터 형식을 바꾸는 것도 하나의 답이 될 수 있다는 사례로 이 시리즈에 남는다.
RLHF Reward 설계 시리즈
이 글은 RLHF Reward 설계 시리즈의 스물다섯 번째 글이다.
1부. 지형도
- Deep RL from Human Preferences (Christiano 2017) — 선호로 보상을 배우는 원형
- InstructGPT (Ouyang 2022) — RLHF 3단계 표준 레시피
- HH-RLHF (Bai 2022) — helpful·harmless preference model
2부. 스칼라 RM 해부
- Rethinking Bradley-Terry (2024) — reward 변환의 수학적 기반
- Secrets of RLHF II (2024) — 선호 데이터 노이즈와 RM 일반화
- Skywork-Reward (2024) — 데이터 큐레이션이 아키텍처를 이긴다
- ArmoRM (2024) — 다목적 분해와 MoE 게이팅
- Llama 2 (2023) — helpfulness·safety RM 분리 프로덕션 레시피
- RewardBench 2 (2025) — RM을 어떻게 평가할 것인가
3부. Reward Hacking
- Overoptimization Scaling Laws (2022) — Goodhart의 법칙 정량화
- Length Correlations in RLHF (2023) — 성능 향상의 얼마가 길이인가
- ODIN (2024) — 길이를 reward에서 분리
- WARM (2024) — weight averaging으로 hacking 방어
4부. 안전성 정렬
- Safe RLHF (2023) — 안전성을 reward가 아니라 제약으로
- Rule-Based Rewards (2024) — 안전 규칙을 reward로 직접 번역
- Deliberative Alignment (2024) — 안전 명세를 모델의 추론 안으로
- Shallow Safety Alignment (2024) — 정렬은 첫 몇 토큰에만 얹혀 있다
- OR-Bench (2024) — 과잉 거절을 어떻게 측정할 것인가
5부. reward를 정책으로
- PPO (2017) — clipped surrogate objective
- Secrets of RLHF I (2023) — PPO 학습 안정화 트릭
- GRPO / DeepSeekMath (2024) — value network를 버리다
- RLOO (2024) — REINFORCE로 충분한가
- DPO (2023) — reward를 없애면 어떻게 되는가
- SimPO (2024) — reference-free + 길이 정규화
- (현재 글) KTO (2024) — 선호 쌍 없이 이진 신호만으로
- GSPO (2025) — importance ratio를 시퀀스 단위로
- DAPO (2025) — 신호 없는 프롬프트를 버린다
6부. Process & Verifiable Reward
- Let's Verify Step by Step (2023) — 과정 감독이 결과 감독을 이긴다
- Math-Shepherd (2023) — 사람 라벨 없는 PRM
- DeepSeek-R1 (2025) — RLVR, 규칙이 reward가 될 때
7부. Generative Reward Model
- Prometheus 2 (2024) — 오픈 평가자 모델과 rubric 조건부 평가
- Generative Verifiers (2024) — reward를 next-token prediction으로
- Generative Reward Models (2024) — GenRM과 선호 학습의 결합
- Self-Taught Evaluators (2024) — 사람 라벨 없이 judge를 키우다
- DeepSeek-GRM / SPCT (2025) — inference-time scaling
8부. 생각하는 Judge, 그리고 그 신뢰
- ReasonGRM (2025) — reasoning 능력을 judge에 이식
- J1 (2025) — RL로 judge를 생각하게 만들기
- Rubrics as Rewards (2025) — 비검증 도메인으로
- CriticEval (2024) — judge 자체를 어떻게 평가하나
- One Token to Fool LLM-as-a-Judge (2025) — GenRM도 뚫린다
9부. 실전 종합
- 프론티어 모델의 reward 설계 (2025~2026) — 열 개 모델이 실제로 택한 것
- reward를 어떻게 설계할 것인가 — 시리즈를 관통한 RM 설계 원칙 한 장
본 시리즈는 42편으로 구성된다.
참고 문헌
- Ethayarajh, K., Xu, W., Muennighoff, N., Jurafsky, D., & Kiela, D., 2024. KTO: Model Alignment as Prospect Theoretic Optimization.
- Rafailov, R., Sharma, A., Mitchell, E., Ermon, S., Manning, C. D., & Finn, C., 2023. Direct Preference Optimization: Your Language Model is Secretly a Reward Model.
- Kahneman, D., & Tversky, A., 1979. Prospect Theory: An Analysis of Decision under Risk. Econometrica, 47(2), 263-291.
- Tversky, A., & Kahneman, D., 1992. Advances in Prospect Theory: Cumulative Representation of Uncertainty. Journal of Risk and Uncertainty, 5(4), 297-323.
Enjoy Reading This Article?
Here are some more articles you might like to read next: