谷歌DeepMind使用大语言模型解决一个未曾解决的数学问题

谷歌DeepMind使用大语言模型破解了纯数学中一个著名的未解问题。2023年12月14日,在一篇发表在《自然》杂志上的论文中,研究人员表示,这是第一次使用大语言模型找到一个长期科学难题的解决方案,产生了以前不存在的可验证的、有价值的新信息。谷歌DeepMind研究副总裁、合著者普什梅特·科利说:“这不在训练数据中——甚至不为人所知。”

大语言模型以不提供新的事实而捏造事实而闻名。谷歌DeepMind的新工具FunSearch可能会改变这一点。如果大语言模型被有意设计成这样,并且你把它们想出的大部分东西都扔掉的话,它们确实可以有所发现。

FunSearch(之所以这么叫,不是因为它很有趣,而是因为它可以搜索数学函数)延续了DeepMind使用人工智能在基础数学和计算机科学方面的一系列发现。首先,Alpha Tensor找到了一种方法来加速许多不同类型代码的核心计算,打破了50年的记录。其次,AlphaDev找到了让每天使用数万亿次的关键算法运行得更快的方法。

然而,这些工具并没有使用大语言模型。两者都建立在DeepMind的游戏AI AlphaZero之上,通过将数学问题视为围棋或国际象棋中的谜题来加以解决。该公司研究AlphaTensor和FunSearch的研究员贝纳迪诺·罗梅拉—帕雷德斯说,问题在于他们被困在自己的路上:“AlphaTensor擅长矩阵乘法,但基本上没有别的擅长的了。”

FunSearch采取了不同的策略。它结合了一个名为Codey的大语言模型,Cody是Google PaLM 2的一个版本,该版本对计算机代码进行了微调,以及其他拒绝不正确或无意义的答案,并重新给出正确答案的系统。

侯赛因·法齐,谷歌DeepMind的研究科学家说:“老实说,我们有一些假设,但我们不知道这到底为什么有效。在项目开始时,我们根本不知道这是否可行。”

研究人员首先用Python(一种流行的编程语言)勾勒出他们想要解决的问题。但是他们在程序中遗漏了指定如何解决它的行。这就是FunSearch的用武之地。它让Codey来填补空白——实际上就是让其提出解决问题的代码。

然后,第二个算法对Codey提出的内容进行检查和评分。即使还不正确,最好的建议还会被保存并返还给Codey,Codey会尝试再次完成程序。科利说,“许多建议是荒谬的,一些是明智的,少数的有真正的灵感”。“你拿着那些真正有灵感的,然后说,‘好吧,拿着这些,重复。’”

经过几百万条建议和几十次重复整个过程,花了几天时间,FunSearch能够提出代码,为上限集问题提供一个正确的、以前未知的解决方案,包括找到某种类型集的最大尺寸。想象一下在绘图纸上画点。上限设置问题就像试图计算出你可以放下多少个点,并且其中三个不会形成一条直线。

超级小众,但是很重要。数学家们甚至在如何解决这个问题上没有达成共识,更不用说解决方案是什么。(它还与矩阵乘法有关,AlphaTensor找到了加速矩阵乘法计算的方法。)加州大学洛杉矶分校的陶哲伦曾获得过数学领域的许多最高奖项,包括菲尔兹奖,他在2007年的一篇博客文章中称上限集问题“也许是我最喜欢的开放性问题”。

陶对FunSearch的功能很感兴趣。他说,“这是一个很有前途的范例,是一种利用大语言模型的有趣方式。”

FunSearch相对于AlphaTensor的一个关键优势是,理论上,它可以寻找各种问题的解决方案。这是因为它生成代码——生成解决方案的配方,而不是解决方案本身。不同的代码会解决不同的问题。FunSearch的结果也更容易理解。法齐说,配方往往比它产生的奇怪的数学解决方案更清晰。

为了测试它的多功能性,研究人员使用FunSearch来解决数学中的另一个难题:装箱问题,这涉及到试图将物品包装到尽可能少的箱子中。这对于计算机科学中包括从数据中心管理到电子商务的一系列应用非常重要。FunSearch想出了一个比人类设计的更快的解决方法。

陶说,数学家们“仍在试图找出将大语言模型纳入我们研究工作流程的最佳方式,以利用大语言模型,并同时避免它们的缺点”。“这无疑是一种可能的前进方式。”

原文链接

(机器翻译,轻度译后编辑,仅供参考。)

编辑:李旭媛