AlphaTensor 发现了更好的矩阵数学算法,从远处激发了另一项改进。
矩阵乘法是许多机器学习突破的核心,而且它变得更快——两倍。上周,DeepMind宣布它发现了一种更有效的矩阵乘法运算方法,打破了 50 年的记录。本周,约翰内斯·开普勒大学林茨分校的两名奥地利研究人员声称,他们已经超越了这一新纪录。
矩阵乘法涉及将两个矩形数字数组相乘,通常是语音识别、图像识别、智能手机图像处理、压缩和生成计算机图形的核心。图形处理单元 (GPU) 因其大规模并行特性而特别擅长执行矩阵乘法。他们可以将一个大的矩阵数学问题分割成许多部分,并使用一种特殊的算法同时攻击其中的一部分。
1969 年,一位名叫 Volker Strassen 的德国数学家发现了以前最好的 4×4 矩阵相乘算法,它减少了执行矩阵计算所需的步骤数。例如,使用传统的教室方法将两个 4×4 矩阵相乘需要 64 次乘法,而 Strassen 的算法可以在 49 次乘法中执行相同的壮举。
DeepMind 使用名为 AlphaTensor 的神经网络发现了一种将乘法次数减少到 47 次的方法,其研究人员上周在 Nature 上发表了一篇关于该成就的论文。
从 49 步到 47 步听起来并不多,但考虑到 GPU 每天要进行多少万亿次矩阵计算,即使是增量改进也可以转化为巨大的效率提升,让 AI 应用程序可以在现有系统上更快地运行硬件。
当数学只是一场游戏时,人工智能赢了
AlphaTensor 是 AlphaGo( 2017 年击败世界冠军围棋选手)和AlphaZero的后代,后者负责国际象棋和将棋。DeepMind 将 AlphaTensor 称为“第一个用于为矩阵乘法等基本任务发现新颖、高效且可证明正确的算法的 AI 系统”。
为了发现更有效的矩阵数学算法,DeepMind 将问题设置为单人游戏。该公司在上周的博客文章中更详细地描述了该过程:
在这个游戏中,棋盘是一个 3 维张量(数字数组),用于捕捉当前算法离正确的程度。通过一组与算法指令相对应的允许移动,玩家尝试修改张量并将其条目归零。当玩家设法这样做时,这将为任何一对矩阵生成可证明正确的矩阵乘法算法,并且其效率由将张量归零所采取的步骤数来衡量。
然后,DeepMind 使用强化学习训练 AlphaTensor 来玩这个虚构的数学游戏——类似于 AlphaGo 学习围棋的方式——并且随着时间的推移逐渐改进。根据 DeepMind 的说法,最终,它重新发现了施特拉森和其他人类数学家的工作,然后超越了他们。
在一个更复杂的示例中,AlphaTensor 发现了一种以 96 步执行 5×5 矩阵乘法的新方法(旧方法为 98 步)。本周,奥地利林茨 Johannes Kepler 大学的Manuel Kauers 和 Jakob Moosbauer发表了一篇论文,声称他们已将该计数减少了 1,降至 95 次乘法。这个显然破纪录的新算法来得如此之快绝非巧合,因为它建立在 DeepMind 的工作之上。在他们的论文中,Kauers 和 Moosbauer 写道:“这个解决方案是从 [DeepMind 的研究人员] 的方案中获得的,通过应用一系列转换导致可以消除一个乘法的方案。”
技术进步靠自己,随着人工智能现在在寻找新的算法,其他长期的数学记录可能很快就会下降。与计算机辅助设计 ( CAD ) 允许开发更复杂、更快的计算机的方式类似,人工智能可以帮助人类工程师加速其自身的推出。