Sam Babichenko

Reading notes / Running RL at scale

The trust region in LLM reinforcement learning

Qi et al., 2026

Policies and responses
y;y; yt;y_t; ∣y∣;|y|; TTresponse; its tt-th token; its length; maximum length
sts_tprefix (x,y1,…,yt−1)(x,y_1,\dots,y_{t-1}), with xx the prompt
θ;\theta; θ′\theta'weights being updated; weights that sampled the batch
μθ′;\mu_{\theta'}; πθ′;\pi_{\theta'}; πθ\pi_\thetasampler at θ′\theta'; trainer's recomputation at θ′\theta'; trainer at θ\theta
μ;\mu; π\piin the theory: policy that generated the data; policy being trained
R(y);R(y); J(π)J(\pi)reward of a response; expected reward Ey∼π[R(y)]\mathbb E_{y\sim\pi}[R(y)]
G;G; A^\hat Aresponses per prompt; reward minus the group's mean reward
Ratios and distances
rtr_tratio π(yt∣st)/μ(yt∣st)\pi(y_t\mid s_t)/\mu(y_t\mid s_t)
DTV(s)D_{\rm TV}(s)total variation between the next-token distributions after ss
DTVmax⁡;D^{\max}_{\rm TV}; DˉTV\bar D_{\rm TV}largest per-prefix distance; summed per-token distance, averaged over responses
Lμ′(π);L'_\mu(\pi); Δ(μ,π)\Delta(\mu,\pi)first-order term; error term of the performance identity
Mt;M_t; DtD_tDPPO's mask on token tt; divergence estimate at sts_t
Constants
εlow,\varepsilon_{\rm low}, εhigh\varepsilon_{\rm high}lower and upper clip ranges of PPO and GRPO (0.2 and 0.28, or 0.27 in the large runs)
τ\tauDPPO threshold: 0.15 (total variation) or 0.05 (KL) in the stability tests, 0.2 at scale
ξ\xilargest absolute reward, in the bounds of the main result
CCcap on the importance ratio in truncated methods (3, or 5 at scale)
KKtokens kept in the top-K approximation (20)
α\alphaprobability below which the clip is removed in Step 8 (0.1)

Context. proximal policy optimization: a policy-gradient method that takes several gradient steps on each sampled batch and clips each sampled token's probability ratio so the policy moves only a little per batch, the standard algorithm for reinforcement-learning (RL) fine-tuning of language models, descends from trust region policy optimization: maximize a first-order estimate of the improvement subject to a bound on the KL divergence between the new policy and the one that collected the data, which keeps each new policy within a set divergence of the policy that collected the data, a constraint called a the set of policies close enough to the data-collecting policy, in KL divergence or total variation, that a first-order estimate of the improvement can be trusted. PPO replaces the constraint by clipping each sampled token's probability ratio. In language-model RL the data are off-policy for two reasons: several gradient steps are taken on each batch, and the the difference between the token probabilities that the inference engine (the sampler) and the training engine (the trainer) assign to the same response under the same weights makes the trainer's probabilities differ from the sampler's even before the first step. Qi et al. (2026) rederive the trust-region bound for responses of bounded length with one reward at the end, argue that ratio clipping measures distance badly over the long-tailed vocabularies of language models, and replace it with a direct estimate of the divergence.

The DTV(p,q)=12∑a∣p(a)−q(a)∣D_{\rm TV}(p,q)=\tfrac12\sum_a|p(a)-q(a)|: the largest difference between the probabilities two distributions give the same event, between 0 and 1 between the sampler's and the trained policy's next-token distributions is half the expected ∣r−1∣|r-1| over tokens the sampler draws, with rr the ratio of their probabilities. PPO's test that ∣r−1∣|r-1| of the one sampled token stays within the clip range therefore tests a one-sample estimate of twice this distance, with an error that depends on the token's probability: raising a token from 10−410^{-4} to 10−210^{-2} gives ratio 100 and is clipped though it moves less than 0.01 of probability, while lowering one from 0.99 to 0.80 gives ratio 0.81 and passes a clip range of 0.2 though it moves 0.19. divergence proximal policy optimization: PPO with the ratio test replaced by a test on an estimate of the divergence between the two policies' next-token distributions keeps PPO's form and blocks a token's update only when an estimate of the divergence at that position exceeds a threshold and the update moves further away. Its cheap binary estimate, the change in the sampled token's probability, equals μ ∣r−1∣\mu\,|r-1|, the ratio's deviation weighted by the token's probability μ\mu under the sampler. Measured from the sampler's probabilities, DPPO trains stably where methods with no trust region, or with one measured from the trainer's recomputation, collapse, and it learns faster than group relative policy optimization: PPO with each response's advantage computed from the rewards of the other responses sampled for the same prompt with DAPO's change to PPO's clip: a larger upper clip range (0.28) than lower (0.2), so tokens with positive advantage can gain probability faster.

Setting. A prompt gets a response y=(y1,…,y∣y∣)y=(y_1,\dots,y_{|y|}) of at most the maximum response length in tokens, the horizon of the finite-horizon problem tokens and a reward R(y)R(y) at the end, and the prefix (x,y1,…,yt−1)(x,y_1,\dots,y_{t-1}) before token tt, with xx the prompt is the prefix before token tt. Write the sampler's policy at the weights θ′\theta' that generated the batch for the sampler's policy at the weights that generated the batch, the trainer's recomputation of the policy at the same weights θ′\theta' for the trainer's recomputation of it, and the trainer's policy at the weights θ\theta being updated for the policy being trained. The theory holds for any two policies; write μ\mu for the one that generated the data, π\pi for the one being trained, J(π)=Ey∼π[R(y)]J(\pi)=\mathbb E_{y\sim\pi}[R(y)], and rtr_t=π(yt∣st)/μ(yt∣st){}=\pi(y_t\mid s_t)/\mu(y_t\mid s_t) for the ratio at token tt. The distance at a prefix ss is the total variation between μ(⋅∣s)\mu(\cdot\mid s) and π(⋅∣s)\pi(\cdot\mid s), the two policies' next-token distributions after prefix ss, and with r(a)=π(a∣s)/μ(a∣s)r(a)=\pi(a\mid s)/\mu(a\mid s) for a token aa,DTV(s)=12∑a∣μ(a∣s)−π(a∣s)∣=12 Ea∼μ(⋅∣s)∣r(a)−1∣.\begin{aligned}D_{\rm TV}(s)&=\tfrac12\textstyle\sum_a|\mu(a\mid s)-\pi(a\mid s)|\\&=\tfrac12\,\mathbb E_{a\sim\mu(\cdot\mid s)}|r(a)-1|.\end{aligned}PPO, with GRPO as a variant of it, maximizesEy∼μ[∑tmin⁡(rtA^,clip⁡(rt,1−ε,1+ε)A^)],\begin{aligned}&\mathbb E_{y\sim\mu}\Big[\sum_t\min\big(r_t\hat A,\\&\qquad\operatorname{clip}(r_t,1-\varepsilon,1+\varepsilon)\hat A\big)\Big],\end{aligned}with the advantage R(y)−1G∑i=1GR(yi)R(y)-\frac1G\sum_{i=1}^GR(y_i): the response's reward minus the mean reward of the GG responses sampled for the same prompt, shared by all its tokens the advantage and the clip range; with separate lower and upper ranges εlow=0.2\varepsilon_{\rm low}=0.2 and εhigh=0.28\varepsilon_{\rm high}=0.28 (0.27 in the large runs) the interval is [1−εlow,1+εhigh][1-\varepsilon_{\rm low},1+\varepsilon_{\rm high}] the clip range. Clipping removes a token's gradient once rtr_t leaves the interval in the direction its advantage pushes.

Main result (theory). The first theorem asks how much the expected reward changes when the policy moves from μ\mu to π\pi, written with expectations under μ\mu only, the ones a batch of samples can estimate. The answer is a first-order term, the objective PPO optimizes before clipping, minus an error that comes from changes at later tokens; the second theorem bounds the error by the per-token distance. For responses of why: the classical trust-region bound has a factor 1/(1−γ)21/(1-\gamma)^2 that is infinite with no discounting (γ=1\gamma=1); with responses of at most TT tokens, TT takes its place, any two policies satisfyJ(π)−J(μ)=Lμ′(π)⏟first order−Δ(μ,π)⏟error,J(\pi)-J(\mu)=\underbrace{L'_\mu(\pi)}_{\text{first order}}-\underbrace{\Delta(\mu,\pi)}_{\text{error}},where the sums and the product run over the tokens of yy:Lμ′(π)=Ey∼μ[R(y)∑t(rt−1)],L'_\mu(\pi)=\mathbb E_{y\sim\mu}\Big[R(y)\sum_t(r_t-1)\Big],Δ(μ,π)=Ey∼μ[R(y)∑t(rt−1)×(1−∏j>trj)].\begin{aligned}\Delta(\mu,\pi)=\mathbb E_{y\sim\mu}\Big[&R(y)\sum_t(r_t-1)\\&\times\Big(1-\prod_{j\gt t}r_j\Big)\Big].\end{aligned}Let why: Step 2 bounds the error term by taking ∣R(y)∣≤ξ|R(y)|\le\xi out of the expectation, so the bounds need a bounded reward, let the largest per-prefix distance, max⁡sDTV(s)\max_sD_{\rm TV}(s) over all prefixes ss be the largest per-prefix distance, and let the summed per-token distance along a sampled response, averaged over responses: Ey∼μ[∑tDTV(st)]\mathbb E_{y\sim\mu}\big[\sum_tD_{\rm TV}(s_t)\big] be the summed per-token distance along a response, averaged over responses drawn from μ\mu. Then both bounds hold:J(π)−J(μ)≥Lμ′(π)−2ξT(T−1)(DTVmax⁡)2⏟worst prefix,\begin{aligned}&J(\pi)-J(\mu)\ge L'_\mu(\pi)\\&\qquad-\underbrace{2\xi T(T-1)\big(D^{\max}_{\rm TV}\big)^2}_{\text{worst prefix}},\end{aligned}J(π)−J(μ)≥Lμ′(π)−4ξ DˉTV⏟along the response.\begin{aligned}&J(\pi)-J(\mu)\ge L'_\mu(\pi)\\&\qquad-\underbrace{4\xi\,\bar D_{\rm TV}}_{\text{along the response}}.\end{aligned}The first has the form of TRPO's bound, with TT in place of 1/(1−γ)1/(1-\gamma); the second grows only linearly with length and is what a per-token constraint controls.

DPPO. DPPO maximizes Ey∼μ[∑tMt rt A^]\mathbb E_{y\sim\mu}\big[\sum_tM_t\,r_t\,\hat A\big], with the mask MtM_t held fixed in the gradient:Mt={0,A^>0, rt>1, Dt>τ,0,A^<0, rt<1, Dt>τ,1,otherwise,M_t=\begin{cases}0,&\hat A\gt0,\ r_t\gt1,\ D_t\gt\tau,\\0,&\hat A\lt0,\ r_t\lt1,\ D_t\gt\tau,\\1,&\text{otherwise,}\end{cases}where an estimate of the total variation or KL divergence between μθ′(⋅∣st)\mu_{\theta'}(\cdot\mid s_t) and πθ(⋅∣st)\pi_\theta(\cdot\mid s_t), the sampler's and the trained policy's next-token distributions estimates the divergence at sts_t and DPPO's divergence threshold: 0.15 for total variation and 0.05 for KL in the stability tests, 0.2 for total variation in the large runs is a threshold. With DtD_t replaced by ∣rt−1∣|r_t-1| and τ\tau by ε\varepsilon this is PPO's clipped objective, so DPPO keeps PPO's structure, including that it never blocks a move back toward ratio 1, and changes only the test. Computing DtD_t over the whole vocabulary at every position takes too much memory, so two approximations group the tokens. The binary form compares the sampled token against the rest, so its total variation is ∣μθ′(yt∣st)−πθ(yt∣st)∣|\mu_{\theta'}(y_t\mid s_t)-\pi_\theta(y_t\mid s_t)| and its KL divergence is that of two coin flips with these probabilities; the top-K form keeps the the number of most likely tokens kept separately in the top-K approximation, 20 in the paper most likely tokens under the sampler and the sampled token, and merges the rest. Throughout, ratios and divergences are measured from the sampler's probabilities μθ′\mu_{\theta'}.

Main findings (empirical). (a) In a small stability test run in BF16, methods with no trust region, or with one measured from the trainer's recomputation πθ′\pi_{\theta'}, let the mismatch grow and collapse, while DPPO keeps it low and reaches near-perfect training reward. (b) Blocking only the updates on wrong responses that lower the sampled token's probability by at least 0.5, at most 0.5% of updates, stabilizes the unconstrained policy gradient. (c) Truncating the importance ratio makes collapse come sooner. (d) Removing both ends of the clip for tokens with probability below 0.1 speeds learning. (e) On 30B a model in which each token is processed by a few expert sub-networks, chosen by a learned router out of many and 8B dense Qwen3 models, DPPO learns faster and ends higher on AIME 2024 and 2025 than GRPO with Clip-Higher and than a policy-gradient method that keeps every token's gradient and multiplies it by the importance ratio truncated at a cap CC; it masks no token, and with a learned reward it beats GRPO too. (f) The binary approximation does as well as the top-20 one.

Consequences. For PPO-style RL on language models, measure the trust region from the probabilities the sampler recorded; this also removes the recomputation pass, about 25% of training cost by the authors' estimate. Replacing the ratio test by a mask on the change in the sampled token's probability is a few lines of code, and the threshold mattered little between 0.1 and 0.2 for total variation. Keep a trust region even at learning rates of 10−610^{-6}. Watch updates on wrong responses that push a likely token far down, and avoid truncating the whole importance ratio, which biases the gradient against rare tokens. FP16 in both engines (Qi et al., 2025) and a sampler that matches the trainer exactly (Zhong et al., 2026) reduce the mismatch itself; DPPO works with the BF16 mismatch present and gains further when it is reduced, as with R3: recording which experts the sampler's router chose for each token of a mixture-of-experts model and reusing those choices in the trainer, which removes one source of mismatch for mixture-of-experts models.

Step 1

The change in expected reward splits exactly into a first-order term and an error from later tokens. Write π(y)\pi(y) and μ(y)\mu(y) for the probabilities of the whole response, the products of the per-token probabilities πt=π(yt∣st)\pi_t=\pi(y_t\mid s_t) and μt=μ(yt∣st)\mu_t=\mu(y_t\mid s_t). A difference of products telescopes when the factors are changed one at a time, from the first token on:π(y)−μ(y)=∑t(∏k<tμk)(πt−μt)×(∏j>tπj).\begin{aligned}\pi(y)-\mu(y)=\sum_t&\Big(\prod_{k\lt t}\mu_k\Big)(\pi_t-\mu_t)\\&\times\Big(\prod_{j\gt t}\pi_j\Big).\end{aligned}Dividing by μ(y)\mu(y) turns term tt into (rt−1)∏j>trj(r_t-1)\prod_{j\gt t}r_j, so J(π)−J(μ)=∑y(π(y)−μ(y))R(y)J(\pi)-J(\mu)=\sum_y(\pi(y)-\mu(y))R(y) equals Ey∼μ[R(y)∑t(rt−1)∏j>trj]\mathbb E_{y\sim\mu}\big[R(y)\sum_t(r_t-1)\prod_{j\gt t}r_j\big]. Writing the product as 1−(1−∏j>trj)1-(1-\prod_{j\gt t}r_j) separates Lμ′(π)L'_\mu(\pi), in which each token's ratio enters alone, from Δ\Delta, which is nonzero only through changes at later tokens. Lμ′L'_\mu and the true change have the same value and gradient at π=μ\pi=\mu. Replacing rt−1r_t-1 by rtr_t changes no gradient, and replacing R(y)R(y) by A^\hat A, which the paper calls unbiased, scales the expected gradient by (G−1)/G(G-1)/G (this note's computation: the group mean includes the response's own reward); the two replacements turn Lμ′L'_\mu into PPO's objective before clipping.

Step 2

Bounding the error by the per-token distance gives both bounds. Take ∣R(y)∣≤ξ|R(y)|\le\xi out of Δ\Delta and condition on the response up to token tt. Under μ\mu, the conditional mean of ∣rt−1∣|r_t-1| given sts_t is 2DTV(st)2D_{\rm TV}(s_t) by the identity of the Setting, and the conditional mean of ∣1−∏j>trj∣|1-\prod_{j\gt t}r_j| given st+1s_{t+1} is twice the total variation between the two policies' distributions over the rest of the response. That distance is at most 1, which gives the average bound:Δ≤ξ Eμ[∑t∣rt−1∣⋅2]=4ξ Eμ[∑tDTV(st)]=4ξDˉTV.\begin{aligned}\Delta&\le\xi\,\mathbb E_\mu\Big[\sum_t|r_t-1|\cdot2\Big]\\&=4\xi\,\mathbb E_\mu\Big[\sum_tD_{\rm TV}(s_t)\Big]=4\xi\bar D_{\rm TV}.\end{aligned}Instead, telescoping the rest of the response as in Step 1, with the triangle inequality, bounds its distance by the expected per-token distances of the remaining T−tT-t tokens, at most (T−t)DTVmax⁡(T-t)D^{\max}_{\rm TV}; bounding each 2DTV(st)2D_{\rm TV}(s_t) by 2DTVmax⁡2D^{\max}_{\rm TV} too gives 4ξ(DTVmax⁡)2∑t(T−t)=2ξT(T−1)(DTVmax⁡)24\xi(D^{\max}_{\rm TV})^2\sum_t(T-t)=2\xi T(T-1)(D^{\max}_{\rm TV})^2. My check: by enumeration over a 3-token vocabulary and length 3, the identity and both bounds hold for hundreds of random pairs of policies. Technical note (my computation, not in the paper): since ∣Lμ′(π)∣≤ξ Eμ∑t∣rt−1∣=2ξDˉTV|L'_\mu(\pi)|\le\xi\,\mathbb E_\mu\sum_t|r_t-1|=2\xi\bar D_{\rm TV}, the right side of the average bound is at most −2ξDˉTV-2\xi\bar D_{\rm TV}, so it never certifies an improvement and only limits how far the reward can fall. The max bound is quadratic in the step and certifies small enough steps that raise Lμ′L'_\mu, but at lengths in the thousands T(T−1)T(T-1) is in the millions. The bounds say which quantity to constrain, the per-token distance from the sampler along the response, and do not set DPPO's thresholds.

Step 3

PPO's clip test is a one-sample estimate of the per-token distance, too strict for rare tokens and too loose for likely ones. By the identity of the Setting, DTV(st)D_{\rm TV}(s_t) is half the average of ∣r−1∣|r-1| over tokens drawn from μ\mu, and PPO checks ∣rt−1∣|r_t-1| against ε\varepsilon for the one token drawn. A token's share of the sum is μ(a) ∣r(a)−1∣=∣π(a)−μ(a)∣\mu(a)\,|r(a)-1|=|\pi(a)-\mu(a)|, its change in probability, so the ratio overstates the share of a rare token by the factor 1/μ(a)1/\mu(a) (this factor is the note's arithmetic; the paper makes the point with examples like those of the opening). The mismatch alone shows the same pattern: with identical weights, the ratio of the trainer's to the sampler's probability scatters widely for the low-probability tokens of Qwen3-30B-A3B-Base while the per-token total variation stays small, so rare tokens can be clipped for numerical noise. Two earlier methods address the strictness for rare tokens: Clip-Higher raises the upper clip range, and CISPO keeps every token's gradient with a truncated weight. The authors object that the first is still a ratio test and the second has no trust region.

Step 4

The binary and top-K distances are lower bounds on the exact ones. Both merge tokens into groups (the sampled token and the rest for the binary form; the top KK, the sampled token and the rest for top-K) and compute the distance between the grouped distributions. For total variation the triangle inequality gives ∣∑a∈g(μ(a)−π(a))∣≤∑a∈g∣μ(a)−π(a)∣\big|\sum_{a\in g}(\mu(a)-\pi(a))\big|\le\sum_{a\in g}|\mu(a)-\pi(a)| for each group gg, with equality when μ−π\mu-\pi has one sign within each group; for KL the log-sum inequality gives the same direction, with equality when π/μ\pi/\mu is constant within each group. So a DPPO mask built on an approximation blocks no update that the exact distance would allow, and may allow some that it would block. For top-K the gap comes only from the merged group and is at most the probability the two policies give it; in an reinforcement learning from human feedback: RL with a reward model trained on human preference comparisons run the top 20 tokens hold 99.4% of the probability at the start and 99.9% after 100 steps. The paper uses K=20K=20 because vLLM returns at most 20 log-probabilities per position.

Step 5

Without a trust region the mismatch grows and training collapses, even at a learning rate of 10−610^{-6}. The stability tests use the sanity test of the FP16 study (R1-Distill-Qwen-1.5B on 1,460 MATH problems it can learn to solve, 4 gradient steps per batch), run in BF16 on purpose to expose instability. All methods share the gradientEy∼μθ′[∑tMtmin⁡(πθ(yt∣st)μθ′(yt∣st),C)×A^ ∇θlog⁡πθ(yt∣st)]\begin{aligned}\mathbb E_{y\sim\mu_{\theta'}}\Big[\sum_t&M_t\min\Big(\frac{\htmlData{gr=g13}{\pi_\theta}(y_t\mid s_t)}{\mu_{\theta'}(y_t\mid s_t)},C\Big)\\&\times\hat A\,\nabla_\theta\log\pi_\theta(y_t\mid s_t)\Big]\end{aligned}and differ in the mask and the cap the cap on the importance ratio in the truncated methods: 3 in the stability tests, 5 for CISPO in the large runs; C=∞C=\infty means no cap. PG-IS has no mask and no cap, CISPO caps at 3, GRPO masks by PPO's clip of rtr_t, MiniRL masks by PPO's clip of the recomputed ratio πθ/πθ′\pi_\theta/\htmlData{gr=g12}{\pi_{\theta'}}, and DPPO masks by divergence. PG-IS and CISPO let the mismatch, the mean of ∣πθ′−μθ′∣|\pi_{\theta'}-\mu_{\theta'}| on sampled tokens, grow until they collapse, while DPPO with binary total variation or KL keeps it low and reaches near-perfect training reward. Truncation hurts: PG-IS and MiniRL with truncation collapse earlier and score lower than without it. The authors explain that tokens with low probability under μ\mu have the most variable ratios, so the cap falls mostly on them and biases the gradient against them. This cap is on the whole ratio πθ/μθ′\pi_\theta/\mu_{\theta'}, including the policy's movement; the token-level corrections in the FP16 study and in Zhong et al. (2026) cap only the weight πθ′/μθ′\pi_{\theta'}/\mu_{\theta'} between the two engines.

Step 6

The trust region has to be measured from the sampler's probabilities. Open-source frameworks often use a decoupled objective, in which the clip is applied to the ratio against the trainer's recomputation πθ′\pi_{\theta'}. MiniRL does this and collapses in the stability test despite clipping. Changing only this in the stable DPPO with KL divergence, measuring its divergence from πθ′\pi_{\theta'} instead of μθ′\mu_{\theta'}, makes the mismatch grow and the run collapse. This agrees with the bound, which measures distance from the policy that generated the data, and with Zhong et al. (2026), who found that clipping against the recomputed probabilities let reward degrade while KL monitors stayed flat.

Step 7

A small fraction of updates on wrong responses, which push a likely token far down, causes the instability. Starting from the unstable PG-IS, the authors add the smallest mask that restores stability. Updates on correct responses are usually safe, so the mask acts only on responses with A^<0\hat A\lt0 and blocks token tt when μθ′(yt∣st)−πθ(yt∣st)≥0.5\mu_{\theta'}(y_t\mid s_t)-\pi_\theta(y_t\mid s_t)\ge0.5, that is, when the update has lowered the sampled token's probability by at least 0.5. That mask alone stabilizes training; a threshold of 0.8, or the same mask measured from πθ′\pi_{\theta'}, does not. The blocked updates are at most 0.5% of all updates, and their share rises when the reward curve becomes erratic. The authors' explanation, not tested directly, is that sharply lowering a token the model rates as likely damages what the model has learned.

Step 8

Ratio clipping slows learning through low-probability tokens, and removing both ends of the clip for them works best. With Qwen3-1.7B-Base on DAPO's math set and GRPO with Clip-Higher as the baseline, the authors remove the clip for tokens with μθ′(yt∣st)<α\mu_{\theta'}(y_t\mid s_t)\lt\alpha, with the probability below which a token's clip is removed in the relaxation experiment; α=0\alpha=0 is the baseline a probability threshold. At α=0.1\alpha=0.1 learning is substantially faster than the baseline. In the baseline the clipped tokens mostly have probability below 0.15 and occur where the next-token distribution has high entropy, and in a Qwen3-4B-Base run the most often clipped include numbers, math symbols and words such as “Wait”, “Next”, “Thus” and “Since”. At α=0.1\alpha=0.1, removing only the upper end of the clip keeps entropy high without speeding learning; removing only the lower end, which lets wrong responses push rare tokens down freely, learns fastest at first and then falls as entropy collapses; removing both is fast and stable. A divergence mask relaxes both ends for rare tokens, since their probability changes are small.

Step 9

At scale DPPO learns faster and ends higher than GRPO with Clip-Higher and than CISPO. The large runs train on about 13k filtered DAPO math problems in five settings: Qwen3-30B-A3B-Base with and without routing replay, Qwen3-30B-A3B (a model already trained to reason at length), Qwen3-8B-Base, and Qwen3-30B-A3B-Base with low-rank adaptation: fine-tuning only a low-rank update added to each weight matrix, with the original weights frozen, with responses up to 16,384 tokens (8,000 for the last two) and AIME scores averaged over 32 samples. DPPO with binary total variation or KL learns faster and ends higher in all five. CISPO collapses on the base model without replay and GRPO with Clip-Higher on the reasoning model. DPPO without routing replay beats both baselines with it, and adding replay helps DPPO further. With Skywork-Reward-Llama-3.1-8B as a learned reward, DPPO raises reward faster and higher than GRPO for Gemma-2-9B-It and Qwen3-4B-Instruct; on AlpacaEval 2.0 the Qwen3-4B checkpoint at step 150 scores 80.90% length-controlled and 79.93% raw win rate after DPPO, against 77.05% and 72.20% after GRPO and 59.39% and 69.38% before training, and later checkpoints had higher reward but lower AlpacaEval scores. Top-20 approximations give no gain over the binary ones, and DPPO's results change little across thresholds from 0.10 to 0.20 (total variation) and 0.05 to 0.15 (KL), while GRPO's vary more with its upper clip.

Limits. The comparisons are single training runs read off curves, scored on AIME sets of 30 problems each, with models up to 30B parameters, and the baselines use settings from other papers. The causal claims of the stability study, that a few large negative updates drive collapse and that sharply lowering likely tokens damages the model, rest on which masks stabilize one 1.5B model on one filtered set. The bounds justify the form of the constraint but give no usable guarantee at these lengths (Step 2). Like PPO, DPPO judges each update by the sampled token only, and the binary distance ignores how the rest of the distribution moves.

Terms

Per-token total variation
DTV(s)=12Ea∼μ∣r(a)−1∣D_{\rm TV}(s)=\tfrac12\mathbb E_{a\sim\mu}|r(a)-1|; PPO's clip tests one sample of ∣r−1∣|r-1|
Ratio test's bias
a token's share of the distance is μ∣r−1∣\mu|r-1|, so the ratio overstates rare tokens by 1/μ1/\mu
Performance identity
J(π)−J(μ)=Lμ′(π)−Δ(μ,π)J(\pi)-J(\mu)=L'_\mu(\pi)-\Delta(\mu,\pi), exact for responses of bounded length
Average bound
J(π)−J(μ)≥Lμ′(π)−4ξDˉTVJ(\pi)-J(\mu)\ge L'_\mu(\pi)-4\xi\bar D_{\rm TV}: linear in length
DPPO mask
block token tt if its divergence exceeds τ\tau and the update moves the ratio away from 1
Binary TV
∣μθ′(yt∣st)−πθ(yt∣st)∣|\mu_{\theta'}(y_t\mid s_t)-\pi_\theta(y_t\mid s_t)|, a lower bound on the exact distance
Anchor
measure ratios and divergences from the sampler's μθ′\mu_{\theta'}; the recomputed πθ′\pi_{\theta'} leads to collapse
Bad updates
wrong responses lowering a sampled token's probability by 0.5 or more: at most 0.5% of updates, enough to collapse
Truncation
capping πθ/μθ′\pi_\theta/\mu_{\theta'} mostly cuts rare tokens and made collapse come sooner
Relax both ends
removing the clip for tokens below probability 0.1 at both ends was fastest and stable

Quiz

  1. A token's probability goes from 10−410^{-4} to 10−210^{-2}, and another's from 0.99 to 0.80. How does PPO with clip range 0.2 treat them, and how much probability does each move?
  2. Truncating the importance ratio at C=3C=3 is meant to reduce variance, yet it made collapse come sooner here. What is the authors' explanation?
  3. For tokens with probability below 0.1, removing only the lower end of the clip learned fastest at first and then fell. What went wrong?

Sources