CN111445026B - 面向边缘智能应用的深度神经网络多路径推理加速方法 - Google Patents

面向边缘智能应用的深度神经网络多路径推理加速方法 Download PDF

Info

Publication number
CN111445026B
CN111445026B CN202010180260.7A CN202010180260A CN111445026B CN 111445026 B CN111445026 B CN 111445026B CN 202010180260 A CN202010180260 A CN 202010180260A CN 111445026 B CN111445026 B CN 111445026B
Authority
CN
China
Prior art keywords
layer
exit
edge
reasoning
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010180260.7A
Other languages
English (en)
Other versions
CN111445026A (zh
Inventor
东方
王慧田
沈典
蔡光兴
黄兆武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN202010180260.7A priority Critical patent/CN111445026B/zh
Publication of CN111445026A publication Critical patent/CN111445026A/zh
Application granted granted Critical
Publication of CN111445026B publication Critical patent/CN111445026B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开一种面向边缘智能应用的深度神经网络多路径推理加速方法,首先分析深度神经网络各层设置提前退出分支出口的分类能力与计算成本,选择推理效益最大的出口组合添加至原模型;然后在出口与主干层之间设置门限单元并加以训练,判断任务是否能在当前出口退出;对于无法在终端层提前退出而必须传输至边缘层的任务,压缩其中间特征数据;最后在边缘计算环境下在线监测分析网络负载和终端、边缘设备的计算能力,以最小化推理时延为目标对多路径模型进行切割,模型切块分别部署在终端层与边缘层,最终形成多路径推理加速框架。此种方法能够提高推理的灵活性,保证准确率,降低推理总时延,满足边缘智能应用的实时性与高精度需求。

Description

面向边缘智能应用的深度神经网络多路径推理加速方法
技术领域
本发明属于边缘智能领域和深度学习领域,具体地说是在边缘计算环境中部署智能应用的场景下,实现应用所依赖的深度学习模型推理优化加速的方法。
背景技术
在人工智能高速发展期间,深度神经网络(Deep Neural Network,DNN)凭借其强大的学习能力,在计算机视觉或自然语言处理等经典任务场景下均取得了相当优异的效果。同时,随着物联网时代的发展,智能摄像头、智能传感器以及各类物联网设备等智能终端快速普及,使得深度学习算法成功运用于一些实际部署,例如人脸识别、智能安防等场景。终端智能化成为当前物联网时代发展的必然趋势,越来越多的智能终端应用在关注并解决实际问题,对应用的实时性与准确性提出了严格的要求。智能应用往往是数据密集型与计算密集型任务,它所依赖的深度神经网络模型,主要通过增加网络深度、优化网络结构来获得更优的特征表达与学习推理能力,以达到更高的准确率。然而,更深的模型极大地增加了推理延迟与计算能耗,例如ResNet-50所需的浮点运算量已达到4×109,这些计算成本对于资源受限、能耗敏感的移动智能终端来说难以接受。因此,传统的方法选择集中式计算,将智能终端采集的源数据上传到资源丰富、算力密集的云数据中心进行处理。然而,云数据中心与终端设备之间存在远距离、高延迟的特点,同时物联网时代预测产生超过850ZB的数据量,类似自动驾驶这类数据密集型与计算密集型的场景,集中式计算已无法满足应用的实时性要求。加之GPU元件昂贵的制造成本,在移动智能终端上运行深度学习应用面临着巨大的阻力。
针对集中式计算的高延迟问题与智能终端面临的高能耗问题,现有的研究工作主要从计算模型与深度神经网络模型两个方面进行革新与优化。在计算模型方面,美国太平洋西北国家实验室于2013年提出边缘计算(Edge Computing),即在网络边缘执行计算的一种新型计算模型,其操作的对象包括来自于云服务的下行数据和来自万物互联服务的上行数据。边缘计算的目的在于有效减少计算***的延迟,减少数据传输的带宽负载,缓解云数据中心的计算和存储压力,提高可用性,并保护数据安全和隐私。边缘计算的特点是在云数据中心层和终端设备层之间定义了边缘设备层,边缘设备可以是数据源到云计算中心路径之间的任意计算和网络资源,包括路由器、网关、交换机、接入点、基站、特定边缘服务器等,它们能够对终端设备上传的数据进行计算和存储。由于边缘节点距离用户较近,则可以为运行对延迟较为敏感的智能应用服务,从而满足终端应用的实时性要求。同时,边缘节点也可以对终端上传的数据进行预处理,从而减少核心网络的传输流量。另一方面,对于深度神经网络模型本身的优化,相关研究主要关注模型中存在的大量冗余计算,针对资源受限的终端设备,过去的工作集中在模型压缩方面,使用网络剪枝、参数量化、知识蒸馏等方法减少模型的参数量与计算量,从而使深度学习模型能成功部署在移动智能终端上。然而,模型压缩的方法对网络精度也产生了影响,模型压缩后的稀疏结构并不适应所有深度学习框架。借助边缘计算这一新型计算模型的优势,许多研究工作逐渐开始将边缘计算与人工智能应用两者进行结合,边缘智能(Edge Intelligence)成为了新的趋势。
为了在边缘计算环境下高效运行深度学习应用,边缘智能的部分相关工作已经在关注终端层、边缘层、云层三者的计算和存储能力特点,将其与深度神经网络的结构特点结合考虑,以减少总体的计算开销和传输时延。现有的方法仍处于初步研究阶段,主要包括以下两类:(1)模型切割;(2)模型提前退出机制。
在研究(1)中,根据边缘环境下的网络状态与设备资源负载情况,深度神经网络被切割为多个子模型分块,分别部署在终端层、边缘层和云层,在充分利用***中的计算资源的同时减少网络传输开销,从而最大程度地缩短总体推理时延。但是现有的工作仍然保留部分计算卸载到云层,与云层之间的网络传输必然导致高延迟、带宽不稳定等问题,无法保证任务的实时性要求,加之数据量巨大,仍然存在性能瓶颈。
在研究(2)中,基于深度神经网络各层的特征提取能力差异以及输入数据的复杂程度分布特点,研究者发现模型中早期浅层提取的特征已可用于部分样本提前完成分类或回归,输入数据不再无差别地完成整个模型的前馈计算,而是选择合适的浅层出口提前退出,每个出口都有手动设置的阈值对早期结果进行决策。于是,目前的工作简单地在深度神经网络原型上添加三个出口分别对应终端层、边缘层和云层,使得简单任务可以在终端层或边缘层提前完成,避免该类型任务与云层之间产生不必要的传输开销,同时减少冗余计算。然而,此类方法直接忽略了对出口位置和数量的选择,简单预设的出口未考虑终端层和边缘层复杂多变的计算资源负载情况,手动设置的阈值对于新采集的数据不具备良好的决策能力,导致模型推理精度下降,无法满足自动驾驶这类应用的高精度需求。
故现有的深度学习模型推理加速方法应用于边缘计算融合人工智能应用的场景下仍存在较大的局限性,无法满足边缘智能应用低时延、高精度的运行需求,本案由此产生。
发明内容
本发明的目的,在于提供一种面向边缘智能应用的深度神经网络多路径推理加速方法,基于深度神经网络各层出口的分类效益分析进行出口选择,主干层与出口间设置门限单元以达到多路径推理决策效果,终端层与边缘层之间执行中间特征数据压缩编码,在边缘计算环境下实现深度神经网络多路径推理加速框架,提高模型推理的灵活性,保证准确率的同时最小化推理总时延,从而满足边缘智能应用的实时性与高精度需求。
为了达成上述目的,本发明的解决方案是:
一种面向边缘智能应用的深度神经网络多路径推理加速方法,包括如下步骤:
步骤1,在已有的数据集上,分析深度神经网络各层的输出特征图直接用于分类所达到的准确率,对各层分支出口的分类能力与计算开销进行量化表示,从而计算出在任意层之后设置出口的推理效益,使用启发式算法选择效益最大化的出口组合并添加至原模型;
步骤2,基于步骤1选择的最佳出口组合,在最佳出口组合与模型主干之间设置门限单元,利用中间特征在“提前退出”和“前向传播”两者之间决策,从而确定推理路径;
步骤3,对于步骤2中门限单元判定无法在浅层出口提前退出的任务,将产生的中间特征图传输至边缘服务器之前进行压缩编码;
步骤4,结合步骤3中对传输阶段的中间特征图处理方法,将多路径的深度神经网络部署至边缘计算环境,终端层与边缘层实时监测***中的设备资源负载情况与网络传输性能,以最小化时延为目标对多路径推理模型进行切割,将计算分割为“终端-边缘”两部分,浅层切块于终端本地执行,深层切块卸载至边缘层处理,实现在线的多路径推理加速。
上述步骤1的具体内容是:
步骤101,分析卷积层、池化层、激励层和全连接层的内部参数结构,参数包括卷积核窗口大小、池化窗口大小、滑动步长、激励函数和输出神经元个数,计算各类型层的浮点运算量;
步骤102,在真实设备中执行各类网络层的计算,修改层的参数改变浮点运算量,同时改变***CPU占用率、可用内存大小,记录每种情况下的时间开销,制作数据集用于训练预测计算时间的回归模型;
步骤103,在深度神经网络的每个卷积层后添加分类器作为浅层出口,与模型主干同时训练,浅层出口使用独立的损失函数,模型主干使用联合损失函数;
步骤104,训练时使用交叉验证法,获得每个出口在不同验证集上的准确率,假设深度神经网络共有n-1个备选出口(不包含主干出口),计算各个出口的平均准确率作为其先验退出概率P=<p1,p2,…,pn-1>;
步骤105,从初始输入到每个出口所经过的计算层,形成n条推理路径,其中,最长的路径为模型主干,使用步骤102的回归模型预测每条路径的时间开销T=<t1,t2,…,tn-1,tn>;
步骤106,结合先验退出概率P和时间开销T,增设p0=0,表示进入最浅的分支出口之前无样本退出,使用启发式算法,选择具有最大推理效益的出口组合,组合内包含N个分支出口,用ei表示对N个出口排序后第i个出口所在的路径序号,最终得到BestN=<e1,e2,…,eN>,效益最大化转换为时间代价最小化,优化目标定义如下:
其中,和/>分别表示ej所在路径的退出概率与时间开销,且/>
上述步骤2的具体内容是:
步骤201,制作门限单元的训练集,在具有最优出口组合的模型基础上,利用原始训练集,依次通过每条推理路径,在退出之前产生的中间特征图x作为门限单元的训练集,标签初始化为全零序列R=<0,...,0>,分类正确的最短路径序号为k,则R的第k位置1,即提前退出的最优路径,1表示“提前退出”,0表示“前向传播”;
步骤202,选择单层的线性分类器作为门限单元的基础模型,将多路径推理决策转换为多分类问题,设Q为多路径决策的损失上限,Tp与Tg分别为各路径与门限单元决策的计算开销,y与分别是样本的真实值和预测值,R与/>分别为门限单元的真实值和预测值,定义优化目标与损失约束条件如下:
argmin∑x∈X[Tp(x)+Tg(x)]
步骤203,最长的路径作为主干,训练好的门限单元设置在每条路径的主干部分与出口分类器之间,仅主干出口前不设置门限单元,直接输出结果;输入数据初始默认前向传播;
步骤204,前向传播过程中位于路径出口时,中间特征先输入门限单元进行决策,若决策结果为1,则任务直接从当前出口退出,返回分类结果;若决策为0,则任务继续前向传播,重复步骤204直到最长路径出口,即主干出口,根据步骤203直接退出并返回结果。
上述步骤3的具体内容是:
步骤301,计算各层特征图的信息熵,根据熵值判断特征图的稀疏比;
步骤302,设定熵阈值,将各层特征图划分为两类:若低于或等于该阈值,则判定特征图稀疏比较大,进入步骤303;若高于该阈值,则采进入步骤304;
步骤303,对稀疏比较大的特征图采用无损压缩,先对原始特征图进行游长编码压缩,后对该压缩特征图使用哈夫曼编码再压缩;
步骤304,对稀疏比较大的特征图采用有损压缩,使用正向离散余弦变换将空间域的特征图变换为频域表示,再使用加权函数对DCT系数进行量化,量化后的系数经过霍夫曼可变字长编码器二次编码。
上述步骤4的具体内容是:
步骤401,终端实时监测本地计算负载,接收到任务后,与靠近数据源的边缘服务器建立连接,交换边缘负载信息;
步骤402,终端上执行模型切割决策,使用步骤1的模型估计各层分别在端、边计算所需的时间开销,结合传输开销,选择使总时延最小的切割点;
步骤403,终端执行浅层切块的计算,深层切块卸载到边缘服务器执行;
步骤404,终端上,若任务能从浅层切块内的出口退出,则不卸载至边缘服务器,直接输出结果;若任务无法在浅层切块内提前退出,则进入步骤405;
步骤405,执行计算卸载,提取切割点处的中间特征图,压缩后传输至边缘服务器,在边缘层解压缩并完成深层切块的计算,产生结果并返回至终端。
上述边缘负载信息包括带宽、延迟、边缘可用资源。
采用上述方案后,本发明与现有技术相比,具有以下优点:
(1)本发明通过解构深度神经网络“end-to-end”的计算结构,结合边缘计算与人工智能领域优势,实现深度神经网络的多路径推理加速,为分布式深度学习方法提供了一种基础框架;
(2)深度神经网络出口选择算法构造了多路径推理的基础结构,门限单元模块执行推理路径决策,避免了模型中大量的冗余计算,为任务提前退出机制的优化提供了新的思路;
(3)本发明采用中间特征数据压缩进一步减小传输开销,有效地降低了网络负载的影响,可适用于大规模的边缘计算环境;
(4)本发明结合多路径推理与模型细粒度切割方法,有效利用终端计算资源,更好地适应边缘智能应用的实时性要求。
本发明主要解决边缘计算环境下运行人工智能应用时,传统深度神经网络的计算模式无法满足实时性与高精度要求的问题,能够有效地区分任务难易程度,并充分利用边缘环境的计算存储资源,保证模型准确率,显著地减小推理总时延。
附图说明
图1是本发明的面向边缘智能应用的DNN多路径推理框架示意图;
图2是本发明的DNN出口选择示意图;
图3是本发明的门限单元结构示意图;
图4是本发明的中间特征数据压缩编码示意图。
具体实施方式
以下将结合附图,对本发明的技术方案及有益效果进行详细说明。
本发明基于对深度学习模型的可解构性分析,利用边缘计算的分布式结构,提出了一种面向边缘智能应用的深度神经网络多路径推理加速方法,包含四个部分,分别是深度神经网络出口选择、门限单元决策训练、中间特征数据压缩和多路径推理框架生成,本发明基于深度神经网络各层的分类能力与计算开销差异,利用任务提前退出机制合理设计模型出口,并通过门限单元实现多路径推理决策,于边缘计算环境下实时分析设备与网络的性能参数,执行最优模型切割,完成深度神经网络多路径在线推理框架。该方法包括以下步骤:
步骤1)首先在DNN原型上添加合适的出口组合,形成多路径DNN的基础结构。DNN的特征提取能力一般由卷积层的参数和数量决定,绝大部分的计算量也集中在卷积层,因此备选出口均设置在各卷积层之后;在已有的数据集上,分析深度神经网络各层的输出特征图直接用于分类所达到的准确率,对各层分支出口的分类能力与计算开销进行量化表示,从而计算出在任意层之后设置出口的推理效益,使用启发式算法选择效益最大化的出口组合并添加至原模型;
具体步骤如下所示:
步骤101)分析卷积层、池化层、激励层和全连接层的内部参数结构,参数包括卷积核窗口大小、池化窗口大小、滑动步长、激励函数和输出神经元个数,计算各类型层的浮点运算量。
步骤102)在真实设备中执行各类网络层的计算,修改层的参数改变浮点运算量,同时改变***CPU占用率、可用内存大小,记录每种情况下的时间开销,制作数据集用于训练预测计算时间的回归模型。
步骤103)在深度神经网络的每个卷积层后添加分类器作为浅层出口,与模型主干同时训练,浅层出口使用独立的损失函数,模型主干使用联合损失函数;
步骤104)训练时使用交叉验证法,获得每个出口在不同验证集上的准确率,假设深度神经网络共有n-1个备选出口(不含主干出口),计算各个出口的平均准确率作为其先验退出概率P=<p1,p2,…,pn-1>。
步骤105)从初始输入到每个出口所经过的计算层,形成n条推理路径,其中,最长的路径为模型主干,使用步骤102)的回归模型预测每条路径的时间开销T=<t1,t2,…,tn-1,tn>。
步骤106)结合先验退出概率P和时间开销T,增设p0=0,表示进入最浅的分支出口之前无样本退出,使用启发式算法,选择具有最大推理效益的出口组合,组合内包含N个分支出口,用ei表示对N个出口排序后第i个出口所在的路径序号,最终得到BestN=<e1,e2,…,eN>,效益最大化转换为时间代价最小化,优化目标定义如下:
其中,和/>分别表示出口ej所在路径的退出概率与时间开销;特别地,/>为主干路径的时间开销,即/>
步骤2)基于上述多路径DNN的基础结构,在最优出口组合与模型主干之间设置门限单元,利用中间特征在“提前退出”和“前向传播”两者之间决策,从而确定推理路径,实现多路径推理决策功能。
具体步骤如下所示:
步骤201)制作门限单元的训练集,在具有最优出口组合的模型基础上,利用原始训练集,依次通过每条推理路径,在退出之前产生的中间特征图x作为门限单元的训练集Gate_Dateset,标签初始化为全零序列R=<0,...,0>,分类正确的最短路径序号为k,则R的第k位置1,即提前退出的最优路径,1表示“提前退出”,0表示“前向传播”。
步骤202)选择单层的线性分类器作为门限单元的基础模型,将多路径推理决策转换为多分类问题,为保证高精度,设Q为多路径决策的损失上限,Tp与Tg分别为各路径与门限单元决策的计算开销,y与分别是DNN样本的真实值和预测值,R与/>分别为门限单元的真实值和预测值,定义优化目标与损失约束条件如下:
argmin∑x∈X[Tp(x)+Tg(x)]
步骤203)最长的路径作为主干,训练好的门限单元设置在每条路径的主干部分与出口分类器之间,仅主干出口前不设置门限单元,可直接输出结果;输入数据初始默认前向传播。
步骤204)前向传播过程中位于路径出口时,中间特征先输入门限单元进行决策,若决策结果为1,则任务直接从当前出口退出,返回分类结果;若决策为0,则任务继续前向传播,重复步骤204)直到最长路径出口,即主干出口,根据步骤203)可直接退出并返回结果。
步骤3)对于步骤2)中门限单元判定无法在浅层出口提前退出的任务,将产生的中间特征图传输至边缘服务器之前进行压缩编码,采用无损压缩与有损压缩结合,减小传输的数据量,降低网络传输开销。
具体步骤如下所示:
步骤301),计算各层特征图的信息熵,熵的大小直接体现特征图的稀疏比,根据熵值判断特征图的稀疏比。
步骤302),设定熵阈值threshold,将各层特征图划分为两类:若低于或等于该阈值,则判定特征图稀疏比较大,采用无损压缩,进入步骤303;若高于该阈值,则表明稀疏比较小,特征信息丰富,采用有损压缩,进入步骤304。
步骤303),对稀疏比较大的特征图采用无损压缩,先对原始特征图进行游长编码压缩,后对该压缩特征图使用哈夫曼编码再压缩。
步骤304),对稀疏比较大的特征图采用有损压缩,使用正向离散余弦变换(FDCT)将空间域的特征图变换为频域表示,再使用加权函数对DCT系数进行量化,量化后的系数经过霍夫曼可变字长编码器二次编码。
步骤4)结合步骤3)中对传输阶段的中间特征数据处理方法,将多路径的深度神经网络部署至边缘计算环境,终端层与边缘层实时监测***中的设备资源负载情况与网络传输性能,以最小化时延为目标对多路径推理模型进行切割,将计算分割为“终端-边缘”两部分,浅层切块于终端本地执行,深层切块卸载至边缘层处理,实现完整的多路径推理框架。具体步骤如下所示:
步骤401)终端实时监测本地计算负载,接收到任务后,与靠近数据源的边缘服务器建立连接,交换边缘负载信息,包括带宽、延迟、边缘可用资源。
步骤402)终端上执行模型切割决策,使用出口选择部分中得到的时间预测模型估计各层分别在端、边计算所需的时间开销,结合传输开销,选择使总时延最小的切割点。
步骤403)终端执行浅层切块的计算,深层切块卸载到边缘服务器执行。
步骤404)终端上,若任务能从浅层切块内的出口退出,则不卸载至边缘服务器,直接输出结果;若任务无法在浅层切块内提前退出,则进入步骤405)。
步骤405)执行计算卸载,提取切割点处的中间特征图,压缩后传输至边缘服务器,在边缘层解压缩并完成深层切块的计算,产生结果并返回至终端。
本发明实施例的整体实施步骤如图1所示,图中以图像分类应用为典型案例,离线阶段完成多路径推理模型的构造与训练,即出口的选择、门限单元的训练;在线阶段执行模型部署、模型切割、中间特征图压缩编码、多路径推理。
实施例1:如图2所示,在出口选择步骤中,需要基于深度神经网络原型,分析各卷积层之后添加出口所带来的推理效益。卷积层是深度神经网络中实现特征提取的关键层,同时占据了较大部分的计算量。为了计算各层出口的推理效益,在已有的训练数据集上,将模型主干与各层出口的分类器(全连接层)使用相同训练强度进行训练,为了降低出口和模型主干的耦合度,出口分类器使用独立的损失函数进行训练。利用交叉验证法,可获得各层出口所能达到的准确率。一般情况下,准确率将随着出口所在深度的增加而提升,而计算量将同时增大。考虑准确率的提高在推理效益中提供正影响,而计算量的增加会导致负影响,计算推理效益之前,需量化表示各个出口所包含的计算开销。
本发明使用各层所需的计算时间开销来表示计算量,通过训练一个回归模型预测实际***环境下各层的时间开销。仅考虑模型参数的情况下,各层计算量主要由浮点运算量(FLOPs)体现,层的类型包含卷积层、池化层、激励层和全连接层,决定运算量的重要参数包括:输入特征图的大小(W×H),输入和输出的通道数(Cin,Cout),卷积核窗口大小(kw×kh);池化窗口(pw×ph),以及全连接层的输入和输出神经元个数(Fin,Fout),浮点运算量的计算如下:
结合实际***,考虑CPU占用率(u)和可用内存大小(m)的影响,上述浮点运算量(f)可假设一般情况各窗口高宽相等,训练的时间预测回归模型yt定义如下:
yt(u,m,f(Cin,Cout,Fin,Fout,kw,pw);θ)
从初始输入到每个出口所经过的计算层,形成多条推理路径,各出***叉验证得到的准确率作为对应路径的先验退出概率P=<p1,p2,…,pn-1>,回归模型预测得到每条路径的时间开销T=<t1,t2,…,tn-1,tn>,考虑进入最浅的分支出口之前无样本退出的情况,设p0=0,效益最大化转换为代价最小化,设出口组合的数量为N,则组合Exits=<exit1,exit2,…,exitN>的代价计算方法如下:
由于时间开销的预测考虑了实际***的部分特征,本发明可根据不同的应用环境选择合适的出口组合,完成多出口的构造,确定多路径推理模型的基础结构。出口选择使用启发式算法求解,算法的伪代码如下:
实施例2:如图3所示,基于上述算法构造的多路径模型,本发明在模型主干和出口分类器之间设置门限单元,以执行多路径推理决策,从而消除DNN中的大量冗余计算,缩短推理时延。在门限单元训练中,需要制作门限单元的训练集,包括以下三个步骤:
步骤1:原始训练集输入多路径模型,通过每条推理路径,获得分类结果。
步骤2:提取样本在每条路径上退出之前产生的中间特征图x,作为门限单元的训练集Gate_Dateset。
步骤3:标签初始化为全零序列R=<0,...,0>,根据分类结果,若分类正确的最短路径序号为k,即最佳推理路径,则R的第k位置1,得到“one-hot”编码标签,其中1表示分类正确,即“提前退出”;0表示分类错误,即“前向传播”。
门限单元的判断对象是每条路径出口之前产生的中间特征图x,反馈到当前路径决策结果为:“提前退出”或“前向传播”。本发明将门限单元执行的多路径推理决策转换为多分类问题,选择单层的线性分类器作为门限单元的模型,训练模块确定优化目标,设Q为多路径模型决策的损失上限,以保证高精度,Tp与Tg分别为各路径与门限单元决策的计算开销,y与分别是真实值和每条路径的预测值,R与/>分别为门限单元的真实值和预测值,定义优化目标约束条件如下:
argmin∑x∈X[Tp(x)+Tg(x)]
其中,L(·)为线性分类器的交叉熵损失函数。
Tp与Tg在多路径推理过程中的实际大小取决于门限单元的决策结果:若为全零序列,则任务最终通过主干退出;若/>为1,表示第k条路径的门限单元打开,任务仅计算到该路径结束便提前退出。两种情况的时间开销可表示为:
训练后的门限单元设置在每条路径的主干部分与出口分类器之间,主干即最长推理路径,可直接输出结果,进而确定深度神经网络的多路径推理模型基础。输入数据初始默认前向传播。
门限单元的决策过程如下:中间特征先输入门限单元进行决策,若决策结果为1,则任务直接从当前出口退出,返回分类结果;若决策为0,则任务继续前向传播,遇到新的门限单元重复该过程,直到主干出口,直接退出并返回结果。
实施例3:如图4所示,中间特征数据传输至边缘层之前先进行压缩编码,减小传输开销,对于数据密集型的应用,该步骤在网络负载较大时可以有效地削弱传输阶段对整体计算的约束。使用无损压缩或有损压缩方法取决于各层特征图的稀疏比。
本发明对稀疏比较大的特征图采用无损压缩,对稀疏比较小的特征图采用有损压缩信息熵。通过计算各层特征图的信息熵,可以直接判断特征图的稀疏比在各层的变化。设定熵阈值threshold,将各层特征图划分为两类:低于或等于该阈值的特征图归为稀疏比较大一类,采用无损压缩;高于该阈值的特征图归为稀疏比较小一类,由于特征信息丰富,采用有损压缩。
无损压缩过程如图4(a)所示,对原始特征图进行重复码统计后执行游程编码压缩,再对该压缩特征图遍历构造哈夫曼树,使用哈夫曼编码二次压缩。
有损压缩过程如图4(b)所示,特征图经过DCT基编码器模块,包括正向离散余弦变换(FDCT)将特征图从空间域变换为频域表示,通过查找量化值表对经过FDCT变换后的频率系数进行量化,量化后的系数还需经过霍夫曼可变字长编码器进行编码,采用熵编码可对特征图进一步压缩。
实施例4:如图1所示,在线阶段包括模型切割与“端-边”协同多路径推理步骤,完成所有离线阶段的工作后,将生成的多路径深度神经网络部署在边缘计算环境下,执行在线多路径推理。终端实时监测本地计算负载,接收到任务后,与靠近数据源的边缘服务器建立连接,交换边缘负载信息,包括带宽、延迟、边缘可用资源。终端上执行模型切割决策,使用出口选择部分的时间预测回归模型估计各层分别在端、边计算所需的时间开销Tend与Tedge,结合传输开销Ttrans,选择使总时延最小的切割点
其中,Mk-1到Mk层表示第k-1条路径与第k条路径不共享的网络层。
浅层切块部署在终端执行,深层切块则卸载到边缘服务器上进行计算。由于多路径推理模型的提前退出机制,在线阶段的推理存在两种形式:1)任务能在终端上从浅层切块内的出口退出,不卸载至边缘服务器,直接输出结果;2)任务无法在浅层切块内提前退出,执行计算卸载,提取切割点处的中间特征图,压缩后传输至边缘服务器,在边缘层完成深层切块的计算,产生结果并返回至终端。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

Claims (6)

1.一种面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于包括如下步骤:
步骤1,在已有的数据集上,分析深度神经网络各层的输出特征图直接用于分类所达到的准确率,对各层分支出口的分类能力与计算开销进行量化表示,从而计算出在任意层之后设置出口的推理效益,使用启发式算法选择效益最大化的出口组合并添加至原模型;
步骤2,基于步骤1选择的最佳出口组合,在最佳出口组合与模型主干之间设置门限单元,利用中间特征在“提前退出”和“前向传播”两者之间决策,从而确定推理路径;
步骤3,对于步骤2中门限单元判定无法在浅层出口提前退出的任务,将产生的中间特征图传输至边缘服务器之前进行压缩编码;
步骤4,结合步骤3中对传输阶段的中间特征图处理方法,将多路径的深度神经网络部署至边缘计算环境,终端层与边缘层实时监测***中的设备资源负载情况与网络传输性能,以最小化时延为目标对多路径推理模型进行切割,将计算分割为“终端-边缘”两部分,浅层切块于终端本地执行,深层切块卸载至边缘层处理,实现在线的多路径推理加速。
2.如权利要求1所述的面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于:所述步骤1的具体内容是:
步骤101,分析卷积层、池化层、激励层和全连接层的内部参数结构,参数包括卷积核窗口大小、池化窗口大小、滑动步长、激励函数和输出神经元个数,计算各类型层的浮点运算量;
步骤102,在真实设备中执行各类网络层的计算,修改层的参数改变浮点运算量,同时改变***CPU占用率、可用内存大小,记录每种情况下的时间开销,制作数据集用于训练预测计算时间的回归模型;
步骤103,在深度神经网络的每个卷积层后添加分类器作为浅层出口,与模型主干同时训练,浅层出口使用独立的损失函数,模型主干使用联合损失函数;
步骤104,训练时使用交叉验证法,获得每个出口在不同验证集上的准确率,假设深度神经网络共有n-1个备选出口,备选出口不包含主干出口,计算各个出口的平均准确率作为其先验退出概率P=<p1,p2,…,pn-1>;
步骤105,从初始输入到每个出口所经过的计算层,形成n条推理路径,其中,最长的路径为模型主干,使用步骤102的回归模型预测每条路径的时间开销T=<t1,t2,…,tn-1,tn>;
步骤106,结合先验退出概率P和时间开销T,增设p0=0,表示进入最浅的分支出口之前无样本退出,使用启发式算法,选择具有最大推理效益的出口组合,组合内包含N个分支出口,用ei表示对N个出口排序后第i个出口所在的路径序号,最终得到BestN=<e1,e2,…,eN>,效益最大化转换为时间代价最小化,优化目标定义如下:
其中,和/>分别表示出口ej所在路径的退出概率与时间开销,且/>
3.如权利要求1所述的面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于:所述步骤2的具体内容是:
步骤201,制作门限单元的训练集,在具有最优出口组合的模型基础上,利用原始训练集,依次通过每条推理路径,在退出之前产生的中间特征图x作为门限单元的训练集,标签初始化为全零序列R=<0,...,0>,分类正确的最短路径序号为k,则R的第k位置1,即提前退出的最优路径,1表示“提前退出”,0表示“前向传播”;
步骤202,选择单层的线性分类器作为门限单元的基础模型,将多路径推理决策转换为多分类问题,设Q为多路径决策的损失上限,Tp与Tg分别为各路径与门限单元决策的计算开销,y与分别是样本的真实值和预测值,R与/>分别为门限单元的真实值和预测值,定义优化目标与损失约束条件如下:
argmin∑x∈X[Tp(x)+Tg(x)]
步骤203,最长的路径作为主干,训练好的门限单元设置在每条路径的主干部分与出口分类器之间,仅主干出口前不设置门限单元,直接输出结果;输入数据初始默认前向传播;
步骤204,前向传播过程中位于路径出口时,中间特征先输入门限单元进行决策,若决策结果为1,则任务直接从当前出口退出,返回分类结果;若决策为0,则任务继续前向传播,重复步骤204直到最长路径出口,即主干出口,根据步骤203直接退出并返回结果。
4.如权利要求1所述的面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于:所述步骤3的具体内容是:
步骤301,计算各层特征图的信息熵,根据熵值判断特征图的稀疏比;
步骤302,设定熵阈值,将各层特征图划分为两类:若低于或等于该阈值,则判定特征图稀疏比较大,进入步骤303;若高于该阈值,则采进入步骤304;
步骤303,对稀疏比较大的特征图采用无损压缩,先对原始特征图进行游长编码压缩,后对压缩特征图使用哈夫曼编码再压缩;
步骤304,对稀疏比较大的特征图采用有损压缩,使用正向离散余弦变换将空间域的特征图变换为频域表示,再使用加权函数对DCT系数进行量化,量化后的系数经过霍夫曼可变字长编码器二次编码。
5.如权利要求1所述的面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于:所述步骤4的具体内容是:
步骤401,终端实时监测本地计算负载,接收到任务后,与靠近数据源的边缘服务器建立连接,交换边缘负载信息;
步骤402,终端上执行模型切割决策,使用步骤1的模型估计各层分别在端、边计算所需的时间开销,结合传输开销,选择使总时延最小的切割点;
步骤403,终端执行浅层切块的计算,深层切块卸载到边缘服务器执行;
步骤404,终端上,若任务能从浅层切块内的出口退出,则不卸载至边缘服务器,直接输出结果;若任务无法在浅层切块内提前退出,则进入步骤405;
步骤405,执行计算卸载,提取切割点处的中间特征图,压缩后传输至边缘服务器,在边缘层解压缩并完成深层切块的计算,产生结果并返回至终端。
6.如权利要求5所述的面向边缘智能应用的深度神经网络多路径推理加速方法,其特征在于:所述边缘负载信息包括带宽、延迟、边缘可用资源。
CN202010180260.7A 2020-03-16 2020-03-16 面向边缘智能应用的深度神经网络多路径推理加速方法 Active CN111445026B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010180260.7A CN111445026B (zh) 2020-03-16 2020-03-16 面向边缘智能应用的深度神经网络多路径推理加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010180260.7A CN111445026B (zh) 2020-03-16 2020-03-16 面向边缘智能应用的深度神经网络多路径推理加速方法

Publications (2)

Publication Number Publication Date
CN111445026A CN111445026A (zh) 2020-07-24
CN111445026B true CN111445026B (zh) 2023-08-22

Family

ID=71650502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010180260.7A Active CN111445026B (zh) 2020-03-16 2020-03-16 面向边缘智能应用的深度神经网络多路径推理加速方法

Country Status (1)

Country Link
CN (1) CN111445026B (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114077482B (zh) * 2020-08-18 2024-04-16 中国科学院沈阳自动化研究所 一种工业智能制造边缘智能计算优化方法
CN112115830B (zh) * 2020-09-10 2023-06-02 同济大学 一种基于比特域特征提取的目标分布式融合识别方法
CN114384866B (zh) * 2020-10-21 2023-06-27 沈阳中科数控技术股份有限公司 一种基于分布式深度神经网络框架的数据划分方法
US20220157045A1 (en) * 2020-11-16 2022-05-19 Qualcomm Incorporated Automatic early-exiting machine learning models
CN112286666B (zh) * 2020-11-17 2022-07-15 重庆邮电大学 基于回调机制的细粒度数据流可靠卸载方法
CN114599055B (zh) * 2020-12-04 2023-05-19 中国科学院深圳先进技术研究院 一种边缘计算下神经网络推理的节能方法
CN112615736B (zh) * 2020-12-10 2022-03-18 南京工业大学 面向线性边缘网络的延迟最优分布式NNs协同优化方法
CN112297014B (zh) * 2020-12-31 2021-04-27 之江实验室 一种面向机器人的云边端架构下的深度学习模型分割方法
CN113205241A (zh) * 2021-03-25 2021-08-03 广东电网有限责任公司东莞供电局 一种监控数据实时处理方法、非暂态可读记录媒体及数据处理***
CN113660038B (zh) * 2021-06-28 2022-08-02 华南师范大学 基于深度强化学习和知识蒸馏的光网络路由方法
CN113485803B (zh) * 2021-06-29 2022-05-13 天津大学 具有时延约束任务流场景下的自适应封装与协同推理方法
CN115550233A (zh) * 2021-06-30 2022-12-30 中兴通讯股份有限公司 分布式路由确定方法、电子设备及存储介质
CN113436208A (zh) * 2021-06-30 2021-09-24 中国工商银行股份有限公司 基于端边云协同的图像处理方法、装置、设备及介质
CN115546821A (zh) * 2021-06-30 2022-12-30 华为技术有限公司 一种配置边缘服务器中神经网络模型的***及装置
CN113312183B (zh) * 2021-07-30 2021-12-21 北京航空航天大学杭州创新研究院 面向深度神经网络的边缘计算方法
CN113537400B (zh) * 2021-09-14 2024-03-19 浙江捷瑞电力科技有限公司 一种基于分支神经网络的边缘计算节点的分配与退出方法
CN114091668A (zh) * 2021-11-22 2022-02-25 广东工业大学 基于可微决策器和知识蒸馏的神经网络剪枝方法及***
CN114401063B (zh) * 2022-01-10 2023-10-31 中国人民解放军国防科技大学 基于轻量化模型的边缘设备协同频谱智能监测方法和***
CN114662661B (zh) * 2022-03-22 2024-04-16 东南大学 边缘计算下异构处理器加速多出口dnn推理的方法
CN115277452B (zh) * 2022-07-01 2023-11-28 中铁第四勘察设计院集团有限公司 基于边端协同的ResNet自适应加速计算方法及应用
CN117350332A (zh) * 2022-07-04 2024-01-05 同方威视技术股份有限公司 边缘设备推理加速方法、装置和数据处理***
CN114863191B (zh) * 2022-07-06 2023-10-24 南通大学 基于区块链的防伪信息识别与传输方法
CN115373861B (zh) * 2022-10-26 2022-12-27 小米汽车科技有限公司 Gpu资源调度方法、装置、电子设备及存储介质
CN115841590B (zh) * 2022-11-16 2023-10-03 中国烟草总公司湖南省公司 神经网络推理优化方法、装置、设备及可读存储介质
CN115545198B (zh) * 2022-11-25 2023-05-26 成都信息工程大学 一种基于深度学习模型的边缘智能协同推断方法及***
CN116894469B (zh) * 2023-09-11 2023-12-15 西南林业大学 端边云计算环境中的dnn协同推理加速方法、设备及介质
CN117834643B (zh) * 2024-03-05 2024-05-03 南京邮电大学 一种面向工业物联网的深度神经网络协同推理方法
CN118094441B (zh) * 2024-04-23 2024-07-23 山东省计算中心(国家超级计算济南中心) 一种基于相对熵优化的双重隐私保护电力盗窃检测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108564097A (zh) * 2017-12-05 2018-09-21 华南理工大学 一种基于深度卷积神经网络的多尺度目标检测方法
CN109543829A (zh) * 2018-10-15 2019-03-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 在终端和云端上混合部署深度学习神经网络的方法和***
CN110347500A (zh) * 2019-06-18 2019-10-18 东南大学 用于边缘计算环境中面向深度学习应用的任务卸载方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108564097A (zh) * 2017-12-05 2018-09-21 华南理工大学 一种基于深度卷积神经网络的多尺度目标检测方法
CN109543829A (zh) * 2018-10-15 2019-03-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 在终端和云端上混合部署深度学习神经网络的方法和***
CN110347500A (zh) * 2019-06-18 2019-10-18 东南大学 用于边缘计算环境中面向深度学习应用的任务卸载方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Huitian Wang等.ADDA:Adaptive Distributed DNN Inference Acceleration in Edge Computing Environment.《2019 IEEE 25th International Conference on Parallel and Distributed Systems (ICPADS)》.2019,全文. *

Also Published As

Publication number Publication date
CN111445026A (zh) 2020-07-24

Similar Documents

Publication Publication Date Title
CN111445026B (zh) 面向边缘智能应用的深度神经网络多路径推理加速方法
Shao et al. Task-oriented communication for multidevice cooperative edge inference
CN110347500B (zh) 用于边缘计算环境中面向深度学习应用的任务卸载方法
CN111245950B (zh) 基于深度学习的工业物联网边缘资源智能调度***及方法
Jankowski et al. Joint device-edge inference over wireless links with pruning
CN114662661B (zh) 边缘计算下异构处理器加速多出口dnn推理的方法
Fang et al. Flexdnn: Input-adaptive on-device deep learning for efficient mobile vision
CN112446491B (zh) 神经网络模型实时自动量化方法及实时自动量化***
CN111612147A (zh) 深度卷积网络的量化方法
Shu et al. IF-CNN: Image-aware inference framework for CNN with the collaboration of mobile devices and cloud
TW202042559A (zh) 用以壓縮類神經網路參數之方法與裝置
CN112906853A (zh) 模型自动优化的方法及装置、设备、存储介质
CN115098115B (zh) 边缘计算任务卸载方法及装置、电子设备、存储介质
Xie et al. Elbert: Fast albert with confidence-window based early exit
WO2022246986A1 (zh) 数据处理方法、装置、设备及计算机可读存储介质
Li et al. Attention-based feature compression for cnn inference offloading in edge computing
Gao et al. Triple-partition network: collaborative neural network based on the ‘end device-edge-cloud’
CN112910716B (zh) 一种基于分布式dnn的移动雾计算损耗联合优化***和方法
CN111431540B (zh) 一种基于神经网络模型的fpga配置文件算术压缩与解压方法
CN114077482B (zh) 一种工业智能制造边缘智能计算优化方法
Lee et al. Neural architecture search for computation offloading of dnns from mobile devices to the edge server
JP2022078735A (ja) 画像処理装置、画像処理プログラム、画像認識装置、画像認識プログラム及び画像認識システム
Hu et al. ECNet: a fast, accurate, and lightweight edge-cloud network system based on cascading structure
CN114362858B (zh) 基于图卷积的窄带物联网基站负载预测方法、***和介质
Wang et al. Exploring quantization in few-shot learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant