人工智能芯片及其产业化

最近在计算领域受到大家广泛关注的是美国能源署所属实验室发布的超级计算机Summit超过了去年蝉联世界第一的中国超算太湖·神威之光(93.9PFlops),运算性能达到了200PFlops。Summit由IBM在英伟达的帮助下为ORNL研发,耗资约2亿美元,占地面积相当于两个网球场,ORNL称其为全球运算性能最强大,最智能的科研超算。但是如果我们换一个角度去看这个问题,就从Summit东家的老本行上看——能源。这是计算机行业发展70未有之大变局和它后面的产业发展。

首先介绍牧本曲线的概念,牧本曲线可以理解为电子芯片行业发展的曲线,形态比较像数学中的正弦函数,横坐标表示的是发展的时间,总坐标表示的是发展的专业化和通用化取向。在电子行业中,一个优秀的通用芯片发展到一定时期往往就会在一些问题上遇到计算瓶颈,而为了解决这样的计算瓶颈往往会开发出在这些问题上专用芯片来解决,但是专用芯片又面临通用化的难题,所以专用芯片随着人们的需求方面增加又会向通用化靠近。这样来来回回的发展曲线就构成了牧本曲线。

对于不同类别的处理器能效比分布,我们可以看到个人计算机上常用的CPU、GPU这样的传统计算硬件的计算能效比实际上是很低的,并且由于GPU内部结构的原因常用的矩阵稀疏化方法在加速GPU计算上收效甚微,但是他们的通用性更好,前面提到的Summit超算就为了使在深度学习中运算加速,加入了Nvidia显卡。相比之下FPGA表现中规中矩,EPU这样的神经网络处理器则凭借强大的能效比优势在专用途径上优势更为明显。

这也就引出了现在主流的智能芯片路线:脉冲神经网络芯片,图形处理器,深度学习处理器。先说脉冲神经网络芯片,它是基于脉冲神经网络(SNN)开发的芯片。主要是希望可以弥合神经科学和机器学习之间的差距,使用拟合生物神经元机制的模型来进行计算。脉冲神经网络和目前流行的神经和网络和机器学习方法有着根本上的不同。SNN使用脉冲,一种发生在时间点上的离散事件,而非常见的连续值。每个峰值有代表生物过程的微分方程表示出来,其中最重要的是神经元的膜电位。本质上一旦神经元达到了抹一点为,脉冲就会出现,随后达到电位的神经元会被重置。对此最常见的模型是Integrate-And-Fire模型。这种芯片的代表是IBM开发的True North,旨在使用利用神经元脉冲行为的离散和稀疏本质的专门硬件模拟神经元,进而解决该问题。但是今天看来SNN的未来仍然不够清晰,对于大多数任务来讲它们还远远不是实践工具,目前只在实时图像和音频处理中有一些SNN实际应用。而图形处理器也就是GPU目前还处于智能计算市场的主体地位,主要是在PC/云服务器端,但是和新生的深度学习处理器能效来说存在巨大的差异,大概是一到三个数量级。并且该市场固化时间长,背着图形科学计算市场的包袱,需要结构颠覆性调整。而对EPU而言,现在的策略主要有三个方面,小尺度但是支持大规模神经网络;速度上把带宽用起来,尽可能提高性能;能耗上通过优化片上的存储层次尽量减少访问次数。

另外最近智能计算的潮流开始从单一的计算智能向对抗网络的方向发展,为什么会这样呢?这其实是因为单一的计算智能是可被欺骗的。举一个例子,对于一个纯视觉智能处理方法来说,一张被识别为小汽车的图像在更改了一个像素点的数据之后,有可能会被识别成为一个游艇。这也就使得现在很多领域开始从纯视觉处理到多模态智能处理的趋势(见下图)。

另一个问题就是传统的ASIC(将给定算法硬件化的电路)的思路已经无法解决深度学习处理器(通用标准电路)面临的问题:如何在有限的规模的硬件上实现任意规模的算法;如何在结构固定的硬件上实现千变万化的算法;如何在功耗受限(大量的移动终端)上实现精度优先的算法。这里寒武纪科技针对第一个问题给出的解决方案是硬件神经网络元的虚拟化,第二个问题是开发合适的深度学习指令集,第三个问题则是开发稀疏神经网络处理器结构。

我对像寒武纪这样的人工智能芯片公司还是有很大的信心的,现在的时代已经过了冷计算的时代,我们现在日常生活中面对的更多是热计算(随来随算),这在免去了云端的存储压力后也带来了移动终端智能化计算能力的问题。这是个机遇,让我们更多的关注智能芯片和由此诞生的商机。年所首次出现的能源增长远低于计算速度增长。也就是能效与计算素的增长失配。下面我们来详细说明这个70年来未有之大变局和它后面的产业发展。