刚刚,DeepMind通用科学智能体AlphaEvolve突破数学极限,陶哲轩合作参与

机器之心报道

编辑:+0、刘欣


今天,DeepMind 正式发布了 AlphaEvolve —— 一个由 LLMs 驱动的革命性进化编码智能体。


它不仅仅是一个代码生成工具,更是一个能够演化整个代码库,用于通用算法发现和优化的强大系统。 



  • 技术报告:https://storage.googleapis.com/deepmind-media/DeepMind.com/Blog/alphaevolve-a-gemini-powered-coding-agent-for-designing-advanced-algorithms/AlphaEvolve.pdf

  • 官方博客:https://deepmind.google/discover/blog/alphaevolve-a-gemini-powered-coding-agent-for-designing-advanced-algorithms/


LLM 具有惊人的多功能性。它们能够总结文件、生成代码,甚至提出新想法。如今,DeepMind 将这些能力扩展到了数学和现代计算中的基础性和高度复杂的问题。


Google DeepMind 的研究员 Matej Balog 在接受采访时表示:「它可以发现极其复杂的算法 —— 跨越数百行代码,具有复杂逻辑结构,远超出简单函数的范畴。」


陶哲轩也在 mathstodon 上表示,他一直在和 Google DeepMind 合作,探索 AlphaEvolve 的潜在数学应用。



大多数 AI 模型都会产生幻觉。由于他们的概率架构,他们有时会自信地编造东西。事实上,像 OpenAI 的 o3 这样的较新 AI 模型比它们的前辈更容易产生幻觉


AlphaEvolve 引入了一种减少幻觉的巧妙机制:自动评估系统。该系统使用模型来生成、批评和得出问题的可能答案池,并自动评估和评分答案的准确性。


AlphaEvolve 还将 Gemini 模型的创造性问题解决能力与自动验证答案的评估器相结合,并利用进化框架来持续优化最具潜力的解决方案。


AlphaEvolve 提升了谷歌数据中心、芯片设计和 AI 训练流程的效率 —— 包括训练支撑 AlphaEvolve 本身的大型语言模型。它还帮助设计了更快的矩阵乘法算法,并为开放性数学问题找到了新的解决方案,在许多领域的应用前景有着巨大潜力。


用大型语言模型设计更好的算法


AlphaEvolve 是一个可以超越单一函数发现,演化整个代码库并开发更复杂算法的智能体。 


与许多只演化单一函数的系统不同,AlphaEvolve 的一大亮点在于能够对整个代码库进行迭代优化和演化。


这建立在 DeepMind 2023 年的一项工作 ——FunSearch 基础上, DeepMind首次证明大型语言模型能够生成计算机代码中的函数,以帮助发现开放性科学问题上的新知识并证明其正确性。


表 1 展示了 AlphaEvolve 与先前的 agent 的能力和典型行为上的对比。



核心机制:LLM 的创造力与自动化评估的结合 


那么,AlphaEvolve 是如何实现这种强大的代码演化能力的呢?其核心在于将大型语言模型的创造力自动化评估的客观反馈巧妙地融入到一个进化框架中。 


这个过程可以概括为一个持续的「生成 – 评估 – 进化」循环: 



图示展示了整个系统的工作流程:提示采样器首先构建输入提示,驱动语言模型生成新程序;这些程序经过评估器评分后被存入程序数据库。数据库通过进化算法不断优化程序选择,推动系统持续进化。


生成


AlphaEvolve 结合了多款最先进的大型语言模型:Gemini Flash(DeepMind 最快速且高效的模型)拓展了创意探索的广度,而 Gemini Pro(DeepMind 最强大的模型)则凭借深刻洞见提供了解决方案所需的关键深度。


采用该集成策略的目的是在保持生成解法的质量的同时,提高计算吞吐率。这些模型协同生成实现算法解决方案的计算机程序。


1、提示语采样(Prompt Sampling)


由于 AlphaEvolve 依托于当前最先进的 LLM,它支持多种形式的自定义操作,并能在其主进化提示语(primary evolution prompt)中提供较长的上下文信息。


该提示语通常包含从程序数据库中采样而来的多个既有解法,以及关于如何修改特定解法的系统指令。 用户还可以通过显式上下文、渲染的评估结果等方式进一步对提示语进行定制。 


2、创造性生成(Creative Generation)


为推动进化过程,AlphaEvolve 借助当前最先进的 LLM 的能力。其核心作用在于理解先前产生的解法信息,并提出多样化的新改进途径。


尽管 AlphaEvolve 本身并不依赖于特定模型(具备模型无关性),但在消融实验中观察到,AlphaEvolve 的表现会随着底层 LLM 性能的提升而持续改善。


输出格式(Output Format):当 AlphaEvolve 要求 LLM 对已有代码进行修改,尤其是在较大的代码库中,它会要求以特定格式提供一组差异化(diff)片段。格式如下:



其中,位于 <<<<<<<SEARCH 和 ======= 之间的代码是当前程序版本中需要精确匹配的原始片段;而 ======= 与>>>>>>> REPLACE 之间则是新的代码片段,用于替换原片段。


通过这种方式,可以将修改精准应用于代码的指定部分。如果被进化的代码很短,或当从头重写比局部修改更合理时,AlphaEvolve 也可配置为要求 LLM 直接输出完整代码块,而不使用差异化的格式。


评估


在这个循环中,自动化评估指标扮演了至关重要的角色。AlphaEvolve 使用这些指标来验证、运行和评分所提出的程序。这些指标为每个解决方案的准确性和质量提供了客观、可量化的评估。


1、任务规范 


评估:由于 AlphaEvolve 处理的是可由机器评级的(machine-gradeable)问题,用户必须提供一种自动评估生成方案的机制。通常采用函数 h 的形式,将方案映射到一组标量评估指标(需最大化),通常实现为一个 Python 函数(evaluate)。 


API:为支持演化代码库中的多个组件,AlphaEvolve 开放了一个输入 API,通过在代码中添加特殊标记(如注释中的 # EVOLVE-BLOCK-START 和 # EVOLVE-BLOCK-END)来指定哪些代码块可由系统进行演化。这些演化块中用户提供的代码作为初始方案,其余代码则构成连接这些演化部分的骨架,使其可以被 evaluate 函数调用。


在选择抽象层面方面具有灵活性:AlphaEvolve 可以用非常不同的方式应用于同一个问题,尤其当演化出的程序不是最终输出,而是发现方案的手段时。例如,可以演化原始字符串表示的方案、演化一个定义明确的函数来从头构造方案、演化一个定制的搜索算法在固定计算预算内寻找方案,甚至可以共同演化中间方案和搜索算法。


2、评估过程与优化机制


为了追踪 AlphaEvolve 的进展并选择在未来代际中传播的想法,LLM 提出的每个新方案都会被自动评估。基本过程是执行用户提供的评估函数 h。实际上,AlphaEvolve 支持多种机制,以使评估更灵活和高效:


  • 评估级联(Evaluation Cascade): 利用难度递增测试集快速筛选方案。

  • LLM 生成反馈(LLM-generated Feedback): 利用 LLM 对难以量化属性进行评分。

  • 并行评估(Parallelized Evaluation): 分布式执行评估任务以提高效率。


支持多评估指标优化(Multiple scores),同时优化多个目标,甚至能改善单一目标结果。


进化


在其进化过程中,AlphaEvolve 不断生成带有评估结果(得分和程序输出)的方案。这些方案被存储在一个进化数据库(evolutionary database)中。该数据库的首要目标是最优地在未来代际中重新利用先前探索过的想法。


设计此类数据库的一个关键挑战在于平衡探索(exploration)与利用(exploitation):即在持续改进当前最优方案的同时,保持方案的多样性以鼓励探索整个搜索空间。


在 AlphaEvolve 中,该进化数据库实现了一种算法,其灵感来源于 MAP-elites 算法和基于岛屿的种群模型(island-based population models)的组合。


这使得 AlphaEvolve 在数学和计算机科学等可以清晰、系统地衡量进步的广泛领域中特别有帮助。


优化 DeepMind 的计算生态系统


在过去的一年中,DeepMind 将由 AlphaEvolve 发现的算法部署到了谷歌的整个计算生态系统中,包括 DeepMind 的数据中心、硬件和软件。


这些改进的影响在 DeepMind 的人工智能和计算基础设施中被成倍放大,为 DeepMind 的所有用户构建了一个更强大、更可持续的数字生态系统。



图示说明了 AlphaEvolve 如何帮助谷歌提供一个更高效的数字生态系统,从数据中心调度和硬件设计到人工智能模型训练。


改进数据中心调度


AlphaEvolve 发现了一个简单但非常有效的启发式方法,帮助 Borg 更高效地协调谷歌庞大的数据中心。这个解决方案已经投入生产一年多,平均持续恢复了谷歌全球计算资源的 0.7%。这种持续的效率提升意味着在任何给定时刻,都可以在相同的计算资源上完成更多任务。


AlphaEvolve 的解决方案不仅实现了强大的性能,还提供了人类可读代码的重要操作优势:可解释性、可调试性、可预测性和易于部署。


协助硬件设计


AlphaEvolve 提出了一种 Verilog 重写方案,移除了矩阵乘法关键、高度优化的算术电路中的多余位。该提议通过强大的验证,确认修改后的电路保持功能正确性,并被整合到了即将推出的张量处理单元(TPU)中。


通过在芯片设计者的标准语言(Verilog)中提出修改,AlphaEvolve 促进了 AI 和硬件工程师之间的协作,以加速未来专用芯片的设计。


提升人工智能训练与推理效率


AlphaEvolve 正在显著加速 AI 的性能表现与研究进程。


通过找到更聪明的方法分解大型矩阵乘法运算,它在 Gemini 架构中将这一关键内核的运行速度提升了 23%,进而使 Gemini 的训练时间缩短了 1%


除了性能提升外,AlphaEvolve 显著减少了内核优化所需的工程时间,从专家花费数周减少到自动化实验仅需数天。


AlphaEvolve 还能够优化低级 GPU 指令。在基于 Transformer 的 AI 模型中,为 FlashAttention 内核实现实现了高达 32.5% 的速度提升。这种优化帮助专家精准定位性能瓶颈,并轻松整合改进措施。


推进数学和算法发现的前沿


更快的矩阵乘法算法


AlphaEvolve 还可以为复杂的数学问题提出新方法,例如矩阵乘法 —— 计算机科学中的一个基础性问题。通过基于梯度的优化程序,AlphaEvolve 设计并发现了一种使用 48 次标量乘法 乘以 4×4 复值矩阵的算法。 



这一发现改进了 Strassen 1969 算法,这是 56 年来在这一设置中首次已知的改进,也表明了对 DeepMind 先前工作 AlphaTensor 的重大超越。 


解决开放性问题


为了探索 AlphaEvolve 的广度,DeepMind 将该系统应用于数学分析、几何学、组合学和数论中的 50 多个开放性问题。该系统的灵活性使其能够在几小时内设置大多数实验。


在大约 75% 的情况下,它重新发现了最先进的解决方案;在 20% 的情况下,AlphaEvolve 改进了之前已知的最佳解决方案,在相应的开放性问题上取得了进展。


例如,在吸引了数学家们超过 300 年兴趣的亲吻数问题(Kissing number problem)上, AlphaEvolve 发现了 593 个 外球的配置,并在 11 维中建立了新的下限。


更多详细内容请参见原论文。


(文:机器之心)

发表评论

×

下载每时AI手机APP

 

和大家一起交流AI最新资讯!

立即前往