FLOPs vs Real Work: The Importance of Replication in AI Efficiency Assessment
本文通过复现一项关于人工智能效率的研究,证实了原始 FLOPs 足以不足以预测执行时间,同时揭示了所提出的 -FLOPs 估算公式未能考虑到现代系统上的硬件不稳定性,并强调了在依赖硬件的研究中提供透明复现包的至关重要性。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
在人工智能飞速发展的世界里,计算机程序正在学习写作、创作艺术和解决复杂问题,一个安静但至关重要的问题随之浮现:实际完成了多少工作?多年来,研究人员和工程师一直依赖一种标准的方法来衡量这些“数字大脑”所需的努力程度。他们计算模型得出结论前必须执行的基础数学运算数量,即浮点运算次数。这有点像通过计算墙上的砖块数量来猜测建造它需要多长时间。其逻辑似乎是合理的:更多的计算应该意味着更多的时间和更多的能量。这一指标已成为比较不同人工智能模型的通用语言,帮助开发者判断哪些设计是高效的,而哪些是浪费的。然而,这种简单的计数假设每一次计算所花费的时间和能量都是相同的,而不考虑这些计算是如何组织的,或者是由什么样的计算机在执行。
随着人工智能模型规模变得极其庞大,消耗了大量的电力并给电网带来了压力,这一假设受到了质疑。如果标准的计数方法存在缺陷,可能会导致对下一代智能系统环境成本和速度的严重误判。最近的一项研究旨在测试这种传统的计数方法在现代强大的计算机芯片上是否仍然有效。研究人员想要观察数学运算的数量与运行它们实际所需的时间之间的关系,究竟是保持直观简单,还是现实情况要复杂得多。他们专注于一种被称为卷积神经网络的特定人工智能架构,这种架构广泛用于图像识别和视频理解等任务。通过在最先进的图形卡上进行数千次实验,他们试图验证一个提出的数学修正公式是否能准确预测这些模型运行所需的时间,或者新硬件是否引入了旧公式无法察觉的隐藏复杂性。
该团队首先回顾了之前的一项研究,该研究曾指出,原始的数学运算计数并不是执行时间的可靠预测指标。那项早期工作表明,计算发生在哪里与计算有多少同样重要。想象一下工厂的流水线:在宽阔的传送带上移动物品通常比试图将同样数量的物品挤进狭窄、扭曲的隧道中要更快且更容易管理,即使两者的物品总数是相同的。在人工智能领域,以空间维度(如图像的宽度和高度)排列的计算可以比排列在更深、更复杂层中的计算更容易进行并行处理。之前的研究人员开发了一个公式,根据这些维度对原始计数进行调整,希望创造一个能够准确估算模型在特定硬件上运行时间的工具。
为了测试这个公式是否仍然有效,来自代尔夫特理工大学的研究人员对原始实验进行了严格的复制。他们使用了一块现代图形卡——NVIDIA RTX 4090,其性能显著高于原始研究中所使用的设备。他们的目标是观察相同的模式是否依然成立,以及该公式是否仍能提供准确的预测。然而,他们立即遇到了一个重大障碍:原始研究并未提供复制工作所需的完整代码或详细指令。研究人员缺失了关于所使用的软件库和驱动程序的具体细节,也没有得到构建公式时所用的原始数据。这种透明度的缺失迫使团队只能通过“有理有据的猜测”来设置实验,从而为他们的结果引入了一层不确定性。
尽管面临这些挑战,团队仍继续进行测量,运行了数千种不同的配置,以观察每种配置的耗时。他们证实了第一个重大发现:数学运算的原始计数确实是预测模型运行时间的糟糕指标。即使两个配置所需的计算量完全相同,它们的执行时间也会因计算方式的不同而产生巨大差异。研究人员发现,分布在图像宽度和高度上的运算处理速度仍然远快于那些密集堆积在深层中的运算,这证实了数据的物理布局比总工作量更重要。
然而,当他们尝试将该公式应用于这种更快的硬件时,结果却远没有那么令人鼓舞。该公式在旧设备上表现尚可,但在现代图形卡上却始终低估了完成任务所需的时间。在许多情况下,实际耗时明显长于公式的预测值。更令人惊讶的是,研究人员发现执行时间并不是随着工作负载的增加而呈现平稳、稳定的增长。相反,时间以不可预测的方式跳跃和波动。当他们微量增加输入数据的大小时,处理时间会突然激增或下降,形成一种锯齿状、不规则的模式,而非直线。这些跳跃出现在特定的数值处,通常与4或其它小整数的倍数相关,这表明现代芯片的内部架构在以复杂且非线性的方式对数据做出反应,而简单的公式无法捕捉到这一点。
研究表明,计算数量与执行时间之间的关系比此前认为的更加脆弱且依赖于硬件。该公式未能考虑到输入和输出通道的影响,而在新硬件上,这些通道对执行时间的影响比在旧系统中要大得多。此外,研究人员观察到,现代芯片的优化技术(例如其大型内存缓存和专门的处理单元)引入了新的行为,导致了这些时间的突然跳跃。这些行为在原始研究中被掩盖了,因为那项研究使用了较低分辨率的数据点,仅对少数数值进行采样,而非测试所有可能的变体。当团队测试每一个数值时,系统的隐藏不稳定性便显露了出来。
研究人员得出结论,虽然“空间排列比深层排列更高效”这一总体思路仍然成立,但旨在预测执行时间的特定数学工具在现代硬件上已不再可靠。该公式无法适应计算机芯片的快速演进,因此不能作为估算能源消耗或速度的通用标准。这项研究还强调了科学研究中的一个关键问题:缺乏完整且准确的复制包。由于缺少原始代码、特定的软件版本和原始数据,很难确定该公式失效的原因究竟是由于硬件本身,还是由于研究人员在信息缺失的情况下所做的假设。
最终,这项工作提醒我们,在人工智能这个快速发展的领域中,简单的指标可能会产生误导。人工智能模型的效率不仅仅是一个计算操作数量的问题;它是模型设计、运行它的特定硬件以及管理该过程的软件之间复杂的相互作用。研究人员已将其完整的数据集和代码向公众开放,希望这种透明度能让其他人能够为未来构建更好的工具。他们的发现表明,随着人工智能的持续增长,我们必须超越简单的计数,去建立一种对这些数字系统在现实世界中究竟如何运作的更深刻、更细致的理解。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。