GPU、FPGA芯片成为增强机器学习的“左膀右臂”

2018-06-18 14:00:56 来源: 老杳吧
【网易智能讯6月17日消息】在商业软件中,电脑芯片已被遗忘。对于商业应用程序来说,这是一种商品。由于机器人技术与个人硬件设备联系更为紧密,因而制造应用程序仍然更侧重于硬件部分。

自20世纪70年代以来,整体上看,人工智能(AI)的现状,以及具体到深度学习(DL)领域,硬件与软件的关系比任何时候都联系地更加紧密。而我最近几篇“管理人工智能(management AI)”的文章与过度拟合和偏见有关,机器学习(ML)系统中存在的两个主要风险。本专栏将深入探讨许多管理人员,尤其是业务线经理可能会处理的硬件缩略词问题,这些缩略词在机器学习系统中被不断提及:图形处理单元(Graphics Processing Unit ,GPU)和现场可编程门阵列(Field Programmable Gate Array ,FPGA)。

这有助于理解GPU的价值,因为GPU加速了深度学习应用程序所需的张量(tensor)处理。FPGA的兴趣点则在于寻找研究新AI算法的途径,训练这些系统,并开始部署现在正在许多工业AI应用中研究的低容量定制系统。尽管这是关于FPGA进行训练的能力研究讨论,但我认为早期使用是源于F,现场(field)的使用。

例如,训练一个推理引擎(机器学习“机器”的核心)可能需要千兆字节,甚至兆兆字节的数据。在数据中心运行推理时,计算机必须管理一个潜在的不断增加中的并发用户请求数。在边缘应用程序中,无论是在用于检查管道的无人机中还是在智能手机中,设备都必须很小且仍然有效,而且还具有适应性。简单地说,一个CPU和一个GPU是两个器件,而一个FPGA可以有不同的块做不同的事情,并有可能提供一个稳健的芯片系统。鉴于所有这些不同的需求,最好了解可支持不同需求的系统架构的当前状态。

有两类主要的芯片设计可以驱动当前的ML系统,GPU和FPGA。在未来的中期(至少几年),也有可能成为游戏转换者的新技术暗示。让我们来看看。

图形处理单元(GPU)


机器学习世界中最大的芯片是图形处理单元GPU。这个主要用于电脑游戏,让其在计算机显示器上看起来更好的东西是如何变得对机器学习至关重要的?要理解这一点,我们必须回到软件层。

机器学习目前的冠军是Deep Learning(DL)系统。DL系统基于各种算法,包括深度神经网络(DNN),卷积神经网络(CNN),递归神经网络(RNN)以及许多其他变体。你在这三个术语中看到的关键词是“网络(network)”。算法是一个主题的变体,主题是几层节点, 节点和层之间有不同类型的通信。

正在处理的是多个阵列或矩阵。矩阵(matrix)的另一个更为精确的术语是张量(tensor),因此它在整个机器学习行业中用于诸如TensorFlow之类。

现在回到你的电脑屏幕。您可以将它按行和列看作是像素或点的矩阵。这是一个二维矩阵或张量。当你添加颜色,添加到每个像素的位大小,想要一个快速变化的一致图像的时候,计算可以很快变得复杂并且在一步一步的CPU中占用周期。而GPU拥有自己的内存,可以将整个图形图像保存为矩阵。然后可以使用张量数学计算图像中的变化,然后只更改屏幕上受影响的像素。这个过程比每次更改图像时重新绘制整个屏幕要快得多。

NVIDIA于1993年,旨在创建一个芯片来解决诸如CPU等通用计算机无法解决的矩阵问题。这是GPU的诞生。

矩阵运算并不关心最终产品是什么,而只是处理元素。这是一种轻微的过度简化,因为不同的运算依稀疏矩阵(当有很多零时)与密集矩阵的不同而有不同的工作方式,但内容不会改变运算,这个事实依然存在。当深度学习理论学者看到GPU的发展时,他们很快就采用其来加速张量运算。

GPU对机器学习的发展至关重要,推动了数据中心的训练和推理。例如,NVIDIA Volta V100 Tensor Core在其基本架构和以更低精度运行推理的能力方面继续加速推进(这将是另一个话题,意味着更少的位,即意味着更快的处理)。但是,当涉及物联网时还有其他问题需要考虑。

现场可编程门阵列(FPGA)


在现场(field)中,所有类型的应用程序都有不同的需求。有很多不同的应用领域,车辆,管线,机器人等等。不同行业可以为每种类型的应用设计不同的芯片,但这可能会非常昂贵并且会破坏公司的投资回报率。还可能推迟上市时间,错过重要的商业机会。对于那些不能提供足够规模经济市场的高度个性化需求而言,情况尤其如此。

FPGA是帮助公司和研究人员解决问题的芯片。FPGA是一种集成电路,可以编程为多种用途。它有一系列“可编程逻辑块”和一种编程块和块之间关系的方法。它是一种通用工具,可以为多种用途进行定制。主要供应商包括赛灵思(Xinlinx)和美国国家仪器(National Instruments)。

值得注意的是,芯片设计成本较低的问题并不能使FPGA成为低价位的选择。它们通常最适用于研究或工业应用。电路和设计的复杂性使其可编程,不适用于低成本的消费类应用。

由于FPGA可以重新编程,这使得其对于新兴的机器学习领域来说很有价值。不断增加算法,并通过重新编程块来针对不同算法进行微调。此外,低精度推断的低功耗FPGA对于远程传感器来说是一个很好的组合。虽然发明人将“现场(field)”更多地称为“客户(customer)”,但FPGA在实现AI应用方面的真正优势在实际领域中。无论是对于工厂、道路和管道等基础设施,还是无人机远程检测,FPGA都允许系统设计人员灵活地使用一块硬件,以实现多种用途,从而实现更简单的物理设计,从而可以更加容易地进行现场应用。

新体系结构即将到来

GPU和FPGA是目前正在帮助解决如何扩大机器学习对许多市场影响的挑战的技术。他们所做的是让更多人关注这个行业的发展,并试图及时创建新的架构来应用。

一方面,许多公司试图在GPU上学习张量运算的教训。惠普、IBM和英特尔都有开发专门用于深度学习的下一代张量运算设备的项目。与此同时,像Cambricon、Graphcore和Wave Computing这样的初创公司也在努力做同样的事情。

另一方面,Arm、Intel和其他公司正在设计架构,以充分利用GPU和CPU,并使器件也瞄准机器学习市场,据称能够做的不仅仅是集中张量运算,对于围绕核心AI流程的其他处理也更加强大。

虽然上述一些组织专注于数据中心和其他物联网,但现在谈论其中的任何一个都为时尚早。

从全球公司到初创公司,一个告诫是,除了最早的信息外,还没有其他信息出现。如果我们最迟在2020年看到最早的器件样品,那么这将是一个惊喜,所以它们至少在五年内不会上市。

(选自:forbes 作者:David A. Teich 编译:网易智能 参与:nariiy)


责任编辑:星野
半导体行业观察
摩尔芯闻

热门评论