对于人类社会,深度神经网络就像是那遥远地平线上出现的海啸一般。
鉴于它们的算法和应用目前仍在不断演变,所以尚不清楚深度神经网络(DNNs)最终将会带来怎样的变化。
但是,迄今为止,它们在文本翻译和图像、语音识别领域取得的成功让我们认识到,深度神经网络终有一日将会重塑计算机设计,而这样的变化对半导体设计和制造领域也同样有着深远的影响。
为 DNNs 量身定制的第一批商用芯片将于今年上市。鉴于它能够用几星期或几个月时间来训练一个新的神经网络模型,这些芯片可能是迄今为止制造规模最大的,因此也可能是成本最高的商用芯片。
今年,这个行业会看到 Graphcore 公司开发的一款非 Dram 模式的微处理器,以及其竞争对手——在圆片级芯片封装技术方面较为领先的 Cerebras Systems 也会推出一款产品。
与此同时,英特尔收购的 2.5-D Nervana 芯片已经开始取样,其他诸多厂商的芯片研发也都在火热进行当中。
此外,从 ARM 到西部数据(Western Digital),所有老牌半导体巨头也均在研究处理器核心以加速深度神经网络的推理部分。
「我认为 2018 年,将会是各种芯片产品『百家争鸣』的一年。我们开始见到许多公司正在评估各种针对芯片的 idea,」加州伯克利荣誉教授 David Patterson 如是说道。
这个趋势相当明显,Patterson 与联合作者 John Hennessey 在上个月出版的 Computer Architecture(在计算领域影响巨大)一书的最新版本中,用整整一个章节介绍了这种趋势。
作者对一些内部设计给出了深度的见解,譬如 Patterson 对谷歌的TensorFlow Processor(TPU),微软的 Catapult FPGA,以及苹果与 Google 最新的手机芯片中的推理模块都给出了自己的意见。
Patterson 表示:「这是计算机架构与封装技术的复兴。在明年一年我们将会看到比过去十年更多的,更有意思的计算机出现。」
在过去几年中,深度神经网络的兴起将风投的资金重新带回到半导体的领域。
在电子工程师时报(EE Times)最新发布的「Silicon 60」中,他们列出了 7 家致力于研究新型神经网络芯片的初创公司,其中包含了两个不太为人所知的公司:
北京的寒武纪科技与美国德克萨斯州的 Mythic Inc。
Chris Rowen 从 Cadence Design Systems 离职后,成立了一家名为 Cognite Ventures 的投资公司,专门看神经网络软件。
「我们看到具备全新架构的新创业公司如井喷式出现。我自己追踪了 15 到 20 家公司…在过去的 10 ~15 年时间里,在任何半导体子领域里都不曾有过『同时出现 15 家半导体公司』这样的事情。」Chris Rowen 说道。
他表示:「由于英伟达难以撼动的软件地位,与其在高阶服务器训练方面的竞争将会十分艰难;
而如果你去追求手机市场,那你一定是疯了,要知道追求手机市场意味着你必须在很多方面都做得出色。不过在高阶或是低阶的手机市场中,还可能有一些机会。」
市场观察者 The Linley Group 的负责人 Linley Gwennap 表示,英伟达最新的 GPU—Volta 性能非常不错,他们对其进行了调整以进行 DNNs 的速度训练。但 Gwennap 却不认为 Volta 就是最好的设计。
Gwennap 说,Graphcore(英国布里斯托)和 Cerebras(加州洛杉矶)是在训练芯片方面最值得观察的两家公司,他们筹集了最多的资金,而且似乎拥有最好的团队。
此外,由谷歌前芯片设计员创立的初创公司 Groq 声称将会在 2018 年推出一款推理芯片,每秒的运算和推理都能完胜对手 4 倍。
英特尔的 Nervana 是一个大型的线性代数加速器,位于一个硅中介层上,紧邻着四个 8GB 的 HBM2 内存栈
英特尔的 Nervana,被称为 Lake Crest(上图),是最受关注的定制设计之一。Nervana 使用数据共享指令集中提供的单个 5 位元指数,执行 16 位矩阵操作。
与英伟达的 Volta 一样,Lake Crest 的逻辑单元位于一个 TSMC CoWoS 中介层上(芯片-晶片-基板),紧邻着四个 HBM2 高频宽内存栈。
这些芯片被设计成网状,是 Volta 性能的 5~10 倍。
虽然去年微软在 DNN 上使用了 FPGA,但是 Patterson 仍然对这种方法持怀疑态度。「你为 FPGA 的灵活性付出了很多的代价;编程真的很困难,」他说。
Gwennap 在去年年底的一项分析中指出,DSP 也将会发挥作用。「Cadence、Ceva 和 Synopsys 都提供面向神经网络的 DSP 内核」。
AI芯片即将到来,而架构师还未决定如何对其进行评估。
就像 RISC 处理器的早期那样,Patterson 回忆道:「每一家公司都会说,『你可千万不能相信别人的基准体系,但是你可以相信我的』,这可不太好。」
时间退回到那时候,当时 RISC 供应商在 SPEC 基准测试中进行了合作。现在 DNN 加速器需要定义自己的测试组件,涵盖各种数据类型的训练、推理。
为了顺应这种趋势,12 月 12 日,由 20 多家顶级服务器和软件制造商组成的交易处理性能委员会(TPC)宣布组建一个工作组对机器学习的硬件和软件基准进行定义。
TPC - AI 委员会主席 Raghu Nambiar 表示,这个工作组的目标是要创建出对 CPU 和 GPU 加速器通用的测试。但是,团队成员名单和时限仍未最终确定。
百度,于 2016 年 9 月发布了一个基于深度学习工作负载的开源基准,使用 32 位浮点数执行训练任务。它在六月份更新了 DeepBench 以涵盖推理工作并使用 16 位制。
美国哈佛大学的研究人员发表的 Fathom 套件,定义了 8 个人工智能工作负载,支持整数和浮点数据。Patterson 说:「这是一个开始,但是要成为一个让人满意的全面基准测试套件,还有很多的工作要做。」
「如果我们致力于建立一个好的基准,所有投入工程的钱都会花在刀刃上。」
除了基准之外,工程师需要持续追踪不断变化的神经网络算法,从而确保他们的设计能跟上时代。
高通公司下一代核心(next-generation-core)研发总监 Karam Chatha 表示:
「软件正在不断变化,但是我们需要尽早把硬件拿出来,因为硬件会影响软件——软硬件之间总会有这样相互牵连的关系。」
到目前为止,这家移动芯片供应商仍在骁龙处理器的 DSP 和 GPU 内核的软件平台上进行神经网络运行工作。
但是一些观察人士预计,高通将为机器学习定制一个全新的模块。在 2019 年,该模块将成为骁龙处理器中一个大约 7 豪微米的部分。
高通展示了一个 DNN 定制加速器研究实例,但现在,高通在使用通用 DSP 和 GPU 内核上的软件
Patterson 表示:「市场是芯片质量的检验者。这很残酷,但也正是计算机设计让人兴奋的地方。」
实际上,早期的芯片玩家已经抓住了这次竞争的机遇。
举例来说,Facebook 最近证明,通过大幅增加所谓批量尺寸(batch size)中的特征数目,能将某些任务的训练时间从一天缩短到一小时。
但这对于芯片制造商 Graphcore 而言可能是个坏消息。因为 Graphcore 试图将所有操作放在本地 SRAM 中运行,以消除外部 DRAM 的访问延迟,但与此同时也会限制其内存占用。
Patterson 说道:「Graphcore 专为小批量设计,但是几个月前软件结果表明,大批量尺寸效果更好。事情总是瞬息万变。」
另一方面,Rex Computing 认为他们正好抓住了有利的机遇。该初创公司的 SoC 最初为高性能服务器设计,其中使用了一种新型暂存器内存。
Rex Computing 联合创始人 Thomas Sohmers 表示,Rex 的方法消除了在虚拟页表中对数据缓存的需求,这是一种在 GPU 中使用的技术,能增加延迟。
因此,Thomas Sohmers 说,尤其在处理当下神经网络中流行的矩阵运算和矢量运算时,Rex 芯片性能远胜于现在的 GPU。
该初创公司计划于 6 月份推出 256 核的 16-nm SoC,希望其能效比能达到 256 Gflops/W。
与此同时,研究人员正在尝试单比特浮点数、 32 比特浮点数以及整型等各种精度的计算,旨在寻找神经网络计算中效率最高的方法。
看起来他们在某一点上达成了一致,即不要在不同的精度等级间进行转换。
几十年来,深度神经网络一直是人工智能领域中的一个小分支。
自 2012 年左右开始,包括 Facebook 的 Yann LeCun 在内的研究人员开始使用特定种类的 DNN 进行图像识别,最终获得了比人类更高的准确率,显示出惊人的成果。
深度学习技术吸引了学界,现在学术圈正在高速发表论文,寻求新的突破。
如今,DNN 正在提供商业化服务,如亚马逊的 Alexa 、谷歌翻译、Facebook 面部识别等。网络巨头和全球其他竞争者正竞相将这些技术应用于各种服务中,尽其所能寻找杀手级应用。
微软每年都会在人工智能方面主持两场仅员工参与的会议。前 SPARC 处理器架构师 Marc Tremblay 表示,上一场会议有 5000 人参加。Marc Tremblay 现在正带领微软进行 AI 专用芯片和系统方面的工作。
专家们承认,他们并不完全理解现有算法为何能得到良好的效果。
这质疑了 DNN 及其他各类模式的相对有效性,例如循环神经网络(RNN)和卷积神经网络(CNN)等。与此同时,学者还在不断发明新的模式。
「算法在五年内会发生变化的可能性很高。我们正在进行一场赌博——像矩阵乘法这样的最底层东西是不可改变的。」在最近关于人工智能的 IEEE 研讨会上,AMD 公司研究员 Allen Rush 这样说。
这就是 Google 用 TPU 做的赌注。
最新版本的 TPU 是能同时针对训练和推理工作。本质上说,TPU 是一个巨大的乘加单元阵列,对矩阵操作进行运行和存储。预计 Nervana 和 Graphcore 的芯片将效仿这一模式。
哈佛大学前大脑研究员、Nervana 的联合创始人 Amir Khosrowshahi,目前正在英特尔 Nervana 集团任首席技术官。
他说,目前在神经网络方面取得的成功占据了人工智能领域成果的绝大部分。他在 IEEE 研讨会上表示:
「由于深度学习的极大成功,我们对很多领域都避而不谈。当下,人人都在研究 CNN,这是一场悲剧……不要以为现在的热潮会一直持续到明年。」
如今的 DNN 受到了极大的关注,但是它只代表人工智能广泛领域中的一小部分
尽管 DNN 在图像识别方面比人类有着更高的精确率,「但如今的数据科学家不得不花费过长的时间对数据进行预处理,对模型和参数进行迭代,并且等待训练收敛……其中,每个步骤要么有着过于密集的劳动,要么有着过于密集的计算量」,Khosrowshahi 说道。
总而言之,他补充说:「人工智能领域仍面临着许多难题。顶尖研究者能让机器人打开一扇门,但是让机器人端起茶杯可能比打败 AlphaGo 困难得多。」
在这种环境下,Facebook 和 Google 等网络巨头正在发布大量的数据集,让更多的人从事前沿问题,例如将识别应用于视频等新兴领域或其他数据类型。
随着算法的不断发展,研究人员也在拓展深度学习的应用边界。
谷歌致力于将深度神经网络系统性地应用于一系列问题,比如为盲人用户自动添加图片说明文字、解读核磁共振成像的扫描结果,以及辅助工厂的质量控制监督工作。
「人工智能并非一种单一的技术或产品,」谷歌研发部负责人李佳告诉 IEEE 研讨会,「我们需要先理解那个领域,然后收集数据、找出适配算法并提出解决方案。每一个新问题都需要一个不同的模型。」
事实上,业界正在将深度神经网络系应用于几乎任何领域,包括芯片的设计与制作。英特尔列出了 40 多个可能的应用方向,从消费者在线购物助理,到华尔街自动交易程序。
现任 Target 数据科学家的 Shirish Tatikonda,曾在 IBM 做研究员,对深度神经网络的应用边界有着更加清醒的认识。
他在一次简短的采访中谈到,零售商的大多数数据都是有关联的,不是那种最适合于神经网络的非结构化类型;在 Target 所接手的业务问题中,只有 10% 适用于深度神经网络。
尽管如此,Target 公司仍在积极探索该领域,其大约 10% 的系统使用的是 GPU 服务器,用于训练神经网络模型。
为了实现规模化,谷歌的研究人员正致力于探究被其称为 AutoML 的软件。其思想是使用神经网络来自动生成模型,无需数据科学家对其进行手动调整。
虽然近年来有许多研究人员寻求减少深度神经网络模型的内存占用,但其尺寸差异仍然十分巨大
机器人先驱 Rodney Brooks 担心,业界对这种算法的预期可能过于乐观了。他在最近的一次谈话中说:「深度学习很好,但它正被当成万灵药。」
就 Patterson 而言,他仍然选择保持乐观。虽然广博的人工智能领域没有兑现过去的一些承诺,但它在机器翻译等领域所取得的成功却是真实的。
「你可以说好采的果子都被采完了,不会再有更令人兴奋的事情了,但事实上几乎每周都会出现新的进展...... 所以我想我们会发现更多的用途。」
深度学习的早期发展充溢着狂热与碎片化,即使软件融合工作都被搞得支离破碎。
百度的人工智能研究小组进行了一项调查,提出 11 项举措来弥合不同神经网络管理软件框架之间的隔阂。
Facebook、微软以及新近加入的亚马逊发起了一个比较靠谱的开源解决方案,叫做开源神经网络交换(Open Neural Network Exchange,ONNX)。
该项目在 12 月发布了 ONNX 的 1.0 版。其目标是将软件框架领域的 12 家竞争厂商所创建的神经网络模型转化为一种图形表示。芯片制造商可以使用这种图形表示来进行硬件开发。
对于初创企业来说,无论是亚马逊的 MxNet 或谷歌的 TensorFlow,还是 Facebook 的 Caffe2 或微软的 CNTK,这些竞争厂商所编写的模型框架都很难互相兼容,而它们也无力编写单独的软件,ONNX 无疑是一个福音。
12 月 20 日,由 30 多个主要的芯片厂商组成的一个研究小组发布了他们的首选方案——神经网络交换格式(Neural Network Exchange Format,NNEF)。
NNEF 旨在为芯片制造商提供一种个性化的选择,使他们能够创建属于自己的、供内部员工使用的格式,比如英特尔的 Nervana Graph 和英伟达的 TensorRT。
百度创建的格式有 ISAAC、NNVM、Poplar 和 XLA。
「置于哪一个将被成功实施,现在还不好说,但我们正在稳步前进,而最终一定会有一个从中脱颖而出,」百度的硅谷人工智能实验室高级研究员 Greg Diamos 说道。
在人工智能框架方面,亚马逊声称其 MxNet 框架及其新开发的 Gluon API 效率最高
另外,谷歌已经开始致力于自动化深度神经网络模型的简化过程,以便在智能手机、物联网(IoT)节点等任何平台上运行。
如果该项目成功的话,可以将 50 兆字节的模型缩小到只有 500 字节。
谷歌也在探索如何在手机端进行有限模型训练,其方法是调整模型的顶层网络,或是在白天收集数据,然后在夜间运行流程。
同样,SqueezeNet 和 MobileNet 等业界同行也在开发类似的成像模型,精度与其科技界的大表哥们不相上下。
「我们已经看到,机器学习正被大量应用在五花八门的产品中,」谷歌的 TensorFlow Lite 负责人 Pete Warden 说道,「支持我彻夜工作的动力,就是能够降低一丝一毫的运算能耗。」
当专家们专注于探索人工智能的未来时,他们看到了一些有趣的可能性。
目前,我们所使用的有监督学习是基于手动调整。
Warden 是谷歌的一名研究人员,他和同事们都认为,不久的将来会出现一些半监督的学习方式,例如手机等客户端设备可以独自处理一些学习任务。
而最终的目标是无监督学习——即计算机自学,无需工程师的帮助。
一直以来,研究人员都希望能够寻找出一种方法,使手机或物联网节点等设备在收集数据时可以自动对其进行标记。
「谷歌认为,在这个中间阶段,我们现在需要进行大量的计算,但是一旦可以自动标记数据,你就只需要索引新的增量内容,这更像是人类的数据处理方式,」Western Digital 首席数据科学家 Janet George 说道。
无监督学习打开了一扇通往加速机器智能时代的大门,有些人将其看作是数字天堂。
而另一些人则担心,缺少人为干预的技术可能会失控,从而带来灾难性的后果。「这就是我害怕的地方,」处理器领域资深老兵 Norm Jouppi 说道,他曾领导了谷歌的 TPU 项目。
与此同时,从事半导体研究的学术工作者对于未来的人工智能芯片有着自己的长远设想。
现在,英特尔、Graphcore 和英伟达「已经在制造全刻线(full-reticle)芯片,下一步就是三维技术,」Patterson 说道,
「在摩尔定律当道时,人们会比较排斥复杂的芯片封装技术,对其可靠性和成本问题有所顾忌。现在摩尔定律已经终结了,芯片封装领域将会出现很多其它的创新性实践。」
最终任务是创造新型的晶体管,使其可以堆叠在由逻辑和存储器组成的裸片层上。
Suman Datta 是 Notre Dame 学院的一名电气工程学教授,他认为负电容铁电晶体管很适于创建这类芯片。
在最近一次有关所谓的单片 3D 架构的会议上,他谈到了该领域的未来发展图景。这种设计利用并提高了三维 NAND 闪存在芯片堆栈中的效益。
在今年 2 月举行的国际固态电路会议(International Solid-State Circuits Conference)上,来自伯克利、麻省理工和斯坦福大学的一个团队将提出一种体系架构,同样富有远见。
芯片(下图)在带有碳纳米管制逻辑的裸片上,堆叠了电阻式 RAM(Resistive Random Access Memory,ReRAM)结构。
来自上述三校的研究人员将在 ISSCC 上介绍一种新型加速器,它使用碳纳米管、ReRAM 以及模式作为计算元素
受深度神经网络的启发,该装置采用的是近似模式,而非计算机一直以来所使用的确切数字。
这个所谓的高维计算使用成千上万维向量作为计算元素,伯克利教授 Jan Rabaey 说道,他也是该论文的贡献者之一,并且是英特尔的智能咨询委员会成员。
这种芯片可以从案例中进行学习,且其所需的操作次数远远少于传统系统,Rabaey 说。在一个关联的内存阵列中,流片前的测试芯片将使用阵列振荡器作为与 ReRAM 单元配对的模拟逻辑。
「我梦想中的引擎在场边给我作指导…... 我的目标是把人工智能的操作能耗降低到 100 毫伏以下,」Rabaey 在 IEEE 人工智能研讨会上说,
「我们需要重新思考我们的计算方式。我们的关注点正在从算法转向基于数据的系统。」
来源:EE Times、机器之能(ID:almosthuman2017),编译:王宇欣、陈韵竹、Rik R,编辑:宇多田