清华大学团队刷屏的芯片和论文,对AI意味着什么?
2023-11-09
作者: 李飞
来源:开云棋牌官网在线客服行业观察
早阵子,国内清华大学研究团队发布了一篇论文,里面谈及了一款领先的芯片和设计。这个新闻在朋友圈引起了广泛讨论。那么这是个什么芯片?对AI又意味着什么?让我们在本文解读一下。
以下为文章正文:
人工智能是目前开云棋牌官网在线客服芯片行业最重要的市场驱动力之一,同时也是当下最有潜力深刻改变整个人类社会的技术。当前,最主流的人工智能算法加速芯片是GPU,但是GPU加速人工智能有着自己的瓶颈,就是能效比较低。GPU的功耗通常要几百瓦,这就使得大规模部署人工智能充满了挑战:一方面大规模数据中心需要确保散热足够好,不至于让GPU过热而无法工作;另一方面,GPU很高的功耗又为数据中心带来了很高的供电成本和需求。
GPU,以及其他绝大多数人工智能加速芯片,都属于常规的数字逻辑的计算范式。使用数字逻辑计算存在几个重要的局限性:
首先,信号必须要做数字化,而很多人工智能任务处理的输入(例如机器视觉任务)实际上并非人工的数字信息而是物理信号。这样的物理信号数字化就会带来能量的浪费。
其次,在数字逻辑中,有一个全局的时钟,而时钟频率则决定了整个系统的处理速度。数字逻辑的时钟频率往往决定于芯片工艺实现的逻辑门的速度(延迟),而并非由处理任务的复杂程度决定,因此这样的数字时钟事实上也限制了整体芯片处理任务能实现的速度。
最后,数字逻辑的设计中,尤其是对于处理人工智能相关的任务,通常都需要配合一个存储单元(尤其是像GPU需要配合DRAM使用),这样的数据存取和读取事实上会消耗相当大的能量。
与传统的数字逻辑计算范式相比,新模态计算则是使用了非常规的信号处理和计算方法(例如光学处理以及模拟信号处理),从而可以很大程度上避免数字逻辑计算中的几大局限,并且有望为人工智能的高能效比计算带来新的希望。
10月底,来自中国清华大学的研究组在顶级期刊《自然》上发表了使用新模态计算加速人工智能的论文《All-analog photoelectronic chip for high-speed vision tasks》。在该论文中,清华大学的研究团队提出了使用光学和模拟计算来加速人工智能计算的技术,即all-analog chip combining electronic and light computing (全模拟电子和光子计算芯片,ACCEL),并且实现了相当高的计算性能和能效比(等效算力4600TOP/s,能效比74800TOP/s/W),相当于Nvidia A100 GPU的3000倍以上。
ACCEL的结构如下图所示。
首先,如论文标题所说的,ACCEL针对的是机器视觉任务(vision task),因此输入是一个图像。值得注意的是,这里的图像并不是一个存储于二进制格式的图像文件,而是一个确确实实的图像物理信号(即光场信号)。我们会看到的是,整个论文中的芯片都是直接处理物理模拟信号,而不会做任何模拟-数字信号转换,这里的输入也因此是一个模拟物理信号。
输入图像光场信号首先进入光学处理部分,即optical analog computing,OAC。OAC的主要任务是把图像信号进行降维处理。例如,在ImageNet数据集上,图像输入是224x224,相当于数据维度高达50000以上,因此首先需要进行降维(和传统的卷积神经网络的降采样层是同一原理和目的)。OAC从物理上是利用光学衍射让图像中的不同像素之间互相交互,从而等价地实现一个矩阵相乘的过程,从实现上来说,OAC可以根据矩阵的权重而使用二氧化硅蚀刻出相应的图形来完成,换句话说OAC的实现是无需任何功耗的,仅仅就是把光透射过一层掩模版就完成了计算。在论文中,作者提到通过OAC可以实现高达98%的降维而不影响计算精度——换句话说OAC可以实现50倍的数据压缩,因此这个无需功耗的OAC实际上在整体系统中起到了相当重要的作用。
光信号经过OAC掩模版之后,照射到ACCEL芯片上的光电二极管阵列上(论文中称为电子模拟计算electronic analog computing,EAC),因此光电二极管阵列中的每一个光电二极管都会根据OAC的输出产生相应的光电流。此外,这些光电二极管阵列中的每一个光电二极管的正极都通过开关连接到差分信号线的正极或者负极上(该连接可以根据存储在SRAM中的内容来配置),因此每一个光电二极管都会为差分线的正极或者负极放电。最后差分线的正极和负极经过模拟比较器获得最终的0或者1的输出,同时也完成了模拟信号到数字信号的转换。整个ACCEL芯片使用成熟的180nm工艺实现,可以在约2ns的时间内完成一次计算,而一次计算耗费的能量为4.4nJ。
如果我们把OAC和EAC的部分结合到一起,事实上ACCEL从数学的角度是实现了一个等效的神经网络,其中OAC是一个矩阵相乘运算,而EAC则是实现了神经网络中的非线性激活部分。根据论文中的数据,使用ACCEL可以在分类(MNIST,KMNIST,Fashion-MNIST)等机器视觉任务中实现和传统数字卷积神经网络类似的精度,但是使用ACCEL可以在处理速度和处理能效比上实现几个数量级的提升:这里的原因其实也很简单,卷积神经网络使用传统数字逻辑计算时,最耗费计算时间和能量的矩阵计算在这里直接使用光学计算完成了,而光学计算耗费的时间是0(光速),能量也是0;另一方面,ACCEL中决定任务处理速度的事实上是模拟电路部分,比较器的积分和开关时间决定了总体的任务处理时间。
值得注意的是,目前的ACCEL芯片是一个小型的芯片(使用了32x32阵列)并且使用了20多年前的180nm工艺,主要用于概念验证。如果使用更先进的工艺实现更大的阵列,则首先可以支持更大的神经网络以支持更复杂的任务,其次可以实现更高的处理速度(模拟电路处理速度即使是使用28nm这样的成熟工艺也会数倍于180nm)。因此,本次报道的ACCEL的性能数字还远远没有达到该技术可能实现的上限。
对于未来人工智能和芯片的潜在影响
清华大学的ACCEL可谓是非常优秀的科研工作,其实现的高性能也为未来应用提供了新希望。我们看到,ACCEL可以实现非常高的处理速度和非常好的能效比;同时,该技术的局限性在于(1)由于使用光学计算,因此最适合机器视觉任务,而对于目前最火热的语言类模型则难以支持;(2)对于算法和算符的支持,主要对于机器视觉任务中经典的卷积神经网络支持最好,对于Transformer等模型的支持还需要进一步的研究。
基于该研究的优势(计算速度和低能耗)和局限(对于算法类型的支持),我们认为,ACCEL以及相关的研究对于未来人工智能最主要的影响可能在于对于一些特定的任务提供极致的性能,而不是取代通用的GPU。这事实上也和目前的领域专用计算(domain-specific computing)来提供更好的性能及能效比的思路一致。具体来说,以下领域有可能成为ACCEL的应用场景:
首先,是需要超低延迟的应用场景,例如汽车或其他高速行驶的场景。在这样的场景中,ACCEL搭配超高帧率的摄像头(例如目前正在兴起的DVS摄像头芯片,峰值帧率可达1000fps以上),ACCEL的超低延迟可以满足在超高帧率的两帧之间完成人工智能算法的推理,从而满足整体系统的需求。
此外,ACCEL还可望在触发式人工智能系统中得到应用。这里的触发式人工智能系统是指人工智能系统有多个模型组成,在大多数时候运行常开(always-on)的部分,而其他更复杂的人工智能模型仅仅在常开的模块发现有需要的时候才会触发打开。由于ACCEL的延迟和能效比都非常优秀,因此非常适合在这样的触发式人工智能中担任常开的模组。
未来如果ACCEL以及相关的研究需要进入更广泛的应用,还需要研究人员进一步努力以支持更复杂的算法和模型结构,但是我们认为,前景是光明的,让我们拭目以待。