IBM的电阻计算技术可以极大地加速人工智能的发展

科技2020-02-25 10:52:56
导读随着最近机器学习的快速发展,神经网络的复兴——计算机软件通过使用分布在许多虚拟节点或“神经元”之间的复杂模式匹配过程,有点像人脑一

随着最近机器学习的快速发展,神经网络的复兴——计算机软件通过使用分布在许多虚拟节点或“神经元”之间的复杂模式匹配过程,有点像人脑一样解决问题。现代计算能力使神经网络能够识别图像、语音和面部,以及驾驶自动驾驶汽车,并在Go和Jeopardy获胜。大多数计算机科学家认为这只是最终可能的开始。不幸的是,我们用来训练和运行神经网络的硬件看起来几乎不像它们的体系结构。这意味着训练一个神经网络来解决一个问题可能需要数天甚至数周的时间-即使是在一个计算集群上-然后需要大量的力量来解决问题,一旦他们被训练。

IBM的研究人员希望通过完善另一项技术来改变这一切,就像神经网络一样,这项技术最初出现在几十年前。松散地称为电阻计算,其概念是具有模拟性质的计算单元,其实质很小,并且可以保留它们的历史,以便它们可以在训练过程中学习。用硬件加速神经网络对IBM来说并不新鲜。它最近宣布将其部分True North芯片出售给劳伦斯国家实验室进行AI研究。真北的设计是神经形态的,这意味着芯片大致近似于大脑的神经元和突触结构。尽管它的慢时钟速率为1千赫,True North可以非常有效地运行神经网络,因为它有一百万个微小的处理单元,每个处理单元都模仿一个神经元。

然而,到目前为止,像True North这样的神经网络加速器一直局限于部署神经网络解决问题的部分。训练-让系统在测试数据集上对自己进行评分,然后调整参数(称为权重),直到它取得成功的艰苦过程-仍然需要在传统的计算机上进行。从CPU到GPU和定制硅的移动提高了性能,降低了所需的功耗,但这一过程仍然昂贵而耗时。这就是IBM研究人员Tayfun Gokmen和YuriVlasov的新工作。他们提出了一种新的芯片结构,利用电阻计算来创建数百万个电阻处理单元(R PUs),可用于训练和运行神经网络。

电阻计算是一个很大的话题,但粗略地说,在IBM设计中,每个小处理单元(R PU)都模仿大脑中的突触。它接收各种模拟输入-以电压的形式-并根据其过去的“经验”使用它们的加权函数来决定将什么结果传递给下一组计算元素。突触有一个令人困惑的,尚未完全理解的布局在大脑中,但芯片与电阻元素往往使它们整齐地组织在二维阵列。例如,IBM最近的工作显示了如何组织4,096乘4,096数组的可能性。

由于电阻计算单元是专门的(与CPU或GPU核心相比),并且不需要将模拟转换为数字信息,或者访问它们自己以外的内存,所以它们可以快速并且消耗很少的功率。因此,理论上,一个复杂的神经网络-就像用来识别自动驾驶汽车中的路标的神经网络-可以通过将电阻计算元素专用于每个软件描述的节点来直接建模。然而,由于RPU是不精确的-由于它们的模拟性质和它们的电路中的一定数量的噪声-任何运行在它们上的算法都需要对不精确的固有的抗性计算元件进行抵抗。

传统的神经网络算法-无论是执行还是训练-都是假设高精度的数字处理单元,可以很容易地调用任何需要的内存值。重写它们,使每个本地节点能够在很大程度上自己执行,并且不精确,但产生的结果仍然足够准确,需要大量的软件创新。

为了使这些新的软件算法在规模上发挥作用,还需要在硬件方面取得进展。现有技术不足以创造“突触”,这些“突触”可以紧密地结合在一起,并在嘈杂的环境中以低功耗运行,从而使电阻处理成为现有方法的一种实用替代方案。运行时执行首先发生,在一台混合电阻计算机上训练神经网络的逻辑直到2014年才开发出来。当时,匹兹堡大学和清华大学的研究人员声称,这样的解决方案可能导致功率效率增加3到4级,而代价是精确度只有5%左右。

IBM的研究人员声称,基于RPU的设计将大大提高神经网络应用的效率,如他们的论文中所示

这项来自IBM的新工作进一步推动了电阻计算的使用,假设一个系统几乎所有的计算都是在RPU上完成的,传统的电路只需要用于支持功能和输入输出。这种创新依赖于将一个版本的神经网络训练算法结合起来,该算法可以在基于RPU的体系结构上运行,并为可以运行它的RPU提供硬件规范。

到目前为止,电阻计算主要是一种理论结构。第一个电阻存储器(RRAM)在2012年成为原型,预计在未来几年内不会成为主流产品。而这些芯片,虽然有助于扩展内存系统,并显示在计算中使用电阻技术的可行性,但并没有解决类似突触处理的问题。

所提出的RPU设计有望适应各种深度神经网络(DNN)体系结构,包括完全连接和卷积,这使得它们在几乎整个神经网络应用领域具有潜在的实用价值。使用现有的CMOS技术,并假设RPU在4,096到4,096元素的瓷砖与80纳秒的循环时间,其中一个瓷砖将能够执行大约51GigaOps每秒,使用少量的功率。一个有100块瓷砖和一个单一互补CPU核心的芯片可以处理一个高达160亿重量的网络,而只消耗22瓦(其中只有两个实际上来自RPU-其余的来自CPU核心,需要帮助获取数据进出芯片和提供整体控制)。

这是一个惊人的数字,相比之下,什么是可能的数据通过相对较少的核心在一个GPU(想想大约1600万计算元素,而不是几千)。研究人员使用密集填充这些RPU瓷砖的芯片,声称一旦建成,基于电阻计算的AI系统可以实现高达30,000倍的性能改进,与目前的体系结构相比,所有这些系统的功率效率都是每秒84,000GigaOps。如果这成为现实,我们可以在实现艾萨克·阿西莫夫对机器人Positronic大脑的幻想的道路上。


免责声明:本文由用户上传,如有侵权请联系删除!