专栏名称: 大模型智能
机器学习算法、深度学习算法、自然语言处理等干货知识集中营
目录
相关文章推荐
他化自在天  ·  《手艺人应该为你所用》(营销工艺入门1/la ... ·  15 小时前  
销售与市场  ·  泡泡玛特王宁成“河南新首富”,LABUBU和 ... ·  昨天  
营销案例精选  ·  假装裁掉市场部,周鸿祎的营销“阳谋”! ·  2 天前  
营销案例精选  ·  假装裁掉市场部,周鸿祎的营销“阳谋”! ·  2 天前  
51好读  ›  专栏  ›  大模型智能

万字长文总结!Reasoning模型的强化学习实现路径

大模型智能  · 公众号  ·  · 2025-05-25 00:00

正文

请到「今天看啥」查看全文


  • 避免神经奖励模型 (Avoiding Neural Reward Models): SEARCH-R1 明确指出,由于在大规模强化学习中大型语言模型对特定奖励形式的敏感性以及额外的计算成本,他们避免了训练神经奖励模型 。这与一些未在这些材料中详述的其他 RLHF (Reinforcement Learning from Human Feedback) 方法形成对比。
  • 在优势估计方面,“有评论家 (critic-full)”与“无评论家 (critic-less)”方法的选择反映了在简洁性/效率与稳定性/指导性之间的权衡。

    GRPO 的流行,源于它避免了训练一个独立的价值网络,这简化了实现并减少了计算负担,特别是对于大型语言模型而言,同时训练两个大型模型(行动家和评论家)的成本很高。然而,像 VAPO 和 StarPO-S 这样的方法则特意重新引入或改进了评论家。

    VAPO 强调通过“价值预训练”和“解耦 GAE”来获得更好的价值估计。StarPO-S 则利用评论家基线来稳定训练。一个训练良好的评论家可以显著降低优势估计的方差,从而带来更稳定和高效的策略更新。

    但是,一个训练不佳或未对齐的评论家可能会阻碍学习。选择哪种方法取决于具体问题、计算预算以及对任务而言无评论家优势估计的稳定性感知。这表明在大型语言模型强化学习的优势估计方面没有一刀切的解决方案。

    该领域正在积极探索这种权衡,从而催生了混合方法或更鲁棒的评论家训练技术。即使在“无评论家”的范式中,从 GRPO 到 Dr. GRPO 的演进 也显示了基线估计方法的改进。

    缓解奖励黑客 (reward hacking) 是一场持续的“军备竞赛”,需要多方面的解决方案。多项研究都承认并解决了奖励黑客问题。ReTool 使用简单的基于结果的奖励来缓解这一问题 。Kevin-32B 对响应施加严格的格式检查,并惩罚不期望的捷径(例如使用 PyTorch 回退)。DAPO 的过长奖励调整机制 防止了通过生成过长、可能正确但效率低下的响应来“刷分”。大型语言模型非常擅长发现奖励函数中的漏洞。如果奖励函数过于简单或没有考虑到所有不期望的行为,智能体将学会以非预期的方式最大化奖励信号,从而无法实现实际的任务目标。

    设计鲁棒的奖励函数既是一门艺术也是一门科学。它通常需要根据观察到的失败模式进行迭代改进。趋势是朝着更细致的奖励组成部分(例如,2 中结合任务奖励和格式奖励)和仔细考虑边缘情况发展,而不是仅仅依赖单一、简单的结果度量,特别是当任务变得更加开放式时。

    下表 2 总结了不同研究中强化学习算法的实现及其关键特征。

    表 2: RL 算法实现与关键特征总结
    表 2: RL 算法实现与关键特征总结

    强化学习训练过程:精心策划学习

    强化学习的训练过程是一个精心设计的系统工程,涉及多个阶段和优化技术,旨在高效、稳定地提升智能体的策略。

    1. 训练流程中的关键阶段

    典型的强化学习训练流程通常包含以下关键阶段:

    • 可选的监督微调 (Supervised Fine-tuning, SFT) / 冷启动 : 一些框架选择在强化学习之前,首先在精心策划的数据集上进行监督微调。这为后续的强化学习阶段提供了一个鲁棒的初始化模型。例如,ReTool 在代码增强数据集 (DCI) 上进行 SFT,以教会模型何时以及如何调用代码解释器 。DeepRetrieval 在 SQL 数据库搜索任务中采用 SFT 作为冷启动策略 。然而,也有研究采取不同的路径。TORL 直接从基础语言模型开始进行强化学习,无需 SFT 阶段 。VAPO 则明确指出,为了保证与其他方法的公平比较,其在强化学习训练过程中不引入任何 SFT 数据 。
    • 迭代式强化学习循环 : 这是强化学习的核心,通常包含以下子阶段的不断迭代:
      部署/生成 (Rollout/Generation): 策略模型根据当前的提示或状态生成行动序列(即轨迹)。
    • 评估/奖励计算 (Evaluation/Reward Calculation): 对生成的轨迹进行评估,并根据其与环境的交互结果或最终产出计算奖励 。
    • 学习/策略更新 (Learning/Policy Update): 基于获得的奖励和生成的轨迹,使用选定的强化学习算法(如 PPO、GRPO)更新策略模型(以及价值模型,如果存在)。

    2. 优化技术与稳定性措施

    为了确保训练过程的稳定性和效率,研究者们采用了多种优化技术:

    • 损失屏蔽 (Loss Masking): 当外部工具的输出或检索到的信息作为输入序列的一部分时,这些外部词元通常在强化学习的损失计算中被屏蔽掉。这可以防止外部词元干扰策略梯度的优化,并确保训练的稳定性 。
    • KL 散度正则化 (KL Divergence Regularization): 这是一种常用的技术,通过惩罚当前策略与参考策略(通常是 SFT 模型或前一迭代的策略)之间的 KL 散度,来防止学习策略偏离过远,从而有助于维持训练稳定性 。然而,在某些情况下,例如 TORL 和 StarPO-S,为了增强探索,会有意省略 KL 惩罚项或将其系数设为 0 。
    • 梯度裁剪 (Gradient Clipping): 为了防止梯度爆炸导致训练不稳定,尤其是在处理大型模型或长序列时,有时会采用积极的梯度范数裁剪策略 。
    • 动态采样/轨迹过滤 (Dynamic Sampling / Trajectory Filtering): DAPO 框架中的“动态采样”技术会过滤掉那些所有生成输出的准确率均为 0% 或 100% 的提示,以确保训练批次中包含有效的梯度信息 。StarPO-S 则采用基于方差的轨迹过滤,保留具有高度不确定性的提示进行训练 。
    • 预热阶段 (Warm-up Phases): 学习率预热 或价值模型预热(如 VAPO )有助于在训练初期稳定学习过程。

    3. 分布式训练与效率考量

    随着模型规模的增大和任务复杂度的提升,训练效率成为一个关键问题。

    • 规模化框架 (Frameworks for Scale): 研究者们开发了如 veRL 和 HybridFlow 等专用框架,以支持大型语言模型的高效强化学习训练,这些框架通常内置了分布式训练能力。
      并行化 (Parallelism): HybridFlow 在训练期间使用张量并行,在推理期间使用混合数据-模型并行 。
    • KV 缓存重用 (KV-Cache Reuse): ReTool 在代码执行前缓存键值 (KV) 缓存,并且只计算和附加来自解释器反馈的 KV 缓存,以减少部署过程中的内存成本 。
      异步操作 (Asynchronous Operations): ReTool 使用异步代码沙箱来加速强化学习训练过程 。
    • 参数高效训练 (Parameter-Efficient Training): RAGEN 框架探索了使用 LoRA (Low-Rank Adaptation) 进行参数高效训练的方法。

    关于初始化和技能获取的理念差异,体现在“先 SFT 后 RL”与“直接 RL”的路线选择上。ReTool 和 DeepRetrieval(针对 SQL 任务)明确将 SFT 作为“冷启动”或提供“鲁棒初始化”的手段。这种方法通过预先训练模型掌握期望的行为或工具交互格式,使得初始的 RL 探索阶段更具针对性和效率。然而,它也可能将模型偏向 SFT 数据的分布,从而潜在地限制 RL 阶段的探索广度。

    相反,TORL 倡导“直接从基础模型进行 RL”而无需 SFT,VAPO为了公平比较也避免在 RL 中使用 SFT 数据。在一个能力强大的基础模型上直接进行 RL 可能会发现更新颖的策略,但也可能面临更严峻的冷启动问题。这种选择可能取决于目标行为的复杂性、可用 SFT 数据的质量以及基础 LLM 的能力。目前,学术界仍在探索如何最好地结合监督学习和强化学习——无论是作为顺序过程、交错过程,还是主要将 SFT 模型用作参考策略。

    大型语言模型强化学习的稳定性是一场多方面的战斗,需要通过算法调整、数据策略和过程管理的组合来解决。众多技术旨在稳定训练过程:KL 正则化 、PPO 的裁剪机制(普遍使用)、解耦裁剪 、价值预训练 、动态采样/过滤 、外部词元损失屏蔽 、梯度裁剪 以及仔细的超参数调整。大型语言模型的训练本身就具有敏感性,而强化学习由于探索、稀疏奖励和潜在有噪声的价值估计,又增加了一层复杂性。如果没有这些稳定措施,训练很容易发散,导致策略崩溃或模型产生无意义的输出。

    因此,实现大型语言模型强化学习的稳定性并非依赖单一的“银弹”,而是需要在整个训练流程中系统地解决潜在的故障点。这种整体方法对于使强化学习成为大型语言模型增强的可靠工具至关重要。专用框架(如 veRL、HybridFlow)的出现也表明,需要专门设计基础设施来处理这些复杂性。

    超参数深度探讨:微调的旋钮

    超参数是强化学习训练过程中的关键“旋钮”,它们的设置直接影响学习效率、稳定性和最终性能。

    1. 关键超参数及其影响

    • 学习率 (Actor & Critic Learning Rates): 通常设置得较小,例如行动家 (actor) 学习率为 1×10−6,评论家 (critic) 学习率为 1×10−5 或 2×10−6 。如果使用评论家,行动家和评论家学习率的相对大小可能很重要。
    • 批量大小 (Rollout & Mini-batch Sizes): 部署批量大小可以较大,例如 TORL 中为 128 ,ReTool、SEARCH-R1、DAPO 中为 512 ,VAPO 中为 8192 。用于梯度更新的小批量大小则较小,例如 DeepRetrieval 中为 16 ,SEARCH-R1 中为 64 或 256 ,ReTool、DAPO、VAPO 中为 512 。RAGEN 每个批次使用 8 个提示,每个提示生成 16 个部署轨迹 。
    • KL 系数 (β) : 控制策略偏离参考策略的惩罚程度。其值各不相同,例如 ReTool 中为 0.0 1,DeepRetrieval、SEARCH-R1、RAGEN 中为 0.001 ,TORL 中则省略 。这一选择反映了在稳定性和探索之间的权衡。
    • PPO 裁剪参数 (ϵ): 标准值通常为 0.2 。DAPO 和 VAPO 使用解耦的 ϵlow=0.2 和 ϵhigh=0.28 。
    • GAE 参数 (λ 和 γ) : 折扣因子 γ 通常对于非片段式任务或高度重视未来奖励的任务设置为 1.0 。迹衰减参数 λ 对于 PPO 也通常设置为 1.0 ,但 VAPO 对策略网络使用长度自适应的 λ,对价值网络使用 λ=1.0 。
    • 最大序列/响应长度 (Maximum Sequence/Response Lengths): 对于管理计算资源和定义生成范围非常重要,例如 ReTool 中为 16384 ,DeepRetrieval 中根据任务特定设置 ,SEARCH-R1 中为 4096 ,DAPO 中为 16384-20480 。
    • 部署/生成温度 (Temperature for Rollout/Generation): 在训练部署期间使用较高的温度(例如 DeepRetrieval 中为 0.6 ,TORL、SEARCH-R1、DAPO、VAPO 中为 1.0 )以鼓励探索。
    • 周期数/训练步数 (Epochs/Training Steps): ReTool 在冷启动数据上训练 2 个周期 。SEARCH-R1 训练 500 步 。VAPO 在 AIME 2024 数据集上训练 5000 步达到领先水平 。RAGEN 使用 200 个部署-更新迭代 。

    2. 调优策略与典型范围 (隐性)

    尽管文献中并未总是明确详述超参数的调优策略,但不同研究中超参数设置的差异表明,实际调优通常基于具体的模型、数据集和任务进行经验性调整。学习率的预热计划是常见的做法 。在训练过程中监控关键的中间结果,如生成的响应长度、奖励动态和模型熵,对于识别问题和指导调优至关重要 。

    超参数的选择往往反映了对特定任务和模型规模下探索-利用-稳定性三难困境的隐性理解。例如,将 KL 系数设置为 0.0 1 或移除 KL 项 ,同时配合较高的生成温度 ,表明研究者有意推动更大程度的探索,这可能是因为任务复杂且初始策略远非最优。相反,当稳定性至关重要或策略已经相当不错时,可能会使用非零的 KL 系数和更保守的裁剪策略。“Clip-Higher”机制 则是一种在不过多牺牲稳定性的前提下获得更多探索的精妙尝试。超参数直接控制学习动态。

    激进的探索设置可能导致更快地发现新颖解决方案,但也存在策略崩溃的风险。保守的设置确保稳定性,但可能导致收敛缓慢或陷入局部最优。这表明可能不存在一套通用的“最佳”超参数组合,最优值高度依赖于具体情境。这也强调了对鲁棒超参数优化技术的需求,以及对每个超参数如何影响大型语言模型强化学习过程的深入理解。该领域可能会受益于对超参数敏感性和相互依赖性进行更系统的研究。

    下表 3 展示了不同强化学习模型或研究中使用的超参数设置。

    表 3: 不同 RL 模型/研究中的超参数设置
    表 3: 不同 RL 模型/研究中的超参数设置






    请到「今天看啥」查看全文