本文转载自公众号“读芯术”(ID:AI_Discovery)
如今的人工智能存在一个很重要问题:太贵了。训练现代计算机视觉模型Resnet-152的成本大约为100亿浮点运算,这比起现代语言模型相形见绌。
训练OpenAI的最新自然语言模型GPT-3预计耗费3000万亿浮点运算,其中在商用GPU上的成本至少为500万美元。与其相比,人类大脑可以识别面部、回答问题,且只需一杯咖啡就能驾驶汽车。
我们如何做到?
我们已经取得了很大的进展。
第一批电脑的产生有着特殊的目的。1822年,英国数学家查尔斯·巴贝奇(Charles Babbage)为了计算多项式函数创造了“差分机”。1958年,康奈尔大学教授弗兰克·罗森布拉特(Frank Rosenblatt)创造了“Mark I”,这是单层感知器的物理形式,用于机器视觉任务。硬件和算法在早期是同一种东西。
硬件和算法的统一随着冯诺依曼体系架构的出现发生了变化,该架构具备由计算处理单元组成的芯片设计以及储存数据和程序指令的内存单元。这种模式上的转变使得建造可以针对任何任务进行编程的通用机器成为可能。冯诺依曼体系架构已经成为现代数字计算机的蓝图。
但是这里存在矛盾。数据密集型程序需要进行大量内存单元和计算单元间的通信,这会减缓计算速度。这个“冯诺依曼瓶颈”是人工智能早期尝试失败的原因。标准的CPU在深度神经网络的核心计算操作——大型矩阵乘法中效率不高。由于现有硬件的瓶颈,早期的神经网络存在技术搁浅并且表现不佳。
有趣的是,问题的解决办法不是来自学术界,而是来自游戏行业。在1970年代,为加速视频游戏发展而开发的GPU使得数据密集型操作与数千的计算内核并行化。这种并行化是解决冯诺依曼瓶颈的有效办法。GPU使得训练更深层次的神经网络成为可能,并且成为现代人工智能技术现行使用的硬件。
硬件彩票
人工智能领域研究的成功有很大的运气成分。谷歌研究员萨拉·胡克(Sara Hooker)称之为“硬件彩票”:早期的AI研究人员非常不幸,因为他们被速度缓慢的CPU困住了腿脚。在GPU出现时碰巧从事AI领域的研究人员“赢得了”硬件彩票。他们可以通过利用GPU的高效加速功能来训练神经网络,从而取得飞速的进展。
硬件彩票所体现的问题在于,一旦这整个领域中的人都成为了赢家,就很难探索出新事物。硬件的发展速度缓慢,需要芯片制造商进行大量回报不确定的前期投资。一个保险的做法就是对矩阵乘法进行优化,这已成为现状。然而长期来说,这种关注于硬件和算法一个特定组合的做法会限制我们的选择。
让我们回到最开始的问题。为什么当今的人工智能如此昂贵?答案可能是我们还不具备合适的硬件。硬件彩票的存在加以商业激励的机制,使得我们在经济上难以摆脱目前的现状。
一个很好的例子是Geoffrey Hinton的胶囊神经网络——一种新颖的计算机视觉方法。谷歌研究人员Paul Barham和Michael Isard发现这种方法在CPU上很有成效,但是在GPU和TPU上效果不佳。
这背后的原因是什么呢?加速器的优化都针对例如标准矩阵乘法等最频繁的操作,但缺少对胶囊卷积的优化。他们得出的结论(同时也是论文的标题)是:机器学习系统陷入困境。
AI研究人员可能会“过度适应”现有的硬件,从长远来看,这将抑制该领域的创新。
前进的道路
“取得下一步的突破可能需要采用一种本质与以往不同的角度:将硬件、软件与算法结合起来对世界进行建模。”
在人脑中,记忆和计算不是两个独立的部分,相反它们发生在同一个地点:神经元中。记忆来源于神经元通过突触连接在一起的方式,而计算来源于神经元触发并传播感官输入的信息的方式。就像早期的计算机一样,硬件和算法是同一个东西。这与我们当今构建人工智能的方法不同。
由GPU和TPU驱动的深度神经网络虽然在当今的许多任务中表现出色,但不是长远办法。也许它们只是硬件与算法的组合体系结构在广阔前景之下的局部最优解。
意识到仅有算法还远远不够是前进道路的开端。下一代的人工智能需要在硬件和算法方面都进行创新。在GPU出现之前,AI研究止步不前。如果没有硬件上的突破,我们可能会再次陷入发展停滞的困境。