VAPO:基于价值方法的新突破

刚出了 DAPO:为GRPO的锦上加四点花 | Yam[1],字节Seed团队马上就送来新的 VAPO[2],同样的清晰、高质量。

VAPO,全称 Value-based Augmented Proximal Policy Optimization,没错了,这是基于价值的方法。本文指出了困扰基于价值方法的三个关键挑战:价值模型偏差、序列长度异质性以及奖励信号的稀疏性,并分别对其进行优化,最终在 AIME 2024 上比 DAPO 提升10个点,并且更加稳定,需要的训练步数更少。

More

R1相关:R1-Zero的进一步理解和探索

TL;DR

本文通过对近期几篇R1-Zero相关工作进行梳理,同时结合部分已有的工作,从整体上对R1-Zero及其范式进行更深层次的理解和探索。主要观点整理如下:

  • Base模型是核心,RL在激活能力
    • 强模型需高难度数据充分激活能力,弱模型需渐进引导。
    • 强模型对格式限制不敏感,弱模型需适配模板以避免探索抑制。
    • 自我反思频率与准确率无必然关联,需结合数据质量分析。模型层数增加时,简单问题易被“过度思考”,复杂问题感知简化。
  • LLM学习模式的关键发现
    • 反思能力在预训练早期即显现,随训练逐步提升。
    • LLM依赖模式记忆而非数学规则。
    • 预训练知识获取分三阶段:统计学习→平台期(记忆回路形成)→个体知识获取。数据调度策略(如“热身训练”)可加速知识获取,微调易导致幻觉与知识损坏。
  • RL算法
    • 算法改进:DAPO、Dr GRPO。
    • 强化已有正确推理行为(非注入新知识),领域预训练可显著提升上限。
    • 分阶段扩展上下文窗口(短→长任务),按难度课程式学习匹配模型能力。
  • 工程实践关键
    • Base模型优先同系列大模型,小模型需更多探索,慎用SFT冷启动(可能限制RL潜力)。
    • 数据应覆盖多领域、多难度、多样化回答,避免固定格式限制(弱模型尤其敏感)。
    • 弱Base没做过LongCoT的可以先LongCoT。遵循课程式数据设计和训练策略:从短任务逐步过渡到长难题。

总之,Base模型是核心,Base不行先继续训练或LongCoT。RL是激活手段,需结合数据难度与模型能力动态适配。工程上分阶段、重数据质量与课程设计,避免过度依赖微调。

More

DAPO:为GRPO的锦上加四点花

GitHub:BytedTsinghua-SIA/DAPO: An Open-source RL System from ByteDance Seed and Tsinghua AIR

Paper:DAPO: An Open-Source LLM Reinforcement Learning System at Scale

DAPO

DAPO,一个对GRPO全方位优化的Policy优化算法,有必要单独记录一下。损失如下:

JDAPO(θ)=E(q,a)D,{oi}i=1Gπθold (q)[1i=1Goii=1Gt=1oimin(ri,t(θ)A^i,t,clip(ri,t(θ),1εlow ,1+εhigh )A^i,t)] s.t. 0<{oi equivalent (a,oi)}<G\begin{aligned} & \mathcal{J}_{\mathrm{DAPO}}(\theta) = \mathbb{E}_{(q, a) \sim \mathcal{D},\left\{o_i\right\}_{i=1}^G \sim \pi_{\theta_{\text {old }}}(\cdot \mid q)} \\ & {\left[\frac{1}{\sum_{i=1}^G \left|o_i\right|} \sum_{i=1}^G \sum_{t=1}^{\left|o_i\right|} \min \left(r_{i, t}(\theta) \hat{A}_{i, t}, \operatorname{clip}\left(r_{i, t}(\theta), 1-\varepsilon_{\text {low }}, 1+\varepsilon_{\text {high }}\right) \hat{A}_{i, t}\right)\right] } \\ & \text { s.t. } \quad 0 \lt \mid\left\{o_i \mid \text { equivalent }\left(a, o_i\right)\right\} \mid \lt G \end{aligned}

其中:

ri,t(θ)=πθ(oi,tq,oi<t)πθold (oi,tq,oi<t),A^i,t=Rimean({Ri}i=1G)std({Ri}i=1G)\begin{aligned} & r_{i, t}(\theta)=\frac{\pi_\theta (o_{i, t} \mid q, o_{i \lt t})} {\pi_{\theta_{\text {old }}} (o_{i, t} \mid q, o_{i \lt t})}, \\ & \hat{A}_{i,t}=\frac{R_i-\text{mean}\left(\left\{R_i\right\}_{i=1}^G\right)}{\text{std}\left(\left\{R_i\right\}_{i=1}^G\right)} \end{aligned}

看着和GRPO有点像。为了便于对比,把GRPO损失一并贴出来:

JGRPO(θ)=E(q,a)D,{oi}i=1Gπθold (q)[1Gi=1G1oit=1oimin(ri,t(θ)A^i,t,clip(ri,t(θ),1ε,1+ε)A^i,t)βDKL(πθπref)]\begin{aligned} & \mathcal{J}_{\mathrm{GRPO}}(\theta) = \mathbb{E}_{(q, a) \sim \mathcal{D},\left\{o_i\right\}_{i=1}^G \sim \pi_{\theta_{\text {old }}}(\cdot \mid q)} \\ & {\left[\frac{1}{G} \sum_{i=1}^G \frac{1}{|o_i|} \sum_{t=1}^{\left|o_i\right|} \min \left(r_{i, t}(\theta) \hat{A}_{i, t}, \operatorname{clip}\left(r_{i, t}(\theta), 1-\varepsilon, 1+\varepsilon \right) \hat{A}_{i, t}\right) - \beta \mathbb{D}_{KL}(\pi_{\theta} | \pi_{ref}) \right] } \end{aligned}

其中:

DKL(πθπref)=πref(oiq)πθ(oiq)logπref(oiq)πθ(oiq)1\mathbb{D}_{K L}\left(\pi_\theta \| \pi_{r e f}\right)=\frac{\pi_{r e f}\left(o_i \mid q\right)}{\pi_\theta\left(o_i \mid q\right)}-\log \frac{\pi_{r e f}\left(o_i \mid q\right)}{\pi_\theta\left(o_i \mid q\right)}-1

r和A同上。oi表示输出的第i个Token。

DAPO去掉了KL,观点是,模型分布可能与初始模型有很大差异,因此不需要这种限制。这点和我本人之前的认知不太一样,我认为Base是相对稳定的,分布差异应该不大。所以自然就有个疑惑:去掉KL到底是因为RL后续训练偏离Base较大导致限制没作用,还是偏离Base较小所以没作用?后来X哥提醒了一句:“这个应该不是偏离过大,而是针对Base到LongCoT本来变化大”,从这个角度看KL确实没太多意义。

奖励函数还是简单的规则:正确1分,否则-1分。

More

DeepSeek R1后LLM新范式

本文通过10篇R1相关的研究,介绍R1后LLM的新范式。其核心就是如何进一步增强LLM的能力。

基本框架

首先是整体的框架,如下所示。

  • Base+SFT
    • R1冷启动
    • LIMO (817 Data Selection)
    • s1 (1000)
  • Base+RL
    • GRPO: R1-Zero
    • GRPO: oat-zero (Base can Aha、RL enhance)
    • PPO: LIMR (Data Selection)
    • PPO: orz (Scaling quality, diversity)
    • DPO: Online-DPO-R1 (Different RL Algo)
    • DPO: LIMD (Data Selection)
  • SFT+RL
    • R1蒸馏
    • DeepScaleR (Length Scaling)
    • Self-rewarding correction (LLM can reward itself, explicit Aha)、L1(LCPO)

我将其分成3个部分,前两个部分是Base模型的基础上使用SFT或RL提升效果,最后是SFT结合RL进一步提升效果。每个部分的第一个都是R1论文中的内容,上面没有R1本身,是因为R1本身是一个比较综合的过程。

值得说明的是,关于R1相关的研究肯定不止这些,列出这些一方面是因为我自己精力有限,只仔细阅读了这些;另一方面是逐步整理的过程中感觉到框架基本趋于完善。因此,本文也算是一个阶段性整理的输出。

本文内容相对比较通俗,如果对相关内容感兴趣,可以移步到对应的解读文章。

More

预训练:NTP和Scaling Law

做预训练绕不开这两个主题,尤其是Scaling Law,NTP探讨智能如何产生,对宏观思想认知有极大帮助。

其实,关于NTP为什么能产生智能这个问题笔者在2023年和几个从业者探讨过,见这篇博客,当时大家的答复并没让笔者完全信服。现在,又要开始探讨了。至于原因,大家看完文章就知道了。

More

LLM、强化、蒸馏讨论

2025年2月26日下午,Datawhale Paper群突然开启了一番关于AI相关的讨论,涉及成员主要包括:X、Y、D、S、M、A和C。我觉得内容相当有意思,因此记录在案备查。

其中对我个人印象比较深的几个观点:

  • X提出的新的大模型训练范式:预训练,long-cot, sft(long2short)。可以理解为先用大规模语料预训练学习知识,然后用少量SFT或RL(可以一起用)提升long-cot,然后再做SFT使其根据情况自动选择long或short。
  • 关于如何让模型自动选择思考长度(或不思考)的讨论,X认为主要靠强化,只是奖励这块需要涉及,就是是否需要思考,问题的难易,需要有个奖励来控制、设计。集成和自适应prm都是挺好的点,其实现在的重心就是什么样的奖励和怎么自动奖励。
  • 关于蒸馏分布的讨论。蒸馏之前做的不多,没想过这么细,不过如何桥接教师和学生的讨论确实有启发。

对讨论结果分别使用DeepSeek和DeepSeek-R1进行了整理,前者相对比较忠于讨论内容,后者则更加抽象有高度一些,各有优势。

More