24年10月来自伦敦大学学院、利物浦大学、上海交大、香港科技大学(广州分校)和西湖大学的论文“OpenR: An Open Source Framework for Advanced Reasoning with Large Language Models”。

OpenR 是一个开源框架,旨在集成关键组件,以增强大语言模型 (LLM) 的推理能力。OpenR 将数据采集、强化学习训练(在线和离线)和非自回归解码统一到一个有凝聚力的软件平台中。目标是建立一个开源平台和社区,以加速 LLM 推理的发展。受到 OpenAI o1 模型的启发,该模型通过逐步推理和强化学习展示改进的推理能力,OpenR 集成测试-时间计算(test-time compute)、强化学习和过程监督,以改进 LLM 中的推理能力。其提供一个开源框架,探索 OpenAI o1 模型与强化学习的核心技术,实现超越传统自回归方法的高级推理能力。在 MATH 数据集上对其进行评估,利用公开可用的数据和搜索方法来证明 OpenR 的有效性。

OpenR 框架(包括代码、模型和数据集)可在 https://openreasoner.github.io 上访问。

OpenAI 最近发布 o1 [OpenAI, 2024],这是一个突破性的大语言模型 (LLM),代表着强人工智能的一大飞跃。据报道,与之前的 GPT-4o 相比,该模型在数学和编码方面的熟练程度提高五倍,特别是在各个领域表现出色:它在竞争性编程中排名第 89 位,在美国著名的数学奥林匹克资格赛中名列前 500 名,并在物理、生物和化学基准测试中超越了人类博士级的准确度。使用强化学习技术进行训练的 o1 通过在 LLM 中明确嵌入原生的“思维链”(NCoT)过程,在复杂的推理任务中表现出色,这使其能够通过逐步推理进行“深度思考”,然后生成响应。 o1 的一个关键创新是它允许在推理过程中花费更多时间进行推理,标志着从快速、直接的反应转变为缓慢、深思熟虑、多步骤的推理时间计算,如图所示。

请添加图片描述

有趣的是,在人类认知中,存在两种相关但又不同的认知处理模式来指导人类的决策和行为 [Kahneman,2011],每种模式都具有大脑回路和神经通路的部分区别。系统 1 思维快速、自动且直观,操作毫不费力且通常是无意识的。它依赖于能够快速处理的神经通路,尤其是在需要快速反应或认知资源受限的情况下。系统 2 思维是深思熟虑、努力和有意识的,涉及集中注意力和分析推理。它处理信息的速度更慢,用于复杂的问题解决、逻辑推理和决策任务。

o1 模型是人工智能的一个令人兴奋的发展,因为 LLM 现在不仅可以使用学习的模式生成快速响应,而且更重要的是,它可以通过思维链或其他形式的搜索等机制模拟复杂的推理过程,类似于人类进行更深入、循序渐进的思考。o1 改进的推理能力对多个领域都有影响,包括科学、编码和数学。在编码竞赛中,o1 的专业版取得了令人印象深刻的成绩,在 2024 年国际信息学奥林匹克竞赛中获得第 49 个 percentile,并在模拟 Codeforces 竞赛中胜过 93% 的人类竞争对手。除了技术能力之外,o1 还代表了人工智能安全和协调方面的进步。该模型的思维链推理为整合人类价值观和原则提供了新的机会,从而提高了安全评估和越狱测试的性能。

大语言模型 (LLM) 中的思维链推理 [Wei et al., 2022] 和分步思考的想法并不新鲜。先前的研究表明,只需在输入问题中添加“分步描述您的推理”或“分步解释您的答案”等指令,或提供一些示例,就可以触发 LLM 生成中间推理步骤(如上图所示),从而提高解决问题的能力,尤其是在数学和编码等任务中 [Wei, 2022, Nye, 2021]。然而,这些方法建立在现有的 LLM 之上,并没有真正将思维链能力嵌入模型本身。因此,LLM 无法固有地学习这种推理能力,从而引发了如何将其直接集成到模型训练中的积极研究。提出的方法包括收集专门的训练数据、构建奖励模​​型 [Ouyang, 2022, Li, 2022, Luo, 2024] 以及增加解码的计算复杂度 [Snell, 2024, Wu, 2024],但尚未有任何方法在规模上取得重大性能突破。

目前尚不清楚 o1 的创新是否植根于模型本身,而不是依赖于外部提示系统。如果它确实涉及在架构中明确嵌入分步推理,那么这将是一个重大突破。在大幅提高性能的基础上,o1 表明,传统上在训练期间应用的规模化原则 [Kaplan, 2020, Snell,2024] 现在与推理阶段相关。重新分配计算重点,在训练前努力与有效利用推理时间计算之间取得平衡。允许 LLM 通过增加测试时间计算来增强其输出,这是朝着创建能够管理开放式强推理和决策任务的自我改进型智体迈出的重要一步。这个方向,称之为 LLM-原生思维链(NativeCoT),应该能够从本质上反映人类系统 2 思维所具有的深思熟虑分析过程 [Kahneman,2011]。

推理-时间计算。为了讨论推理-时间计算在大语言模型 (LLM) 中的作用,最近的研究集中于优化推理过程中推理的效率和有效性,而不仅仅是依赖于训练-时间计算的规模化定律。Feng [2024] 的一项关键研究展示,使用 MCTS 作为解码机制的好处,它通过主动规划和选择更高质量的响应来增强推理计算。这种方法与 Hao [2023] 提出的推理-即-规划方法相一致,其中推理被视为类似于决策过程中规划的过程,进一步强调分步推理在推理时的重要性。最近的研究 [Snell,2024] 强调,与简单地增加模型大小相比,优化推理策略可以带来卓越的性能提升,强调了测试-时间计算的关键作用。最后,[Goyal, 2023] 工作的成果对此进行补充,该研究通过合并暂停 tokens 来鼓励生成过程中进行深思熟虑的推理,从而引入一种隐式推理模型。总的来说,这些最新进展表明,人们越来越认识到推理-时间优化(无论是通过基于规划的推理模型还是计算优化)是提高 LLM 能力的关键因素,提倡采取能够增强推理、规划和计算效率的策略,而不仅仅是训练-时间规模化。

为了对问答或解决问题等任务中的推理过程进行建模,用 Q → {R} → A 序列来构造推理任务,其中:
• Q 表示启动推理过程的问题或提示;
• R 表示模型生成的用于构建解决方案的中间推理步骤序列;
• A 表示推理步骤后产生的最终答案或解决方案。

此结构允许 LLM 生成一系列推理步骤,这些步骤在逻辑上将问题 Q 与最终答案 A 联系起来。可以将推理过程定义为马尔可夫决策过程 (MDP) [Bellman,1958]。MDP 表示为建模推理提供一个灵活的框架。它允许模型逐步生成朝向最终答案的顺序推理步骤,同时还在每个步骤采样多条路径,实现树结构以获得备选推理轨迹。通过结合两种方法(顺序推理和分支推理),该模型可以探索不同的解决方案,从而创建一个多功能且全面的推理过程。

如图所示:在这个 MDP 公式中,LLM 的任务是逐步生成推理步骤和问题的最终答案。LLM 策略通过生成tokens来运行,这些tokens构成了更高级别的推理结构。状态表示迄今为止的推理步骤顺序,动作对应于新推理步骤或最终答案的选择。LLM 策略,控制动作的选择,过程奖励模型 (PRM) 提供有关推理步骤和最终答案质量的反馈。通过优化策略以最大化奖励,LLM 可以在 PRM 的指导下生成准确且有意义的推理过程。

请添加图片描述

过程奖励模型 (PRM) 在增强 LLM 策略方面发挥着至关重要的作用,主要体现在两个方面。首先,在训练期间,PRM 通过策略优化技术改进 LLM 策略。其次,在解码阶段,PRM 指导 LLM 的搜索过程,引导推理朝着更有效的结果发展。LLM 策略还有助于识别缺失的中间推理步骤,从而进一步训练和改进 PRM。这种迭代交互使 LLM 和 PRM 能够不断释放彼此改进推理的潜力。

如图所示OpenR LLM 推理框架。将 PRM 的价值函数与 LLM 的策略生成相结合,可确保获得有指导和可控的结果。在训练过程中,LLM 策略产生的生成和 PRM 提供的评估相互加强,从而不断自我完善和改进这两个组件。

请添加图片描述

将数学问题转化为语言增强的马尔可夫决策过程 (MDP) M = (V, S, A, T , R, γ) [Van Otterlo & Wiering, 2012, Carta, 2023]。给定词汇表 V 和 tokens w,A、S 分别是动作和状态空间,即动作和状态是token序列。T : S × A → S 是状态转换函数。R : S × A → R 是响应每个动作的奖励函数,γ 是通常小于 1 的折扣因子。初始状态 s0 表示数学问题解决场景中的给定问题。语言模型接收此输入并生成中间推理步骤,表示为动作 a0。然后,此动作 a0 与初始问题 s0 连接起来,形成后续状态 s1,用于推断下一个动作 a1。此迭代过程继续进行,每个状态-动作对在时间步骤 t 时依次通知以下状态,即 T : st+1 = {st, at},直到模型得出最终答案。

在推断出每个动作 at 后,模型会从训练有素的 PRM 收到奖励信号 rt/PRM =R(st,at)。遵循此过程,在一个最大时间步 T 的轨迹之后,智体将获得折扣累积回报 Rγ = sum(γ/t * r/t/PRM),旨在通过 RL 算法最大化。相应地将此 MDP 实现为强化学习环境,如 OpenAI 的 Gym。在这些环境中,数学问题被呈现为任务,模型采取连续的动作来解决问题,对正确的动作获得奖励,对错误的动作受到惩罚,这使得模型能够通过反复试验迭代学习和改进其解决问题的策略,最终提高其数学推理能力。

使用强化学习训练 LLM 通常涉及近端策略优化 (PPO) [Schulman et al., 2017],以使生成的语言输出与期望的操作保持一致。这种方法强化生成既符合语境又符合预定义目标的响应,弥合语言理解与可操作输出之间的差距,从而有效地将语言理解与战略性规划联系起来。采用传统的 PPO 和 PPO 的有效变型,即相对组的策略优化 (GRPO) [Shao et al., 2024]。这两者之间的主要区别在于它们对优势价值估计的方法。

具体而言,PPO 利用网络来近似状态价值函数,利用广义优势估计 (GAE) 技术 [Schulman et al., 2015] 来获得优势估计。相比之下,GRPO 则简化这一过程,直接使用归一化的奖励信号来估计动作的优势,即 A(st , at ) = (r/t/PRM −mean(r ) )/ std(r/t/PRM)。与 PPO 相比,GRPO 绕过对额外批评网络的需求,减少了训练过程中的资源消耗,但它更强调 PRM 的稳定性。

按照 Snell [2024] 的方法,用 PRM 来评估每个解决方案步骤的准确性。一旦训练出高质量的过程奖励模型,就会将其与语言模型一起集成到解码过程中,从而实现跨多哥生成引导搜索和评分或投票。

为了使用 PRM 作为验证器,定义一种评估 LLM 生成解决方案正确性的方法。具体来说,将各个步骤的分数 {r/t/P RM } 映射到最终分数。按照 Lightman [2023] 和 Snell [2024] 概述的策略,采用两种方法:
• PRM-Min:在所有分数中选择最小值,即 v = min{r/t/PRM}。
• PRM-Last:选择最后一步的分数作为最终分数,即 v = r/T/PRM。事实证明,该策略与 Snell 的 PRM-Min 一样好。 [2024]。

一旦扩展测试-时间计算生成多个答案,就需要根据它们的分数选择最佳答案的策略。采用 Feng[2024] 的三种策略:
• 多数投票:使用多数投票汇总答案。
• RM-Max:给定一个结果奖励模型,聚合可以选择具有最大最终奖励的答案 f。
• RM-Vote:给定一个结果奖励模型,聚合可以选择具有奖励总和的答案 f。

结合这些策略,可以定义多答案加权方法,例如 PRM-Last-Max,它指的是将 PRM-Last 与 RM-Max 结合使用。

该框架允许在各种搜索算法中进行选择——例如集束搜索、N 中最佳选择等——每种算法都具有独特的优势,具体取决于 PRM 的质量。复杂的搜索算法可能会在更困难的任务上产生更好的性能,而更简单的方法(例如 N 中最佳)通常可以在不太具有挑战性的情况下充分发挥作用 [Snell,2024]。

主要采用两种策略:
• Best-of-N:给定一个基础模型,Best-of-N 采样方法并行生成 N 个输出,并根据使用 PRM 的学习过程选择得分最高的答案。此方法类似于利用验证器或奖励模型的先前工作 [Cobbe, 2021b, Lightman, 2023]。虽然简单,但它是一种有效的基线,可利用测试-时间计算提高 LLM 的性能。PRM 可以充当密集验证器 [Lightman, 2023, Wang, 2024a],并且直观地看,提供强信号可以带来更好的结果。由于可以为基础模型的解决方案获得密集奖励,因此需要考虑如何最好地利用这种反馈来优化测试-时间计算。
• 集束搜索(Beam search):LLM 为第一步生成 N 个不同的输出,然后使用 PRM 对其进行评分。使用 PRM 对这些 N 个输出进行评分,并保留得分最高的前 N/m(m/N ∈Z)个输出。然后,只保留当前步骤的这 N/m 个输出。对于每个输出,通过基础模型对 M 个潜在的后续步骤进行采样,返回 N 个总输出。重复该过程:对新候选者进行评分、筛选和采样以用于后续步骤。PRM 的得分是指导此搜索的核心。与最佳 N 方法一样,用最后投票和多数投票策略来汇总分数,后者依赖于 PRM 之间的分数总和,如 [Wang et al., 2022] 中所述。

更复杂的推理-时间引导搜索解码方法,可以选择例如蒙特卡洛树搜索(MCTS),它已经在 OpenR 的代码库中涵盖,以及其他方法,如顺序修整 [Snell et al., 2024]。

Logo

NVIDIA官方入驻,分享最新的官方资源以及活动/会议信息,精选收录AI相关技术内容,欢迎大家加入社区并参与讨论。

更多推荐