OpenAI的o1模型与Transformer的无限潜力:数学证明推理算力无上限

近期,斯隆奖得主马腾宇和Google Brain推理团队创始人Denny Zhou合作,提出了一项引人注目的数学证明:只要思维链(CoT)足够长,Transformer就有能力解决各种复杂问题。这一发现引发了广泛关注,因为它为Transformer模型在推理算力方面的Scaling Law揭示了巨大的潜能

图片

他们通过严谨的数学方法证明,Transformer具备模拟任意多项式大小数字电路的能力。这一研究成果也成功入选ICLR 2024。

图片

正如一些网友所说,CoT的集成缩小了Transformer与图灵机之间的差距,为其实现图灵完备性铺平了道路。

图片

这意味着,神经网络理论上可以高效解决复杂问题。简而言之:Compute is all you need!

图片

思维链(CoT)让Transformer更强大

首先,需要明确的是,“可以解决任何问题”是一个通俗化的说法。严格来说,论文的核心结论是,思维链(CoT)能够显著提升Transformer的表达能力。

作者首先通过理论分析指出,对于固定深度、多项式宽度、常数精度的Transformer模型,如果不使用CoT,其表达能力将受限于AC0问题类别。(AC0是一类可以在并行计算中高效解决的问题,但不包括需要复杂序列化计算的问题。)

在固定指数位的情况下,即使引入了舍入操作,固定深度、对数精度的Transformer模型也只能处理TC0问题类别。

然而,一旦引入CoT,固定深度、常数精度的Transformer模型就可以解决任何由大小为T的布尔电路所解决的问题。

这表明CoT显著扩展了模型的表达能力,使其能够处理更复杂的问题。

图片

实验验证:四个核心问题

为了验证理论分析,论文在四个核心问题上进行了实验,考虑了基础(base)、CoT和提示(hint)三种不同的训练设置:

  1. 模运算(Modular Addition):并行计算问题,验证CoT在提升模型准确性方面的效果;

  2. 置换群组合(Permutation Composition):序列化计算问题,验证CoT在处理这类任务上的有效性;

  3. 迭代平方(Iterated Squaring):典型的序列化计算问题,展示CoT如何使模型有效求解;

  4. 电路值问题(Circuit Value Problem):一个P完全问题,验证CoT在模型深度较低时的有效性。

模运算问题上,实验结果表明,所有设置下的Transformer都能学习模加;但在较长序列(如n=16)上,CoT展现出明显优势。这说明即使是并行问题,CoT也能提升效率。

图片

置换群复合任务中,输入是S_5置换群中的若干个置换,输出是它们的复合结果。结果显示,CoT显著提高了低深度模型的准确性。未使用CoT的Transformer即使深度较大,准确率也只有约20%;而使用CoT后,即使只有1层Transformer,准确率也达到了100%。

图片

对于迭代平方任务,输入是一个质数p、一个整数r和若干个“^2”符号,输出是r^(2^k) mod p。实验结果与置换群复合任务类似:未使用CoT的情况下,即使是16层Transformer也难以学习;而使用CoT后,1层Transformer就能完美求解。

图片

电路值问题的实验结果表明,在基准设置下,4层Transformer的准确率约为50%,8层约为90%,16层接近100%;而使用CoT后,1层Transformer即可达到接近100%的准确率。这验证了CoT赋予了Transformer模拟任意电路的能力,使其能够解决电路值问题这一P完全问题。

图片

CoT+Transformer模拟门电路

除了上述实验,作者还进行了理论证明:

对于任何可以用多项式大小的布尔电路计算的函数,都存在一个仅有常数层数的Transformer,可以通过足够长的思维链(CoT)来模拟电路的计算过程,从而计算出这个函数。

证明的思路是先将布尔电路视为一系列逻辑门的组合,然后利用Transformer中的位置编码为每个逻辑门及其状态分配一个独特的表示,通过逐步计算来模拟整个电路的执行过程。

图片

具体而言,对于一个有T(n)个门的电路,作者设计了一个4T(n)个token的输入序列。这个序列包含了电路的完整描述,每个门用4个连续的token表示:门类型、两个输入门的索引和当前门的索引,并用输入序列中的第一个token指示电路的输入值。

作者构造了一个常数深度的Transformer,该Transformer的嵌入维度只需要O(log n),就足以对T(n)个门进行编码。通过将电路“展开”为一个长度为O(T(n))的思维链,Transformer逐步执行电路中的计算,并将中间结果存储在思维链中。最终,最后一个门的输出就对应了电路的最终输出。

在此基础上,作者进一步证明,具有O(T(n))长度CoT的常数深度Transformer,可以模拟任意T(n)大小的电路,因此其计算能力等价于多项式大小的电路。

理论打通,实际可行吗?

能够模拟电路的计算过程,意味着CoT+Transformer能够解决可计算问题。这也说明,只要有足够的CoT思考时间,大模型无需扩展尺寸也能解决复杂问题。

图片

有专业人士用一篇长文解释了CoT和图灵完备性之间的关系:如果没有CoT,Transformer仅限于执行AC0复杂度类中的并行任务;而CoT推理从根本上改变了这一格局,使Transformer能够通过中间推理token处理串行计算,进入P/poly领域。

理论上,只要有足够的CoT步骤,Transformer就能模拟多项式大小电路可以执行的任何计算,缩小与图灵机之间的差距。

然而,实际应用的限制仍然存在,例如有限的上下文窗口和计算资源。要充分利用这一潜力,需要精细的模型设计和优化。

图片

与OpenAI的“草莓”模型的联系

有人将这项成果与OpenAI的“草莓”模型o1联系到了一起——草莓同样是思考时间越长,准确性越高。按照这个思路,只要有好的模型,就有可能解决人类面临的一系列难题。

图片

甚至有人表示,如果这项研究是真的,那么AGI(通用人工智能)就已经在到来的路上了。

图片

然而,也有观点认为这只是一个理论结果,与实际应用还有较大差距。即使忽略理论与实际条件的不同,时间和成本问题也是重要的限制因素。

图片

同时,实验假设模型权重已正确设置,但实际模型的训练很难达到这一程度。此外,这种模拟门电路运算并不是大模型实际学习和工作的方式。如何将实际问题用布尔电路表示,是Transformer从能解决运算问题到实际问题的关键。而现实中,诸如“如何治疗癌症”这类问题,很难以电路的形式去描述。

图片

作者简介

该论文共有四位作者,皆为华人。

按署名顺序,第一位作者是清华姚班校友李志远,他是马腾宇已毕业的博士生,现任芝加哥丰田技术学院(TTIC)的终身助理教授。

第二位作者是Hong Liu,马腾宇的博士生,本科就读于清华,曾获特等奖学金及优秀毕业生荣誉。

第三位是Google Brain推理团队创建者Denny Zhou,他是中科院博士,2017年加入Google前在微软担任了11年的高级研究员。

最后一位是2021年斯隆奖得主、斯坦福大学助理教授马腾宇,他是姚班校友、陈丹琦的同班同学。

论文地址:
https://arxiv.org/abs/2402.12875
参考链接:
[1]https://x.com/denny_zhou/status/1835761801453306089
[2]https://www.reddit.com/r/singularity/comments/1fiemv4/denny_zhou_founded_lead_reasoning_team_at_google/

ChatGPT4o:

谷歌浏览器直接使用:https://www.nezhasoft.cn

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1537942.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

智能BI项目第三期

AIGC AI 提问技巧 为了让 Al 更好地理解我们的输入,并给出预期精确的输出,需要严格控制我们的提问词。 1.使用系统预设 控制输入格式(便于Al精确地理解我们的需求) 你是一个数据分析师和前端开发专家,接下来我会按照以下固定格式给你提供…

【开源免费】基于SpringBoot+Vue.JS在线文档管理系统(JAVA毕业设计)

本文项目编号 T 038 ,文末自助获取源码 \color{red}{T038,文末自助获取源码} T038,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

<<编码>> 第 14 章 反馈与触发器(1)--振荡器 示例电路

继电器振荡器 info::操作说明 无需操作, 保持控制开关常闭以形成振荡 如需停止振荡, 则断开控制开关 注: 要看到灯闪烁的效果, 右上角 “仿真速度” 控制杆应设置为一个较低的位置(靠左侧) 另: 因继电器内部开关跳动动画效果耗时太长, 即便设置为较低的仿真速度也无法观察到开关…

不要沉迷大模型的技术与理论,学习大模型的方法——从做一个小应用开始

“ 在应用中学习技术,而不是沉迷于技术本身 ” 不知道大家都是怎么学习大模型技术的,但从个人的经验和公众号的反馈来看,有些人在学习大模型技术时转进了牛角尖,导致很多东西学不明白,事倍功半。 今天就从个人的学习…

PDF标准详解(五)——图形状态

在第三节中,我们说到Q/q 这一对操作符是用来保存和还原图形状态的,那个时候只有一个简单的概念,变换矩阵是图形状态的一员,那么什么是图形状态,以及有哪些图形状态呢?本节将要描述这部分的内容 图形状态 …

PHP邮箱系统:从入门到实战搭建教程指南!

PHP邮箱系统配置教程?如何选用合适的PHP邮箱系统库? 为了满足个性化和定制化的需求,许多开发者选择使用PHP来搭建自己的邮箱系统。AokSend将带你从入门到实战,详细介绍如何搭建一个功能完善的PHP邮箱系统。 PHP邮箱系统&#xf…

dcmtk在MWLSCP会忽略对于字符集的匹配

版本信息 dcmtk v3.6.4 2018-11-29 发现的原因 在我将dcmtk的wlmscpfs当作MWLSCP使用的时候,我在SCU端为了防止过来的数据中存在不识别的字符集,对于收到的数据数据进行了字符集的过滤,但是发现过滤没有生效。 确保数据源 首先需要确认数…

从openAI最新模型GPT-o1再谈思维链(Cot)技术,大模型该怎么提升其逻辑推理能力?

“ 推理能力是大模型迈向AGI的必经之路 ” 最近openAI发布了号称史上最强模型——o1,其具有强大的逻辑推理能力,号称能达到人类的博士生水平。 而从o1模型的评测来看,o1模型在数学竞赛,编码,科学问答等方面表现良好&…

这几个电脑文件加密的方法你都知道吗?

1. 使用操作系统自带的加密功能 Windows BitLocker:Windows的BitLocker是一个内置的磁盘加密工具。你可以通过右键点击磁盘驱动器,选择“启用BitLocker”,然后按照提示设置密码或使用USB密钥加密整个硬盘或分区。macOS FileVault&#xff1a…

AQS详解

线程创建方式 继承Thread类实现Runnable接口实现Callable接口 LockSupport的使用 LockSupport.park()/LockSupport.unpark() LockSupport是一个工具类,提供了基本的线程阻塞和唤醒功能,它是创建锁和其他同步组件的基础工具,内部是使用sun…

医学数据分析实训 项目七 继承学习--空气质量指标--天气质量分析和预测

项目七:集成学习 实践目的 理解集成学习算法原理;熟悉并掌握常用集成学习算法的使用方法;熟悉模型性能评估的方法;掌握模型优化的方法。 实践平台 操作系统:Windows7及以上Python版本:3.8.x及以上集成开…

【大模型技术教程】FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统

FastGPT是一个功能强大的平台,专注于知识库训练和自动化工作流程的编排。它提供了一个简单易用的可视化界面,支持自动数据预处理和基于Flow模块的工作流编排。FastGPT支持创建RAG系统,提供自动化工作流程等功能,使得构建和使用RAG…

C++速通LeetCode中等第3题-字母异位词分组

双指针法:两个指针分别指向左右边界,记录最大面积,由于面积由短板决定,两个指针中较短的短指针向内移动一格,再次记录最大面积, 直到两指针相遇,得出答案。 class Solution { public:int maxAr…

C++入门 之 类和对象(中)

目录 一、类的默认成员函数 ​编辑二、构造函数 三、析构函数 四、拷贝构造函数 五.运算符重载 六、赋值运算重载 七、日期类的实现 1、Date.h 2、Date.cpp 八、取地址运算符重载 1、const成员函数 2、取地址运算符重载 一、类的默认成员函数 默认成员函数就是用户不…

java之顺序表的创建

顺序表的定义: 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。 我们现在要实现的顺序表功能有:增(add)、删(remove)、查(get) …

什么是PDM系统?PDM系统核心功能是什么?如何进行产品数据管理

PDM系统介绍 PDM全称为产品数据管理,是一种企业级的产品研发协作平台。它集成了信息技术,通过全面管理和协同研发业务流程,提升企业的整体研发管理水平,缩短产品研发周期,降低成本,提高产品质量。PDM系统不…

「iOS」push与present

iOS学习 前言push与poppresent与dismiss使用dismiss弹出多级PresentedViewController 与 PresentingViewController区别 总结 前言 在此前就学习过视图的push与present。与之对应的退出方法为pop与dismiss。这里进行一次总结。 push与pop pushViewController 是通过导航控制器…

开放式耳机好用吗?哪个开放式耳机好用?

现在市面上的开放式耳机真的越来越火了,所以很多小伙伴也会来问我,有哪些品牌值得入手,开放式耳机到底好不好用的这个问题,作为专业的开放式耳机测评博主对于这个问题当然是信手拈来啦,这篇文章就来告诉大家如何才能选…

百度Android IM SDK组件能力建设及应用

作者 | 星途 导读 移动互联网时代,随着社交媒体、移动支付、线上购物等行业的快速发展,对即时通讯功能的需求不断增加。对于各APP而言,接入IM SDK(即时通讯软件开发工具包)能够大大降低开发成本、提高开发效率&#…

js 如何代码识别Selenium+Webdriver

Python 的 Selenium 可以模拟用户操作打开浏览器,前端如何去识别是人机还是真人: window.navigator.webdriver Selenium 人机下是这样的: 正常使用: