【小哈划重点:矩阵乘法,即两个矩阵之中的数字相乘,在某种程度上几乎是所有软件的基本计算任务,尤其是在图形、人工智能和科学模拟中。即使这些算法的效率仅提高一点,也可以带来显著的性能提升或节约能源。】
lphaTensor被设计用于执行矩阵乘法,同样的方法也可以用于解决其他数学挑战。图片来源:DeepMind
美国谷歌旗下人工智能公司DeepMind开发了一种新的矩阵算法,这是50多年来的首次进步。一系列软件都依赖于大规模执行乘法任务,而这一发现有望将某些计算速度提高20%。相关论文10月5日发表于《自然》。
矩阵乘法,即两个矩阵之中的数字相乘,在某种程度上几乎是所有软件的基本计算任务,尤其是在图形、人工智能和科学模拟中。即使这些算法的效率仅提高一点,也可以带来显著的性能提升或节约能源。
过去几个世纪,数学家普遍认为,矩阵中相乘元素的个数与矩阵乘法的运算效率成正比。这意味着,当矩阵扩大,乘法的计算量也会扩大。
直到1969年,德国数学家Volker Strassen证明,一个由两个数字组成的两行矩阵与另一个同样大小的矩阵相乘,并不需要8次乘法计算,而可以通过技巧简化为7次。该过程需要一些额外的加法,但这是可以接受的,因为计算机计算加法比乘法快得多。
这一方法名为Strassen算法,能使运算效率进一步提升。对大多数矩阵而言,该方法是50多年来最有效的。现在,DeepMind公司利用人工智能AlphaTensor发现了一种新型矩阵乘法,可以在当前的硬件系统上完美运行,将计算速度提高20%。
例如,一个4×5矩阵乘以一个5×5矩阵,传统算法需要进行100次乘法运算。而用此前的最佳算法,这个数字可以减少到80次。现在,AlphaTensor发现的算法只需76次乘法就能完成这一计算。在超过70种大小各异的矩阵上,AlphaTensor都击败了现有的最佳算法。它还发现了针对每种矩阵大小的数千种函数算法,其中仅4×4矩阵就有1.4万种,但只有一小部分比现有技术更好。
这项研究建立在DeepMind公司的游戏模型AlphaZero基础之上,历时两年。
DeepMind公司的Hussein Fawzi表示,这些结果在数学上是合理的,但对人类来说却远远不够直观。“目前,我们还不清楚为什么这是矩阵乘法的最佳方式。关于深度学习是如何做到这些的,还有一些理论工作要做。”
除了上述例子,AlphaTensor 还在有限域内改进了Strassen的二阶算法,这是Strassen算法自 50 多年前被提出以来迎来的首次改进。
英国萨塞克斯大学的James Knight表示,在超级计算机和强大硬件上运行的一系列软件,如人工智能研究和天气模拟,实际上都在使用大规模矩阵乘法。“如果这种方法真的能实施,那可能会带来普遍性的加速。”
伦敦大学的Oded Lachish表示,新算法可以提高各种软件的效率,因为矩阵乘法是一个非常常见的问题。
“我相信,我们将看到人工智能为类似的问题带来解决方案。这类技术有着重要的应用前景,因为算法中的更少操作不仅意味着更快的结果,还意味着更少的能量消耗。”Lachish说。
相关论文信息:
https://doi.org/10.1038/s41586-022-05172-4
《中国科学报》 (2022-10-12 第2版 国际)
(原文标题:《人工智能发明更快算法 有望提升运算性能,节约能源》)