
正在发布的一项分析表明:自2012年以来,在Image Net1分类上训练神经网络所需的计算量每16个月下降2倍。 与2012年相比,当前,在AlexNet2上训练神经网络需要的计算量减少了44倍 (相比之下,在此期间摩尔定律将产生11倍的成本改进)。研究结果表明,对于新近投资额比较高的AI任务,算法的进步相比经典硬件效率的提高会产出更多的收益。
算法改进是推动人工智能发展的关键因素,所以,找出能够揭示整体算法进步的度量,尤为重要,这比预测计算量趋势要困难得多。4
7年后获得 AlexNet性能所需计算量减少了44倍
用于训练到AlexNet性能的teraflops/s-days的计算总量,在给定时间内的最低点显示为蓝色,其它所有的点测量显示为灰色。

效率的测量
算法效率可以定义为训练特定任务时所需减少的计算量,它是衡量诸如排序等经典算法的主要手法。测量排序等传统问题的效率增益比测量ML(机器学习)的效率增益更加容易,因为它们对任务难度有更为明确的度量。 [1]
在排序示例中,问题的“难度”是指列表的长度。快速排序算法的代价,通常用大写的O表示:O(n\log{}n)O(nlogn)。
然而,在机器学习中,则是通过一个性能常数,来衡量机器学习的效率。 效率趋势可以在诸如:DNA测序17(10个月翻倍)、太阳能18 (6年翻倍)和晶体管密度3 (2年翻倍)等不同领域进行跨领域比较。
此分析研究利用开源算法重新实现192021,来衡量AlexNet性能在一段很长时间内的进展,在Image Net(17个月的翻倍)上看到了与ResNet-50级别性能类似的训练效率的提高,716 Translation、Go和Dota2在比较短的时间内,获得更为快速的改进:
1. 在Translation中,Transformer22在WMT‘14上英到法翻译的性能超过了seq2seq23,3年后的训练计算量减少了61倍。
2. 预计AlphaZero24的计算量将降低8倍,和AlphaGoZero25 1年后的计算量相当。
3. 3个月后,OpenAI Five Rerun需要降低5倍的训练计算量才能超过OpenAI Five26(它击败了世界冠军 OG)。
在考虑计算量时,会将2012年计算量与2019年计算量的不等值因素考虑进来,它更加有助于分析,这与美元会随着时间的推移通胀调整相类似。2019年固定的计算量要比2012年完成的计算量更多。得出这一结论基于这一考虑:通常人工智能研究项目分为两个阶段,类似于半导体领域的“tick tock”开发模型;新的项目(“tick”)通常需要大量的计算支出才能获得,之后的改进版本(“tock”)经过流程改进后,从而得以更高效地部署。
算法效率提高之后,在相同时间和资金投入的前提下,研发人员能够做更多感兴趣的实验。 除了对项目整体进展有了度量之外,算法效率的提高还可以提速未来的人工智能研究,即提供更多的计算量。
提速人工智能的其他措施
除了效率外,还有许多其他措施也揭示了人工智能的总体算法进展:以美元28计价的训练成本也与之相关,但算法进步对训练成本的影响却不大,因为它同时还受到底层硬件、硬件利用率和云基础设施改进等因素的影响。 当处于低数据状态时,样本效率尤为关键,对于许多感兴趣的任务来说,情况都是如此。训练模型速度的提高同时也使研究的进度得以提速,所以可以用它来衡量学习能力的并行性。同时,研究还发现,推理效率的提高对GPUtime31、参数16和flops的提高同样意义重大,它们对经济的影响[2]比较大,但不会影响到未来研究的进展。 Shufflenet13 在5年内(15个月的倍增时间)以18倍的推理效率实现了AlexNet的性能,表明训练效率和推理效率可能以类似的速度得以提高。创建数据集/环境/基准是一种强有力的方法,通过这种方法,使得感兴趣的特定AI能力更为可测量。
推理成本在成功部署系统的总成本中占主导地位,推理成本随系统的使用面的扩大而扩大,而训练成本只需要一次性支付。
主要的限制
1)目前,仅在几个特定任务上有少量的算法效率数据,尚不清楚观察到的效率趋势能否推广到其他人工智能任务,进行系统测量可以弄清楚:在AI的领域中,算法是否等同于摩尔定律[3]如果事实存在,则澄清它的实质,这是一个非常有趣的开放性问题。可以认为:我们更有可能在类似的任务上观察到类似的效率进度。一些AI子域内的类似任务,已经有了了实质性的进展,并且具有一定数量相当的投资(计算量和/或研究时间)。
在本文中,摩尔定律是指长期观察到的在两年时间内dollars/flop指标翻番,也可以把摩尔定律解释为dollars/flop的趋势,这种趋势最近已经有所放缓。
2)尽管如此,AlexNet项目还是具有一定的代表性,但本文的分析并没有试图对其进行量化。从普遍意义上来说,在算法创建之后,可以大大减少资源需求的总量[4] 。研究认为,从概念上来说,AI创新提高的效率在项目中占的份额通常比观察到的效率提高所占的份额更大。
例如,算法的进步使得某些任务的复杂性从指数化转变为多项式。这种效率增益虽然难以直接观察到,但是可以通过渐近分析或推断经验导出的标度定律来获得。
3)本文分析的重点是优化模型的最终训练运行成本,而不是总开发成本。算法的改进使得在超参数空间训练模型更为容易,这些超参数空间中的训练相对来说比较稳定,从而能获得更好的最终性能。此外,架构搜索加大了最终训练运行成本与总训练成本之间的差距。
4)在这里,我们不对预期效率趋势做出推测[5],只是介绍分析的结果,并讨论如果这种趋势持续下去会产生什么影响。
对AI效率做出可信的预测是一项实质性的工作,由于论据不充分,在这里不作进一步的探讨。
测量和AI策略.
分析认为32:无论是在技术属性层面还是在社会影响层面,都可以通过对AI系统的测量和评估来优化AI决策。这些测量举措可以揭示AI策略中的重要问题;AI和计算量4分析表明,决策者应该增加对学术界计算资源的资助,以便学术研究能够复制、再生产和扩展行业研究。效率分析可以使决策者更密切地评估人工智能系统效率,对部署人工智能的成本以及这些成本如何随着时间变化有所把控,从而得出准确的分析结果。
深入跟踪效率
如果大规模计算对于在语言和游戏等领域实现最先进的性能(SOTA)很重要,那么如何测量以较少量的计算(学术机构为之做出的贡献)来获取明显的性能提高则同样重要,那些有能力达到艺术级训练效率的模型能实现整体最高绩效,是最有希望的候选。 此外,找出算法效率的提高的程度并不难[6],因为它们只是所有实验产生的学习曲线中的一部分。
事实上,这项工作主要是通过训练PyTorch示例模型来实现的,通过对早期学习的调整来提高它的性能。
我们认为,衡量效率SOTA的长期趋势将有助于对总体算法进展做出定量的描述。通过观察发现:硬件和算法效率增益均可作为一个有意义类似尺度,这意味着:一个好的人工智能模型应该来自二者的度量。
研究结果表明,对于投资比较高的人工智能任务(研究时间和/或计算量),算法效率可能会超越硬件效率(摩尔定律)。 摩尔定律发明于1965年,当时集成电路只有64个晶体管(2的6次方),却朴素地推断出关于个人计算机和智能手机(iPhone11有85亿个晶体管)的预测。纵观几十年来人工智能算法效率的指数改进,它会带来什么?结论尚未确定。所以,我们不禁要问:算法的适度更新,会不会为人工智能服务和技术带来一个更为强大的未来。
出于上述原因,我们将从视觉和翻译效率开始(Image Net[7] 和WMT14)公开跟踪效率SOTA。随着时间的推移,会添加更多信息,鼓励研究界在这里提交新效率SOTA(原始作者和合作者将会得到表扬)。
ImageNet是唯一可以用于训练视觉的数据源,人工字幕、其他图像或其他数据均不允许使用,自动增强是可行的。
行业领袖、决策者、经济学家和潜在的研究人员努力对人工智能的进步有更为深入的理解,从而对应该有多少投入,往哪里投做出决策。 对人工智能效率的衡量有助于决策落地。 如果你对这类工作感兴趣,可以考虑申请到OpenAI’策略团队工作!
算法效率SOTA提交
研究发现, 2019年训练神经网络AlexNet的计算量比2012年少了44倍。 (在此期间,摩尔定律只产生11倍的成本变化)。
我们从跟踪SOTA在图像识别和翻译两个层面上的训练效率开始,今后,将利用这个git存储库来公开跟踪SOTA算法效率。
AlexNet-level 性能
ImageNet 上,前5位的准确率为79.1%
常见问题(FAQ)
- 多年来,我们一直在跟踪更多的AI效率的进展,它十分有趣,令人着迷。 请向danny@openai.com发送关于AI效率的想法或分析。
- ImageNet是唯一可以用于训练视觉的数据源,人工字幕、其他图像或其他数据均不允许使用,自动增强是可行的。
- 目前对用于翻译的训练数据没有限制,但未来可能会将结果归入相应的分类。
- 一个tf-s/day等于运行一天teraflop/s的计算量。
评论留言