机器学习需要大量精力

2021-01-01 08:48:27

本月,谷歌因对该公司撤回研究论文表示不满,迫使该公司退出了一位著名的AI伦理研究人员。本文指出了语言处理人工智能的风险,在Google搜索和其他文本分析产品中使用的类型。

开发此类AI技术的巨大风险是其中的风险。据一些估计,训练AI模型产生的碳排放量与在其生命周期内制造和驾驶五辆汽车所需的碳排放量一样多。

我是一名研究和开发AI模型的研究员,而且我对AI研究的飞速发展的能源和财务成本非常熟悉。为什么AI模型变得如此耗电,它们与传统数据中心计算有何不同?

在数据中心完成的传统数据处理工作包括视频流,电子邮件和社交媒体。 AI的计算量更大,因为它需要通读大量数据,直到学会理解它为止,即经过培训。

与人们的学习方式相比,这种培训效率很低。现代AI使用人工神经网络,这是模拟人脑神经元的数学计算。每个神经元与其邻居的连接强度是网络的一个参数,称为权重。为了学习如何理解语言,网络从随机权重开始并进行调整,直到输出同意正确答案为止。

训练语言网络的一种常见方法是,从Wikipedia和新闻媒体等网站向其提供大量文本,并在其中掩盖一些单词,并要求其猜测被掩盖的单词。一个例子是“我的狗很可爱”,而“可爱”一词被遮盖了。最初,该模型将它们全部弄错了,但是,经过多轮调整后,连接权重开始改变并拾取数据中的模式。网络最终变得准确。

最近的一种名为“变压器双向编码器表示(BERT)”的模型使用了英语书籍和维基百科文章中的33亿个单词。此外,在训练期间BERT读取此数据集的次数不是一次,而是40次。相比之下,到五岁时,平均一个学习说话的孩子可能会听到4500万个单词,比BERT少3000倍。

使语言模型的构建成本更高的原因是,这种培训过程在开发过程中会发生很多次。这是因为研究人员希望找到网络的最佳结构-多少个神经元,神经元之间的连接数,学习过程中参数更改的速度等等。他们尝试的组合越多,网络获得高精度的机会就越大。相比之下,人脑不需要找到最佳结构-它们带有经过进化而磨练的预构建结构。

随着公司和学术界在AI领域竞争,不断提高技术水平的压力越来越大。即使在诸如机器翻译之类的艰巨任务上,即使将精度提高1%也被认为是重要的,并且可以带来良好的宣传和更好的产品。但是要获得1%的改进,一位研究人员可能会对模型进行数千次训练,每次使用不同的结构,直到找到最佳模型为止。

麻省大学阿默斯特分校的研究人员通过测量训练期间使用的通用硬件的功耗来估算开发AI语言模型的能源成本。他们发现,训练BERT曾经具有乘飞机往返纽约和旧金山之间的乘客的碳足迹。但是,通过使用不同的结构进行搜索(即通过对神经元,连接和其他参数的数量略有不同的数据多次训练算法),成本相当于315名乘客或一架整个747飞机。

AI模型也比它们所需的要大得多,并且每年都在增长。与BERT类似的最新语言模型称为GPT-2,其网络中的权重为15亿。 GPT-3由于其高精度而在今年引起轰动,它的重量为1750亿磅。

研究人员发现,即使只有一小部分网络最终有用,拥有更大的网络也会带来更高的准确性。当先添加然后减少神经元连接时,儿童的大脑也会发生类似的情况,但是生物大脑比计算机更节能。

AI模型是在专用硬件(例如图形处理器单元)上训练的,该硬件比传统CPU消耗更多功率。如果您拥有游戏笔记本电脑,则它可能具有这些图形处理器单元之一,可以为玩Minecraft RTX创建高级图形。您可能还会注意到,它们产生的热量比普通笔记本电脑多得多。

所有这些意味着开发先进的AI模型将增加大量的碳足迹。除非我们转向100%可再生能源,否则AI的进展可能与减少温室气体排放和减缓气候变化的目标相抵触。开发的财务成本也变得如此之高,以至于只有少数选定的实验室能够负担得起,而这些实验室将成为制定哪种AI模型的议程。

[对话的科学,健康和技术编辑选择了他们喜欢的故事。每周三。]

这对人工智能研究的未来意味着什么?事情可能不像看上去那样凄凉。随着发明更有效的培训方法,培训成本可能会下降。同样,尽管近年来预计数据中心的能源使用量会激增,但由于数据中心效率的提高,更高效的硬件和冷却功能的出现,这种情况并未发生。

在训练模型的成本和使用模型的成本之间也需要权衡取舍,因此在训练时花费更多的精力来想出一个较小的模型实际上可能会使使用它们更便宜。由于模型在其生命周期内将被多次使用,因此可以节省大量能源。

在我实验室的研究中,我们一直在研究通过共享权重或在网络的多个部分使用相同权重来缩小AI模型的方法。我们称这些为Shapeshifter网络是因为一小组权重可以重新配置为任何形状或结构的更大网络。其他研究人员表明,在相同的训练时间下,负重共享具有更好的表现。

展望未来,人工智能界应该在开发节能培训计划上投入更多。否则,有可能使AI受到少数人的支配,这些人无力承担制定议程的任务,其中包括开发了哪些模型,使用了哪些数据来训练它们以及使用了哪些模型。