美文网首页嵌牛IT观察
TeamNet:一个边缘协作推理框架

TeamNet:一个边缘协作推理框架

作者: 贺超333 | 来源:发表于2020-12-09 11:39 被阅读0次

姓名:胡娟

学号:20021110092

转自:https://mp.weixin.qq.com/s/6L81yG7b5Xv4J5zFF7Aqxw

【嵌牛导读】随着无线链路容量的显著增加,边缘设备之间的联系比以往更加紧密。这使得在连接的边缘设备上形成人工神经网络(ANN)联盟成为了可能。此外,是否解决划分问题是分布式神经网络能否推理成功的关键,但是由于大多数神经网络模型的知识表示不明确,划分问题一直没有得到解决。我们提出了一种基于心理上可行的竞争性和选择性学习方案的新颖的分区方法(TeamNet),同时与其他现有分布式机器学习方法进行了全面比较,仔细评估了其性能。实验表明,具有套接字和传输控制协议(TCP)的TeamNet明显优于复杂的消息传递接口(MPI)方法和最新的专家混合(MoE)方法。在不影响预测准确性的情况下,ANN推理的响应时间缩短了多达53%。TeamNet对于在连接的边缘设备上分布ANN推理机并为未来的应用形成边缘智能提供了广阔的前景。

【嵌牛鼻子】TeamNet

【嵌牛正文】

在大规模的图像识别任务中,深度神经网络通常消耗几十GB的RAM以及GPU和CPU上的大量算力。它们的资源消耗可以由云环境容纳,但通常无法由单个边缘设备处理,因为它们的处理能力和内存有限。这样的资源消耗可以由云环境来解决。但是由于单个边缘设备有限的处理能力和内存,通常无法进行同样的计算。以NVIDIA推出的人工智能计算平台Jetson TX2为例:Jetson TX2上有256个NVIDIA CUDA核心;而由高性能计算数据中心集团Compute Canada管理的Helios集群具有120个NVIDIA K20 GPU(其每个具有2496个CUDA内核)和96个NVIDIA K80 GPU(其每个具有4992个CUDA内核)。相比之下,其CUDA核心数是Jetson TX2的3042倍。

系统流程

一,模型训练

图1 训练阶段

①训练阶段,每个专家(即模型)对数据集知识的了解都非常有限,但是每个专家都对数据集中的某些数据比其他节点更确定。如上图,有两个专家,分别更加了解圆形和方形的数据点。

②然后,每位专家根据自己的偏好从数据集中选择数据进行学习。

③经过训练,每个专家都可以从整个数据集中学习到自己更了解的数据。

④令表示对于专家i,给定输入x∈X,输出c的概率。则对于输入x,专家i的预测熵为

模型的预测熵反映了对相同分布的训练数据中抽取的数据实例进行预测的结果的“不确定性”。

图2  基于GateG的数据分配

上图给出了用于训练专家的神经网络(GateG部分)。所有专家的神经网络都使用随机权重进行初始化。神经网络的训练是在多轮迭代中完成的。在每轮迭代中,首先将训练数据重新组合,然后分成相同大小的批次。每一批次的数据都提供给所有专家,以计算他们各自的预测熵值。计算出的预测熵值用作为GateG神经网络的输入,并训练该网络在每一批次中分配给每个专家不同的样本。分配完成后,每个专家使用反向传播来训练自己的神经网络。

二,推理

图3  推理阶段

①推理阶段,每个专家都被部署到一个边缘节点。其中有一个边缘节点,称为主节点,负责接收传感器数据。

②主节点广播数据到其他边缘节点,这些节点称为工人节点。

③然后,所有节点执行并行推理。

④推理完成后,主节点收集工人节点的推理结果。

⑤最后,主节点比较自己和工人节点推理结果的不确定性,并选择不确定性最小的一个作为最终结果。

专家训练完成后,在推理阶段,给定一个新的实例x,每个专家做出自己的预测并计算各自的预测熵。然后使用GateG预测熵,选择不确定性最小的专家的预测作为最终输出。这个过程如图4所示。

图4  推理阶段流程 图5 准确率、推理时间、内存占用和CPU占用随专家数量的变化(1/2/4)

上图是在树莓派3B+上运行手写数字识别训练的结果。可以看到,随着TeamNet中专家数量增多,推理速度会变快、内存和CPU占用也会减少,而准确率几乎不受影响。

性能评估

图6  使用CPU和CPU+GPU的计算延迟

对于图像分析类任务,使用了Jetson的CPU和GPU。如上图,当只使用CPU进行计算时,随着专家的增多,推理速度会变快,而且推理准确性不受影响。当使用GPU参与计算时,推理时间的最小值出现在两个专家的情况下。这是因为网络上存在恒定的通信成本,当通信延迟大于推理计算所需的实际时间时,推理所用的总时间就不再下降,就无法实现更短的推理计算时间。但是当推理模型的规模足够大时,通信的代价小于计算的代价,这时可以通过增加专家数量来加快推理。

图7  专家数量和模型收敛情况

通过监控训练过程中每次迭代分配给各个专家的数据及每个专家的输出,以此来对TeamNet对于图像任务的收敛性。对于两个/四个专家的情况来说,经过32000轮迭代,其比例都可以收敛到对应值。

图8  训练结果展示

在实验中,我们进一步研究了训练算法所强制的专业化效果。实验在CIFAR-10数据集上进行。数据集中有10个类别,例如飞机,鸟类和猫。当TeamNet中有两名专家时,我们观察到专家一更能确定飞机,汽车,轮船和卡车等机器;而专家2对鸟类,猫和马等动物更加了解(如图8a)。当TeamNet中有四位专家时,我们观察到专家一和专家四对动物的确定性更高,并且每个人都掌握了这一类别的一半。另一方面,专家二和专家三对机器的把握更大:专家二对卡车和汽车的了解更多,而专家三对船和飞机的了解更多(如图8b)。

论文出处:

Y. Fang, Z. Jin and R. Zheng, "TeamNet: A Collaborative Inference Framework on the Edge," 2019 IEEE 39th International Conference on Distributed Computing Systems (ICDCS), Dallas, TX, USA, 2019, pp. 1487-1496, doi: 10.1109/ICDCS.2019.00148.

相关文章

  • TeamNet:一个边缘协作推理框架

    姓名:胡娟 学号:20021110092 转自:https://mp.weixin.qq.com/s/6L81yG...

  • Scrapy框架的基本使用

    1:什么是Scrapy框架 Scrapy一个开源和协作的框架是基于twisted框架开发而来,twisted是一个...

  • 10. Sqoop介绍

    1.大数据协作框架: 大数据协作框架是Hadoop 2.x生态系统中几个辅助框架。最为常见的是以下几个: 数据转换...

  • COMPAS框架

    COMPAS框架 COMPAS是一个开源的,基于Python的计算框架,用于架构,工程和数字制作方面的协作和研究。...

  • 科学性外展推理

    【书籍/课程名称】《金字塔原理》附录1 科学性外展推理 【类型】书籍目录框架/课程框架 【关键词】 * 外展推理,...

  • Angular 2架构总览

    Angular 2是一个帮助我们使用HTML和JavaScript构建客户端应用的框架。这个框架包含几个互相协作的...

  • 设计模式、框架、架构

    设计模式 工厂模式、适配器模式、策略模式等等 框架 一个框架可以包含多个设计模式。框架就是一组相互协作的类,对于特...

  • 详解谷歌人工智能“黑科技”:边缘计算Coral Edge TPU

    Edge TPU:Google 专门为在边缘进行推理而打造的 ASIC。 在边缘运行的 AI 如今,从消费者应用到...

  • 大数据协作框架

    因为要协作使用,各组件之间的版本要适应,Cloudera对大数据组件进行了匹配,这里我使用CDH5.3.6套件、J...

  • 设计模式分类

    模式分类 组件协作 现代软件专业分工之后的第一个结果是“框架与应用程序的划分”,“组件协作”模式通过晚绑定,来实现...

网友评论

    本文标题:TeamNet:一个边缘协作推理框架

    本文链接:https://www.haomeiwen.com/subject/inqhgktx.html