더 강한 teacher가 학생을 전혀 못 가르치는 경우가 있다. OPD의 성패를 가르는 것은 benchmark 점수가 아니라 thinking pattern의 호환성과 학생이 아직 못 본 새 지식의 유무이며, 성공한 OPD는 학생이 방문한 state에서 고확률 token이 점진적으로 정렬되는 한 가지 신호로 나타난다.
On-policy distillation(OPD)은 학생이 스스로 생성한 rollout 위에서 teacher의 token별 log-probability를 dense reward로 쓰는 post-training 기법이다. Qwen3·MiMo·GLM-5가 채택했고 Thinking Machines Lab이 RL 대비 적은 비용으로 재현했지만, 왜 token 수준 신호가 학생을 올바른 방향으로 옮기는지, 언제 실패하는지는 거의 연구되지 않았다. 이 논문은 현상(§3) → 기제(§4) → 처방(§5) → 비용(§6) 순으로 OPD를 체계적으로 분석한다.
(i) student와 teacher의 thinking pattern이 호환돼야 하고, (ii) 점수가 높더라도 teacher가 학생이 학습 중에 못 본 새 능력을 갖고 있어야 한다. 같은 데이터·같은 recipe로 만든 1.5B와 7B는 학생 눈에 구별되지 않는다.
성공한 run은 학생 방문 state에서 overlap ratio 상승, overlap-token advantage 0 접근, entropy gap 축소가 함께 나타난다. overlap token만 학습해도 전체 top-k와 성능이 같다.
teacher rollout으로 SFT를 먼저 하는 off-policy cold start, 그리고 teacher의 post-training prompt를 쓰는 teacher-aligned prompt selection.
reward 품질이 trajectory 깊이에 따라 떨어지고 불안정은 뒤쪽 token에서 시작해 앞으로 번진다. 실패한 teacher도 전역적으로는 정보가 있는데 국소적으로 못 쓴다.

| 질문 | 실험 | 결과 |
|---|---|---|
| 더 강한 teacher가 항상 낫나 | Qwen3-1.7B-Base ← Qwen3-4B(Non-thinking) vs Qwen3-4B-Base-GRPO | 점수는 비슷해도 base 학생과 pattern이 맞는 GRPO teacher가 일관되게 우세. 초기 overlap이 결과를 예고 |
| 점수 = 새 지식인가 | 같은 pipeline teacher vs 추가 RL teacher (DeepSeek·Qwen family) | RL teacher만 큰 이득. gap recovery 5.3→16.9%, 15.6→58.6% |
| OPD는 무엇을 옮기나 | JustRL-1.5B ← 자기 pre-RL checkpoint / DS-7B | 둘 다 pre-RL 성능으로 퇴행, 궤적 동일. 지식이 아니라 pattern을 옮긴다 |
| 성공의 신호는 | R1-Distill-1.5B ← JustRL-1.5B(성공) vs R1-Distill-7B(실패) | 성공 run만 overlap 72→91%, advantage→0, entropy gap 축소. 공유 token이 질량 97–99% |
| 어디서 배우나 | Student / Overlap / Non-Overlap Top-16 | Overlap만으로 Student Top-k와 동일. Non-Overlap은 일관되게 약함 |
| 실패를 살리려면 | teacher rollout SFT cold start · teacher-aligned prompt | 둘 다 overlap을 올려 회복. prompt 정렬은 entropy를 깎으므로 혼합 |
| dense reward의 대가 | 응답 길이 0.5K–15K · prefix 깊이별 teacher 이어쓰기 | 3K–7K가 최적, 10K+는 후반 붕괴. teacher 우위 +0.37(1K)→+0.02(16K) |
OPD는 학생 $\pi_\theta$가 생성한 rollout $\hat y$ 위에서 sequence-level reverse KL을 최소화하며, 이는 token-level KL의 합으로 정확히 분해된다.
여기서 $p_t,q_t$는 학생 prefix $\hat y_{<t}$에서의 student·teacher 다음 token 분포다. 구현은 이 per-token KL을 어떻게 추정하느냐로 갈린다.
| 변형 | 계산 대상 | 특징 |
|---|---|---|
| Sampled-token OPD | 학생이 뽑은 token 하나: $\ell_t=\log p_t(\hat y_t)-\log q_t(\hat y_t)$ | 가장 가볍고 가장 흔한 구현. 기대값이 정확히 token-level KL인 unbiased 추정 |
| Full-vocabulary OPD | 전체 vocabulary에 대한 KL | 가장 dense하지만 $O(BTM)$ 메모리 |
| Top-$k$ OPD | 학생 top-$k$ 집합 $S_t$ 위에서 재정규화한 subset KL | 중간 비용으로 다중 token 감독 유지. 이 논문의 기본 설정, $k=16$ |
학습 내내 추적하는 진단 지표는 세 가지다.
student와 teacher의 top-$k$ 집합이 겹치는 비율 $\mathbb{E}_t\big[|S_t^{(p)}\cap S_t^{(q)}|/k\big]$. 낮으면 mode mismatch, 1에 가까우면 학생이 teacher의 support를 찾은 것
겹치는 token 위에서 $\bar p_t(v)\big(\log\bar q_t(v)-\log\bar p_t(v)\big)$의 평균. 0에 가까우면 적절한 확신으로 정렬, 크게 음수면 학생이 teacher보다 과신
$\Delta H_t=|H(q_t)-H(p_t)|$. 같은 state에서 두 모델의 불확실성 profile 차이
설정. 학생은 Qwen3-1.7B-Base. teacher는 Qwen3-4B(Non-thinking)와, Qwen3-4B-Base에 GRPO zero-RL을 적용한 Qwen3-4B-Base-GRPO. 데이터는 DAPO-Math-17K, 평가는 AIME 2024·AIME 2025·AMC 2023의 avg@16.

결과. 두 teacher의 benchmark 점수는 비슷한데, base 학생과 thinking pattern이 가까운 GRPO teacher에서 distillation이 일관되게 더 좋다. GRPO teacher는 초기 overlap ratio가 더 높다. 학습 후반에 두 run의 overlap 곡선이 수렴해도 성능 격차는 남는다. 초기의 pattern mismatch가 만든 손실은 나중에 회복되지 않는다.
benchmark가 비슷해도 학생과 사고 방식이 맞는 teacher가 이긴다
학습 전 top-k 겹침이 높을수록 결과가 좋다. 사전 예측 지표로 쓸 수 있다
overlap이 나중에 따라잡아도 성능은 못 따라잡는다
Thinking pattern이 맞고 점수도 높은데 OPD가 실패하는 경우가 있다. 두 model family에서 같은 pipeline의 teacher와 추가 RL을 거친 teacher를 대조한다.
| Family | 학생 | 같은 pipeline teacher | 추가 RL teacher |
|---|---|---|---|
| DeepSeek | R1-Distill-1.5B | R1-Distill-7B | Skywork-OR1-Math-7B (R1-Distill-7B + RL) |
| Qwen | Qwen3-1.7B (Non-thinking) | Qwen3-4B (Non-thinking) | Qwen3-4B-Non-Thinking-RL-Math (DeepMath 57K로 RL) |

두 family 모두 같은 pipeline의 teacher는 개선이 제한적이고, RL을 거친 teacher는 모든 benchmark에서 훨씬 큰 이득을 낸다. gap recovery rate $(\mathrm{Acc}_{\text{after}}-\mathrm{Acc}_{\text{before}})/(\mathrm{Acc}_{\text{teacher}}-\mathrm{Acc}_{\text{before}})$도 훨씬 높다. RL teacher는 같은 base checkpoint에서 나왔으므로 thinking pattern은 유지된 채, RL로 얻은 새 능력만 추가된 것이다. 같은 데이터와 recipe로 학습한 두 모델은 각자의 규모에서 비슷한 분포로 수렴해 teacher가 넘겨줄 신호가 거의 없다.
두 조건을 동시에 검증하는 실험이다. JustRL-1.5B는 R1-Distill-1.5B에 RL을 적용해 만든 모델이다. 이제 JustRL-1.5B를 학생으로, 자기 pre-RL checkpoint인 R1-Distill-1.5B를 teacher로 거꾸로 증류한다. 비교군으로 같은 family의 R1-Distill-7B도 teacher로 쓴다. 7B는 JustRL-1.5B보다 점수가 약간 높고, 1.5B는 훨씬 낮다.
pre-RL checkpoint로 증류하면 학생은 RL로 얻은 이득을 전부 잃고 거의 정확히 pre-RL 성능으로 되돌아간다
teacher를 7B로 바꿔도 학습 궤적이 거의 구별되지 않는다. 학생보다 점수가 높은 7B가 1.5B와 똑같은 수준으로 학생을 퇴행시킨다
OPD는 학생 방문 state 위의 reverse KL이므로, 두 teacher가 그 state에서 거의 같은 국소 목표 분포를 만든다는 뜻이다

여기서 세 가지 결론이 나온다.
설정. 학생 R1-Distill-1.5B에 JustRL-1.5B(성공)와 R1-Distill-7B(실패) teacher를 붙이고 세 지표를 추적한다. 두 teacher의 수학 성능은 비슷하며 7B가 약간 높다.
결과. JustRL-1.5B로부터는 teacher와의 격차 80% 이상을 회복하고, R1-Distill-7B로부터는 전혀 개선되지 않는다. dynamics가 갈림길을 보여준다.

| 지표 | 성공 run (JustRL-1.5B) | 실패 run (R1-Distill-7B) |
|---|---|---|
| Overlap ratio | 꾸준히 상승 | 정체 |
| Overlap-token advantage | 0을 향해 개선 | 정체 |
| Entropy gap | 축소 | 처음부터 mismatch 지속 |
| 보조 지표 (Appendix B.2) | loss 감소·gradient 크기 유지 | 약한 gradient·확률 불일치 지속 |
두 가지가 중요하다. 첫째, overlap token은 학습 내내 두 모델 확률 질량의 97–99%를 차지하므로 overlap 상승은 집합 수준의 우연이 아니라 확률적으로 지배적인 token의 정렬이다. 둘째, overlap-token advantage의 개선은 OPD의 주된 최적화 신호가 overlap 영역 안에서의 확률 재배분임을 뜻한다.
성공 설정에서 loss가 덮는 token 집합만 바꾼 세 변형을 비교한다. (i) Student Top-$k$: 학생 top-$k$ 전체 $S_t^{(p)}$, (ii) Overlap Top-$k$: 교집합 $S_t^{(p)}\cap S_t^{(q)}$, (iii) Non-Overlap Top-$k$: 대칭차 $S_t^{(p)}\triangle S_t^{(q)}$. $k=16$.

학생 방문 state에서 teacher가 지지하는 고확률 token에 대한 학생 분포를 점진적으로 다듬는 것
성공의 signature이면서 동시에 gradient가 실제로 작동하는 locus. non-overlap token의 기여는 작다
자기 강화 dynamics가 꾸준한 개선을 만들고, 아니면 overlap이 정체해 학습이 진행되지 않는다
새 지식은 teacher 고유 속성이라 바꿀 수 없지만, thinking pattern 격차는 학습 설계로 줄일 수 있다. 첫 번째 처방은 off-policy cold start다. teacher가 생성한 rollout으로 학생을 먼저 SFT해 pattern을 가깝게 만든 뒤 표준 OPD를 이어 간다.
설정. 학생 Qwen3-1.7B-Base, teacher Qwen3-4B(Non-thinking). OpenThoughts3-1.2M의 수학 subset에서 teacher가 200K 응답을 생성하고 이를 SFT해 Qwen3-1.7B-SFT를 만든다. 이어서 SFT prompt와 중복 제거한 나머지 약 30K prompt로 OPD. 대조군은 같은 teacher·같은 OPD prompt로 Base에서 바로 시작하는 pure OPD.
SFT 초기화가 학습 내내 일관되게 앞선다. 격차가 유지되므로 cold start는 초기 최적화뿐 아니라 후속 OPD의 최종 상한을 높인다
SFT 학생은 훨씬 높은 overlap ratio에서 시작해 매끄럽게 진행한다. Base 학생은 낮게 시작해 뚜렷한 불안정을 겪은 뒤 서서히 회복한다
SFT 학생이 처음부터 훨씬 작다. teacher의 confidence profile에 가까운 상태에서 출발한다

Off-policy distillation이 초기 pattern mismatch를 줄여, OPD가 시작되는 순간부터 teacher의 token 수준 감독을 활용할 수 있게 만든다.
두 번째 처방은 데이터 쪽에서 정렬을 높인다. teacher의 policy는 post-training에서 본 prompt에 의해 형성되므로, teacher-aligned prompt로 OPD하면 감독이 더 효과적이다. 두 granularity에서 실험한다.
| 실험 | 학생 → teacher | 비교 | 결과 |
|---|---|---|---|
| Prompt template | R1-Distill-1.5B ← JustRL-1.5B | 표준 DAPO 템플릿 vs JustRL post-training에 쓰인 템플릿, 문제는 동일 | 템플릿만 바꿔도 세 benchmark 모두 향상. teacher-aligned run은 더 높은 overlap에서 시작해 더 높게 수렴 |
| Prompt content | Qwen3-1.7B-Base ← Qwen3-4B-Base-GRPO | DAPO-Math-17K(teacher RL 데이터와 일치) vs 중복 제거한 DeepMath subset, 크기 동일 | teacher-aligned 쪽이 downstream 우세. 단 overlap ratio는 오히려 낮고, overlap token의 누적 확률 질량은 훨씬 높다 |


Prompt content 실험의 미묘한 점은 학생이 더 적지만 더 강하게 공유되는 token에 질량을 집중한다는 것이다. overlap 집합은 작아지지만 고확률 token에 대한 유효 정렬은 강해진다. 동시에 학생 entropy가 크게 낮아진다. teacher의 post-training prompt만 쓰면 policy entropy를 과도하게 줄여 탐색 능력을 해칠 수 있으므로, 실전에서는 teacher-aligned prompt와 그 밖의 prompt를 섞는 전략이 더 견고하다.
OPD의 매력은 모든 token이 reward를 받는 dense supervision이다. 그러나 이는 teacher의 token 수준 reward가 학생 방문 state에서 신뢰할 만하다는 가정에 기댄다.

최대 응답 길이를 0.5K부터 15K까지 바꾸면, 0.5K·1K는 감독 token이 너무 적어 sample-efficient하지 않고, 3K·7K가 가장 강하며, 10K·15K는 정체하거나 하락한다. 10K·15K는 후반에 overlap ratio가 급락하고 학생 entropy와 gradient norm이 튀는 late-stage collapse를 보인다.



DAPO-Math-17K에서 2K prompt를 뽑아 16K token을 넘는 학생 rollout을 여러 위치에서 자르고 teacher가 이어 쓰게 하면, teacher의 정확도 우위는 1K prefix에서 +0.37, 16K prefix에서 +0.02로 단조 감소한다. dense reward는 중간 길이의 추론에는 효과적이지만 학생 prefix가 teacher에게 익숙한 state에서 멀어질수록 신뢰도가 떨어진다. 긴 chain-of-thought나 agentic multi-turn 같은 long-horizon 설정으로 OPD가 깔끔하게 확장되지 않을 수 있다.
실패한 7B teacher의 reward가 근본적으로 무정보인지 확인하기 위해 학생 rollout별 sequence mean reward $\bar r(y)$가 정답·오답을 얼마나 구분하는지 본다. 두 teacher 모두 정답 rollout에 더 높은 reward를 주며 AUROC는 0.73(JustRL-1.5B)과 0.75(R1-Distill-7B)로 비슷하다. 실패한 teacher의 전역 신호가 더 약하지 않다.

그렇다면 왜 실패하는가. 7B teacher에서는 후반에 overlap-token advantage 크기가 더 큰데도 gradient norm은 계속 작다. 가설은 anisotropy다. 7B의 per-token advantage가 개별적으로는 크지만 sequence 안 위치마다 방향이 제각각이라 gradient로 합쳐질 때 서로 상쇄된다. 호환되는 pattern의 JustRL-1.5B는 더 일관된 token 부분집합에 advantage를 집중해, 작은 신호라도 reverse KL의 mode-seeking이 증폭할 수 있는 한 방향을 가리킨다. 이 가설은 직접 검증되지 않았고 per-token gradient의 방향 구조 분석이 필요하다.
학생 R1-Distill-1.5B, teacher JustRL-1.5B에서 Top-$k$ OPD($k\in\{1,4,16,64\}$)와 sampled-token OPD를 비교하면 sampled-token은 Top-$k$ 평균과 대등하다. 유일하게 나쁜 설정은 Top-1이며 $k$를 4 이상으로 키워도 이득은 미미하다. :::figure assets/fig-15.png Figure 15. Top-$k$ OPD의 support 크기 $k$ 효과 (avg@16). sampled-token OPD가 Top-4·16·64와 대등하고 Top-1만 일관되게 낮다. :::

Top-1은 항상 argmax token만 골라 reward를 한 mode에 집중시키고, 작은 policy 변화로 1위 token이 바뀌어 신호가 불안정해진다. sampled-token은 매 step 학생 분포에 비례해 다른 token을 뽑으므로 고확률 영역을 unbiased하게 덮는다. 문제는 token 수가 아니라 편향된 mode-집중 선택 규칙이다.
OPD가 되려면 student·teacher의 thinking pattern이 호환돼야 하고, teacher가 학생이 못 본 새 능력을 가져야 한다. 점수는 둘 다 예측하지 못한다
JustRL-1.5B를 pre-RL checkpoint로 되돌려 증류하면 RL 이득이 전부 사라지고, 점수 높은 7B teacher도 똑같은 곡선을 그린다. OPD는 pattern을 옮긴다
성공 = 학생 방문 state에서 고확률 공유 token의 점진적 정렬. overlap ratio 72→91%, 공유 token이 질량 97–99%, overlap token만 학습해도 충분
teacher rollout SFT로 cold start하면 초기 overlap이 올라가 상한까지 높아진다. teacher의 post-training prompt는 정렬을 날카롭게 하지만 entropy를 깎으므로 섞어 쓴다
reward 품질은 깊이에 따라 떨어지고(teacher 우위 +0.37→+0.02) 불안정은 뒤에서 앞으로 번진다. 실패한 teacher도 AUROC 0.75로 전역 정보는 있으나 국소 기하가 문제다
핵심 메시지: OPD는 지식이 아니라 사고 패턴을 학생 방문 state의 고확률 token 위에서 옮기는 절차이며, 그 전제가 맞지 않으면 아무리 강한 teacher도 신호를 전달하지 못한다.