18.luck新利
的意见

那里的道路:在硅实现机器学习

从大功率、高性能,低功耗,高性能。

受欢迎程度

机器学习(ML)到处都是。常见的线程之间的高级驾驶员辅助系统(ADAS)视觉应用程序在我们的汽车和声音(现在面部)识别应用在我们的手机是ML算法做繁重,或者更准确地说,推论。事实上,神经网络(NN)甚至可以用于应用程序空间文件压缩等[1]。

毫升的世界里,你经常听到的复杂性和难度训练模型。培训往往是做的云通过AWS服务或谷歌云使用深度学习框架TensorFlow或咖啡等,但也可以用cpu或GPUs-often农场。最近,像英特尔Nervana专业产品,NVIDIA沃尔特,谷歌云TPU专门介绍了减少训练时间。在任何情况下,训练通常是一个高性能、大功率应用。

对于许多类型的ML应用程序,通过训练模型(即推论。训练模型,利用手头的任务)可以留在云。例如,云是一个简单和廉价的方式利用专有的ML算法进行财务预测。

在其他情况下,如汽车、安全、移动、或物联网应用程序,这种类型的实现可能不是可行的。例如,你想要自主汽车制动系统包括往返的云?(甚至会认为云总是可用的,无论你在哪里开车。)相反,必须实现本地设备,汽车,安全摄像头,手表或传感器。

这就是低功率发挥作用了。虽然这些汽车的权力配置文件,安全摄像头,手表和传感器有很大的不同,他们每个人都需要一个数量级减少权力从CPU / GPU云/农场实现。当然,一个农场的gpu并不适合你的手表。

当地推论的选择
相反,训练有素的ML模式必须实现在一个小得多的节能方式硅(ASIC或FPGA)和软件的设备。如图1所示,两个典型实现选项包括使用神经network-optimized嵌入式数字信号处理器(NN DSP)(例如,节奏Tensilica愿景C5 DSP)或创建一个定制的实现通过高级训练模型的合成(HLS)例如,节奏层云。

实现选项都比CPU或GPU实现更省电,和两个选项是足够小,适合在定制的硅。主要的权衡成为灵活性和功率效率。

NN DSP执行指令,所以改变固件允许NN DSP来实现不同的自定义神经网络拓扑结构,即使在现场通过固件升级。另一方面,自定义硬件将实现一个特定的ML拓扑(通常但不总是一个神经网络)。虽然再培训或强化培训通常可能都实现,只有NN DSP将允许从根本上改变神经网络拓扑结构。

另一方面,自定义硬件将是最节能,因为它实现了(只)毫升训练模型。datapath公司完全定制的具体模式,并没有做什么,例如,指令获取。同时提高电源效率成本的灵活性。

为什么高级合成为自定义毫升硬件?
毫升训练模型的实现通常是完成HLS,虽然理论上可以由RTL写的字。HLS的优势是它的优点最大化定制硬件方面的力量——(和面积-和性能)的效率。因为HLS始于SystemC或c++的高级模型,它可以很容易地修改,以探索不同的实现方案。

作为一个简单的例子,计算可以精确的进行拨号幂,性能、面积和准确性(PPA-A)特性的实现。而香草训练毫升模型通常是使用浮点精度是“免费”当使用一个CPU或GPU,合适的精度通常可以与8位或较小的定点实现权力和区域的一小部分。

同样,建筑本身可以调整。一些连接可以本地化,激活函数可以改变甚至隐藏层的数量可以被修改来找到最好的给定end-application PPA-A权衡。

在RTL实现这些变化不会可行写每个RTL实现所需的时间。另一方面,在SystemC,这些变化可以是微不足道的。每个模型应该执行确定的准确性。如果足够好,合成HLS得到权力,通过性能和面积指标的实现。改变模型,并重复这个过程,最终你得到的一系列实现为应用程序选择最佳PPA-A概要文件。

引用
[1]t . Chen等人“BenchNN:广泛的潜在应用范围的硬件神经网络加速器,“2012年IEEE国际研讨会上负载特性(IISWC),拉霍亚,CA, 2012, pp。36-45。



留下一个回复


(注意:这个名字会显示公开)

Baidu