TrueNorth:IBM的百万神经元类人脑芯片
说起IBM的百万神经元类人脑芯片如邮票般大小、而且重量只有几克,但它却集成了 54 亿个硅晶体管,内置了 4096 个内核,100 万个“神经元”、2.56 亿个“突触”,能力相当于一台超级计算机,功耗却只有 65 毫瓦。
这就是 IBM 公布的最新仿人脑芯片:TrueNorth。
为什么要做TrueNorth?
因为自 2008 年以来,美国国防部研究机构 DARPA 给了 IBM 5300 万美元。TrueNorth 是 IBM 参与 DARPA 的研究项目 SyNapse 的最新成果。SyNapse 全称是 Systems of Neuromorphic Adaptive Plastic Scalable Electronics(自适应可塑可伸缩电子神经系统,而 SyNapse 正好是突触的意思),其终极目标是开发出打破冯•诺依曼体系的硬件。
为什么要打破冯•诺依曼体系?
冯•诺依曼体系是传统计算机的基础。这种体系的特点是存放信息和程序指令的内存与处理信息的处理器是分离的。由于处理器是按照线序执行指令的,所以必须不断与内存通过总线反复交换信息—而这个会成为拖慢速度和浪费能量的瓶颈。尽管后来采用了多核芯片和缓存技术,但是这些只能提高速度而不能降低太多能耗,而且没办法实时处理,因为通信是瓶颈—内存和 CPU 的大量通信要通过总线进行。因此,近几十年来研究人员一直在致力于寻找突破原有体系的技术。
模仿大脑
模仿人类大脑是科学家寻求突破的方向。人类大脑的神经元尽管传导信号的速度很慢,但是却拥有庞大的数量(千亿级),而且每个神经元都通过成千上万个突触与其他神经元相连,形成超级庞大的神经元回路,以分布式和并发式的方式传导信号,相当于超大规模的并行计算,从而弥补了单神经元处理速度的不足。人脑的另一个特点是部分神经元不使用时可以关闭,从而整体能耗很低。
在了解了人脑的这种机理之后,研究人员开始了在软硬件上对人脑的模拟。在硬件方面,近年来主要是通过对大型神经网络进行仿真,如 Google 的深度学习系统Google Brain,微软的Adam等。但是这些网络需要大量传统计算机的集群。比方说 Google Brain 就采用了 1000 台各带 16 核处理器的计算机,这种架构尽管展现出了相当的能力,但是能耗依然巨大。
而 IBM 则是在芯片上的模仿。
集成度和能效令人印象深刻
这种芯片把数字处理器当作神经元,把内存作为突触,跟传统冯诺依曼结构不一样,它的内存、CPU 和通信部件是完全集成在一起。因此信息的处理完全在本地进行,而且由于本地处理的数据量并不大,传统计算机内存与 CPU 之间的瓶颈不复存在了。同时神经元之间可以方便快捷地相互沟通,只要接收到其他神经元发过来的脉冲(动作电位),这些神经元就会同时做动作。
2011 年的时候,IBM 首先推出了单核含 256 个神经元,256×256 个突触和 256 个轴突的芯片原型。当时的原型已经可以处理像玩 Pong 游戏这样复杂的任务。不过相对来说还是比较简单,从规模上来说,这样的单核脑容量仅相当于虫脑的水平。
不过,经过 3 年的努力,IBM 终于在复杂性和使用性方面取得了突破。4096 个内核,100 万个“神经元”、2.56 亿个“突触”集成在直径只有几厘米的方寸(是 2011 年原型大小的 1/16)之间,而且能耗只有不到 70 毫瓦,IBM 的集成的确令人印象深刻。
IBM的TrueNorth芯片结构、功能、物理形态图
这样的芯片能够做什么事情呢?IBM 研究小组曾经利用做过 DARPA 的NeoVision2 Tower数据集做过演示。它能够实时识别出用 30 帧每秒的正常速度拍摄自斯坦福大学胡佛塔的十字路口视频中的人、自行车、公交车、卡车等,准确率达到了 80%。相比之下,一台笔记本编程完成同样的任务用时要慢 100 倍,能耗却是 IBM 芯片的 1 万倍。
跟传统计算机用 FLOPS(每秒浮点运算次数)衡量计算能力一样,IBM 使用 SOP(每秒突触运算数)来衡量这种计算机的能力和能效。其完成 460 亿 SOP 所需的能耗仅为 1 瓦—正如文章开头所述,这样的能力一台超级计算机,但是一块小小的助听器电池即可驱动。
通信效率极高,从而大大降低能耗这是这款芯片最大的卖点。TrueNorth 的每一内核均有 256 个神经元,每一个神经有分别都跟内外部的 256 个神经元连接。
但是相比之下,人脑有上千亿个神经元,每个神经元又有成千上万的突触,那样一个神经网络就更加无法想象了。IBM 的最终目标就是希望建立一台包含 100 亿个神经元和 100 万亿个突触的计算机—这样的计算机要比人类大脑的功都强大 10 倍,而功耗只有一千瓦,而且重量不到两升(我们大脑的大小)。
应用
不过,计算能力并非这种最强大脑的长处,其强项在于认知能力。认知芯片可以执行感知、交互、识别等任务,就像演示中的识别对象一样。IBM 预计这种认知能力可以在物联网中充分能力,部署在传感器中处理现实世界的感知问题。使用认知计算机通过传感器网络和微型电机网络不断记录和报告数据如温度,压力,波高,声学和海潮等来监测世界范围内的供水状况。然后,它还可以在发生地震的情况下发出海啸警报。而这样的任务传统计算机根本不可能完成。或者这种芯片也可以部署在它的Watson上面,从而大大提升这台在智力竞赛中战胜人类冠军的超级计算机的能力和能效。
因此,有人把 IBM 的芯片称为是计算机史上最伟大的发明之一,将会引发技术革命,颠覆从云计算到超计算机乃至于智能手机等一切。
前景
但是从短期来看,情况也许并没有那么乐观。
首先芯片的编程仍然是个大问题。芯片的编程要考虑选择哪一个神经元来连接,以及神经元之间相互影响的程度。比方说,为了识别上述视频中的汽车,编程人员首先要对芯片的仿真版进行必要的设置,然后再传给实际的芯片。这种芯片需要颠覆以往传统的编程思想,尽管 IBM 去年已经发布了一套工具,但是目前编程仍非常困难,IBM 团队正在编制令该过程简单一点的开发库。(当然,如果我们回顾过去编程语言从汇编一路走来的历史,这一点也许不会成为问题。)
其次,在部分专业人士看来,这种芯片的能力仍有待证实。
在神经网络和机器学习专家看来,DARPA 的 NeoVision2 Tower 的数据集相对比较简单,演示只是识别了 5 种对象,相对于 Google 和百度等图像识别使用的是有上百万图像种类上千的 ImageNet,芯片在这种测试集的表现如何尚不得而知。
再者,真正的认知计算应该能从经验中学习,寻找关联,提出假设,记忆,并基于结果学习,而 IBM 的演示里所有学习都是在线下的冯诺依曼计算机上进行的。不过目前大多数的机器学习都是离线进行的,因为学习经常需要对算法进行调整,而 IBM 的硬件并不具备调整的灵活性,不擅长做这件事情。但是 IBM 并不排除硬件实现的可能性(这家公司在历史上已经表现出极佳的持续改进能力)。但是从事同类研究的 LeCun 认为,应该开发能实现最新算法的芯片,那种芯片应该不是 IBM 芯片的样子,而是类似于改良版的 GPU(参见微软的Adam)。
图[IBM集成16块TrueNorth芯片的电路板]
所以说,IBM 的芯片是否真如其名称 TrueNorth 所述、为计算机的未来找到了真正的方向,目前尚不得而知。但是,至少这款芯片超高集成度和超低能耗已经给人留下了深刻印象。
关键词: 芯片 人脑芯片 IBM芯片