专栏名称: 机器之心
专业的人工智能媒体和产业服务平台
目录
相关文章推荐
51好读  ›  专栏  ›  机器之心

刚刚!北大校友Lilian Weng最新博客来了:Why We Think

机器之心  · 公众号  · AI  · 2025-05-18 12:25

正文

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



并行采样具有实现简单、直观、易部署等特点,但其效果在很大程度上取决于模型是否能够「一次性」生成正确答案;而序列修订通过显式引导模型识错与改错,逻辑上更具针对性,但速度较慢,且需额外控制过程中的修订风险,例如原本正确的答案被不当更改为错误,或模型产生新的幻觉(hallucination)。这两种方法可以结合使用。Snell 等人发现:对于简单问题,单一使用序列化策略的测试时计算效果最佳;而对于高难度问题,则通常需要在并行计算与序列修订之间找到最优组合比例,以获得最好的任务表现。


并行采样与序列修订示意图。


并行采样


当我们手头有一个生成模型(generative model)以及一个可用于对完整或部分生成样本进行评分的评分函数(scoring function)时,便可以设计多种搜索算法,以寻找评分更高的生成结果。其中最简单的一种算法便是 best-of-N:直接独立生成 N 个样本,再依据评分函数从中选出得分最高者。


相较之下,束搜索是一种更复杂且更具适应性的搜索算法,它通过动态分配计算资源,优先探索解空间中更具潜力的部分。在束搜索过程中,模型维护一组当前最有前景的部分序列,并在扩展这些候选序列与剔除不够理想的序列之间交替进行。


在选择生成候选时,可以引入过程奖励模型(Process Reward Model, PRM)作为引导机制,辅助束搜索的路径筛选。例如,有研究使用大语言模型自身来评估其生成的每个推理步骤是否合理,将其格式化为选择题,从而进行逐步自我评估(per-step self-evaluation)。这种方法能够显著减少多步推理过程中的累计错误,特别是在束搜索解码阶段,表现尤为明显。


此外,在采样过程中通过温度退火(annealing the temperature)策略来调控随机性,也有助于缓解生成过程中不必要的波动。这一系列实验方法在 Codex 模型上应用于 GSM8k、AQuA 与 StrategyQA 等少样本任务时,取得了 5–6% 的性能提升。


区别于传统束搜索,REBASE(Reward Balanced Search)方法训练了一个独立的过程奖励模型,用于评估束搜索树中每一节点在不同深度下的扩展优先级。该模型基于 softmax 归一化的奖励分值,动态决定哪些节点获得更多生成资源。


另一种名为 RATIONALYST 的过程奖励模型,则利用大量无标注数据训练用于多步推理任务,模型通过生成候选推理路径(称为 rationale),并根据这些 rationale 是否能减少真实答案 token 的负对数概率(negative log-probability)达一定阈值,来筛选高质量推理过程。


在推理阶段,RATIONALYST 可以以两种方式引导思维链 CoT)生成器进行推理:一种是隐式地估计下一个推理步骤的概率(implicit supervision);另一种是显式地将下一步的推理内容直接作为提示词的一部分生成(explicit supervision)。


束搜索解码过程中由大语言模型对每个推理步骤进行自我评估的引导机制。


有趣的是,即使不采用显式的零样本提示(zero-shot prompting)或少样本提示(few-shot prompting),也有可能激发出语言模型中的思维链(CoT)推理路径。Wang 与 Zhou 发现,如果在采样的第一个 token 处进行分支,并保留置信度最高的前 k 个 token(其置信度通过 top-1 与 top-2 候选之间的概率差来衡量),然后分别对这 k 条路径采用贪婪解码(greedy decoding)继续生成,那么其中相当一部分生成序列天然包含完整的思维链。


尤其在上下文中本就存在思维链内容时,这种机制更容易引导模型生成更具置信度的最终答案。在评估最终答案的置信度时,需首先通过特定任务的启发式方法(task-specific heuristics)标识出答案片段,例如,在数学题中提取最后出现的数值答案;或通过进一步提示模型(例如在末尾提示 「So the answer is」)来提取明确答案。


仅在首个 token 处进行分支的设计逻辑在于,相比于后续 token,早期分支能显著提升推理路径的多样性,而后续 token 的生成则更多受限于已有上下文序列。


Top-k 解码中,k 表示在首次采样步骤中保留的候选项数量。


顺序修订


如果一个模型具有反思并纠正其先前回答中错误的能力,我们应期望它能够产生一个质量不断提高的迭代修订序列。然而,事实证明,这种自我修正能力并非大语言模型所固有,且在未经特别设计的情况下往往难以实现,其中的失败模式包括:


(1)幻觉,即将原本正确的回答修改为错误的版本;

(2)行为坍缩为不修正的状态,例如,在最初的错误回答上只进行细微甚至不作修改;

(3)在测试时无法泛化到分布转移(distribution shift)的情况。


Huang 等人的实验表明,直接应用自我修正策略反而可能导致性能下降,模型若要实现自我提升,仍需依赖外部反馈信号,例如与真实标签比对的结果、启发式规则、针对任务设计的评估指标、编程题的单元测试结果、更强大的模型输出参考,以及人类反馈等。


自我修正学习旨在在固定的生成模型 P₀(y₀∣x) 基础上,训练一个修正器模型 Pθ(y∣y₀, x)。其中生成模型保持通用性,而修正器模型则可以针对具体任务进行定制,并且只在给定初始模型响应和可选附加反馈(例如一段文本、编译器提示信息或单元测试结果)条件下进行生成:


1. 自我修正学习首先针对数据池中的每个提示生成多个候选输出;

2. 然后,为每个提示构造「价值提升对」;即挑选两个输出,如果其中一个相较于另一个在评价指标上更优,则组成(提示 x,初始答案 y,修正答案 y′)三元组;

3. 接着,根据修正带来的价值提升幅度 v (y′) − v (y),以及两个输出之间的相似度 Similarity (y, y′),对这些样本对进行加权采样以训练修正器模型;

4. 为鼓励探索,修正器生成的新输出也会加入数据池。推理时,可以反复调用修正器,从而形成一个连续改进的修订轨迹。


通过匹配同一问题下模型的不同输出,构造「价值提升对」以训练修正模型的自我修正学习示意图。


递归检视(Recursive Inspection)同样旨在训练更优的修正器模型,但其采用的是单一模型同时完成生成与自我修正的策略。


SCoRe(Self-Correction via Reinforcement Learning)是一种基于多轮交互的强化学习方法,旨在鼓励模型在第二次尝试时生成相较第一次更优的答案,从而实现自我修正。该方法由两个训练阶段组成:


第一阶段的目标是最大化第二次尝试答案的准确性,同时仅对第一次尝试施加 KL 散度惩罚(KL penalty),以防止第一次生成行为偏离基础模型太远,保持其生成风格的稳定性;


第二阶段则同时优化第一次和第二次生成答案的准确性。


理想情况下,我们希望模型在第一次和第二次尝试中都能获得更好的性能,但引入第一阶段可以有效避免「行为坍缩」,即模型仅对初始响应进行微小甚至无修改;


而第二阶段则在此基础上进一步提升整体表现。


显式训练设置,通过进行两阶段 RL 训练来提高自我纠正能力。


使用强化学习提升推理能力


近期,越来越多的研究成功地利用强化学习(RL)提升语言模型的推理能力。这类方法通常采用带有可靠参考答案的问题集(主要是 STEM 领域的问题或易于验证答案的逻辑谜题),通过奖励模型生成正确答案来优化其性能。


这一方向的发展受到 OpenAI 发布系列模型出色推理表现的推动,随后 DeepSeek 的模型及技术报告进一步加速了相关研究的进展。


DeepSeek-R1 是一款开源大语言模型,专为应对数学、编程和逻辑推理等高复杂度任务而构建。其训练流程包括两轮 SFT-RL(监督微调 + 强化学习),使得 R1 在推理类与非推理类任务上均具备良好能力。


在训练初期,采用「冷启动监督微调」(cold-start SFT),即在数千条冷启动数据上对基础模型进行微调。若省略此步骤,模型在初期表现中可能会出现语言混杂、表述不通顺等问题。


面向推理的强化学习(reasoning-oriented RL)阶段,使用仅包含推理任务的提示,对模型进行强化训练,奖励信号设计为两类规则型指标:


格式奖励(format rewards):要求模型使用特殊 token 包裹「思维链」(CoT)。


准确性奖励(accuracy rewards):判断最终答案是否正确。数学问题的答案需以特定格式呈现(如放入方框中)以便自动验证;编程问题则通过编译器评估是否通过测试用例。


拒绝采样 + 非推理监督微调 阶段,使用 RL 第 2 步的 checkpoint 生成的推理输出,通过拒绝采样(rejection sampling)进行质量筛选,并结合写作、事实问答、自我认知等非推理任务中的监督数据,构建新的训练集,用于训练 DeepSeek-V3-Base:







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