如何复刻o1模型的深度思考

科技   2024-11-28 17:25   美国  

一步到位:O1模型高效复刻指南

©作者|Zane

来源|神州问学


引言


在o1模型发布之前,openai就已经发布计划,将推出新的AI模型草莓,在早期的披露中,草莓模型的诞生就是为了应对现有人工智能技术的局限性,推动大语言模型的理解能力和问题解决能力。而改模型被称之为草莓模型的原因具传闻是因为一个经典的CoT思维连问题而得到。即询问Strawberry这个单词中有几个r。而因为草莓模型的推理能力的提升能够准确的回答,所以被称为草莓模型。


o1模型的诞生


自从今年的9月份,openai也解开了草莓模型的神秘面纱-‘o1’,自从openai发布了o1模型之后,人们的视线渐渐的重新聚焦到CoT技术上。根据OpenAI官方提供的报告显示,o1在竞争性编程问题Codeforces中排名第89位,在美国数学奥林匹克(AIME)资格赛中跻身美国前500名,并且在物理、生物和化学问题的基准测试中超过了人类博士级的准确度,而实现这一强大能力的主要技术就是通过思维链(CoT)技术。并且在报告中显示openai在o1的训练中发现随着强化学习的时间增加和思考时间的增加,o1的性能会持续提高。



并且在一系列不同的人工考试和ML基准测试上,在绝大多数的推理密集型任务中o1的表现明显优于GPT-4o。


在一些比较偏推理能力的基准测试中o1的能力可以与人类专家的表现相媲美,同时为了能够有效区分模型的能力,openai同时评估了o1在AIME的数学表现,GPT-4o则平均解决了12%,而o1则在每个问题的单样本中平均为74%,在64个样本中则为83%。同时启用视觉感知功能后,o1 在 MMMU 上的得分为 78.2%,成为第一个与人类专家相媲美的模型。它还在 57 个 MMLU 子类别中的 54 个子类别中胜过 GPT-4o。


o1模型怎么做到的能力提升


与人类在回答较难的问题长时间思考是类似的,o1在尝试解决问题时会使用思维连。通过强化学习,o1学会优化自己的思维链能力以及使用的策略,o1会进行识别和纠正,通过思维连,o1会将较难的问题分解为易处理的步骤,并在当前方法不起作用的时候去尝试使用其他方法,这个过程能够极大的提高模型的推理能力。


当然o1模型本身在处理复杂问题是有更好的能力不单纯是CoT的功劳,o1模型在预训练之初就是在大量的文本数据集上进行的,o1模型具有广泛的世界知识,但是对于实际应用来说他的成本则是比较高昂的,而o1-mini则是在预训练期间针对STEM推理进行了优化,在使用与o1相同的高计算强化学习(RL)进行训练之后o1-mini在许多推理任务上实现了相当的性能,成本效率也有了很大的提升,但是o1-mini在非STEM的事实知识任务上表现较差。



STEM:在一些需要推理的学术基准上,例如 GPQA(科学)和 MATH-500,o1-mini 的表现优于 GPT-4o。由于缺乏广泛的世界知识,o1-mini 在 MMLU 等任务上的表现不如 GPT-4o,在 GPQA 上落后于 o1-preview。





如何复刻o1模型深度思考


因为openai的o1模型细节没有透明,所以也有很多团队开始进行复刻,其中上海交大的GAIR研究组在对o1模型复刻的过程中提出了journey learning的方法,来帮助复刻o1模型。



传统的机器学习多为“捷径学习”,注重快速的结果、依赖大量的数据、泛化性和自我修正能力有限,而journey learning则不同,他能够让模型虚席完整的探索过程,包括试错、反思和回溯,如同人类解决问题,能提升模型在复杂任务中的推理能力、自我改进能力、泛化性和创新性。


在研究过程中,通过分析 O1 解决复杂任务的示例,发现随着问题难度增加,其响应长度增长,且推理过程中会使用特定关键词,如 “consider”“if”“wait” 等,表明模型在探索不同路径、进行反思和自我修正。据此确定长思考数据应具备迭代解题、包含关键思维指示、递归反思、探索假设、结论验证等特征。


●构建常思考


- 基于树搜索与奖励模型:观察到长思考需在推理错误时反思回溯,因此构建推理树,用根节点表示问题,其他节点表示推理步骤,通过过程级奖励模型指示节点正确性,基于此执行搜索算法构建长思考


  - 提出 - 批判循环:为让模型自由选择行动,构建提出 - 批判循环,预定义可能行动,模型选择行动构建推理树,若未达最终答案,可根据反馈反思纠正


    - 多智能体方法:针对推理树构建长思考的问题,设计多智能体辩论算法,策略模型持续推理,批判模型指示是否回溯,两者对话构建长思考数据集


- 完整人类思考过程注释:人类解决问题时的反思、回溯行为符合长思考特征,可记录人类解题过程获取高质量长思考数据


● 构建奖励模型:定义评估粒度为步骤级,使用开源或专有模型,比较不同奖励模型在子集上的性能,发现 O1 - mini 表现最佳


●构建推理树:构建推理树需单步推理的策略模型,采用特定数据格式微调模型,用奖励模型修剪错误推理步骤提高效率,先尝试 math - shepherd 模型,后使用 O1 - mini 直接指示推理步骤正确性


● 从推理树推导长思考:在推理树构建后,为导出包含试错的长思考,先构建仅含正确答案和有效中间步骤的快捷路径,再用深度优先搜索(DFS)遍历树,记录从根节点到正确答案叶节点的路径及错误节点推理,最后用 GPT - 4o 修改使长思考更自然连贯


● 评估试验:除使用基准测试评估模型准确性外,还构建可视化数据分析平台,可直观评估模型在特定问题上的表现,支持对合成树、长思考及模型输出的可视化和条件过滤,便于比较不同数据和模型迭代


● 训练模型:训练分两阶段。第一阶段是监督微调(SFT),包括捷径学习(用正确步骤和答案微调)和旅程学习(用构建的长思考微调);第二阶段是直接偏好学习(DPL),通过生成正负响应并创建偏好对训练模型


同时该团队基于o1的API进行了知识蒸馏,利用o1等高级模型的强大能力通过设计提示词获取其推理过程用于蒸馏,然后通过监督微调的方法初步使用SFT使模型适应长思考格式,再用蒸馏数据集进行下一阶段的SFT来增强推理能力和输出一致性,最终的蒸馏模型在AIME2024上的性能优于o1-preview但是和o1-mini相比仍有差距。


同时也有其他开源的团队希望通过CoT Activation策划一组SFT数据来开发,用这种方法赋予较小的模型增强长期的推理和解决问题的能力,而这种方法则是主要通过编排好的CoT思考方式的数据集对已有模型进行直接微调,从而增强模型的CoT思考能力,而数据集则是类似如下的方式。



风险与望


openai的o1模型固然在复杂问题上有较为出色的表现,但是却不代表它能够适应所有的场景,比如在以语言为中心的领域o1这种类型的模型则没有比GPT-4o更受欢迎。同时如果希望复刻o1模型则需要具有较好的数据集,而数据集的收集整理也将会是一个较大的难题,如上海交大的团队在实验中使用o1简单蒸馏的数据集就会有较多的问题如可能对长期发展造成潜在危害,存在性能天花板,缺少创新等问题。


虽然o1模型的本身仍然具有较多的限制和风险,但是模型本身在处理复杂问题时优异的能力仍然是瑕不掩瑜的,这种能力则将大大简化人类科学家们处理复杂问题时的时间,同时随着越来越多领域的o1模型产出,相信未来总有一天能够覆盖全部领域,进一步增强生产效率

智见AGI
围绕生成式AI技术的交流社区,与开发者和合作伙伴共同探究有深度的生成式AI技术前沿洞见、技术迭代、案例解析、方法和实践,助力企业的数字化转型
 最新文章