DOI: 10.3785/j.issn.1008-973X.2021.04.004
边端融合的终端情境自适应深度感知模型
王虹力,郭斌,刘思聪,刘佳琪,仵允港,於志文
(西北工业大学 计算机学院,陕西 西安 710072)
摘 要:研究边端融合的深度模型终端情境自适应问题. 提出边端融合增强的模型压缩方法(X-ADMM ),利用模型压缩技术简化模型结构,以层为粒度寻模型最佳分割点,协同边端设备提高运行效率. 为了实现模型分割的动态自适应,提出基于图的自适应深度模型手术刀算法(GADS ). 当模型运行情境(如存储、电量、带宽等)发生变化时,优先在邻近分割状态中快速搜索最能满足资源约束的分割点,实现快速自适应调整. 实验结果表明,该模型平均在0.1 ms 内实现了模型分割点的自适应调优,在保证模型精度下降不超过2.5%的情况下,运行总时延最高下降了56.65%.
关键词: 深度学习;边缘智能;模型压缩;模型分割;自适应感知
中图分类号: TP 391 文献标志码: A 文章编号: 1008−973X (2021)04−0626−13
End context-adaptative deep sensing model with
edge-end collaboration
WANG Hong-li, GUO Bin, LIU Si-cong, LIU Jia-qi, WU Yun-gang, YU Zhi-wen
(College of Computer Science , Northwestern Polytechnical University , Xi’an 710072, China )
Abstract: The end context adaptative of deep models with edge-end collaboration was analyzed. The partition and
alternating direction method of multiplier method (X-ADMM) was proposed. The model compression was employed to simplify the model structure, and the model was partitioned at layer granularity to find the best partition point. The model can collaborate with edge-end devices to improve model operation efficiency. The graph based adaptive DNN surgery algorithm (GADS) was proposed in order to realize the dynamic adaptation of model partition. The model will preferentially search for the partition point that best meets resource constraints among surrounding partition states to achieve rapid adaptation when the running context (e.g., storage, power, bandwidth) of the model changes.The experimental results showed that the model realized the adaptive tuning of model partition point in an average of 0.1 ms. The total running latency was reduced by 56.65% at the highest with no more than 2.5% accuracy loss.Key words: deep learning; edge intelligence; model compression; model partition;
adaptive perception
近年来深度神经网络(deep neural network, DNN )深刻改变着人们的生产生活方式. 自2009年Im-ageNet 提出后,各种结构复杂的神经网络相继被提出以提升精度,如AlexNet [1]、ResNet [2],模型规模及计算量爆炸性增长[3]. 这给如何在资源和性能受限的终端平台上有效部署深度学习模型带来了挑战. 1)深度学习模型通常是计算密集型的大规模网络,需要较高的存储、计算和能耗资源,而
终端设备的资源通常是有限的. 2)终端设备的计算情境差异性大,而深度学习模型通常是基于特定数据集进行训练的,对复杂计算情境的适应能力差. 3)在设备运行过程中,设备电量、存储空间、网络带宽等都处于动态变化过程中,为深度学习模型的鲁棒运行带来了巨大考验.
面对上述挑战,边缘智能(edge intelligence )应运而生[4],旨在协同终端设备与边缘设备,在靠近
收稿日期:2021−01−26. 网址:www.zjujournals/eng/article/2021/1008-973X/202104004.shtml
基金项目:国家重点研发计划资助项目(2019YFB1703901);国家自然科学基金资助项目(61772428,61725205).作者简介:王虹力(1999—),女,硕士生,从事深度学习模型环境自适应研究. /0000-0001-8923-4695.
E-mail :********************.edu
通信联系人:郭斌,男,教授. /0000-0001-6097-2467. E-mail :*************
第 55 卷第 4 期 2021 年 4 月
浙 江 大 学 学 报(工学版)
Journal of Zhejiang University (Engineering Science)
Vol.55 No.4Apr. 2021
数据源头的用户端部署深度学习模型. 边缘智能整合了终端本地化计算无需大量数据传输与边缘端较强计算和存储能力的互补优势,将模型的推断过程由云端下沉至靠近用户的边端,在加强数据隐私的同时,避免不稳定网络状态的影响,提高服务的响应时间. 考虑到边端设备资源和网络状态的动态变化特性,现有工作无法提供动态自适应的边端协同计算模式.
本文提出面向动态变化终端应用情境的自适应边(边缘)端(终端)协同计算模式. 通过主动感知终端情境(待部署平台的资源约束、性能需求等),分别利用自适应的模型压缩和模型分割技术对深度学习模型结构(即模型结构化剪枝)和协同计算模式(即边缘/终端分割点)进行自动调优,实现自适应鲁棒的边缘智能.
1 相关工作
随着对深度学习网络结构设计的复杂化,高昂的存储、计算资源需求使得难以有效将深度学习模型部署在不同的硬件平台上. 研究人员已从不同角度探索该问题的解决方案,包括边缘智能技术中的模型压缩、模型分割、模型选择及输入过滤等. 其中模型压缩技术及模型分割技术应用最广泛,下面将分别进行介绍.
1.1 模型压缩技术
模型压缩是在神经网络训练期间或之后,通过修剪权重或其他方式降低模型复杂度,在保持精度的同时缩小原始网络的计算量和存储成本.目前,国内外已有很多关于模型压缩的相关工作,主要可以分为知识蒸馏、低秩分解、网络剪枝、紧凑网络设计等不同方面. 其中知识蒸馏旨在将预先训练好的复杂教师模型中的输出作为监督信息,训练另一个结构简单的学生模型. Luo等[5]提出利用学习的领域知识,使用神经元选择的方法选择与面部识别最相关的神经元,以实现领域知识的迁移. 网络剪枝旨在剔除权重矩阵中“不重要”的冗余参数,仅保留对网络性能具有较大影响的重要参数,有效地降低了网络参数数量. 按照修剪粒度,可以分为非结构化剪枝和结构化剪枝. 非结构化剪枝是指将网络中的任意权重作为单个参数,进行修剪. Han等[6]将网络剪枝转化为从权重参数中选择最优权重组合的问题,实现对卷积核参数的修剪. 非结构化剪枝虽然可以大幅提高剪枝效率,但会导致网络连接不规整,且需要专业下层硬件和
计算库的支持,否则剪枝后的网络性能很难得到提升. 结构化剪枝是粗粒度修剪,主要针对深度学习模型中的过滤器和通道进行修剪. ThiNet[7]以过滤器为单位进行剪枝,通过每层过滤器的输出判断是否修剪该过滤器. 结构化剪枝可以保证权值矩阵的完整性,但模型精度会大幅下降. 目前,网络剪枝的方法是模型压缩领域应用最广泛和简单有效的方法.
在自适应模型压缩领域已作出初步探索. AdaDeep[8]综合考虑用户需求和系统资源约束,为给定的DNN网络自动选择压缩技术的组合. DeepThings[9]通过在边缘集上自适应地分布式执行网络的推理过程,实现工作负载的平衡分配及总延迟的降低.
目前的研究存在不足. 模型压缩技术的自适应程度较低,大多需要提前设定压缩的比例,无法根据硬件资源的动态变化自动调整压缩比例,且压缩后的模型常常面临资源需求不能满足或精度过低等问题. 考虑将模型压缩与模型分割技术相结合,协同边缘设备计算,在不损失精度的情况下有效降低运行总时延.
1.2 模型分割技术
模型分割技术旨在根据不同粒度对模型进行分割,根据性能需求和模型资源消耗自动寻最佳分割点,将深度模型的不同执行部分部署至多台边端设备上进行运行,实现多设备的协同计算.该方向的研究重点是如何寻最佳分割点. Kang 等[10]提出轻量级的模型分割调度框架——Neuro-surgeon,可以通过最小化时延或能耗,在终端和云端以层为粒度自动对深度学习模型进行分割. JALAD[11]模型将模型分割问
题建模为整数线性规划问题,在满足模型精度限制的情况下,通过最小化模型的推理时延寻最佳分割点. MoDNN[12]模型从计算量入手,考虑将网络中的卷积层和全连接层分割,使得计算量分配至不同移动设备上,通过移动设备间协作实现高效的模型推理. Ko等[13]通过将分割后待传输的数据与有损编码技术结合,实现对传输时延的加速,从而降低整体的模型推断时间.
尽管目前的模型分割技术已经具备对模型运行环境的自适应能力,然而在动态硬件资源和网络通信环境下,深度学习模型的分割点应该是不断变化的,如何快速根据情境变化来重新选择适
第 4 期王虹力, 等:边端融合的终端情境自适应深度感知模型[J]. 浙江大学学报:工学版,
2021, 55(4): 626–638.627
当的分割点成为一个重要挑战. 本文提出GADS 算法,以当前分割状态为导向,优先在相似分割状态中搜索,实现分割点的快速自适应调整.
2 X-ADMM边端融合模型自适应
针对模型压缩后较大体量的模型可能无法部署在资源较受限的终端设备上,同时在受限的设备资源约束下难以在压缩比和精度之间权衡的问题,基于AutoCompress模型[14],提出X-ADMM 模型. 结合模型压缩与模型分割,在离线状态下对神经网络模型进行压缩,即根据设定的压缩率进行压缩. 根据网络状况
和时延需求,在线寻合适的模型分割点,将神经网络部署至多台边端设备上.
模型压缩可以实现模型的初步简化,为了更好的模型分割奠基,模型分割可以解决模型压缩后所遇到的无法顺利部署及精度下降等问题,两者相辅相成、紧密结合. 模型分割技术的加入可以在保护用户数据隐私的情况下,协同边缘设备和终端设备,利用了边缘设备强大的计算能力,有效降低总时延,减少模型单台设备上的资源消耗.
2.1 模型压缩
在模型压缩方面,利用AutoCompress中基于ADMM的权重修剪方案作为核心算法,采用结构化修剪方法,结合ADMM对网络参数进行精细的修剪. 具体的修剪流程如图1所示,包括以下4个步骤:1)动作抽样;2)快速动作评估;3)决定策略;4)实际修剪与结果生成.
动作抽样对超参数进行一次样本选择,得到一个动作表示. 由于超参数的搜索空间很大,若使用实际测量精度损失的方法会极为耗时,则步骤2)选择简单启发式的方法进行精度快速评估.步骤3)根据动作样本的集合和精度评估,对超参数值进行决策. 步骤4)利用基于ADMM结构化剪枝的核心算法,进行实际的修剪. 模型运行过程是迭代进行的,步骤1)~5)的运行为一个循环,支持灵活的轮数设置,在给定精度的情况下实现最大程度的权重修剪.
f({W i},{b i})W i b i i
在实际模型的修剪过程中,结构化剪枝中网络每层的修剪率、每层的修剪方式(或修剪方式的组合)均作为超参数待定,确定这些超参数最重要的步骤是ADMM规范化. 将DNN的损失函数定义为,其中和分别为第层的权重及偏置集合,可以将结构化修剪权重问题定义为
S i表示经过修剪后的模型剩余参数需要满足的预定义“结构”(即基于特定的模型压缩策略所产生的特定模型结构,是由上述控制各层修剪率、修剪方式的超参数决定的),则修剪过程变为在满足预定义网络“结构”下的最小化问题:
利用增广拉格朗日方法,将该问题转化为可以迭代求解的2个子问题,如式(3)所示.
Z i Z k
i
U k
i
ρi/2
式中:为引入的辅助变量,为第k次迭代时引入的辅助变量,为第k次迭代时的对偶变量,为惩罚项系数. 通过迭代求解至收敛,可以得出满足预定义修剪结构的高精确度模型压缩方案.
i i+1
在经过结构化剪枝后,开展纯化及冗余权重的消除操作,进一步减少模型权重数量. 纯化是由于第层的特定过滤器会在层生成一个通道[15],在进行过滤器剪枝时. 若删除某层中的过滤器,需要将相应通道去除. ADMM正则化本质上是动态的、基于L2范数的正则化过程,正则化之后会产生大量非零、较小的权重. 由于ADMM正则化的非凸性,发现去除这些权重可以保持最终的准确性,甚至可以提高准确性. 整体框架如图2所示.
2.2 模型分割
在模型推理的前向传播过程中,数据经过输入层、隐藏层最终传输到输出层,得到预测结果.理论上只需保证层间数据传输的准确性,就可将模型的不同层部署至不同设备上运行. 模型分割
第 t轮
自动化
代理下一轮
步骤 1)动作采样
步骤 2)
快速评估
步骤 3)
策略决定
步骤 4)
实际剪枝
采样
动作集
超参数
之前迭代轮
…
…
…
…
…
图 1 模型压缩的一般流程图
Fig.1 Generic flow of model compression
628浙 江 大 学 学 报(工学版)第 55 卷
算法即是基于这一理论实现的. 所以模型分割技术和模型压缩技术是互相独立的,两者互不影响,可以从不同层面降低复杂模型对设备硬件资源的需求. 模型压缩是通过减小模型冗余的方法,使得模型可以顺利部署至资源受限的设备上,但通常会产生模型精度的损失. 若设备资源上限十分受限,算法需要在精度下降和资源消耗之间进行平衡. 模型分割可以在不损失精度的同时,协同多个设备计算模型不同部分,完成整体的推理过程. 基于上述观察,考虑将模型压缩方案与模型分割方案相结合,实现更加高效与快速的模型推理.
在模型压缩完成后,初步实现对模型规模的缩减. 采用以层为粒度[10]的分割方式,即在神经网络层之后进行分割. 预测神经网络各层的推断时延,计算在每层之后进行分割所产生的总推断时延及各设备上的资源消耗. 根据任务的实时性能需求(推断时延、资源上限),选择最佳分割点. 总之,在模型压缩方案之后,采用模型分割技术,根据总时延寻最佳分割点,将其部署至边端设备上.
每种分割方案总时延的计算参考DADS 工作[16],将网络运行的总时延分为计算时延及传输时延.以2台设备(边缘设备及终端设备)为例,总时延计算为
T edge T t T end 式中:为边缘端的计算时延,为传输时延,
为终端的计算时延.
t edge i i t end i i n l 以为第层在边缘端的计算时延,为第
层在终端的计算时延,若分割状态将共有层的
网络在层之后进行分割并部署,则终端和边缘端
的计算时延为
传输时延为正则化是最小化策略的实现
d l l B 式中:表示分割点层输出的数据,即待传输的数据中间结果;为网络带宽.
3 GADS 边端融合模型快速自适应
当设备运行情境发生变化、导致设备资源预算变化或实时性能目标(推断时延)发生变化时,X-ADMM 算法需要重新运行以调优模型,耗时且耗能,无法在动态情境下提供实时调优方案. 为了满足动态情境下模型快速自适应能力的需求,从模型分割阶段着手,改进X-ADMM 方法,提出基于图的自适应DNN 手术刀算法(graph based ad-aptive DNN surgery ,GADS ). 该方案在模型分割的实现过程中,无需在情境产生变化时重新运行,而是主动捕捉目标部署设备的资源约束. 动态调优模型分割点,产生新的模型计算方案,实现实时自适应的边端协同计算.
介绍模型分割实验中发现的最优分割点周围存在次优分割点的规律,将其命名为最近邻边端模型分割效应. 提出基于图的自适应DNN 手术刀算法(graph based adaptive DNN surgery ,GADS ),为动态情境在局部区域寻最佳分割点. 目的是在最短时间内寻最能满足资源约束的分割方案,实现模型的快速自适应调优.
3.1 最近邻边端模型分割效应及GADS 算法的提出
在以层为粒度划分DNN 的实验中发现,最优分割点附近总是存在次优分割点,如图3(a )所示.将其命名为最近邻边端模型分割效应,以指导资源状态动态变化时深度模型最优分割点的快速搜索.
t edge i d l 模型的推断总时延由在各设备上的计算时延和传输时延构成,目标是到使总时延最短的最优分割点,实现模型计算时延和传输时延间的折中,使模型总推断时延较小. 如图3(b )所示(以AlexNet 为例),DNN 模型中各层的和有不
同的趋势. 位于模型前端的卷积层计算时延较短,但产生的中间输出数据通常较大. 位于模型尾部的全连接层产生的中间输出数据量较小,但计算时延较大. 这些特性是由CNN 网络结构的特点决
定的. 卷积层需要应用数百个过滤器提取图片特征,每个过滤器运算后均会产生一定数量的特征图,
自动化
代理
− 1轮
第 t 轮
第 t 轮
第 t + 1 轮
第 t + 1 轮
采样
ADMM 剪枝
评估
决策
采样
纯化评估
决策
…
…
…
…
…
SA
SA 采样动作集
超参数采样动作集
超参数阶段 I: 结构化剪枝阶段 II: 纯化
图 2 模型压缩框架图
Fig.2 Illustration of model compression framework
第 4 期
王虹力, 等:边端融合的终端情境自适应深度感知模型[J]. 浙江大学学报:工学版,
2021, 55(4): 626–638.
629
图 3 最近邻边端模型的分割效应
Fig.3 Neighbor partition effect of edge-end model
根据对模型各层计算时延及中间输出数据变化趋势的分析,模型分割算法选择不同层进行分割时,倾向于选择后面几层进行分割,从而将前端计算时延较短的层部署在终端,可以选择中间输出数据较小的层,避免大量传输时延. 在计算能力较强的终端或边缘端执行模型后端的部分,利用高计算能力,减少总时延. 这导致了“最近邻边端模型分割效应”的出现. 近邻效应本质上由网络各层的输出数据量、带宽和计算延迟决定,验证在不同带宽和不同模型下最近邻边端模型分割效应的普适性.
M E
T G 基于上述规律,提出基于图的自适应DNN 手术刀算法——GADS 算法,算法概念图如图4所示. 当模型运行的情境(如设备存储资源、设备电量或网络带宽等)发生变化时,主动感知当前情境,以感知到的设备资源预算作为资源约束条件Target (反映为设备存储资源预算、能耗预算及时延预算). GADS 旨在利用构建的分割状态
图,快速自适应地搜索满足资源预算的分割状
态. 搜索时,在最近邻边端模型分割效应的指导下,GADS 以当前分割状态为导向,优先由周围相似分割状态快速搜索最能满足约束的分割方式,以实现模型快速的自适应过程.3.2 最优分割点近邻规律验证
针对3.1节阐述的最优分割方式周围存在次优分割方式的规律进行验证及探讨,验证网络带
3.2.1 带宽变化下的规律验证 在以WIFI 作为数
据传输媒介的情况下,网络带宽设定为0.5~20 MB/s ,实验结果如图5所示. 在不同的网络带宽下,模型最优分割点附近分割点的总时延不会出现突变,即最优分割点周围存在次优分割点的规律依然存在.
在相同的网络分割情况下,当网络带宽变小时,边缘计算及终端计算时延保持不变,数据传输时延变长在总时延中的占比变大,如图5(b )所示. 当模型及待部署设备不变,带宽发生变化的情况下,该规律的本质是由神经网络每层输出数据量(待传输数据量)决定的.
如图6所示,AlexNet 网络中卷积层每层的输
T T T T T T 图 5 不同网络带宽下对AlexNet 进行划分的总时延Fig.5 Inference latency for AlexNet with different bandwidths
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论