(文章来源:网易科技)
在商业软件中,电脑芯片已被遗忘。对于商业应用程序来说,这是一种商品。由于机器人技术与个人硬件设备联系更为紧密,因而制造应用程序仍然更侧重于硬件部分。
这有助于理解GPU的价值,因为GPU加速了深度学习应用程序所需的张量(tensor)处理。FPGA的兴趣点则在于寻找研究新AI算法的途径,训练这些系统,并开始部署现在正在许多工业AI应用中研究的低容量定制系统。尽管这是关于FPGA进行训练的能力研究讨论,但我认为早期使用是源于F,现场(field)的使用。
有两类主要的芯片设计可以驱动当前的ML系统,GPU和FPGA。在未来的中期(至少几年),也有可能成为游戏转换者的新技术暗示。让我们来看看。机器学习世界中最大的芯片是图形处理单元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在其基本架构和以更低精度运行推理的能力方面继续加速推进(这将是另一个话题,意味着更少的位,即意味着更快的处理)。但是,当涉及物联网时还有其他问题需要考虑。
在现场(field)中,所有类型的应用程序都有不同的需求。有很多不同的应用领域,车辆,管线,机器人等等。不同行业可以为每种类型的应用设计不同的芯片,但这可能会非常昂贵并且会破坏公司的投资回报率。还可能推迟上市时间,错过重要的商业机会。对于那些不能提供足够规模经济市场的高度个性化需求而言,情况尤其如此。
FPGA是帮助公司和研究人员解决问题的芯片。FPGA是一种集成电路,可以编程为多种用途。它有一系列“可编程逻辑块”和一种编程块和块之间关系的方法。它是一种通用工具,可以为多种用途进行定制。主要供应商包括赛灵思(Xinlinx)和美国国家仪器(NaTIonal Instruments)。
值得注意的是,芯片设计成本较低的问题并不能使FPGA成为低价位的选择。它们通常最适用于研究或工业应用。电路和设计的复杂性使其可编程,不适用于低成本的消费类应用。
由于FPGA可以重新编程,这使得其对于新兴的机器学习领域来说很有价值。不断增加算法,并通过重新编程块来针对不同算法进行微调。此外,低精度推断的低功耗FPGA对于远程传感器来说是一个很好的组合。虽然发明人将“现场(field)”更多地称为“客户(customer)”,但FPGA在实现AI应用方面的真正优势在实际领域中。无论是对于工厂、道路和管道等基础设施,还是无人机远程检测,FPGA都允许系统设计人员灵活地使用一块硬件,以实现多种用途,从而实现更简单的物理设计,从而可以更加容易地进行现场应用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)