OpenAI最大秘密,竟被中国研究者破解?复旦等惊人揭秘o1路线图
OpenAI o1和o3模型的秘密,竟传出被中国研究者「破解」?今天,复旦等机构的这篇论文引起了AI社区的强烈反响,他们从强化学习的角度,分析了实现o1的路线图,并总结了现有的「开源版o1」。
就在今天,国内的一篇论文,引得全球AI学者震惊不已。
推上多位网友表示,OpenAI o1和o3模型背后究竟是何原理——这一未解之谜,被中国研究者「发现」了!
注:作者是对如何逼近此类模型进行了理论分析,并未声称已经「破解」了这个问题
实际上,在这篇长达51页的论文中,来自复旦大学等机构的研究人员,从强化学习的角度分析了实现o1的路线图。
其中,有四个关键部分需要重点关注:策略初始化、奖励设计、搜索和学习。
此外,作为路线图的一部分,研究者还总结出了现有的「开源版o1」项目。
论文地址:https://arxiv.org/abs/2412.14135
探索OpenAI的「AGI之迷」
概括来说,像o1这样的推理模型,可以被认为是LLM和AlphaGo这类模型的结合。
首先,模型需要通过「互联网数据」进行训练,使它们能够理解文本,并达到一定的智能水平。
然后,再加入强化学习方法,让它们「系统地思考」。
最后,在寻找答案的过程中,模型会去「搜索」解决方案空间。这种方法既用于实际的「测试时」回答,也用于改进模型,即「学习」。
值得一提的是,斯坦福和谷歌在2022年的「STaR: Self-Taught Reasoner」论文中提出,可以利用LLM在回答问题之前生成的「推理过程」来微调未来的模型,从而提高它们回答此类问题的能力。
STaR让AI模型能够通过反复生成自己的训练数据,自我「引导」到更高的智能水平,理论上,这种方法可以让语言模型超越人类水平的智能。
因此,让模型「深入分析解决方案空间」的这一理念,在训练阶段和测试阶段都扮演着关键角色。
在这项工作中,研究者主要从以下四个层面对o1的实现进行了分析:策略初始化、奖励设计、搜索、学习。
策略初始化
策略初始化使模型能够发展出「类人推理行为」,从而具备高效探索复杂问题解空间的能力。
海量文本数据预训练
指令微调
问题分析、任务分解和自我纠正等学习能力
奖励设计
奖励设计则通过奖励塑造或建模提供密集有效的信号,指导模型的学习和搜索过程。
结果奖励(基于最终结果)
过程奖励(基于中间步骤)
结果奖励(左)和过程奖励(右)
搜索
搜索在训练和测试中都起着至关重要的作用,即通过更多计算资源可以生成更优质的解决方案。
MCTS等树搜索方法探索多种解决方案
连续修订迭代改进答案
结合两种方法可能是最佳选择
搜索过程中使用的指导类型:内部指导、外部指导,以及两者的结合
学习
从人工专家数据中学习需要昂贵的数据标注。相比之下,强化学习通过与环境的交互进行学习,避免了高昂的数据标注成本,并有可能实现超越人类的表现。
政策梯度方法,如PPO和DPO
从高质量搜索解决方案克隆行为
迭代搜索和学习周期
综上,正如研究者们在2023年11月所猜测的,LLM下一个突破,很可能就是与谷歌Deepmind的Alpha系列(如AlphaGo)的某种结合。
对此,有网友表示,这项研究的意义绝不仅仅是发表了一篇论文,它还为大多数模型打开了大门,让其他人可以使用RL来实现相同的概念,提供不同类型的推理反馈,同时还开发了AI可以使用的剧本和食谱。
「开源版o1」
研究者总结道,尽管o1尚未发布技术报告,但学术界已经提供了多个o1的开源实现。
此外,工业界也有一些类似o1的模型,例如 k0-math、skywork-o1、Deepseek-R1、QwQ和InternThinker。
g1:这项研究可能是最早尝试重新实现o1的项目。
Thinking Claude:与g1类似,但它通过更复杂和细粒度的操作来提示LLM。
Open-o1:项目提出了一个SFT数据集,其中每个响应都包含CoT。研究者推测,这些数据可能来自人类专家或一个强大的LLM。
o1 Journey:通过两篇技术报告中进行了详细描述。第一部分通过束搜索生成的树数据进行遍历,特定节点由GPT-4优化后用于SFT,这一策略可以被描述为专家迭代。第二部分则尝试对o1-mini进行蒸馏,并通过prompt来恢复隐藏的CoT过程。
Open-Reasoner:框架类似于AlphaGo,通过强化学习提升模型性能。
慢思考与LLM:研究同样分为两篇技术报告。第一部分与Open-Reasoner类似,结合了强化学习和测试时的搜索。第二部分从QwQ和Deepseek-R1中蒸馏,并尝试了两种强化学习方法。
Marco-o1:项目将Open-o1的数据与模型自身通过MCTS算法生成的数据结合,用于SFT训练。
o1-coder:项目尝试在代码生成领域重新实现o1。
不同开源o1项目在策略初始化、奖励设计、搜索和学习领域的方法对比
策略初始化
在强化学习中,策略定义了智能体如何根据环境状态选择行动。
其中,LLM的动作粒度分为三种级别:解决方案级别、步骤级别和Token级别。
智能体与环境在LLM强化学习中的交互过程
对于LLM的初始化过程,主要包括两个阶段:预训练和指令微调。
在预训练阶段,模型通过大规模网络语料库的自监督学习,发展出基本的语言理解能力,并遵循计算资源与性能之间的既定幂律规律。
在指令微调阶段,则是将LLM从简单的下一个Token预测,转变为生成与人类需求一致的响应。
对于像o1这样的模型,融入类人推理行为对于更复杂的解决方案空间探索至关重要。
预训练
预训练通过大规模文本语料库的接触,为LLM建立基本的语言理解和推理能力。
对于类似o1的模型,这些核心能力是后续学习和搜索中发展高级行为的基础。
语言理解与生成:语言理解是分层次发展的——句法模式较早涌现,而逻辑一致性和抽象推理则在训练的后期阶段逐步形成。因此除了模型规模外,训练时长和数据组成也至关重要。
世界知识获取与存储:知识存储具有高效的压缩和泛化特性,而抽象概念相比事实性知识需要更广泛的训练。
基础推理能力:预训练通过多样化的推理模式发展了基础推理能力,后者以从简单推断到复杂推理的层次结构逐步涌现。
指令微调通过在多领域的指令-响应对上进行专门训练,将预训练语言模型转变为面向任务的智能体。
这一过程将模型的行为从单纯的下一个Token预测,转变为具有明确目的的行为。
效果主要取决于两个关键因素:指令数据集的多样性和指令-响应对的质量。
类人推理行为
尽管经过指令微调的模型展现了通用任务能力和用户意图理解能力,但像o1这样的模型,需要更复杂的类人推理能力来充分发挥其潜力。
如表1所示,研究者对o1的行为模式进行了分析,识别出六种类人推理行为。
问题分析:问题分析是一个关键的初始化过程,模型在解决问题前会先重新表述并分析问题。
任务分解:在面对复杂问题时,人类通常会将其分解为若干可管理的子任务。
任务完成:之后,模型通过基于明确问题和分解子任务的逐步推理,生成解决方案。
替代方案:当面临推理障碍或思路中断时,生成多样化替代解决方案的能力尤为重要。如表1所示,o1在密码破解中展现了这一能力,能够系统性地提出多个选项。
自我评估:任务完成后,自我评估作为关键的验证机制,用于确认所提解决方案的正确性。
自我纠正:当推理过程中出现可控错误时,模型会采用自我纠正行为来解决这些问题。在o1的演示中,当遇到诸如「No」或「Wait」之类的信号时,会触发纠正过程。
策略初始化在开发类似o1的模型中起到了关键作用,因为它建立了影响后续学习和搜索过程的基础能力。
策略初始化阶段包括三个核心组成部分:预训练、指令微调以及类人推理行为的开发。
尽管这些推理行为在指令微调后的LLM中已隐性存在,但其有效部署需要通过监督微调或精心设计的提示词来激活。
长文本生成能力:在推理过程中,LLM需要精细的长文本上下文建模能力。
合理塑造类人推理行为:模型还需要发展以逻辑连贯方式,有序安排类人推理行为的能力。
自我反思:自我评估、自我纠正和替代方案提议等行为,可视为模型自我反思能力的表现。
奖励设计
在强化学习中,智能体从环境中接收奖励反馈信号,并通过改进策略来最大化其长期奖励。
奖励函数通常表示为r(st, at),表示智能体在时间步t的状态st下执行动作at所获得的奖励。
奖励反馈信号在训练和推理过程中至关重要,因为它通过数值评分明确了智能体的期望行为。
结果奖励与过程奖励
结果奖励是基于LLM输出是否符合预定义期望来分配分数的。但由于缺乏对中间步骤的监督,因此可能会导致LLM生成错误的解题步骤。
与结果奖励相比,过程奖励不仅为最终步骤提供奖励信号,还为中间步骤提供奖励。尽管展现了巨大的潜力,但其学习过程比结果奖励更具挑战性。
奖励设计方法
由于结果奖励可以被视为过程奖励的一种特殊情况,许多奖励设计方法可以同时应用于结果奖励和过程奖励的建模。
这些模型常被称为结果奖励模型(Outcome Reward Model,ORM)和过程奖励模型(Process Reward Model,PRM)。
来自环境的奖励:最直接的奖励设计方法是直接利用环境提供的奖励信号,或者学习一个模型来模拟环境中的奖励信号。
从数据中建模奖励:对于某些环境,环境中的奖励信号无法获取,也无法进行模拟。相比直接提供奖励,收集专家数据或偏好数据更为容易。通过这些数据,可以学习一个模型,从而提供有效的奖励。
在某些环境中,奖励信号可能无法有效传达学习目标。
在这种情况下,可以通过奖励塑造(reward shaping)对奖励进行重新设计,使其更丰富且更具信息量。
然而,由于价值函数依赖于策略π,从一种策略估计的价值函数可能并不适合作为另一种策略的奖励函数。
关于o1奖励设计的推测
鉴于o1能够处理多任务推理,其奖励模型可能结合了多种奖励设计方法。
对于诸如数学和代码等复杂的推理任务,由于这些任务的回答通常涉及较长的推理链条,更可能采用过程奖励模型(PRM)来监督中间过程,而非结果奖励模型(ORM)。
当环境中无法提供奖励信号时,研究者推测,o1可能依赖于从偏好数据或专家数据中学习。
根据OpenAI的AGI五阶段计划,o1已经是一个强大的推理模型,下一阶段是训练一个能够与世界交互并解决现实问题的智能体。
为了实现这一目标,需要一个奖励模型,为智能体在真实环境中的行为提供奖励信号。
奖励集成:为通用任务构建奖励信号的一种直观方式是通过特定领域的奖励集成。
世界模型:世界模型不仅能够提供奖励信号,还可以预测下一状态。有研究认为,视频生成器可以作为一种世界模型,因为它能够预测未来时间步的图像。
搜索
对于像o1这样旨在解决复杂推理任务的模型,搜索可能在训练和推理过程中都发挥重要作用。
搜索指导
基于内部指导的搜索不依赖于来自外部环境或代理模型的真实反馈,而是通过模型自身的状态或评估能力来引导搜索过程。
外部指导通常不依赖于特定策略,仅依赖于与环境或任务相关的信号来引导搜索过程。
同时,内部指导和外部指导可以结合起来引导搜索过程,常见的方法是结合模型自身的不确定性与来自奖励模型的代理反馈。
搜索策略
研究者将搜索策略分为两种类型:树搜索和序列修正。
树搜索是一种全局搜索方法,同时生成多个答案,用于探索更广泛的解决方案范围。
相比之下,序列修正是一种局部搜索方法,基于先前结果逐步优化每次尝试,可能具有更高的效率。
树搜索通常适用于复杂问题的求解,而序列修正更适合快速迭代优化。
搜索在o1中的角色
研究者认为,搜索在o1的训练和推理过程中,都起着至关重要的作用。
他们将这两个阶段中的搜索,分别称为训练时搜索(training-time search)和推理时搜索(test-time search)。
在训练阶段,在线强化学习中的试错过程也可以被视为一种搜索过程。
在推理阶段,o1表明,通过增加推理计算量和延长思考时间可以持续提高模型性能。
研究者认为,o1的「多思考」方式可以被视为一种搜索,利用更多的推理计算时间来找到更优的答案。
关于o1搜索的推测
训练阶段搜索:在训练过程中,o1更可能采用树搜索技术,例如BoN或树搜索算法,并主要依赖外部指导。
推理阶段搜索:在推理过程中,o1更可能使用序列修正,结合内部指导,通过反思不断优化和修正其搜索过程。
从o1博客中的示例可以看出,o1的推理风格更接近于序列修正。种种迹象表明,o1在推理阶段主要依赖内部指导。
学习
强化学习通常使用策略对轨迹进行采样,并基于获得的奖励来改进策略。
在o1的背景下,研究者假设强化学习过程通过搜索算法生成轨迹,而不仅仅依赖于采样。
基于这一假设,o1的强化学习可能涉及一个搜索与学习的迭代过程。
在每次迭代中,学习阶段利用搜索生成的输出作为训练数据来增强策略,而改进后的策略随后被应用于下一次迭代的搜索过程中。
训练阶段的搜索与测试阶段的搜索有所不同。
研究者将搜索输出的状态-动作对集合记为D_search,将搜索中最优解决方案的状态-动作对集合记为D_expert。因此,D_expert是D_search 的一个子集。
学习方法
给定D_search,可通过策略梯度方法或行为克隆来改进策略。
近端策略优化(PPO)和直接策略优化 DPO)是LLM中最常用的强化学习技术。此外,在搜索数据上执行行为克隆或监督学习也是常见做法。
研究者认为,o1的学习可能是多种学习方法结合的结果。
在这一框架中,他们假设o1的学习过程从使用行为克隆的预热阶段开始,当行为克隆的改进效果趋于稳定后,转向使用PPO或DPO。
这一流程与LLama2和LLama3中采用的后训练策略一致。
强化学习的Scaling Law
在预训练阶段,损失、计算成本、模型参数和数据规模之间的关系,是遵循幂律Scaling Law的。那么,对于强化学习,是否也会表现出来呢?
根据OpenAI的博客,推理性能与训练时间计算量,确实呈对数线性关系。然而,除了这一点之外,相关研究并不多。
为了实现像o1这样的大规模强化学习,研究LLM强化学习的Scaling Law至关重要。
参考资料:
https://x.com/MatthewBerman/status/1875202596350415332
https://x.com/WesRothMoney/status/1875051479180165489
https://arxiv.org/abs/2412.14135
声明:本文转载自新智元,转载目的在于传递更多信息,并不代表本社区赞同其观点和对其真实性负责,本文只提供参考并不构成任何建议,若有版权等问题,点击这里。
游客
- 鸟过留鸣,人过留评。
- 和谐社区,和谐点评。