微软的研究职员现场展示了 Brainwave 的威力:在利用英特尔最新的 Stratix 10 FPGA(现场可编程门阵列)芯片的情形下,Brainwave 运行 Gated Recurrent Unit(LSTM的变种)的浮点运算速率可高达 39.5 TFLOPS,并且不须要任何批量处理,即芯片可以即时处理每一项提交上去的要求,为机器学习系统供应实时的见地。
对付用户来说,低延迟是大规模支配机器学习系统时必须知足的一个哀求,由于他们不会有太多耐心等待 APP 反应。
“我们须要‘即时AI’,由于你在提交要求后,会想急速得到反馈,不论是视频播放、对话,还是检测网络入侵者和非常状况,你会期望 APP 都能即时反馈”,微软研究所的工程师 Doug Burger 说。
然而,之前的硬件加速机器学习系统干系的研究却看重于捐躯延迟来实现高流量。Burger 认为,须要思考的是,在不对要求进行批量处理时,机器学习加速器的反应速率。“其他人给出的数字都注水了。”
由于 FPGA 属于可编程芯片,它可以让开发者专门为各种功能对硬件进行优化设置,比如设置出可以快速处理神经网络所需的数学打算的硬件。微软已在其数据中央安装了数十万枚 FPGA。而这些 FPGA 已经开始利用 Brainwave,让微软的各种做事可以更迅速地支持人工智能功能。此外,微软还将通过旗下 Azure 云做事,向第三方客户供应 Brainwave。
在这些 FPGA 上,Brainwave 会提前设置好一个经由演习的机器学习模型。之后,它们就可以被用来做识别笔墨、辨别图像等机器学习任务了。对付一个较大的文件,Brainwave 的软件可以将它分拆到多个芯片上进行打算。而这个模型将永存与这些 FPGA 上,直到微软选择对其进行升级。
微软并不是唯一一家投资于加速机器学习硬件的公司。今年年初,谷歌就曾揭晓其机器学习演习和运行的专用芯片——TPU(Tensor Processing Unit)的第二个版本。此外,还有多家初创公司正在开拓机器学习加速硬件。
然而,各方各界对付机器学习加速硬件的意见却并不一样。有些人认为,FPGA比专门为机器学习而设计的 ASIC(专用集成电路)效率更低,速率更慢。Burger 表示,他们在 FPGA 上所展现的性能足以回嘴这一说法,让人们见识到FPGA 也可以供应高性能。
而且,本日微软的展示的 Stratix 10 是一款全新芯片,还有与英特尔互助优化的空间。据Burger打算,利用 Stratix 10 的 Brainwave 的运算速率最高该当可以实现 90 TFLOPS。
目前,Brainwave 只支持在微软 CNTK 框架和谷歌 TensorFlow 框架下的模型。其团队正开拓兼容 Caffe 等其他框架的 Brainwave 版本。微软表示,未来,第三方客户将可以在 Brainwave 上运行任何模型,不过并未给出 Brainwave 全面上市的韶光表。