AI芯片业务才是英特尔的未来。去年,英特尔的AI芯片部门创收高达10亿美元,英特尔预计这一市场还会以每年30%的速度增长,有望从2017年的25亿美元增长到2022年的100亿美元。如此看来,英特尔目前以数据为中心的收入占到了其所有部门所有业务的一半,比5年前上涨了大约1/3。
但尽管如此,英伟达(Nvidia)、高通、迈威尔(Marvell)和AMD等公司带来的竞争也日益加剧;Hailo科技公司、Graphcore、Wave Computing、Esperanto和Quadric等创业公司也加入了这场角逐;甚至连亚马逊也有可能威胁到英特尔的收益,因此,英特尔并没没有满足于自己的成就。2015年,英特尔先是收购了现场可编程门阵列(Field Programmable Gate Array,简称FPGA)的制造商Altera,一年后又收购了Nervana,填补了其硬件平台产品的空缺,为全新一代AI加速器芯片组奠定了基础。去年8月,英特尔又拿下了Vertex.ai——这是一家开发平台无关的AI模型套件的创业公司。
然而,英特尔的野心却并未止步于此。在近日的采访中,英特尔副总裁兼架构总经理Gadi Singer以及与英特尔人工智能产品部门高级主管Casimir Wierzynski透露了英特尔在基于光并以AI加速的光子电路和光学芯片方面的积极探索。
Singer表示:“人工智能硬件是一个价值数十亿美元的商机。我们会投资几个产品线,因为该领域的需求非常广泛。其中一些产品(比如加速器等)将侧重于节能,这是这些产品独有的特点。因此,投资这个领域可以让我们的投资组合相辅相成。”
软件
Singer指出,如果硬件上相应软件的开发难度太大,那么硬件将毫无价值。因此,英特尔会绝对不会忽视AI领域的软件生态系统。
去年4月,英特尔宣布开源nGraph——这是一种神经网络模型编译器,它能够在多处理器架构上对汇编代码进行优化。大约在同一时期内,英特尔还推出了One API,这套工具可以将计算引擎映射到一系列的处理器、图形芯片、FPGA以及其他加速器。5月份,英特尔新成立的人工智能实验室免费开放了一个用于自然语言处理的跨平台库NLP Architect,该库可以为聊天助手提供名称实体识别,意图提取和语义分析等功能,同时提供相应的评测。
Singer指出,英特尔已开源的工具包远不止这些。如今,英特尔还提供了神经网络压缩库Distiller,这个库可以从AI模型中去除与目标任务无关的部分,从而达到缩小模型的目的。还有一个增强学习框架Coach,可以让用户将AI代理嵌入到机器人和自动驾驶车辆的训练环境中。
2018年春季,英特尔推出了OpenVINO(Open Visual Inference & Neural Network Optimization,开放视觉推断及神经网络优化),这是一个用于AI边缘计算开发的工具套件,集成了用于目标检测、面部识别以及目标跟踪等一系列预先训练好的AI模型。这套工具适用于传统的CPU,(在使用训练好的AI模型进行预测时)也可以用于FPGA等专门用于推断的芯片,目前这套工具已经被美国通用电气医疗集团等公司用于医疗成像,还被Dahua等公司用于智能城市服务。
Singer表示,OpenVINO旨在打造英特尔的计算机视觉软件开发套件(SDK),这套工具集视频处理、计算机视觉、机器学习以及流水线优化于一身,其使用了Movidius Neural Compute SDK(该SDK中包含一套软件,用于编译、配置并检查机器学习模型)。两者与英特尔的Movidius神经计算API属于同一个系列,目的是为了简化C、C++和Python等编程语言的应用开发。
其中许多套件都运行在英特尔的AI DevCloud中,这是一个云托管AI模型训练及推断平台,其背后是强大的Xeon可扩展处理器。DevCloud提供可扩展的存储和计算资源,因此开发人员能够针对硬件(例如Aaeon Technologies等制造商提供的mini-PCIe开发板)远程进行测试、优化以及模型验证。
隐私
Singer表示,英特尔深知保护隐私是AI训练以及推断的重要发展趋势之一,去年年底HE-Transformer的开源就是英特尔迈出的重要的第一步。从大的方面来说,HE-Transformer是一个建立在微软研究院的简单加密算法库(Simple Encrypted Arithmetic Library,简称SEAL)上的nGraph后端,允许模型对加密数据进行操作。
HE-Transformer中“HE”代表“同态加密”(homomorphic encryption),这种加密形式允许使用算法加密的明文。它生成的加密计算结果经过解密后,与针对未加密文本执行的操作结果完全匹配。
HE-Transformer实际上是一个抽象层,该抽象层可应用于Google的TensorFlow、Facebook的PyTorch和MXNet等开源框架上的神经网络。
Singer表示:“我们相信安全和隐私极其重要。这实际上是大规模机器学习的基本条件。例如,如果你需要获取多家医院的很多患者的信息,那么隐私问题就会变得非常重要。即使你想了解这些人的行为和动作,但是如果你无法保护他们的隐私,那么他们就不会允许你访问这些数据。”
在谈到英特尔是否会继续开发类似于Google TensorFlow Privacy(这个库采用了一系列统计技术来保证AI模型训练的隐私)的机器学习库时,Singer表示相关的工作正在进行中,他说:“现阶段我们还不想讨论这个问题,因为我们的深度学习能力还处于早期阶段,但是我们非常有兴趣,也愿意投资这方面。”
加速器与FPGA
绝大多数AI系统核心的神经网络的构成元素是神经元,即近似模拟生物神经元而建模的数学函数。这些神经元分层排列,它们通过“突触”(synapse)连接,将信号传递给其他神经元。这些信号(提供给神经网络的数据,或者叫输入)在层与层之间传播,并通过调整每个连接的突触强度(权重)来逐步“调整”网络。经过一段时间后,神经网络就能从数据集中提取特征,并识别出跨样本趋势,最终学会预测。
神经网络无法摄取原始的图像、视频、音频或文本。训练数据集的样本需要经过代数转换后变成多维数组,例如标量(单个数字)、向量(有序的标量数组)以及矩阵(排列成多行多列的标量)。还有一种实体类型叫做张量(tensor),它概括了标量、向量和矩阵,并提供了线性变换(或线性关系)的功能。
例如,一张包含数百万像素的图像会转换成超大的数字矩阵,而音频记录中的单词和短语可以映射成向量,这种技术称为嵌入。
毫无疑问,在处理这些统计操作时,有些硬件的效率更高。一般来说,处理器足以处理一些涉及到复杂顺序计算的推断和训练,特别是像英特尔第二代Xeon可扩展CPU,它结合了向量神经网络指令以及名为DL Boost AI的深度学习软件优化。因此,英特尔声称其第二代Xeon可扩展CPU可以将AI工作负载上的性能提高到2.4倍(这些工作负载占数据中心推断的60%),同时可以将推断工作负载的性能提高到14倍,其中包括图像识别、目标检测和图像分割等。英特尔还声称其即将推出的10nm Ice Lake 处理器能够提供比市场上同类产品最多高8.8倍的AI推断吞吐量。
然而,一些最苛刻的深度学习涉及张量操作,而显卡以及专用集成电路(Application Specific Integrated Circuit,简称ASIC)的芯片更有利于这些操作。这是因为这些芯片包含数千个能够并行执行数百万次数学计算的内核。
Singer表示:“尽管CPU对于推断非常有效,但是有些情况下需要进行张量操作。深度学习中最苛刻的任务需要处理多维数组,而且还需要进行张量上进行多种算术运算。从解决方案体系结构的角度来看,我们应该从优化软件和其他硬件功能方面不断强化CPU,然而仅靠CPU本身并不足以处理所有这类情形。”
英特尔拥有16nm Myriad X VPU这样的视觉处理器,它的优化图像信号处理和推断设备具有立体声模块,可以处理最高180Hz的双720p视频源,还拥有采用硬件编码的可调信号处理器流水线,能够对来自8个传感器的最大4K分辨率的视频进行编码。此外,它还配备了英特尔的神经计算引擎,这是一种专用的硬件加速器,具有本地 FP16支持和8位定点支持。
英特尔声称,这款芯片在全速运转时可以达到每秒4万亿次计算和每秒1万亿次运算的专用神经网络计算,是其前身(Myriad 2)在深度神经网络推断性能的10倍。
FPGA 与专用的加速器不太一样,因为它们的硬件往往针对通用的、更广泛的计算和数据功能。但它们在可编程性方面确实有优势,因此开发人员能够在成品上对它们进行配置和重新配置。这可能是微软为Project Brain Wave选择英特尔Stratix 10 FPGA的原因之一,Project Brainwave是一项针对加速深度神经网络训练与部署而优化的云服务。
英特尔在Agilex上提供了最先进的FPGA解决方案,其最新的10nm嵌入式芯片组旨在解决企业网络和数据中心的“以数据为中心”的难题。
Agilex产品具有可定制的异构3D系统级封装,包括模拟、内存、计算和定制 I/O 组件——其中包括 DDR5、 HBM,还有一块Intel Optane DC。它们得到了英特尔One API的全面支持,并且还提供了迁移到ASIC的解决办法。
英特尔声称,与英特尔老式的14nm Stratix10FPGA相比,Agilex FPGA的性能提高了40%,总功耗则降低了40%,这部分要归功于他们的第二代 HyperFlex 架构。