본문으로 건너뛰기

다수결로 정답을 만드는 비지도 Self-Distillation

u-OPSD는 자체 rollout의 다수결을 pseudo-solution으로 삼아 불일치 경로에 token-level distillation을 적용하고, Qwen3 비사고 모드 평균 점수를 최대 10.7% 높였습니다.

왜 중요한가

기존 On-Policy Self-Distillation은 모델 내부에서 teacher와 student의 파라미터를 공유하더라도 ground-truth solution, 환경 피드백 또는 더 큰 모델의 guidance가 필요했습니다. u-OPSD는 여러 자체 rollout의 agreement를 confidence 신호로 바꾸고, disagreement가 발생한 경로에만 token-level distillation을 적용해 외부 레이블 없이 학습합니다. Qwen3의 비사고 모드에서 Qwen3-4B와 Qwen3-8B의 5개 수학 벤치마크 평균 점수를 각각 8.5%와 10.7% 높여, 정답 기반 OPSD보다도 높은 평균을 기록했습니다.

핵심 기여

자체 rollout 기반 pseudo-solution

u-OPSD는 하나의 prompt에서 G=8G=8개 rollout을 독립적으로 생성하고 각 결과의 최종 답을 canonicalization한 뒤 majority vote로 pseudo-answer를 만듭니다. 최다 득표 비율을 전체 rollout 수로 나눈 self-consistency score가 [?mτ=0.5[?m\tau=0.5[?m 이상이면 일치 rollout 중 가장 긴 추론 경로를 pseudo-solution으로 선택합니다. 이 과정에서 ground-truth solution이나 외부 verifier를 사용하지 않습니다.

불일치 경로에 대한 token-level 교정

모델의 pseudo-answer와 다른 유효 rollout을 student trajectory로 분리하고, pseudo-solution을 함께 본 detached teacher의 다음 토큰 분포를 student가 문제와 자신의 prefix만 본 상태에서 따라가도록 합니다. 손실은 각 불일치 rollout의 모든 token 위치에서 teacher와 student의 분포 차이를 평균내는 방식으로 계산합니다. 따라서 단일 응답을 teacher-forcing으로 복사하는 대신 모델이 스스로 모순을 드러낸 prefix에 조밀한 교정 신호를 집중합니다.

정답 기반 방법과의 성능 비교

Qwen3-4B와 Qwen3-8B의 비사고 모드에서 u-OPSD는 5개 수학 벤치마크 평균 49.49와 54.31을 기록해 base model보다 각각 8.5%와 10.7% 높았습니다. 같은 조건의 OPSD보다 각각 3.2%와 2.3% 높았고, thinking mode에서는 Qwen3-4B가 77.05, Qwen3-8B가 77.99로 OPSD와 비슷하거나 소폭 앞섰습니다. Qwen3-30B-A3B-Instruct-2507에서도 평균 75.77에서 77.46으로 상승했습니다.

핵심 아이디어 이해하기

언어 모델은 같은 문제를 여러 번 풀 때 하나의 rollout만으로는 우연한 오류와 안정적인 판단을 구분하기 어렵습니다. 그러나 여러 rollout의 최종 답이 반복해서 일치하면 모델이 현재 파라미터 안에서 해당 답을 상대적으로 신뢰하고 있다는 내부 신호를 얻을 수 있습니다. u-OPSD는 이 agreement를 외부 정답 대신 사용할 pseudo-label의 근거로 삼습니다.

먼저 문제 xx마다 현재 정책의 gradient를 끊은 복사본에서 GG개의 rollout을 샘플링하고, 각 rollout에서 답 a(g)=Ans(y(g))a^{(g)}=\mathrm{Ans}(y^{(g)})를 추출합니다. 가장 많이 나온 답을 a~(x)\tilde{a}(x)로 정한 뒤, 그 답을 가진 rollout의 비율 c(x)=1Gg\mathbbm1[a(g)=a~(x)]c(x)=\frac{1}{G}\sum_g\mathbbm{1}[a^{(g)}=\tilde{a}(x)]를 계산합니다. 예를 들어 8개 중 5개가 같은 답을 내면 c(x)=5/8=0.625c(x)=5/8=0.625가 되어 기본 임계값 τ=0.5\tau=0.5를 통과합니다.

일치한 rollout은 pseudo-solution을 구성하고, 다른 유효 답을 낸 rollout은 교정 대상이 됩니다. teacher는 문제와 pseudo-solution, 그리고 불일치 rollout의 prefix를 함께 보므로 solution-conditioned next-token distribution을 계산할 수 있지만, student는 실제 추론 때처럼 문제와 불일치 prefix만 봅니다. 이 teacher 분포와 student 분포의 차이를 각 token 위치에서 줄이면, student가 틀린 최종 답뿐 아니라 그 답으로 이어진 중간 선택도 수정합니다.

모든 rollout이 같은 답이면 이미 교정할 disagreement가 없으므로 손실을 계산하지 않고, 투표가 약하면 pseudo-solution을 신뢰하지 않아 gradient를 생략합니다. 결과적으로 학습은 모델이 어느 정도 일관된 답을 만들지만 일부 경로에서는 다른 답으로 벗어나는 competence frontier에 집중됩니다. 이 구조가 단순 majority-vote imitation보다 dense supervision을 제공하는 핵심입니다.

방법론

u-OPSD의 입력은 정답이나 해설이 없는 문제 xUx\sim\mathcal{U}입니다. 현재 정책의 stop-gradient 복사본 πˉ=πsg[θ]\bar{\pi}=\pi_{\operatorname{sg}[\theta]}에서 같은 문제에 대해 GG개의 rollout을 학습 시점 temperature로 생성하고, 각 rollout의 최종 답을 Ans(y(g))\mathrm{Ans}(y^{(g)})로 파싱합니다. 파싱할 수 없는 truncation은 유효 답이 아니므로 agreement나 disagreement 어느 쪽에도 넣지 않습니다.

유효 답들의 majority vote로 pseudo-answer a~(x)\tilde{a}(x)를 선택하고, 동률은 무작위로 처리합니다. self-consistency score는 c(x)=1Gg=1G\mathbbm1[a(g)=a~(x)]c(x)=\frac{1}{G}\sum_{g=1}^{G}\mathbbm{1}[a^{(g)}=\tilde{a}(x)]로 계산하며 분모는 유효 rollout 수가 아니라 전체 GG입니다. 예를 들어 8개 중 4개가 투표 답과 일치하면 c(x)=0.5c(x)=0.5로 기본 임계값을 통과하지만, 3개만 일치하면 c(x)=0.375c(x)=0.375이므로 해당 prompt에는 gradient를 적용하지 않습니다.

c(x)τc(x)\ge\tau이고 불일치 유효 rollout이 하나 이상일 때, 일치 rollout 중 가장 긴 경로를 y+y^+로 선택하고 불일치 rollout을 yy^-로 사용합니다. 각 불일치 prefix y<ty^-_{<t}에서 teacher는 xx, y+y^+, y<ty^-_{<t}를 조건으로 다음 토큰 분포를 계산하고 student는 xx, y<ty^-_{<t}만 조건으로 같은 분포를 계산합니다. 손실은 1BxyBxt=1yDβ(πˉ(x,y+,y<t)πθ(x,y<t))\frac{1}{|\mathcal{B}^{-}_{x}|}\sum_{y^-\in\mathcal{B}^{-}_{x}}\sum_{t=1}^{|y^-|}D_\beta(\bar{\pi}(\cdot\mid x,y^+,y^-_{<t})\|\pi_\theta(\cdot\mid x,y^-_{<t}))로 두 분포의 차이를 줄입니다.

논문은 β=0\beta=0인 forward KL을 사용하며, 이는 teacher 분포 PP와 student 분포 QQ가 주어질 때 DKL(PQ)=vP(v)log(P(v)/Q(v))D_{KL}(P\|Q)=\sum_v P(v)\log(P(v)/Q(v))를 어휘의 모든 token vv에 대해 계산하는 방식입니다. teacher가 어떤 token에 높은 확률을 주면 student가 그 확률을 낮게 두는 경우 손실이 커지고, student가 teacher 분포를 맞추면 손실이 작아집니다. 실제 구현은 Qwen3에 LoRA rank 64와 α=128\alpha=128을 적용하고, learning rate 5×1065\times10^{-6}, gradient-norm clipping 0.1, sampling temperature 1.1, top-p 0.95, top-k 20으로 150 steps 학습합니다.

관련 Figure

u-OPSD가 prompt에서 여러 rollout을 생성하고 majority vote로 pseudo-label을 만든 뒤, 일치 rollout은 teacher reference로 불일치 rollout은 student trajectory로 사용하는 흐름도입니다.
Diagram

그림의 왼쪽에서는 동일한 prompt에서 Student Policy가 rollout 1부터 rollout G까지 여러 답을 생성하고, winning 답의 투표 비율 Gw/GG_w/G가 임계값 τ\tau를 넘으면 pseudo-label이 형성됩니다. 가운데와 오른쪽에서는 winning rollout을 조건으로 한 Teacher Policy의 다음 토큰 분포를 losing rollout의 prefix를 보는 Student Policy에 전달하고, 각 token 위치의 KL Divergence를 손실로 계산합니다. 즉 외부 정답 없이 합의된 경로를 기준으로 모델이 스스로 불일치 경로를 교정하는 구조를 한 장에 나타냅니다.

u-OPSD가 prompt에서 여러 rollout을 생성하고 majority vote로 pseudo-label을 만든 뒤, 일치 rollout은 teacher reference로 불일치 rollout은 student trajectory로 사용하는 흐름도입니다.

주요 결과

Qwen3-4B 비사고 모드에서 base model의 5개 벤치마크 평균은 40.96이었고 u-OPSD는 49.49를 기록했습니다. Qwen3-8B에서는 43.57에서 54.31로 상승했으며, 각각 base 대비 8.5%와 10.7% 개선에 해당합니다. u-OPSD는 두 모델 모두 5개 벤치마크 중 4개에서 가장 높은 점수를 얻었고, OPSD보다 평균 3.2%와 2.3% 앞섰습니다.

Thinking mode에서는 Qwen3-4B가 74.85에서 77.05로, Qwen3-8B가 76.09에서 77.99로 상승했습니다. u-OPSD는 Qwen3-4B에서 OPSD의 76.20을 넘었고 Qwen3-8B에서는 OPSD의 77.97과 사실상 같은 수준이었으며, GRPO의 76.35와 76.92보다 높았습니다. Instruction-tuned 모델에서도 Qwen3-30B-A3B-Instruct-2507은 75.77에서 77.46으로, Qwen3-4B-Instruct-2507은 67.00에서 68.78로 개선됐습니다.

동일한 rollout 예산에서 label-free RL baseline의 base 대비 개선 폭은 최대 1.5%였지만, u-OPSD는 비사고 모드에서 8.5%에서 10.7%의 개선을 냈습니다. 64개 학습 prompt를 점검한 결과 96.3%의 rollout에서 boxed answer를 파싱할 수 있었고, 94.0%의 prompt가 self-consistency threshold를 통과했으며, pseudo-label의 86.7%가 데이터 원천의 gold answer와 일치했습니다. Full-vocabulary distillation의 평균 점수는 57.10으로 student token만 평가한 방식의 43.45보다 높았고, top-100 token 제한은 59.01로 계산 비용을 줄이면서 더 높은 평균을 냈습니다.

기술 상세

u-OPSD는 OPSD의 asymmetric context를 외부 gold solution 대신 자체 rollout consensus로 구성합니다. student 정책은 πS(x)=πθ(x)\pi_S(\cdot\mid x)=\pi_\theta(\cdot\mid x)이고 teacher는 detached 정책이 pseudo-solution을 본 조건부 분포 πˉ(x,y+,y<t)\bar{\pi}(\cdot\mid x,y^+,y^-_{<t})입니다. 따라서 teacher와 student는 같은 네트워크를 공유하지만 teacher만 합의된 긴 추론 경로를 privileged context로 사용합니다.

rollout은 답의 일치 여부에 따라 Yx+={y(g):a(g)=a~(x)}\mathcal{Y}^{+}_{x}=\{y^{(g)}:a^{(g)}=\tilde{a}(x)\}와 $\mathcal{Y}^{-}_{x}={y^{(g)}:a^{(g)} eq\tilde{a}(x)}$로 나뉩니다. 논문은 기본 설정에서 y+=arg maxyYx+yy^+=\operatorname*{arg\,max}_{y\in\mathcal{Y}^{+}_{x}}|y|로 가장 긴 agreeing rollout을 고릅니다. 긴 전체 reasoning trace를 teacher reference로 쓰면 boxed pseudo-label만 조건으로 삼는 방식보다 평균 성능이 10.3%에서 15.8% 낮아지는 현상을 피할 수 있습니다.

손실의 forward KL은 teacher가 분포 전체에 둔 확률을 student가 재현하도록 합니다. 예를 들어 어떤 위치에서 teacher가 token A와 B에 각각 0.8과 0.2, student가 0.4와 0.6을 부여하면 DKL(PQ)=0.8log(0.8/0.4)+0.2log(0.2/0.6)D_{KL}(P\|Q)=0.8\log(0.8/0.4)+0.2\log(0.2/0.6)를 계산해 불일치 정도를 얻습니다. 이 값을 불일치 rollout의 각 prefix에 대해 평균내므로 sequence-level scalar reward를 모든 token에 복사하는 GRPO보다 위치별 교정 신호가 촘촘합니다.

실험에서는 전체 vocabulary에 대한 divergence가 student-sampled token만 사용하는 방식보다 강했고, Qwen3-8B 비사고 모드에서 각각 57.10과 43.45의 평균을 냈습니다. top-100만 사용한 방식은 59.01로 전체 vocabulary 방식의 비용을 일부 줄이면서 더 높은 결과를 냈고, reverse KL은 학습이 수렴하지 않았습니다. reverse KL 설정에서는 평균 생성 길이가 step 25의 2.7k characters에서 step 125 이후 token ceiling인 99k까지 증가했고, boxed answer 파싱 비율은 99%에서 33%로 하락했습니다.

한계점

실험은 Qwen3 계열의 4B와 8B 모델 및 두 reasoning mode, 그리고 최종 답을 자동으로 확인할 수 있는 competition mathematics에 한정됐습니다. u-OPSD는 extractable하고 canonicalizable한 답을 전제로 하므로 open-ended generation에서는 exact-match voting을 더 유연한 consensus 방식으로 바꿔야 합니다. 또한 in-domain probe에서 pseudo-label의 13.3%가 틀렸고, seed를 반복한 error bar와 의도적으로 오염된 vote의 학습 동역학은 아직 측정되지 않았습니다.

실무 활용

u-OPSD는 정답 레이블을 구하기 어렵지만 최종 답을 자동으로 추출할 수 있는 reasoning 문제에 적용할 수 있습니다. 학습 시 여러 rollout을 생성한 뒤 내부 합의와 불일치를 이용하므로, gold solution을 직접 제공하지 않는 post-training 파이프라인을 구성할 수 있습니다.

  • 정답을 수집하기 어려운 수학 문제 데이터셋에서 문제 prompt만 사용해 reasoning 모델을 후속 학습할 수 있습니다. 각 문제에서 여러 rollout을 생성하고 majority vote를 통과한 경우에만 불일치 경로에 distillation loss를 적용합니다. 최종 답을 boxed 형식처럼 안정적으로 파싱할 수 있는 데이터가 필요합니다.
  • 기존 OPSD나 GRPO와 외부 supervision 비용을 비교하는 실험에 u-OPSD를 추가할 수 있습니다. Qwen3-4B와 Qwen3-8B에서는 G=8G=8, τ=0.5\tau=0.5 설정이 사용됐고, generation budget을 맞춘 비교가 가능합니다. 더 많은 생성 비용을 허용하면 ablation에서 G=12G=12가 기본 G=8G=8보다 4.7% 높은 평균을 기록했습니다.

코드 공개 여부: 공개

코드 저장소 보기

키워드

u-OPSD(비지도 On-Policy Self-Distillation)Self-Consistency(자기 일관성)Pseudo-Label(의사 레이블)Majority Vote(다수결)Token-Level Distillation(토큰 수준 지식 증류)GRPO(Group Relative Policy Optimization)

용어 해설

On-Policy Distillation
모델이 실제 추론 과정에서 직접 생성한 rollout을 학습 궤적으로 사용하고, 각 토큰 위치에서 teacher의 다음 토큰 분포를 student에게 전달하는 후속 학습 방식입니다. 학습 데이터와 추론 과정의 차이를 줄이면서 단일 보상보다 촘촘한 지도 신호를 제공합니다.
Self-Consistency
하나의 문제에 대해 여러 추론 경로를 독립적으로 생성한 뒤 최종 답변의 일치 정도를 신뢰도 신호로 사용하는 방법입니다. u-OPSD에서는 가장 많이 나온 답을 pseudo-answer로 선택하고, 투표 비율이 임계값을 넘은 문제만 학습에 사용합니다.
Pseudo-Label
사람이 제공한 정답 대신 모델의 예측이나 생성 결과에서 자동으로 만든 학습 레이블입니다. 이 논문에서는 여러 rollout의 majority vote로 pseudo-answer를 만들고, 그 답과 일치하는 전체 추론 경로를 pseudo-solution으로 사용합니다.
Forward KL Divergence
teacher 분포가 부여한 확률 질량을 student가 놓치지 않도록 두 다음 토큰 분포의 차이를 계산하는 발산입니다. u-OPSD는 DKL(πTπS)D_{KL}(\pi_T\|\pi_S)를 사용해 teacher의 전체 어휘 분포를 student가 각 토큰 위치에서 따라가도록 학습합니다.
Majority Vote
여러 후보 중 가장 많은 표를 받은 결과를 선택하는 집계 방식입니다. u-OPSD는 각 rollout에서 최종 답을 추출한 뒤 최다 득표 답을 선택하고, 전체 rollout 수 대비 득표 비율이 [?mτ=0.5[?m\tau=0.5[?m 이상일 때만 해당 답을 신뢰합니다.
LoRA
기존 모델의 원래 가중치를 고정한 채 저순위 행렬을 추가해 소수의 파라미터만 학습하는 Fine-tuning 방식입니다. 이 논문은 rank 64와 α=128\alpha=128 설정으로 Attention 및 MLP projection에 LoRA를 적용해 u-OPSD 학습을 수행합니다.
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 09.수집 2026. 08. 12.출처 타입 PAPER

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.