AI是如何工作的?

Google和Facebook已经开源了它们的计算机硬件设计,就是用来驱动它们产品中人工智能逻辑电路的那些硬件系统。正是依靠这些智能算法,才实现了Google的搜索引擎和推荐功能,Facebook的数码信息助手M——当然,还有两家公司都使用的定向广告功能。

Facebook的定制服务器,代号 Big Sur,内置了图形处理单元(GPU)。GPU是PC中用来显示3D 效果电子游戏的图像处理系统。它同样也是驱动Google的 TensorFlow人工智能系统的硬件。那么问题来了,为什么要基于图像处理器来构建人工智能计算系统,而不用那些主流的计算机处理系统呢?

NVIDIA Tesla M40 GPU加速器,图片来源:NVIDIA新闻网

最初GPU 是被设计成与计算机中心处理单元(CPU)共同工作的:用来下载所需的计算图像任务。渲染三维图像场景是一个出了名的不易并行化任务。由于一张图像中的两个不同区域之间没有联系或内部关联性,可以把原始任务轻松的分解成多个独立的小任务,这些小任务又能够被同步并行化处理,即同时完成。这样就可以大大加快工作速度。

正是这种平行化特性促使GPU制造商颠覆了他们硬件的原有功能。通过对它们进行适当的优化,可以仅在大量平行化任务的处理上实现峰值计算流量,这些GPU就变身为可以运行任何并行化代码的专门处理器,而不仅仅是处理图像任务。而另一方面,对CPU的优化则是为了更快的处理单线任务(非并行化),因为大多数通用软件仍旧是单线的。

与CPU的单个,两个,四个或八个处理核心不同,现代GPU有上千个核:比如说服务器内置的 NVIDIA Tesla M40配有3072个 CUDA 核心。然而,这种大规模并行化是有代价的:要想利用它强大的处理能力,必须要为其编写特定的软件,但对GPU 编程并不容易。

Facebook的Big Sur服务器,内置8个NVIDIA Tesla M40 GPUs,图片来源:Facebook

GPU因何能为人工智能服务?

GPU之所以能横空出世成为超级计算硬件候选者的原因之一在于,有些要求最高的计算问题是非常适合并行化执行的。

一个绝佳例证就是深度学习,它是人工智能发展中的前沿领域之一。为这项强大技术提供理论基石的是神经网络的概念——高度互联的节点构成的大型网络系统,这个概念在1990年代就被提出过,不过当时并没有取得成功。但是现在科技的进步让我们得以构建更大更深的神经网络,这项技术取得了根本性的进展。有了这些神经网络系统作支撑,我们才开发出了语义识别软件,语言翻译还有Google, Facebook和很多软件现在使用的语义识别工具。

对一个神经网络进行训练,让它“学习”如何工作的过程就类似于大脑中神经元之间建立和加强联接的过程。从计算意义上来讲,这个学习过程是能够被并行化的,因此可以利用GPU硬件来加快学习速度。机器学习需要有可以学习的原材料,而获取原材料的过程也很容易用GPU来加速。有了开源的机器学习工具-比如 Torch code library 和配备GPU的服务器,在基于的GPU系统上进行神经网络训练会比用CPU 系统快上好几倍。

GPU是计算机领域的未来吗?

近几十年来我们已经对摩尔定律的预言习以为常,摩尔定律是指计算机的运算速度大概每隔两年就要翻倍一次。一直以来,运算速度的大幅提升主要依靠微型化来实现,因为芯片体积的缩小会降低发热,从而使CPU运转速度加快。然而,这个“免费的午餐”也要吃到头了,因为半导体元件已经快被微缩到极限了,也就是硅材料尺寸的固有理论极限。现如今,进一步提高计算速度的唯一可靠途径就是大规模并行化,最近十年多核 CPU的发展已经印证了这一点。而GPU在这方面可是占尽先机的。

除了人工智能,GPU也被用于流体和空气动力学模拟,还有物理引擎和大脑的模拟,这也只是几个应用的实例。一些世界顶尖的超强计算机,诸如目前世界运算速度第二的超级计算机,橡树岭国家实验室的超级计算机Titan,就是构建在Nvidia 的GPU加速器集群上的。它的竞争者包括由Intel的 Phi 并行协同处理器驱动的天河二号,是目前世界上运算最快的超级计算机。不过并不是所有问题都可以轻易并行化的,而且为这些环境编程难度也很大。

橡树岭国家实验室的Titan超级计算机,图片来源:Oak Ridge National Laboratory

很可能,计算领域的未来,至少是人工智能的未来,也许会是更具颠覆性的神经形态计算机。IBM 的 True North芯片是其中一个,另一台(原型机)正处在耗资10亿欧元的人类脑计划(Human Brain Project)研制之中。在这个模型中,与通过众多处理器组成的网络来模拟神经网络所不同的是,芯片本身就是神经网络:芯片上独立的晶体管组成了电路,通过电信号来通信和处理信息。这与生物大脑中的神经元本质上没有什么不同。
支持者的论点是这种系统能让我们实现神经网络的向上扩展,最终实现与人脑相同的规模和复杂程度,这可以使人工智能真正做到与人类智能相匹敌。其他人,尤其是脑科学研究者,则更加谨慎,他们认为人类大脑除了神经元的庞大数量和密度以外,还有其他重要的特性。
无论如何,很有可能我们现在对大脑的认识需要通过超级计算机才能完善,而它恰恰是被用来模仿大脑工作方式的。


注:所有文章均由中国数字科技馆合作单位或个人授权发布,转载请注明出处。