人们对于人工智能和物联网的最初设想是,在云端有一个异常强大的数据中心,而物联网各个节点负责采集数据交给云端,云端在根据数据分析并做决策后再把结果发还给终端。在这种模型中,云端负责智能计算,而终端节点负责数据采集以及决策执行。

什么是边际核算

最近,边际核算成为了人工智能和物联网范畴十分抢手的要害词。

人们关于人工智能和物联网的开始想象是,在云端有一个反常强壮的数据中心,而物联网各个节点担任收集数据交给云端,云端在依据数据剖析并做决议计划后再把成果发还给终端。在这种模型中,云端担任智能核算,而终端节点担任数据收集以及决议计划履行。

可是,这样的想象在实践完结中遇到了不少困难。***个困难来源于数据传输的开支。物联网节点一般都运用无线网络与云端做数据传输,而假如物联网节点把不加任何处理的原始数据一股脑悉数传到云端,会导致带宽需求爆破,网络根底架构无法支撑如此高的带宽。开支的另一部分是无线传输的功耗,假如把数据不加任何处理就传输到云端,那么终端节点的无线传输模块有必要支撑高速无线传输,这就意味着无线模块需求很大的功耗,与物联网节点低功耗的想象不符。第二个困难在于推迟。许多节点履行的使命关于推迟十分灵敏,例如无人驾驶,例如安防,在这些运用中网络传输带来的推迟(几十毫秒以上,有时分网络信号不好会带来数秒的推迟乃至掉线)无法被承受。

 边际核算探究:处理器,算法与内存 边缘计算 处理器 内存 第1张

考虑到这些问题,边际核算就成为了处理计划。在边际核算中,终端节点不再是彻底不担任核算,而是做一定量的核算和数据处理,之后把处理过的数据再传递到云端。这样一来推迟和带宽的问题能够处理,因为核算在本地,而且处理过的数据一定是从原始数据中进行过精粹的数据所以数据量会小许多。当然,详细要在边际做多少核算也取决于核算功耗和无线传输功耗的折衷——终端核算越多,核算功耗越大,无线传输功耗一般就能够更小,关于不同的体系存在不同的***值。

关于边际核算体系,处理器、算法和存储器是整个体系中最要害的三个要素。下面咱们细心剖析这几个元素。

用于边际核算的处理器:要多通用?是否要上专用加快器?

惯例物联网终端节点的处理器是一块简略的MCU,以操控意图为主,运算才能相对较弱。假如要在终端节点加边际核算才能,有两种做法,***是把这块MCU做强,例如运用新的指令集增加对矢量核算的支撑,运用多核做相似SIMD的架构等等;第二种是走异构核算的思路,MCU仍是坚持简略的操控意图,核算部分则交给专门的加快器IP来完结,现在正火的AI芯片其实大部分做的便是这样的一个专用人工智能算法加快器IP。明显,前一种思路做出来通用性好,而第二种思路则是核算效率高。未来预期两种思路会并行存在,渠道型的产品会运用***种通用化思路,而针对某种大规模运用做的定制化产品则会走专用加快器IP的思路。可是,IoT终端的专用加快器IP规划会和其他范畴(如手机)的专用加快器规划有所不同,因为有内存的约束(见下面剖析)。

算法与内存

众所周知,现在最干流的深度神经网络模型巨细一般在几MB乃至几百MB,这就给在物联网节点端的布置带来了应战。物联网节点端处于本钱和体积的考量不能加DRAM,一般用FLASH(一起用于存储操作体系等)作为体系存储器。咱们能够考虑用FLASH来存储模型权重信息,可是缓存有必要在处理器芯片上完结,因为FLASH的写入速度比较慢。因为缓存巨细一般都是在几百KB到1MB数量级,这就约束了模型的巨细,因而算法有必要能把模型做到很小,这也是为什么最近“模型紧缩”这个论题会这么火的原因。

假如算法无法把模型做到很小,就需求考虑内存内核算。内存内核算(in-memory computing)是一种与传统冯诺伊曼架构不同的核算方法。冯诺伊曼架构的做法是把处理器核算单元和存储器分隔,需求时处理器从存储器读数据,之后在处理器处理完了数据之后再写回存储器。因而传统运用冯诺伊曼架构的专用加快器大部分也需求合作DRAM内存运用,使得这样的计划在无法加DRAM的物联网节点端难以布置。内存内核算则是直接在内存内做核算而无需把数据取到处理器里,这样就节省了内存存取的额定开支。一块内存内核算的加快器的主体便是一块大SRAM或许Flash,然后在内存上再加一些核算电路,然后直接在内存内做核算,抱负情况下就能在没有DRAM的情况下跑起来相关算法。

当然内存内核算也有自己的应战。出了编程模型需求细心考虑之外,内存内核算现在的完结计划本质上都是做模拟核算,因而核算精度有限,FP32之类的高精度肯定是不可能了。这就需求人工智能模型和算法做相应合作,关于低精度核算(即量化核算,quantized computation)有很好的支撑,防止在低精度核算下丢失太多正确率。现在已经有不少binary neural network(BNN)呈现,即核算的时分只要1位精度0或许1,而且依然能坚持合理的分类准确率。

另一方面,现在IoT节点终端内存不行的问题除了能够用模型紧缩来处理之外,另一条路便是运用新存储器处理计划来完结高密度片上内存,或许加快片外非易失性存储器的读写速度,并下降读写功耗。因而,边际核算也将会催生新内存器材,例如MRAM,ReRAM等等。

总结

边际核算是人工智能和物联网结合的产品,是未来的重要趋势。未来边际核算的要害技能,包含新处理器(强通用处理器或专用加快器),内存内核算,网络模型紧缩,以及新存储器。喜爱新技能的朋友们无妨多多重视这些范畴,估计会呈现不少风趣的公司和技能。

转载请说明出处
知优网 » 边际核算探究:处理器,算法与内存

发表评论

您需要后才能发表评论