AlphaDev突破十年算法瓶颈登上Nature,GPT-4紧随其后两步破解

文章正文
发布时间:2024-07-14 21:42

近日,谷歌旗下DeepMind团队的人工智能项目AlphaDev研发出一种全新的数据排序方法,凭借一己之力提升排序算法的速度约70%,同时,对于哈希(Hash)算法,也找到了速度提高30%的办法。十多年来,C++排序库首次更改。这项最新的研究也登上了Nature。

坐不住的热心网友,尝试通过引导ChatGPT证明实力。仅仅一天时间,GPT-4在对话引导下,就能够通过两步获得和AlphaDev几乎相同的思路发现。让网友不禁感叹:大家还是低估了GPT-4。

如果AI优化算法即将成为加速全球计算的必经之路,那么,AlphaDev此次都从哪里下手?这项研究成果有多重磅?GPT-4又是如何破解的?比人类还聪明的超级智能还有多远?人类如何与超级智能共存?以下,Enjoy:

01 不下围棋的AlphaDev:如何革新计算基础、改变C++库?

数字社会下,人工智能三大核心要素悄无声息地渗透到日常生活当中。算力、算法与数据,支撑着计算机的可持续发展,提高了数字时代下云端生活和工作的整体质量。

算力代表着数据处理能力的强弱,算法则影响着数据处理的效能。当算力与算法逐渐进入瓶颈期,“摩尔定律”便浮出水面,得到越来越多的讨论与关注。

随着GPT-4、Bard等大模型的参数指数级增长,对算力等资源的需求不断增长。而过去50年里,人类不断依靠芯片的改进以跟上步伐。

但随着微芯片接近物理极限,改进代码让计算更强大、更持续变得至关重要。尤其是,对每天运行数万亿次代码的算法愈重要。

代码昼夜不休运行数万亿次,掌握算法基础成了开发者的家常便饭。但是,与以往的人类更新代码库不同,在研究者的引导下,AI开始反过来优化算法。

如果说AlphaGo是AI突破围棋领域的“最强大脑”,那AlphaDev便是Alpha家族在算法领域异军突起的新秀。

6月8日,DeepMind在Nature上,发表了最新的研究成果“Faster sorting algorithms discovered using deep reinforcement learning”:AlphaDev作为一个全新AI系统,成功将一种每天运行数亿万次的C++排序算法的速度提高70%,同时,对于哈希算法,也找到了速度提高30%的办法,超越了科学家们几十年来的研究;甚至在部分算法上,能够比人类快3倍左右。

DeepMind CEO Hassabis也通过两句话让AlphaDev登上热搜榜,掀起计算机领域的讨论热潮:“AlphaDev发现了一种全新且更快的排序算法,我们已经将其开源至C++库中供开发人员使用,这仅仅是AI被用于提升代码效率的开端。”

AlphaDev所发现的最新成果,被纳入LLVM标准C++库Abseil并且开源,供开发者运用。十几年来,C++排序库首次更改,AI在其中发挥了里程碑的作用,数十亿人将会受益。

更快的排序算法切实改变了计算基础,无论是排序还是哈希算法。这也预示着,未来,在无数领域的数据处理方面,AI为之提供了新的优化空间。从搜索引擎到社交软件以至于手机、计算机等各类基础数据工程中,海量数据的处理速度都将被提升,计算机的生态系统得到了强化。

这项成果的重要性,正如Google DeepMind研究科学家Daniel J. Mankowitz所说:“我们估计,AlphaDev发现的排序和哈希算法,在全球范围内每天被调用数万亿次。”

更快的算法:AlphaDev,通过游戏找到先进算法

排序算法,以一组数字为例,可以简单理解为:输入五个随机数字,经由排序后,输出从大到小排列的五个数字;即按照特定顺序对于任务进行排列,这为计算机科学至今的发展进行了奠基。从在线搜索结果,社交帖子,到计算机和手机数据处理方式,排序算法每天都要执行数万亿次。

AlphaDev的创新意义在于,它并不是通过改进现有算法,而是完全从头开始发现了更快的算法。

AlphaDev从计算机汇编指令入手,在这个原本被认为较低的级别上进行改进,找到了更高效的方法。

汇编指令用于创建二进制代码。虽然开发者写代码时用的是C++等高级语言,但为了让计算机理解,这些高级语言必须翻译成「低级」的汇编指令。

在这个更低的级别上,计算机的存储和操作都更灵活,因此如果再多做一些潜在的改进,就会对速度和能源产生巨大的影响。

基于AlphaZero(在围棋、国际象棋和象棋等游戏中打败世界冠军的强化学习模型)的AlphaDev,其工作方式同样结合了过往常用的计算机推理和直觉,可以选择在运算过程中,添加哪些指令。

DeepMind将排序问题转化成一个单人汇编游戏(Assembly Game),让AlphaDev观察它所生成的算法以及CPU中包含的信息,随后,选择一条指令为算法增添行动。“指令组合”的数量与围棋的可能走法类似,非常“烧脑”。并且,每一步的选择都存在着让整个算法失效的风险。

来源:Nature

想要顺利通关,AlphaDev就需要发现一个正确且比以往更快的程序。在这一过程当中,Deepmind会根据AlphaDev正确排序数字的能力和整体完成排序的速度和效率给予奖励。AlphaDev能够采取的行动共有四种:比较不同值、移动数值到另一个位置、或者跳转到程序的不同部分。在执行完每一步之后,再对一组列表进行排序,并根据正确排序的列表中的数值数量获得奖励,如此反复,直至排完整个列表或者达到了程序的长度限制。

最终,AlphaDev 发现的新排序算法,对于 5 个数据的列表,它比最好的算法快 70%,对于超过 25 万个项目的列表,速度提高了约1.7%。

研究科学家 Mankowitz 表示,“我们最初以为AlphaDev犯了错误,或者存在bug,但是,当我们分析这个程序时,我们意识到,实际上, AlphaDev 发现了更快的东西”。

更新的方法:AlphaDev swap move& AlphaDev copy move

AlphaDev的排序算法包含新的指令序列,每次应用时都会节省一条指令,这也被称之为“AlphaDev swap move”和“AlphaDev copy move”。

这与曾经 AlphaGo的神之一手一样让人感到新颖。AlphaDev看似跳过了其中一步,实际上以更快捷的方式连接了项目。

AlphaDev 交换移动,发现只需要 min (A,B)。来源:Nature

AlphaDev 使用其复制动作时,发现只需要 max(B,min(A,C))。来源:Nature

更快的哈希函数:速度提升30%

成功找到更快的排序算法后,DeepMind开始尝试AlphaDev能否推广并适用于更为基础的计算机科学算法,即散列/哈希(Hash)函数。

哈希概念,指构造一种储存结构,通过某种函数,可以使元素的储存位置与他之间的关键码能够建立一一的映射关系,查找时,就能通过该函数快速找到对应元素。

对应的,哈希函数又称散列算法,是一种从任何数据中创建小的数字“指纹”的方法,能够把消息或数据压缩成摘要,使其数据量变小,并且将数据的格式固定下来。

这一函数将数据打乱混合,重新创建名为“散列值”(hash value)的“指纹”。散列值往往用一个短的随机字母和数字组成的字符串来代表。

如此以来,计算机就可以使用散列值快速检索相关数据。就像图书管理员使用分类系统来找到特定的书籍一样,散列算法帮助用户知道他们正在寻找的内容以及确切的位置。

AlphaDev不负众望,将其应用于 9-16 字节范围内的哈希函数时,速度可提高 30%。新的哈希算法,也会被发布到开源的 Abseil 库中,供全球开发者使用。

网友:AI优化世界代码,AI创造AI的时代要来了?

基于上述AlphaDev的发现,有的网友很兴奋——AI优化世界代码,又达新里程碑。我们现在正在踏入未知领域:AI创造AI的时代要来了?

Google DeepMind认为,AlphaDev是朝着开发AGI工具迈出的一步,这些工具有助于优化整个计算生态系统,还能解决其他有益于社会的问题。

此番操作也成功在外网引发了欢呼和肯定。

有网友对于AlphaDev的创新性大加赞同:“酷#AlphaDev提出了一种新颖的反垄断方法:通过交换和复制,AlphaDev跳过了一个步骤,以一种看似错误但实际上是捷径的方式连接项目。”

也有网友非常期待AlphaDev下一波会秀什么操作:“这太不可思议了!基本算法有很大的优化空间。等不及看看AlphaDev还发现了什么!游戏已经开始了。”

有网友则对于AI发展整体呈现乐天派态度:“享受主要的AI程序在多方位为我们带来的内容吧!”

02 被玩坏的GPT-4:如何两步提示下破解AlphaDev的排序更优算法?

Google Deepmind新AI的研究成果刚登上Nature,时隔一天,就有“热心网友”成功让GPT-4也重现了一下AlphaDev的“神来之笔”。

这位热心网友是来自威斯康星大学麦迪逊分校的副教授Dimitris Papailiopoulos,他只用两步就让GPT-4也发现了相同的操作。随后,他还调侃道,“完全不需要强化学习,我能把这个发表在Nature上吗?”

在引导GPT-4的过程中,他的沟通更加日常化。他先给GPT-4下了第一步观察指令:

“以下是一段排序算法,我觉得它还有提升空间。你能否在下面几行用***注明哪些指令可以被删除或者改进?如果维持原貌,什么都不修改,就一步一步解释原因,并且返回验证它是正确的。”

GPT完成这项指令,只需要标注对应的解释即可,并不需要直接修改。第二步命令随之而来:

“在此基础上,如果你有较高的把握度,按照上面的提示去做。在Temperature=0的情况下,尽量减少混淆情况出现。”

GPT-4随之工作,并且总结道:指令“mov S P”可以被去掉,与其移动到P,我们可以直接使用S以节省步骤。

这与Deepmind的AlphaDev进行算法优化的思路相似度极高:

来源:Nature

相比之下,GPT-4用了两步完成;AlphaDev则在设定的游戏情境下发现成果,完成下图a和图b的选择和排列流程,以获得奖励。就过程而言,搜索空间极大,试错成本也不低。

来源:Nature

部分网友对该教授的操作存在异议,比如:在ChatGPT中,并不能使用“temperature”,该教授也接受了自己的不严谨之处。

同时,对于GPT-4的表现,围观群众纷纷锐评,褒贬不一,连马斯克都忍不住留言:Interesting!

有网友对GPT-4大加赞赏:“即便是最有经验的专家,也会低估GPT-4”。

也有网友持观望态度:“或许这很有趣,GPT-4的各类示例发明了许多聪明的方法,并将思维方式和编码的一般知识运用到一种它以前从未见过的编码语言中。”

也有网友表示:“我会说(如果我理解正确的话),新颖性在于RL以前所未有的方式探索解决方案空间的能力,新算法如何被发现——这不是你能用LLM做的……”

有网友直接否定了GPT-3的解决办法:“从技术上讲,ChatGPT(GPT-3)的解决方案不正确:在调动后的行中,P应替换为S以保持正确性。同样也出现在第一次通过中:如果最后一次比较的结果是S

有网友则对AlphaDev进行了一波拉踩:“对任何写过汇编的人来说,看到DeepMind(s)的结果发布在Nature,一个以前只为真正鼓舞人心做研究、为自然世界提供亮点的杂志上,都会大失所望。”

此外,还有网友产生了人类与AI的思考:“看起来这么简单,为什么人类到现在都没有发现?”

除了网友通过引导GPT-4,两步解决问题发出的“挑衅”,讨论声也席卷了互联网。网友们大多倾向于同一观点:AlphaDev拿下了本周人工智能领域最大的非新闻之一热点。

Hacker News的用户曾表示,AlphaDev所实现的70%提速,主要原因在于该库在过去10年中并没有被积极开发。此外,DeepMind的改进之处之所以有效,本质上是因为该库没有有效实现无分支排序网络。

GitHub上的网友orlp也指出,虽然该算法确实自动地生成了较好的代码,但它对于该领域的提升和改进,远不至于达到革命性程度。

Anirudh VK发文指出,AlphaDev本身的优势在于代码汇编,找到缺失的优化点,并且平衡哈希算法的正确性和分布性。但实质上,该算法没有找到一种全新的排序方法,而是对代码进行了微观优化。

他还认为,虽然DeepMind确实通过部署AlphaDev发现了更优算法,但该行为的影响力很大程度上被扩大化了。AlphaDev目前能够在特定CPU上运行的特定库中进行优化,具有一定的业务能力,但这并不能被称之为惊天动地的发现。

不过,可预知的是,超级优化器已经存在,它们可以通过“蛮力”的方法找到最优化的程序,一切都值得期待。

03 比人类还聪明的超级智能

6月9日,北京智源人工智能研究院(以下简称智源)院长黄铁军在2023北京智源大会上表示,要实现AGI,有三条技术路线:

第一是“大数据+自监督学习+大算力”形成的信息类模型,OpenAI做GPT(生成式预训练Transformer模型)就遵循这条技术路线。

第二是具身智能,是基于虚拟世界或真实世界、通过强化学习训练出来的具身模型,以谷歌DeepMind的DQN(深度Q网络,Deep Q-network)为核心取得的一系列进展即基于这条技术路线。

第三是脑智能,直接“抄自然进化的作业”,复制出数字版本的智能体。智源期望不同于前两个技术路线,从“第一性原理”出发。从原子到有机分子、到神经系统、到身体,构建一个完整的智能系统AGI。

AGI之后,人工智能的控制与算法算力问题,一直以来都饱受行业关注。如何看待比人类更聪明的超级智能?在智源人工智能大会上,AI教父Geoffrey Hinton做了《通往智能的两条路径》的演讲。

在Geoffrey Hinton看来,人工神经网络很快就会比真实的神经网络更智能。

他提出了非不朽计算(Mortal Computing)的概念,即一个人的智慧依赖于其身躯,不可随意复制到另一身躯上,软件也是如此更依赖它的硬件。如果硬件损坏,那学到的知识也会一起死亡。这便需要通过“知识蒸馏”进行转移,比如把旧硬件上的知识用「蒸馏」的方式转移给新硬件,就像老师教授学生一样。

同时,Hinton还提出“权重共享”,即大语言模型与其副本之间存在着权重共享的关系。具体可以类比为:ChatGPT可以基于模型,同时和数以万计的人类对话,跟每一个人的对话过程,都相当于一次“知识蒸馏”。

目前模型仅仅从文档——也就是人类加工过的知识中学习,随着技术的发展,它们将能够从视觉信息中学习,接着可能学会操纵机器人。那么它们很容易比人类更聪明,聪明到擅长骗人。 

75岁的Hinton希望研究者好好研究“如何拥有超级智能”。因为,在他看来,不那么聪明的物种,想要控制比它自己更加聪明的事物,是一场前所未有的挑战。

他用一个很有趣的例子回答了我们正面临的AI问题:“假设青蛙创造了人类。你会认为现在是谁拥有掌控权?青蛙还是人?我的讲话就到这里。”

排序算法提速登上Nature,AlphaDev和GPT-4都给出了证明AI能力的答案。无论是先手还是后手,目前而言,操控它们的都还是人类。

同曾经风靡一时的提示词工程师一样,掌握提问的技巧,正确、智慧地提问是引导AI发现甚至创造的关键。本质上,超级智能目前仍然依赖人的培养与灌输。GPT的上限、AI模型的上限,到底是凭借暴力运算、野蛮生长,还是制定标准、浅尝辄止?

未来的路,都还在脚下,我们要做的,就是拥抱AI。