JA EN
LearnInference & Serving
·★ MEMBER·PAPER·14 min read

Paper Walkthrough: No Gold Answers, No Stronger Teacher — How u-OPSD Distills From Its Own Majority Vote

u-OPSD (arXiv:2608.06296) replaces the gold solution in on-policy self-distillation with the model's own majority vote, then corrects only the rollouts that disagree with it. A from-scratch walkthrough grounded solely in the paper.

ModalitytextTaskinference

On-Policy Self-Distillation without Any Supervision

Primary source — what this article is built on

undefined2026-08-06undefined2026-08-13same month

On-Policy Self-Distillation without Any SupervisionYijiang Li, Bingyang Wang, Yijun Liang et al. · 2026-08-06 · v2arXiv:2608.06296Paper page·PDF
undefined

On-policy (Self-)Distillation (OPD / OPSD) has shown strong potential for post-training large language models (LLMs). However, existing methods still rely heavily on external supervision, including ground-truth signals, environmental feedback, or guidance from larger models, and therefore fall short of genuine "self"-distillation. In this study, we show that on-policy self-distillation can be achieved using only a model's own generations via internal consistency. We propose unsupervised on-policy self-distillation (U-OPSD). U-OPSD first samples multiple rollouts and constructs a pseudo solution by majority vote under a self-consistency threshold. It then conditions the model's distribution on the pseudo-solution and distills itself on the disagreeing completions, allowing the model to correct itself precisely where it is confidently wrong. Across diverse benchmarks, base models, and training settings, U-OPSD consistently improves over the base models and matches or surpasses supervised methods with ground truth (GT) such as OPSD and GRPO. On five mathematical reasoning benchmarks, i.e., AIME24, AIME25, HMMT25, MATH500, and AMC23, U-OPSD improves over the base model by 8.5% and 10.7% on Qwen3 non-thinking mode at 4B and 8B scales, and outperforms OPSD by 3.2% and 2.3% on average, respectively. In thinking mode, U-OPSD stays on par with OPSD, ahead by 0.9% at 4B and level at 8B and surpassing GRPO by 0.7% and 1.1%, respectively. Code is available at [https://github.com/williamium3000/u-opsd](https://github.com/williamium3000/u-opsd).


A study room where someone took the answer key away

Picture two students in a study room who happen to be the same person. One of them — the teacher — has the worked solution in hand and solves the problem while looking at it. The other — the student — sees only the problem statement. Now force the student to copy, token by token, what the teacher believes the next move should be. That is on-policy self-distillation (OPSD). Teacher and student share weights, which is why it is called "self" distillation. But what makes the teacher smarter is the worked solution, and that came from outside.

The paper pushes on exactly that point: does the teacher in on-policy self-distillation actually need a ground-truth solution, or can a model build its own privileged context and perform genuine self-distillation (§1)? The answer is u-OPSD. In place of the gold solution it drops in the majority vote over eight of the model's own attempts at the same problem. All it consumes is the problem statement — no gold labels, no environmental feedback, no larger teacher model.

The map: what each recipe was borrowing from outside

Method Training signal Required from outside
GRPO A scalar: correct/incorrect, normalized within the sampled group. Every token of a rollout shares one value Gold answer aa^\star
OPD (on-policy distillation) A teacher model's next-token distribution, dense at the states the student actually visits A stronger teacher model
OPSD (on-policy self-distillation) The same model's next-token distribution while it can see the gold solution yy^\star Gold solution yy^\star
u-OPSD (this paper) The same model's next-token distribution while it can see its own majority-vote answer Nothing (problem statements only)

GRPO's weakness is that its signal is sparse: a rollout thousands of tokens long receives one bit of information. OPD and OPSD made it dense, telling the model at every single token what the distribution should have been. But as the paper points out, OPSD is self-distillation only in the sense that the parameters are shared — the information that makes the teacher capable still arrives from outside (§1). That is what capped these methods at labeled problems.

The core idea: one sample is unreliable, agreement among eight is a signal

The observation is simple: "although an individual rollout may be unreliable, agreement among multiple independently sampled rollouts provides an endogenous confidence signal" (§1). Wrong answers scatter. A correct chain of reasoning tends to converge on one value, while mistakes land wherever the model happened to slip, so if six of eight rollouts land on the same answer, that answer is worth more than any single one of them.

There is a second payoff. The rollouts that fall outside the majority are, by construction, a list of the places worth fixing. Distillation is applied only there. In the paper's words, this lets the model "correct itself precisely where it is confidently wrong" (Abstract).

FIG 1What u-OPSD compares is exactly this bar chart — the next-token distribution over the vocabulary. Raise the temperature and it flattens, the eight rollouts scatter, and the vote splits. Training-time sampling in the paper runs at temperature 1.1 (§4.1)

Three steps: sample, vote, distill

Algorithm 1 lays out the per-prompt procedure in three stages (§3.2).

(1) Sample. For each problem xx, draw GG rollouts at the training temperature from πˉ\bar\pi, a stop-gradient copy of the current policy. Pull the final answer a(g)a^{(g)} out of \boxed{...} with normalization and canonicalization. Anything unparsable — usually a truncation — is marked invalid.

(2) Vote. The plurality among the valid answers becomes the pseudo-answer a~(x)\tilde a(x), with ties broken uniformly at random. That splits the rollouts into an agreeing set Yx+\mathcal{Y}^+_x and a disagreeing set Yx\mathcal{Y}^-_x. Invalid rollouts join neither, because a generation that was cut off is evidence of neither a correct nor an incorrect belief. Confidence in the vote is measured by the self-consistency score:

c(x)=1Gg=1G1 ⁣[a(g)=a~(x)]c(x)=\frac{1}{G}\sum_{g=1}^{G}\mathbb{1}\!\left[a^{(g)}=\tilde a(x)\right]
(1)

c(x)c(x) is the self-consistency score, GG the number of rollouts, a(g)a^{(g)} the answer the gg-th rollout ended up with, a~(x)\tilde a(x) the answer that won the vote, and 1[]\mathbb{1}[\cdot] a counter that returns 1 when the condition inside holds and 0 otherwise. Put in words, it says: count how many of the eight attempts came back with the same answer as the winner, then divide by eight. Equation (1) is a show of hands written as a fraction, and nothing more. One detail matters more than it looks: the denominator is GG, the total drawn, not the number of valid ones. A prompt that truncates often loses confidence for that reason alone and gets filtered out automatically (§3.2).

(3) Distill. Only prompts whose c(x)c(x) reaches the threshold τ\tau are used. One agreeing rollout y+y^+ is promoted to stand in for the gold solution yy^\star, and a subset BxYx\mathcal{B}^-_x \subseteq \mathcal{Y}^-_x of the disagreeing rollouts becomes the distillation target.

Lu-OPSD(θ)=ExU E{y(g)}πˉ(x)[1 ⁣[Yx]1YxyYx1yn=1yDβ ⁣(πˉ(x,y+,y<n)  πθ(x,y<n))]\mathcal{L}_{\text{u-OPSD}}(\theta)=\mathbb{E}_{x\sim\mathcal{U}}\ \mathbb{E}_{\{y^{(g)}\}\sim\bar\pi(\cdot\mid x)}\left[\mathbb{1}\!\left[\mathcal{Y}^-_x\neq\emptyset\right]\frac{1}{|\mathcal{Y}^-_x|}\sum_{y^-\in\mathcal{Y}^-_x}\frac{1}{|y^-|}\sum_{n=1}^{|y^-|} D_\beta\!\Big(\bar\pi(\cdot\mid x, y^+, y^-_{<n})\ \big\|\ \pi_\theta(\cdot\mid x, y^-_{<n})\Big)\right]
(2)

It is long, but it reads as one sentence: take the rollouts that fell outside the majority one at a time, show both sides the first nn tokens of one — but let the teacher πˉ\bar\pi also see the majority answer y+y^+ — then pull the two next-token distributions together under a divergence DβD_\beta, averaged over every token and every disagreeing rollout. U\mathcal{U} is the pool of unlabeled problems, y<ny^-_{<n} is a prefix of a disagreeing rollout, y|y^-| is that rollout's length in tokens, θ\theta are the trained parameters, and πˉ\bar\pi is the same network with gradients detached. Strip the notation away and what is left is a single instruction, one which says: at every step the model took down a wrong path, compare what it thought at that moment with what it would have thought had it known the group's answer — and close the gap. The two expectations stacked at the front mean only "average this over all the problems, and over the rollouts you drew for each one," and the two fractions in the middle mean only "count each disagreeing rollout once, and each of its tokens once," so that a long answer does not outweigh a short one. Two kinds of prompt are skipped: those where c(x)<τc(x) < \tau, so the vote cannot be trusted, and those where Yx\mathcal{Y}^-_x is empty, so there is nothing to correct.

As pseudocode, the whole per-prompt procedure is this short:

What's behind this

§

Members-only from here

371 walkthroughs, 26 textbook chapters, 48 student units and 6 close readings — all included for $4.99/mo, with three new explainers every day. Cancel any time; access runs to the end of the period.

Already a member? Sign in to keep reading

References

  1. Yijiang Li, Bingyang Wang, Yijun Liang, Yunjie Tian et al.. (2026-08-06) On-Policy Self-Distillation without Any Supervision. arXiv:2608.06296Paper page·PDF

This article is written from the source paper above. Where they differ, the original is authoritative.

Comments

Sign in to comment