Rethinking Critic Learning in PPO: Understanding and Mitigating Value Flattening Review
0. Introduction
한 줄 요약: SP3O는 terminal reward를 응답의 모든 위치에 반복해서 회귀시키는 critic 학습이 상태 가치의 변화를 평평하게 만들 수 있음을 분석하고, 서로 떨어진 소수의 상태에만 value loss를 적용해 이를 완화한다.
PPO에서 critic은 상태별로 앞으로 받을 보상을 예측한다. 추론 과정에서 중요한 오류를 고치거나, 반대로 잘못된 방향으로 들어섰다면 예상 성공 가능성도 달라지는 것이 자연스럽다. 그런데 critic이 이 변화를 따라가지 못하고 응답 전체에 비슷한 값을 준다면, critic을 두는 목적이 약해진다.
이 논문은 그 실패를 Value Flattening이라고 부른다. 여러 continuation을 샘플링해 추정한 상태 가치는 중간 지점에서 크게 변하는데, PPO critic의 예측은 상대적으로 평평하게 남는다. 해결책은 critic을 제거하거나 새로운 보상 모델을 추가하는 것이 아니다. 같은 응답의 모든 token을 감독하는 대신, 떨어져 있는 몇 개의 상태만 감독한다. S1, S2
방법명은 SParse Proximal Policy Optimization, SP3O다. 이 글은 저자의 공식 프로젝트 페이지에 공개된 분석과 표, 공식 학습 스크립트를 근거로 작성했다. 논문 PDF 전문은 직접 확보하지 못했으며, 본문에 제시한 표의 수치는 PDF가 아니라 저자 프로젝트 페이지의 Table 1-3에서 대조했다.
1. Problem Setting
1-1. Critic이 예측해야 하는 것은 관측된 결과 하나가 아니다
프롬프트 $x$와 지금까지 생성한 응답 prefix를 합친 상태를 $s_t$라고 하자. 정책 $\pi$ 아래에서 critic이 추정하려는 값은 다음과 같은 조건부 기대 보상이다. 이 식은 일반적인 가치 함수의 정의다.
한 번 생성한 응답이 정답이었다면 그 응답의 마지막 보상은 높다. 하지만 그 응답에 포함된 모든 중간 상태가 같은 성공 확률을 가진다는 뜻은 아니다. 초기 상태에서는 여러 실패 경로가 남아 있을 수 있고, 결정적인 수정 이후에는 성공 가능성이 커질 수 있다.
이 차이를 관찰하기 위해 저자들은 중간 상태에서 여러 Monte Carlo continuation을 생성해 얻은 가치 추정과 critic 예측을 비교한다. LLM에서 이 MC 값은 유한한 샘플로 얻은 추정치이지 정확한 정답 가치 함수가 아니다. 다만 단일 terminal return보다 상태별 기대 성공 가능성을 직접적으로 살피는 진단 수단이다. S2
1-2. Terminal-only reward가 만드는 학습 표적
프로젝트 페이지의 핵심 분석은 terminal-only reward이고 $\gamma=\lambda=1$인 경우를 다룬다. 이 조건에서는 한 응답의 여러 상태가 같은 sampled terminal return을 회귀 표적으로 사용한다. S2
이때 각 상태의 예측값을 $v_t$, 최종 보상을 $R$, 응답 길이를 $T$라고 하면, dense critic loss는 다음처럼 표현할 수 있다.
입력 상태는 token이 하나씩 추가되며 달라지지만, 이 응답에서 사용한 표적은 동일하다. 이 구조가 shared critic의 표현과 gradient에 어떤 압력을 주는지가 논문의 질문이다.
1-3. Value Flattening의 의미
평평한 값이 항상 잘못된 값은 아니다. 실제로 성공 확률이 거의 변하지 않는 구간이라면 평평한 예측이 적절하다. 문제는 MC로 추정한 가치가 크게 달라지는 구간에서도 critic이 그 차이를 구분하지 못하는 경우다.
저자 프로젝트 페이지는 수학 추론에서의 값 변화와 stochastic FrozenLake의 상태 가치 지도를 함께 보여준다. LLM에서는 응답 내부의 해상도를, 작은 환경에서는 상태 공간이 커질 때 예측의 구분력이 약해지는 현상을 분석한다. S2
따라서 이 논문을 “critic 값이 부드러우면 모두 나쁘다”로 읽으면 안 된다. 핵심은 부드러움 자체가 아니라, 정책 아래의 실제 가치 변화에 비해 예측이 과도하게 평평한지다.
2. Core Idea
2-1. Dense MSE를 분해하면 무엇이 보이는가
응답 안에서 예측한 값의 평균을 다음처럼 두자.
그러면 위 critic loss는 정확히 다음과 같이 분해된다. 저자 프로젝트 페이지에 Equation 5로 제시된 항등식이다. S2
첫 항은 응답 평균 예측을 최종 보상에 맞춘다. 둘째 항은 같은 응답 안에서 예측이 서로 달라지는 정도를 벌한다. 동일한 sampled return을 모든 위치에 적용하면, 응답 평균을 맞추는 것과 함께 응답 내부의 값 차이를 줄이는 압력이 드러나는 것이다.
다만 이 식의 의미를 과장하지 않는 것이 중요하다. 이는 한 응답에 대한 손실의 분해다. 일반적인 회귀에서 충분한 데이터를 얻고 함수 공간을 적절히 가정하면 squared loss의 최적해는 조건부 기대값이다. 따라서 이 항등식만으로 “MSE는 원리적으로 올바른 가치 함수를 학습할 수 없다”는 결론이 나오지는 않는다.
논문의 해석은 이 손실 구조에 실제 학습의 표현 공유, 시간적 상관, 반복되는 gradient가 결합한다는 데 있다. 어떤 항등식이 존재하는지와, 그 항등식이 실제 optimization에서 어떤 실패로 나타나는지는 실험을 통해 연결해야 한다.
2-2. 이웃 상태의 높은 상관이 반복 업데이트를 만든다
언어 모델의 인접한 두 prefix는 거의 모든 문맥을 공유한다. 같은 응답 안에서 상태가 한 token씩 늘어나는 것이므로, critic이 비슷한 표현과 비슷한 gradient를 만들 수 있다.
저자들은 critic 표현이 상대적으로 좁은 영역에 모이는 현상과 인접 위치의 gradient alignment를 분석한다. 감독 위치 사이의 거리가 커지면 gradient의 유사성이 줄어드는 관찰도 제시한다. S2
이때 dense supervision은 서로 다른 독립적인 관측을 많이 제공하는 것과 같지 않다. 매우 비슷한 방향의 업데이트를 여러 위치에서 반복할 수 있다. 따라서 중요한 변수는 감독 token의 개수뿐 아니라, 그 상태들이 얼마나 다른 정보를 제공하는지다.
2-3. Critic 감독을 희소화하고 actor는 유지한다
SP3O는 응답 안에서 서로 떨어진 소수의 anchor를 고르고, 그 위치에 value loss를 적용한다. Actor objective, rollout 절차, return target은 기본적으로 유지한다. 바꾸려는 대상은 critic supervision의 배치다. S2
선택된 위치 집합을 $\mathcal{S}$라고 두면, 아이디어는 다음처럼 표현할 수 있다. 아래 평균 정규화는 구조 설명을 위한 것이며 공개 구현의 모든 batch reduction 옵션을 전사한 것은 아니다.
Main anchor는 응답 진행률 기준 0.3, 0.6, 0.9다. 단순히 무작위 token 세 개를 버티게 하는 방식과는 다르다. 응답의 서로 다른 구간을 일정하게 덮도록 위치를 선택한다. S2
3. Architecture / Method
3-1. 무엇이 바뀌고 무엇이 유지되는가
| 구성 요소 | SP3O의 처리 |
|---|---|
| 정책 rollout | 기존 정책 학습 경로를 유지한다. |
| Actor objective | 기본 PPO 목적을 유지한다. |
| Critic 모델 | 상태 가치를 추정하는 critic을 유지한다. |
| 회귀 표적 | 기존 return target을 유지한다. |
| Value loss 위치 | 모든 token 대신 선택한 anchor에서 적용한다. |
| 핵심 비교 | 감독 밀도와 anchor 배치가 critic 및 정책에 미치는 영향 |
이 방법은 process reward를 새로 만드는 접근이 아니다. 중간 단계의 정답 label을 추가로 확보하지도 않는다. 같은 terminal reward를 어떻게 감독에 사용할지 바꾸는 접근이다. S2
3-2. Critic 값이 달라지면 actor 학습도 달라진다
일반적인 PPO에서는 critic이 advantage 추정에 관여한다. 특히 terminal-only reward, 완결된 trajectory, $\gamma=\lambda=1$이라는 단순한 조건에서는 advantage를 다음처럼 이해할 수 있다.
이 식은 해당 조건에서의 배경 설명이다. Truncation이나 bootstrap, 별도 reward shaping이 포함된 모든 구현에 그대로 적용되는 식은 아니다.
Critic 값이 응답 전체에서 거의 같다면 advantage도 상태별 차이를 충분히 표현하지 못할 수 있다. 반대로 상태 가치의 변화를 더 잘 구분하면 같은 최종 결과를 가진 응답 안에서도 정책 업데이트의 기준이 달라질 수 있다.
그렇다고 critic 예측의 분산만 크게 만들면 되는 것은 아니다. 아무 근거 없이 값이 요동치는 critic도 나쁘다. SP3O의 목표는 변화를 늘리는 자체가 아니라 MC 가치 변화와의 대응을 개선하는 것이다.
3-3. Response-centered MSE가 필요한 이유
응답마다 전반적으로 높거나 낮은 값을 예측하는 능력과, 한 응답 안에서 상태별 차이를 구분하는 능력은 다르다. 전체 MSE 하나만 보면 두 효과가 섞인다.
저자 프로젝트 페이지는 response-centered MSE를 이용해 응답 내부의 가치 변화를 분석한다. 평균 수준을 제거하고 보면 critic이 중요한 변화의 방향과 크기를 따라가는지 더 직접적으로 볼 수 있다. S2
또한 SP3O와 PPO의 actor가 서로 다른 정책으로 학습되었다면, 같은 prefix의 continuation 분포도 달라질 수 있다. 저자는 각 정책 아래에서 계산한 MC 값과 대응하는 critic을 비교한다. 다른 정책의 MC 값을 무조건 공통 정답으로 사용하지 않는 점이 중요하다.
3-4. 공개 구현의 추가 조건
현재 공개 train.sh는 main anchor 외에도 두 가지 조건을 포함한다. 기본적으로 20번의 critic-only step을 두며 SP3O에서 dense critic-only warmup을 사용한다. 또한 응답 길이가 6,144 이상이면 0.95 위치에 추가 tail anchor를 두는 옵션이 있다. S3
따라서 공개 실행 경로를 “언제나 정확히 세 token만 학습한다”고 요약하면 부정확하다. 기본 개념은 소수의 잘 떨어진 감독 위치지만, release 설정에는 초기 critic 학습과 긴 응답의 끝부분을 보완하는 조건이 함께 들어가 있다.
이 구분은 재현에서 특히 중요하다. 프로젝트 페이지의 간단한 방법 설명만 구현한 결과와, 공개 스크립트를 그대로 실행한 결과가 다를 수 있기 때문이다. 논문 실험과 이 release 옵션의 정확한 대응은 원문에서 다시 확인해야 한다.
4. Training / Data / Recipe
4-1. 학습 및 평가의 범위
저자 프로젝트 페이지의 진단 실험은 Qwen3-4B-Base의 DAPO-Math-17k PPO 학습을 명시한다. 주요 정책 평가에는 Qwen3-4B-Base와 Qwen3-8B-Base를 사용하고, 수학 추론과 OOD 평가를 분리한다. S2
코드 저장소는 slime v0.2.4를 기반으로 한다. 공개 예제는 Qwen3-4B-Base에 대해 PPO, GRPO, SP3O를 각각 실행하는 구조다. S4
Dataset의 전처리, 응답 필터링, training seed별 반복 실험, checkpoint 선정 기준은 공개 표의 요약만으로 전부 결정할 수 없다. 이 부분은 실제 재현 전에 원문과 코드의 데이터 경로를 함께 확인해야 한다.
4-2. 공개 4B 스크립트의 핵심 설정
| 항목 | 공개 기본값 |
|---|---|
| Rollout prompt batch | 64 |
| Prompt당 sample 수 | 8 |
| 학습 rollout의 최대 응답 길이 | 8,192 tokens |
| Rollout당 update step | 2 |
| Actor learning rate | 1e-6 |
| Critic learning rate | 4e-6 |
| Critic-only warmup | 20 steps |
| Main anchor 비율 | 0.3, 0.6, 0.9 |
| 긴 응답 추가 anchor | 길이 6,144 이상에서 0.95 |
| 평가 최대 응답 길이 기본값 | 24,576 tokens |
이 값은 공개 실행 스크립트의 기본값이다. 논문 전체의 모든 모델 설정을 대표하는 hyperparameter 표가 아니다. 특히 학습 응답 길이와 평가 응답 길이가 다르므로, 결과를 같은 token budget의 비교로 단순화하면 안 된다.
4-3. 구현 시 확인할 지점
Anchor를 계산할 때는 padding을 제외한 유효 응답 길이를 사용해야 한다. Packed sample의 위치와 개별 응답의 진행률을 혼동하면 감독 위치가 잘못된다. Loss의 정규화도 확인해야 한다. Token 수가 달라질 때 sample별 가중치가 의도치 않게 바뀌면 감독 위치의 효과와 가중치 효과가 섞일 수 있다.
이 항목들은 재현을 위한 검토 제안이다. Sparse value loss를 사용한다고 해서 Transformer의 forward와 backward가 자동으로 세 위치의 계산만 수행하게 되는 것도 아니다. 선택된 위치의 출력은 앞선 계산 경로에 의존하므로, 실제 메모리와 시간을 별도로 측정해야 한다.
5. Evaluation
5-1. 수학 추론 결과
아래는 저자 프로젝트 페이지 Table 1의 일부를 옮긴 것이다. 정확도 단위는 %이며, 32회 생성에 걸쳐 평균한 결과다. 32개 중 한 번만 맞으면 성공으로 세는 pass@32로 해석하지 않는다. 마지막 열은 원표의 일곱 수학 task 평균이다. S2
| 모델 | 방법 | AIME24 | AIME25 | AIME26 | MATH500 | Minerva | 7개 평균 |
|---|---|---|---|---|---|---|---|
| Qwen3-4B-Base | PPO | 17.50 | 19.90 | 14.69 | 70.15 | 42.82 | 37.60 |
| Qwen3-4B-Base | GRPO | 17.19 | 16.19 | 10.10 | 78.21 | 45.71 | 39.26 |
| Qwen3-4B-Base | SP3O | 23.02 | 23.54 | 22.08 | 83.79 | 47.93 | 45.57 |
| Qwen3-8B-Base | PPO | 30.21 | 25.10 | 23.33 | 86.33 | 48.81 | 48.50 |
| Qwen3-8B-Base | GRPO | 28.50 | 22.04 | 22.70 | 85.26 | 52.06 | 47.91 |
| Qwen3-8B-Base | SP3O | 33.91 | 28.02 | 27.39 | 87.33 | 47.40 | 50.51 |
표에서 생략한 두 task는 AMC23과 Olympiad이며, 7개 평균에는 포함된다. 4B에서는 PPO 대비 평균이 7.97 percentage points, 8B에서는 2.01 percentage points 높다. 이는 표의 평균값을 뺀 차이이며 상대 향상률이 아니다.
효과의 크기는 모델 규모에 따라 다르다. 또한 8B의 Minerva는 SP3O가 PPO와 GRPO보다 낮다. 따라서 평균 개선을 “모든 task에서 일관된 우세”라고 바꾸지 않는 것이 중요하다.
5-2. OOD 평가와 학습 dynamics
저자 프로젝트 페이지 Table 2의 OOD 평균은 4B에서 PPO 51.95, GRPO 56.44, SP3O 59.28이다. 8B에서는 각각 64.38, 64.91, 66.37이다. 이 표는 네 번의 생성에 걸친 평균이며, 수학 평가의 32회 생성과 다르다. 일부 OOD dataset은 xVerify로 채점한다. S2
이 결과는 수학 학습의 개선이 수학 점수에만 국한되지 않을 가능성을 보여준다. 다만 모델 family와 학습 recipe가 제한되어 있으므로, 모든 OOD 환경에 대한 일반화 보장으로 해석할 수는 없다.
프로젝트 페이지의 dynamics 분석에서는 SP3O의 actor update가 더 작고 변동이 적으며, 초기 이후의 검증 정확도와 rollout reward가 더 높다고 설명한다. 동시에 응답이 길어지는 현상도 보고한다. 따라서 성능 개선을 계산 효율 개선과 동일시하지 않고, 생성 token 수와 wall-clock을 함께 보아야 한다. S2
5-3. 개수보다 배치가 중요하다
Anchor placement ablation은 이 논문의 핵심 주장과 직접 연결된다. S2
| 감독 위치 설정 | 4B 수학 평균 정확도 (%) |
|---|---|
| Dense PPO | 37.60 |
| Random anchors | 36.59 |
| 0.2 / 0.5 / 0.8 | 44.65 |
| 0.3 / 0.6 / 0.9 | 45.57 |
무작위 위치는 dense baseline보다 낮다. 반면 일정 간격으로 응답 구간을 덮는 anchor는 더 좋다. “감독량을 줄이기만 하면 좋아진다”는 설명보다, 상관이 높은 이웃 업데이트를 줄이면서 필요한 구간을 덮는 것이 중요하다는 설명이 결과와 더 잘 맞는다.
프로젝트 페이지는 3-8개의 희소한 감독 상태가 더 조밀한 설정보다 좋았다고 설명한다. 하지만 이 범위를 다른 응답 길이나 reward 구조에서 그대로 최적값으로 사용해서는 안 된다.
6. Limitations
첫째, 손실 분해의 조건을 유지해야 한다. Terminal-only reward와 $\gamma=\lambda=1$에서 드러나는 구조를 중간 보상, 할인, truncation이 있는 모든 PPO에 그대로 적용할 수 없다.
둘째, MSE 분해는 실제 value collapse의 충분조건이 아니다. Finite data와 최적화, 공유 표현, 상태의 상관을 함께 봐야 한다. 단일 trajectory의 분산 항과 모집단에서의 올바른 가치 회귀를 혼동하지 않는 것이 중요하다.
셋째, 감독 위치의 고정 비율이 모든 task의 결정적 상태를 찾아준다는 보장은 없다. 긴 응답이나 짧은 응답, 코드 실행을 포함한 trajectory에서는 의미 있는 변화의 위치가 달라질 수 있다.
넷째, 성능이 좋아졌더라도 critic 계산과 긴 응답의 비용은 남는다. 논문이 critic을 제거한 것이 아니라 critic의 학습 방법을 바꿨다는 사실을 유지해야 한다.
마지막으로 이번 초안의 결과 표는 저자 프로젝트 페이지에 근거한다. PDF의 실험 부록, 반복 seed, 오차 범위, checkpoint 선택 및 release 설정 대응은 아직 원문 대조가 필요하다.
7. My Take
7-1. 감독 밀도와 유효 정보량을 구분한다
이 논문이 던지는 질문은 critic을 더 크게 만들지 여부보다 앞에 있다. 지금 제공하는 감독이 정말 새로운 상태 정보를 주는지, 아니면 거의 같은 업데이트를 반복하는지다.
이 관점은 value learning 밖에서도 유용하다. Long-context 학습이나 token-level auxiliary objective에서 위치를 많이 감독하는 것이 항상 많은 독립 정보를 제공하는 것은 아니다. 다만 그 일반화는 후속 연구의 가설이며, 이 논문이 다른 모든 목적함수에서 효과를 입증한 것은 아니다.
7-2. 먼저 추가할 진단 지표
재현에서는 최종 정확도 외에 응답 내부의 centered value error, anchor 거리별 gradient similarity, 정책별 MC continuation 추정, 생성 길이를 함께 기록할 가치가 있다. Critic이 결과의 평균만 잘 구분하는지, 중간 상태의 차이도 구분하는지를 따로 확인하는 것이다.
이때 분산을 크게 만드는 것 자체를 성공 지표로 두지 않아야 한다. 변동이 커졌지만 MC 추정과 어긋나는 critic은 개선된 critic이 아니다.
7-3. 다음으로 볼 실험
프로젝트 페이지의 representation 및 gradient 분석과 공개 스크립트의 warmup/tail-anchor 설정을 함께 읽는 것이 좋다. 이후에는 동일한 생성 예산에서 비교하고, anchor 수와 위치, warmup을 각각 바꾸는 실험으로 method의 핵심과 recipe의 보완 효과를 분리할 수 있다. 이는 이 리뷰에서 제안하는 후속 실험이다.
8. Summary
- Value Flattening은 실제 가치 변화에 비해 critic 예측이 과도하게 평평한 현상이다.
- 동일 terminal return을 모든 위치에 적용한 MSE는 응답 평균 오차와 내부 분산 항으로 분해된다.
- SP3O는 critic을 없애지 않고 잘 떨어진 소수의 상태에 value loss를 적용한다.
- 공개 결과에서 평균 성능은 개선되지만 random anchor와 일부 task의 결과는 단순한 일반화를 경계하게 한다.
- 재현에서는 sparse supervision 외에 warmup, 긴 응답의 추가 anchor, 생성 길이와 계산 비용까지 확인해야 한다.
댓글남기기