年度订阅用户可加入科技英语学习社区,每周科技英语直播讲堂,详情查看“阅读原文”
10 月 24 日,IBM 研究人员实现了在内存计算技术上的一次重大突破。他们宣布发明了一种可以运行在 100 万个相变内存(Phase Change Memory,PCM 设备)上的无监督式机器学习算法,并且成功地在一系列未知数据流中发现了时间相关性。
与目前最先进的传统计算机相比,这种内存计算原型技术有望在计算速度和能耗利用效率方面提升 200 倍,非常适合实现人工智能(AI)应用中的高密度、低功耗、大规模的并行计算系统。
如果说制造“人工大脑”需要分三步完成,那么甚至可以说,IBM 已经来到了第二步。至于为何,后文 DT 君会详细分解。
内存计算(In Memory Computing, IMC)或者说可计算储存,是近年来新兴的一个概念,其原理是运用内存设备的物理特性进行资料的储存和处理。不过 IBM 把这点做到更彻底,那就是不采用过去那种内建缓存,并通过总线连接外部内存的阶层式架构,而是省略总线设计,直接把内存和 CPU 核心做在一起,尽最大的可能消除计算过程中因数据迁移所造成的延迟。
在另一方面,相变内存本身就兼具 DRAM 类内存的速度,以及 NAND 的非易失性存储特性,通过将相变内存直接和 CPU 集成,形成一种特殊的计算硬件结构,计算和存储同时可在相同的结构上发生,不需要额外的传输、读取再写入的动作。因此从计算到存储所需要的指令操作、带宽消耗等现象都得以减少。对 AI 计算这种数据迁移量庞大的应用来说,省去了这些操作,自然整体计算效率就可以大大提升,且因为没有总线,也没有额外的读写操作,系统功耗也能大大减少。
如果所有的计算、读写工作都发生在同一个区块上,不用迁移,自然也不会有延迟。这种概念完全不同于目前主流电子系统和设备的运行原理,我们所熟知的桌面计算机、笔记本计算机和手机等等电子设备都采用了冯·诺伊曼结构。使用该构架的设备在运行时,各种数据会在内存和计算单元之间不断穿梭,大量的数据调用会降低计算速度并且增加能量消耗。
这种本身可以计算同时亦可存储的架构看起来好像似曾相识?没错!其实就是一个具体而微的电子大脑结构。虽然这次所使用的计算核心还是一般为 AI 计算优化的 CPU 架构,但 IBM 曾在 2016 年 8 月发布了轰动一时的人造神经元,从这个脉络看来,IBM 的确是想打造一个完完全全的“电子大脑”。
图丨传统的冯诺依曼结构
图丨内存计算算法示意图(来源:IBM Research)
看到这里,可能你会觉得内存计算没什么大不了的,不就是减少延迟、降低能耗么?跟人造神经元、人工大脑又有什么关系?
好了,我们先来看看这次 IBM 的研究团队构成:在这次 IBM 发表的内存计算架构论文中,有四位作者 Evangelos Eleftheriou、Abu Sebastian、Manuel Le Gallo、Tomas Tum,他们正是去年 8 月 IBM 发布首个人造神经元团队的原班人马!
图丨IBM 的内存计算团队(左)几乎是人造神经元团队(右)的原班人马
如果这还不够有说服力,那么我们再来看看早前发布的人造神经元与最新提出的内存计算架构的共通之处。
先回顾一下 IBM 于 2016 年 8 月发布的人造神经元。这种相变神经元由输入端(类似生物神经元的树突)、神经薄膜(类似生物神经元的双分子层)、信号发生器(类似生物神经元的神经细胞主体)和输出端(类似生物神经元的轴突)组成。信号发生器和输入端之间还有反馈回路以增强某些类型的输入信号。
而神经薄膜就是整个神经元的关键所在。在生物神经细胞中,起神经薄膜作用的是一层液态薄膜,它的物理机理类似于电阻和电容:它阻止电流直接通过,但同时又在吸收能量。当能量吸收到一定程度,它就向外发射自己产生的信号。这信号沿着轴突传导,被其他神经元接收。然后再重复这一过程。
在 IBM 制造的神经元中,液态薄膜被一小片“神经薄膜”取代。神经薄膜是由锗锑碲复合材料(也称 GST 材料)制成的,该材料也是可重写蓝光光盘的主要功能材料。
锗锑碲复合材料是一种相变材料,即它可以以两种状态存在:晶体态和无定形态。通过激光或电流提供能量,两种状态之间可以互相转变。在不同状态下,相变材料的物理特性截然不同:锗锑碲复合材料在无定形态下不导电,而在晶体态下导电。
在人工神经元中,锗锑碲薄膜起初是无定形态的。随着信号的到达,薄膜逐渐变成结晶态,即逐渐变得导电。最终,电流通过薄膜,制造一个信号,并通过该神经元的输出端发射出去。在一定的时间后,锗锑碲薄膜恢复为无定形态。这个过程周而复始。
图丨生物神经元与人造神经元对比图(图片来源:IBM)
再来看看这次 IBM 最新发布的内存计算架构。在此次测试中,研究人员使用的 相变内存设备同样是由两个电极包夹着一层锗锑碲复合材料构成。一股微弱的电流就可以加热整个设备,复合材料内部状态随着温度上升而发生改变,从无定形态变成晶态。IBM 的研究人员再次利用了结晶动力学原理进行运算。而这里所用到的计算原理和先前人造神经元几乎一模一样。
图丨内存计算单元的结构与人造神经元的结构完全一致,都是由上下两个电极,以及中间的相变复合材料构成(来源:IBM)
IBM 研究员、论文作者之一 Evangelos Eleftheriou 博士表示:“这是 AI 物理学研究中的重要一环,这项研究有助于探索新的硬件材料、设备和构架。技术瓶颈导致了摩尔定律的失效,因此我们需要从处理器与内存这种‘一分为二’的结构出发,从本质做出改变,来突破当今计算机的局限性。鉴于我们的内存计算技术的简单性、高速度和低能耗,最终实验结果十分显着——非常接近于在冯·诺依曼计算机上运行的基准方法。”
图丨研究中的相变内存设备
IBM 研究团队本次实验的具体细节都在最新发表的论文中进行了描述,《自然通讯》(Nature Communications)也于 24 号对论文进行了同行评审。为了展示这项技术,论文作者选取了两个基于时间的例子,并且将该技术得出的结果与传统机器学习方法(k 均值聚类)得出的结果进行了比较:
模拟数据:100 万个二进制(0 或 1)的随机进程,根据英国著名数学家艾伦·图灵的侧画像,构成了一个 1000x1000(像素)的黑白二维网格。IBM 研究人员设定所有像素点以同样的频率闪烁,但是在黑色像素点之间建立了微小的关联性——当一个黑色像素点闪烁时,另一个黑色像素点也会闪烁的可能性随之稍微提高。随机进程被一一对应分配给了 100 万个相变内存,并且在设备上运行了一个简单的学习算法。随着每次闪烁,相变内存数组会不断学习,同时对应进程的相变内存会转变成高电导状态。用这种方法,相变内存的电导图重新描绘了艾伦·图灵的侧画像。
图丨 相变内存重新描绘艾伦·图灵的侧画像
现实数据:来自于美国 270 个气象站的 1 小时内降雨量资料,收集过程历时 6 个月。用数字 1 代表一个小时内有降雨,数字 0 代表 一个小时内没有降雨。经典的 k 均值聚类算法和 IBM 内存计算方法就 245 个气象站的分类达成一致,12 个 k 均值标识为『相关』的气象站被内存计算方法标识为『不相关』,13 个内存计算标识为『相关』的气象站被 k 均值标识为『不相关』。
图丨 现实世界降雨量数据资料分析
“内存普遍被视为是储存数据的地方。但是这项研究的结果显示,我们可以利用内存设备的物理学特性,执行一个相当高级别的计算原语(computational primitive)。计算的结果也储存在内存中,从这个角度来看,该技术概念受到了大脑计算方式的启发。”Abu Sebastian 博士说。他是一名探索性记忆和认知技术科学家,也是论文的主要作者。
图丨IBM 研究科学家 Abu Sebastian 博士
DT君认为,IBM 这次发布的内存计算架构,虽对 AI 计算的确能起不小的加速作用,但 IBM 的野心绝对不止于此。若把 2016 年发布的人造神经元技术放到这次的内存计算架构中取代 CPU 内核,那会发生什么?
大脑的神经网络中,计算和存储是一体的,逻辑的产生以及信息的存储都在同一处发生,不需要额外的通讯或转换,只要通过建立正确的神经元连接,自然而然的就可以完成整个学习、存储和推理的 AI 计算步骤,而未来不用考虑什么 GPU、FPGA、TPU 架构适用性问题。毕竟没有什么架构比大脑更适合用来做AI计算了。
而且,因为神经元的集体编码状态可以表示出远比传统计算器所使用二进制编码更为复杂的信息量,届时数据的存储若以神经元的形式呈现,目前计算架构本地存储容量不足,需要借助多层外部存储架构的问题可能也会获得解决。
而根据 IBM 之前所发表的研究报告指出,这种计算形式可以被广泛用在大数据和机器学习领域。例如使用物联网中的传感器数据,来快速分析大量最新的气象数据加快预报速度以及准确度,亦或者是在金融交易中使用这种人工大脑,其本身就可以判断出不同交易模式的收益或者是风险。另外,这种大脑甚至还能够用来分析人类社会,判断最新文化或商业趋势。
如果把 2016 年 8 月 IBM 震撼发布首个人造神经元作为“人工大脑三部曲”的开场,那么这次的内存计算架构发布可谓是第二步的尝试,只是这次 IBM 却显得异常低调。
-End-
参考:https://www.ibm.com/blogs/research/2017/10/ibm-scientists-demonstrate-memory-computing-1-million-devices-applications-ai/
https://www.technologyreview.com/the-download/609205/ibm-can-run-an-experimental-ai-in-memory-not-on-processors/