首页 > 前沿科技 > > 正文
2021-09-22 11:16:00

谷歌更高效的改革者会减缓或加速人工智能的军备竞赛吗?

导读 随着越来越多的电路被封装到同一个硅片区域,技术的前景总是更多、更快、更便宜。以及人工智能模拟,结果显示,基于谷歌工程师最近的工作,

随着越来越多的电路被封装到同一个硅片区域,技术的前景总是更多、更快、更便宜。

以及人工智能模拟,结果显示,基于谷歌工程师最近的工作,他们找到了一种在单个图形处理单元(或GPU)中运行“transformer”语言模型和版本的方法,而不是通常需要多个图形处理单元才能运行的事实。

这为用户提供了一个有趣的选择。如果你可以在以更容易使用的方式获得人工智能领域的顶尖技术之间做出选择,你会选择后者,还是选择扩大现有的计算机预算来做更多的事情?

就像问,你愿意花更少的钱买电脑,还是愿意花更多的钱买电脑?对于买家来说,这是一个经典的困境。

至少意图是,谷歌科学家尼基塔基塔耶夫(他还担任加州大学柏克莱分校、皇帝丘卡斯和安瑟伦列夫斯卡娅的职位)是使变压器预算可用的力量,他们称这项发明为“改革家”。

在本周arXiv预打印服务器上发布的官方论文中,他们写道:“我们相信这将有助于大规模、参数化的Transformer模型变得更加流行和易于访问。”(谷歌也发表了一篇关于这项工作的博文。)

这是他们想要解决的情况。2017年,谷歌的Ashish Vaswani和他的同事引入了Transformer方法对序列数据进行建模,引起了轰动。利用“注意力”预测序列元素的方法是基于附近的其他元素,这已经成为许多语言模型的基础,包括谷歌的BERT和OpenAI的“GPT2”。

在谷歌的转换程序中使用“本地敏感”散列函数,以减少需要存储在内存中的激活次数。这些颜色代表具有相似值的向量,可以组合这些向量来增强存储。

问题是,这些巨大的模型需要大量的GPU来运行,这主要是由于内存问题,而不是计算问题。Gpu用于训练深度神经网络变压器、芯片等。Nvidia V100往往匹配16或32 gb内存,不足以保存神经网络的所有参数和几十层神经元,以及矩阵中每个神经元的激活。

以“XLNet”为例,是去年Transformer功能的一次大飞跃。作者杨和他的同事在他们的笔记中写道,他们所有的工作都是在谷歌的芯片上完成的。"这种芯片通常比普通的图形处理器有更多的内存."他们计算出什么适合转移到gpu:“本文中使用gpu来再生XLNet-Large SOTA的大部分结果是非常困难(昂贵)的。”他们写道,需要32到128个图形处理器来满足他们的TPU工作。

此外,谷歌表示,人工智能的“指数级”增长正在改变计算的本质。

问题不仅仅是人们被限制使用某些形式的深度学习。更深层次的担忧是,深度学习神经网络可能取得突破的说法被巨大的工程资源所掩盖。像谷歌这样的云巨头可能是在扩张资源,而不是真正在人工智能科学上取得突破。在基塔耶夫引用的一篇关于思维语义学的文章中,安娜罗杰斯很好地表达了这种担忧。

为了让Transformer更容易访问,Kitaev和他的同事实现了一些减少内存使用的技术,比如哈希。哈希是一种代码将一个位序列转换成另一个位序列的方法,可以减少数据的总大小。在本例中,位置敏感哈希对值彼此接近的向量进行分组。这些是Transformer用来存储要搜索的单词以获得注意力机制的“关键”向量。

基塔耶夫和他的同事写道:“例如,如果k的长度为64K,我们只能考虑每种气体的32或64个最近键中的一小部分。[“k”是键的矩阵,“q”是访问这些键的查询。]这消除了通常的N平方问题,这将增加要存储在内存中的向量数量。

他们做的第二件大事是减少需要储存的神经元激活总数。通常,它们都需要被存储,以便通过遍历层激活来计算神经网络解的梯度的反向传播。随着神经元数量的增加,这种激活的存储会扩大记忆。但是基塔耶夫和他的团队采用了一种被称为“可逆剩余网络”的技术,该技术是由多伦多大学的艾登戈麦斯和他的同事于2017年开发的。戈麦斯和他的团队采用了传统的ResNet,这样每一层的激活都可以从后面一层的存储值中重构出来,所以大多数激活根本不需要存储。

此外,人工智能正在改变计算的整个本质。

“可逆变压器不需要在每一层都存储激活,所以nl项被移除了,”Kitaev和他的同事写道,指的是网络的N层。

他们写道,凭借这些效率,他们能够将一个20层的变压器插入到一个图形处理器中。当然,他们不能直接将自己的性能与一个完整的64层变压器进行比较,因为变压器无法与同一个GPU兼容。但他们展示的结果似乎很有竞争力。

然而,现在的问题是,在传统的计算机环境中,重整器的运行速度比Transformer快得多。在这种情况下,8个图形处理器并行运行,具有与完整的Transformer相同的64层。“重整器与使用完整的Transformer获得的结果相匹配,但它运行速度更快,尤其是在文本任务上,并且内存效率提高了一个数量级。”

这意味着重整器运行在大铁块上,你可以潜在地处理数百万个“标记”,也就是一个书面作品的单个字符。作者提到陀思妥耶夫斯基《罪与罚》的所有文本都经过处理,有513812个代币,一台机器上的一个改革家有8gb的内存。可以想象,如果重整器在多台机器之间相乘,它可以更大规模地对数据进行操作。