CN115277452A - 基于边端协同的ResNet自适应加速计算方法及应用 - Google Patents
基于边端协同的ResNet自适应加速计算方法及应用 Download PDFInfo
- Publication number
- CN115277452A CN115277452A CN202210765336.1A CN202210765336A CN115277452A CN 115277452 A CN115277452 A CN 115277452A CN 202210765336 A CN202210765336 A CN 202210765336A CN 115277452 A CN115277452 A CN 115277452A
- Authority
- CN
- China
- Prior art keywords
- resnet
- model
- edge
- calculation
- logic
- 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.)
- Granted
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 80
- 230000001133 acceleration Effects 0.000 title claims description 18
- 230000011218 segmentation Effects 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000005457 optimization Methods 0.000 claims abstract description 31
- 238000013507 mapping Methods 0.000 claims abstract description 26
- 238000012360 testing method Methods 0.000 claims abstract description 13
- 230000005540 biological transmission Effects 0.000 claims description 21
- 230000003044 adaptive effect Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 9
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 239000010410 layer Substances 0.000 description 91
- 230000015654 memory Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 244000141353 Prunus domestica Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000010008 shearing Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于边端协同的ResNet自适应加速计算方法及应用。该方法包括:将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;构建ResNet模型的计算图模型;将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将不同网络环境及对应的最优分割点间保存为映射表;根据当前运行的网络环境查找对应的最优分割点。本发明可以对不同的网络环境进行自适应,快速地选取最优分割点。
Description
技术领域
本申请涉及云计算技术领域,更具体地,涉及一种基于边端协同的ResNet自适应加速计算方法及应用。
背景技术
目前随着人工智能技术的浪潮,基于卷积神经网络(CNN)的移动智能应用作为一种新的服务方案,已经进入了现代社会的许多方面,但是这类任务往往具有延迟敏感性、计算密集性的特点,目前的智能终端设备受到能耗、处理能力的限制,无法进行实时的处理,需要额外的计算资源支撑。云计算模式能够提供强大的GPU资源,但是云服务中心与端设备距离远,服务质量严重受限于网络的通信条件,且长距离的数据传输让数据面临泄露问题。
应对上述问题,目前广泛采用边端协同的方法,不将数据上传到云或者将计算任务完全保留在本地,而是从终端设备卸载部分计算任务到边缘,利用近端侧的计算资源实现实时响应,同时保障数据隐私性。
但是目前的基于边端协同的CNN模型推理方法,具有以下问题:
(1)目前基于模型原有的网络结构进行按层分割的方法,适用于线性结构的模型,对于ResNet的残差块等非线性结构,不能进行分割点的选择。
(2)求解最优分割点时,解空间大,不能随着应用场景的变化动态缩减求解时间.。
(3)当网络环境发生变化时,需要频繁地对整个模型重新进行最优分割点的计算,耗费计算资源,延长了任务的响应时间。
发明内容
针对现有技术的至少一个缺陷或改进需求,本发明提供了一种基于边端协同的ResNet自适应加速计算方法及应用,可以对不同的网络环境进行自适应,快速地选取最优分割点。
为实现上述目的,按照本发明的第一个方面,提供了一种基于边端协同的ResNet自适应加速计算方法,包括:
将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;
构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边;
将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将不同网络环境及对应的最优分割点间保存为映射表;
获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
进一步地,划分时将ResNet网络模型中的一个残差块整体作为一个逻辑层,除残差块以外的网络结构按层结构划分为若干个逻辑层。
进一步地,所述构建ResNet模型的计算图模型包括:
将计算过程中的数据流向抽象成有向边,计算时延作为边的权重,分别构建出端设备和边缘服务器上的计算图;
将端设备和边缘服务器之间的数据传输过程也作为边,数据传输时间作为对应边的权重,实现端设备和边缘服务器上的计算图之间的连接,连接过程中需要遵循逻辑层之间数据流动约束。
进一步地,所述通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量包括:
分别将ResNet模型部署在边缘服务器和端设备;
分别输入测试数据到ResNet模型;
获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量。
进一步地,所述求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点包括:
将ResNet模型的逻辑层总数量设为n,第i层到第j层在端设备的计算时延为Di,j,第i层到第j层在边缘服务器上的计算时延为Di,j,在不同的网络环境下,第i层的输出数据量在端设备和边缘服务器间数据传输所需的时间为Ti,1≤i≤n,i≤j≤n,用ei,j和di,j来描述第i层和第j层的部署方式,若第i层到第j层在边缘服务器上执行,ei,j为1,否则为0,若第i层到第j层在端设备上执行,则di,j为1,否则为0,根据Di,j、Di,j、Ti、ei,j和di,j构建以ResNet模型完成单次计算过程的时间为目标的目标优化函数,
求解最小化目标时ei,j和di,j的取值,根据ei,j和di,j的取值确定最优分割点。
进一步地,将完成单次计算过程中在端设备和边缘服务器上所需的计算时间记为Tcomputing,将完成单次计算过程中在端设备和边缘服务器间数据传输所需时间记为Tcommunication,优化目标记为Ttotal,Tcomputing、Tcommunication、Ttotal的计算公式为:
进一步地,求解最优分割点过程中,根据实际需求设定约束条件,根据约束条件剪枝解空间。
进一步地,若映射表中没有保存当前运行的网络环境对应的最优分割点,则根据每个逻辑层的计算时延和输出数据量求解当前运行的网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,并将当前运行的网络环境及其最优分割点更新至映射表中,更新时,若映射表的保存数据已达到上限,则替换最近最少使用的一组网络环境及其对应最优分割点,若映射表的保存数据未达到上限,则直接保存。
按照本发明的第二个方面,还提供了一种基于边端协同的ResNet自适应加速计算系统,其特征在于,包括:
划分模块,用于将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;
计算图模型构建模块,用于构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边;
求解模块,用于将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将网络环境及对应的最优分割点间保存为映射表;
调用模块,用于获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
按照本发明的第三个方面,还提供了一种存储介质,其存储有可由处理器执行的计算机程序,当所述计算机程序在处理器上运行时,使得处理器执行上述任一项所述方法的步骤。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)本发明在ResNet模型在采用边端协同方式进行模型计算加速时,提出了通过构建计算图模型来求解最优分割点的方法,并且针对模型分割点计算随着网络带宽变化频繁计算的问题,通过构建最优分割点映射表,极大缩减了在线模型分割点的计算次数。
(2)本发明还提出了将ResNet网络模型中的一个残差块整体作为一个逻辑层,解决了现有技术中分割方法不适用于ResNet网络模型的问题。
(3)本发明也降低了求解计算图模型的解空间大小,还通过对不同应用场景中动态适应,进一步对解空间进行剪枝,提供更快速地自适应最优分割点选择。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的边端协同示意图;
图2为本申请实施例提供的基于边端协同的ResNet自适应加速计算方法的流程示意图;
图3为本申请实施例提供的计算图模型示意图;
图4为本申请实施例提供的映射表示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或模块。
如图1所示,进行边端协同时,将ReNet网络模型的部分部署在端设备上,部分部署在边缘服务器上,端设备和边缘服务器间进行数据传输交换。
如图2所示,本发明实施例的一种基于边端协同的ResNet自适应加速计算方法,包括:
S101,将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量。
输出数据量会影响数据在边缘服务器和端设备的数据传输时间。
进一步地,所述步骤S101具体包括以下步骤:
S1011:按照ResNet的网络结构,将ResNet模型的单层或多个相邻层结构抽象为逻辑层。
进一步地,划分时将ResNet网络模型中的一个残差块整体作为一个逻辑层,除残差块以外的网络结构按层结构划分为若干个逻辑层,即其余无跳转和并行计算结构的层按照模型原有的层结构依次划分为逻辑层。这是由于ResNet具有残差结构(非线性结构)的特点,所以不完全采用按模型原有的层结构划分逻辑层的方法。
S1012:估计ResNet各个逻辑层在端和边上的运行时间和输出数据大小。
所述步骤S1012具体包括:将ResNet模型部署在端设备和边缘服务器上,输入测试数据,端和边根据对测试数据的推理,分别估计ResNet每一个逻辑层的计算时延,并计算逻辑层输出的数据量。
S102,构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边。
考虑网络带宽、模型计算时间等影响因子,对ResNet的计算时延和数据传输时延进行理论建模,将计算过程(推理过程)转成计算图。
进一步地,步骤S102具体包括以下步骤:
S1021:根据模型推理过程中层的先后制约关系,对抽象出的逻辑层构建计算图。
所述步骤S1021具体包括:依据ResNet原模型的层间数据流向,确定抽象出的逻辑层之间的数据流向,再将逻辑层抽象成计算图的顶点,将推理过程中的数据流向抽象成有向边,推理时间作为边的权重,分别构建出端设备和边上的计算图。
S1022:考虑ResNet可能执行的环境差异(端或云),对计算图加入数据传输时延,构建出模型采用边端协同推理的计算图。
所述步骤S1022具体包括:某一逻辑层计算得到的数据可能通过网络传输到另一设备,因此需要将端设备和边上的计算图进行结合,即将端设备和边之间的数据传输过程也作为边,传输时间作为对应边的权重,实现两个计算图的连接,连接过程中同样需要保证遵循逻辑层之间数据流动约束。
如图3所示,假设ResNet模型被划分为2个逻辑层A和B,根据ResNet模型可以确定A需要输出数据给B,则A和B之间存在边但根据A和B的部署情况的不同,A和B之间可能存在不同的数据传输路径。图中序号0-8表示这些节点代表了数据,边代表了时间。具体的:节点0表示端设备上生成的数据,即为输入,节点1代表在端设备上层A的输入数据,实际上即为节点0代表的数据,两者都在端设备上,没有传输时间,因此0->1之间的边权重为0,节点2代表在边上时层A的输入数据,因为节点2在边上,虽然数据和节点1代表的数据相同,但是因为数据需要通过网络传输,因此具有一个传输时间TA1。节点3代表在边上层A的输出数据,2->3代表了层A在边上的推理过程,有一个推理时间为EA1,节点4代表在端设备上层A的输出数据,也是端设备上层B的输入数据,可以通过在端上推理层A得到也就是路径0->1>4,或者是通过边推理层A后将数据传输过来,也就是路径0->1->2->3->4。可以看出为什么要求最短路径了,因为路径代表了推理过程,也就代表了切割方案,那么最短路径就是最佳的切割方案。节点5代表在边上层B的输入数据,节点6代表在边上层B的输出数据,节点7代表在端设备上层B的输出数据,节点8代表在边上层B的输出数据,等同于6代表的数据,所以6->8之间的边权重为0。不同的部署方式对应不同的数据路径,对应的总时长也不同。后续求解就是要确定A和B部署在端设备还是边缘服务器。
S103,将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将不同网络环境及对应的最优分割点间保存为映射表。
对最小化ResNet模型单次推理时间的目标确定目标优化函数,根据计算图求解能够最小化目标优化函数的ResNet模型最优的分割点,边离线构建最优分割点映射表。
单次计算过程(单次推理过程)是指数据从输入ResNet模型到ResNet模型输出计算数据的一次过程。
进一步,所述步骤S103具体包括以下步骤:
S1031:对最小化ResNet模型单次推理时间的目标确定目标优化函数。
S1032:根据计算图和优化目标函数,根据实际应用情况剪枝解空间,再使用最短路径算法求解模型的最佳切分点。
S1033:求解优化目标,根据最佳切分点离线构建最优分割点的映射表。
进一步,所述步骤S1031具体包括:将ResNet模型的逻辑层总数量设为n,第i层到第j层在端设备的计算时延为Di,j,第i层到第j层在边缘服务器上的计算时延为Di,j,在不同的网络环境下,第i层的输出数据量在端设备和边缘服务器间数据传输所需的时间为Ti,1≤i≤n,i≤j≤n。用ei,j和di,j来描述第i层和第j层的部署方式,若第i层到第j层在边缘服务器上执行,即第i层到第j层都在边缘服务器,ei,j为1,否则为0,若第i层到第j层在端设备上执行,即第i层到第j层都在端设备,则di,j为1,否则为0,如果第i层在端设备上,第j层在边上,那么有di,i=1,ej,j=1。
根据Di,j、Di,j、Ti、ei,j和di,j构建以ResNet模型完成单次计算过程的时间为目标的目标优化函数。求解最小化目标时ei,j和di,j的取值,根据ei,j和di,j的取值确定最优分割点。
进一步地,将完成单次计算过程中在端设备和边缘服务器上所需的计算时间记为,Tcomputing,将完成单次计算过程中在端设备和边缘服务器间数据传输所需时间记为Tcommunication,优化目标记为Ttotal,Tcomputing、Tcommunication、Ttotal的计算公式为:
进一步,所述步骤S1032具体包括:求解最优分割点过程中,根据实际需求设定约束条件,根据约束条件剪枝解空间。如用户指定只一次切分,在求解优化目标的过程中,每当进行一次逻辑层的边端数据传输后,能够剪枝掉所有需要再次进行数据传输的解空间。然后根据计算图使用最大流最小割算法求解,得到能够最小化Ttotal的i和j,即为最优的分割点。
进一步,所述步骤S1033具体包括:将分割点个数置为1,求解在不同逻辑层进行分割时对应的网络带宽范围,并建立映射关系。然后去除分割点约束,求解不同带宽下的最优分割方案,具体以500Kb为粒度对网络带宽为0到100Mbps的区间进行分解,求解完成后同样建立映射关系。最后按照分割策略合并带宽区间,得到离线初始化的最优分割点映射表,如图4所示。
S104,获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
边将ResNet分割点通知端,并动态维护最优分割点映射表,端、边根据分割策略进行协同推理。
进一步地,边根据实际的网络带宽情况,在映射表中查找对应的模型分割策略,如果分割策略存在,将该条策略传回端并置为最近使用。如果分割策略不存在,边根据网络带宽根据计算图求解优化目标,如果映射表达到数据上限,根据最近最少使用算法将该次求解策略加入,如果未达到数据上限,直接保存。最新插入的数据需要置为最近使用。端设备依据接受到的模型分割策略,执行分割点的前半部分,再将计算完成得到的模型中间结果传输到边,边缘服务器通过执行得到最终推理结果,进行协同推理。
本发明实施例的一种基于边端协同的ResNet自适应加速计算系统,包括:
划分模块,用于将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;
计算图模型构建模块,用于构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边;
求解模块,用于将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将网络环境及对应的最优分割点间保存为映射表;
调用模块,用于获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
系统和方法的实现原理相同,此处不再赘述。
本申请还提供一种存储介质,其存储有可由处理器执行的计算机程序,当计算机程序在处理器上运行时,使得处理器执行上述任一项上述基于边端协同的ResNet自适应加速计算方法的步骤。其中,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC),或适合于存储指令和/或数据的任何类型的媒介或设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,可通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些服务接口,系统或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通进程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所述者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践这里的公开后,将容易想到本公开的其实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的范围和精神由权利要求限定。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于边端协同的ResNet自适应加速计算方法,其特征在于,包括:
将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;
构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边;
将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将不同网络环境及对应的最优分割点间保存为映射表;
获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
2.如权利要求1所述的基于边端协同的ResNet自适应加速计算方法,其特征在于:划分时将ResNet网络模型中的一个残差块整体作为一个逻辑层,除残差块以外的网络结构按层结构划分为若干个逻辑层。
3.如权利要求1所述的基于边端协同的ResNet自适应加速计算方法,其特征在于,所述构建ResNet模型的计算图模型包括:
将计算过程中的数据流向抽象成有向边,计算时延作为边的权重,分别构建出端设备和边缘服务器上的计算图;
将端设备和边缘服务器之间的数据传输过程也作为边,数据传输时间作为对应边的权重,实现端设备和边缘服务器上的计算图之间的连接,连接过程中需要遵循逻辑层之间数据流动约束。
4.如权利要求1所述的基于边端协同的ResNet自适应加速计算方法,其特征在于,所述通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量包括:
分别将ResNet模型部署在边缘服务器和端设备;
分别输入测试数据到ResNet模型;
获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量。
5.如权利要求4所述的基于边端协同的ResNet自适应加速计算方法,其特征在于,所述求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点包括:
将ResNet模型的逻辑层总数量设为n,第i层到第j层在端设备的计算时延为Di,j,第i层到第j层在边缘服务器上的计算时延为Di,j,在不同的网络环境下,第i层的输出数据量在端设备和边缘服务器间数据传输所需的时间为Ti,1≤i≤n,i≤j≤n,用ei,j和di,j来描述第i层和第j层的部署方式,若第i层到第j层在边缘服务器上执行,ei,j为1,否则为0,若第i层到第j层在端设备上执行,则di,j为1,否则为0,根据Di,j、Di,j、Ti、ei,j和di,j构建以ResNet模型完成单次计算过程的时间为目标的目标优化函数,
求解最小化目标时ei,j和di,j的取值,根据ei,j和di,j的取值确定最优分割点。
7.如权利要求1所述的基于边端协同的ResNet自适应加速计算方法,其特征在于,求解最优分割点过程中,根据实际需求设定约束条件,根据约束条件剪枝解空间。
8.如权利要求1所述的基于边端协同的ResNet自适应加速计算方法,其特征在于,
若映射表中没有保存当前运行的网络环境对应的最优分割点,则根据每个逻辑层的计算时延和输出数据量求解当前运行的网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,并将当前运行的网络环境及其最优分割点更新至映射表中,更新时,若映射表的保存数据已达到上限,则替换最近最少使用的一组网络环境及其对应最优分割点,若映射表的保存数据未达到上限,则直接保存。
9.一种基于边端协同的ResNet自适应加速计算系统,其特征在于,包括:
划分模块,用于将ResNet模型划分为若干个逻辑层,通过测试获得每个逻辑层在边缘服务器和端设备的计算时延和输出数据量;
计算图模型构建模块,用于构建ResNet模型的计算图模型,计算图模型中将逻辑层作为计算图模型的顶点,根据逻辑层间的数据流向构建顶点间的边;
求解模块,用于将最小化ResNet模型完成单次计算过程的时间作为优化目标,根据计算图模型、每个逻辑层的计算时延和输出数据量求解不同网络环境下的最小化优化目标时逻辑层在边缘服务器和端设备的最优分割点,将网络环境及对应的最优分割点间保存为映射表;
调用模块,用于获取ResNet模型当前运行的网络环境,根据当前运行的网络环境查找对应的最优分割点,并按照该查找的最优分割点在边缘服务器和端设备分开部署ResNet模型的逻辑层。
10.一种存储介质,其特征在于,其存储有计算机程序,当所述计算机程序在处理器上运行时,使得所述处理器执行权利要求1~8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210765336.1A CN115277452B (zh) | 2022-07-01 | 2022-07-01 | 基于边端协同的ResNet自适应加速计算方法及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210765336.1A CN115277452B (zh) | 2022-07-01 | 2022-07-01 | 基于边端协同的ResNet自适应加速计算方法及应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115277452A true CN115277452A (zh) | 2022-11-01 |
CN115277452B CN115277452B (zh) | 2023-11-28 |
Family
ID=83763312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210765336.1A Active CN115277452B (zh) | 2022-07-01 | 2022-07-01 | 基于边端协同的ResNet自适应加速计算方法及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115277452B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019200752A1 (zh) * | 2018-04-17 | 2019-10-24 | 平安科技(深圳)有限公司 | 基于语义理解的兴趣点查询方法、装置和计算机设备 |
US20200125926A1 (en) * | 2018-10-23 | 2020-04-23 | International Business Machines Corporation | Dynamic Batch Sizing for Inferencing of Deep Neural Networks in Resource-Constrained Environments |
CN111445026A (zh) * | 2020-03-16 | 2020-07-24 | 东南大学 | 面向边缘智能应用的深度神经网络多路径推理加速方法 |
CN112287609A (zh) * | 2020-12-28 | 2021-01-29 | 之江实验室 | 一种面向机器人任务划分的端、边、云协同计算装置 |
CN112418236A (zh) * | 2020-11-24 | 2021-02-26 | 重庆邮电大学 | 一种基于多任务神经网络的汽车可行驶区域规划方法 |
CN112822701A (zh) * | 2020-12-31 | 2021-05-18 | 中山大学 | 边缘计算场景下多用户深度神经网络模型分割与资源分配优化方法 |
CN113169990A (zh) * | 2018-11-30 | 2021-07-23 | 阿里巴巴集团控股有限公司 | 具有动态卸载的深度学习推理的分割 |
WO2021159448A1 (zh) * | 2020-02-14 | 2021-08-19 | 中国科学院深圳先进技术研究院 | 一种基于序列推荐系统的通用网络压缩框架和压缩方法 |
WO2022021176A1 (zh) * | 2020-07-28 | 2022-02-03 | 苏州大学 | 云边协同网络资源平滑迁移与重构方法及系统 |
CN114500560A (zh) * | 2022-01-06 | 2022-05-13 | 浙江鼎峰科技股份有限公司 | 一种最小化网络时延的边缘节点服务部署与负载均衡方法 |
WO2022133627A1 (zh) * | 2020-12-21 | 2022-06-30 | 广州视源电子科技股份有限公司 | 图像分割方法、装置、设备及存储介质 |
-
2022
- 2022-07-01 CN CN202210765336.1A patent/CN115277452B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019200752A1 (zh) * | 2018-04-17 | 2019-10-24 | 平安科技(深圳)有限公司 | 基于语义理解的兴趣点查询方法、装置和计算机设备 |
US20200125926A1 (en) * | 2018-10-23 | 2020-04-23 | International Business Machines Corporation | Dynamic Batch Sizing for Inferencing of Deep Neural Networks in Resource-Constrained Environments |
CN113169990A (zh) * | 2018-11-30 | 2021-07-23 | 阿里巴巴集团控股有限公司 | 具有动态卸载的深度学习推理的分割 |
WO2021159448A1 (zh) * | 2020-02-14 | 2021-08-19 | 中国科学院深圳先进技术研究院 | 一种基于序列推荐系统的通用网络压缩框架和压缩方法 |
CN111445026A (zh) * | 2020-03-16 | 2020-07-24 | 东南大学 | 面向边缘智能应用的深度神经网络多路径推理加速方法 |
WO2022021176A1 (zh) * | 2020-07-28 | 2022-02-03 | 苏州大学 | 云边协同网络资源平滑迁移与重构方法及系统 |
CN112418236A (zh) * | 2020-11-24 | 2021-02-26 | 重庆邮电大学 | 一种基于多任务神经网络的汽车可行驶区域规划方法 |
WO2022133627A1 (zh) * | 2020-12-21 | 2022-06-30 | 广州视源电子科技股份有限公司 | 图像分割方法、装置、设备及存储介质 |
CN112287609A (zh) * | 2020-12-28 | 2021-01-29 | 之江实验室 | 一种面向机器人任务划分的端、边、云协同计算装置 |
CN112822701A (zh) * | 2020-12-31 | 2021-05-18 | 中山大学 | 边缘计算场景下多用户深度神经网络模型分割与资源分配优化方法 |
CN114500560A (zh) * | 2022-01-06 | 2022-05-13 | 浙江鼎峰科技股份有限公司 | 一种最小化网络时延的边缘节点服务部署与负载均衡方法 |
Non-Patent Citations (2)
Title |
---|
WEIWEI MIAO, ZENG ZENG, LEI WEI, SHIHAO LI, CHENGLING JIANG, AND ZHEN ZHANG: "《Adaptive DNN Partition in Edge Computing Environments》", 《2020 IEEE 26TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS》 * |
茹玉年,李波,柴剑平,刘剑波: "《一种基于深度学习的电影票房预测模型》", 《中国传媒大学学报(自然科学版)》, no. 1 * |
Also Published As
Publication number | Publication date |
---|---|
CN115277452B (zh) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113794494B (zh) | 一种面向低轨卫星网络的边缘计算系统及计算卸载优化方法 | |
CN113220457A (zh) | 模型部署方法、模型部署装置、终端设备及可读存储介质 | |
CN114915630A (zh) | 基于物联网设备的任务分配方法、网络训练方法及装置 | |
CN113315669B (zh) | 基于云边协同的吞吐量优化的机器学习推断任务部署方法 | |
CN115665869A (zh) | 基于边缘计算和有向无环图的多用户协作平台及其方法 | |
CN117041330A (zh) | 一种基于强化学习的边缘微服务细粒度部署方法及系统 | |
CN116418808A (zh) | 一种mec的联合计算卸载和资源分配方法及装置 | |
CN110930092B (zh) | 一种配送路线调整方法、装置、电子设备和存储介质 | |
CN115277452A (zh) | 基于边端协同的ResNet自适应加速计算方法及应用 | |
CN114978913B (zh) | 一种基于切链的服务功能链跨域部署方法及系统 | |
CN116562364A (zh) | 基于知识蒸馏的深度学习模型协同推演方法、装置及设备 | |
CN116245163A (zh) | 模型处理方法、系统及非易失性存储介质 | |
CN115169561A (zh) | 一种用于物联网的多分支网络协同推理方法及系统 | |
CN110234167B (zh) | 一种信道分配方法、信道分配装置及电子设备 | |
CN114173421A (zh) | 基于深度强化学习的LoRa逻辑信道及功率分配方法 | |
CN113543065A (zh) | 一种基于强化学习的通信资源分配方法及其相关设备 | |
CN114816659B (zh) | 一种虚拟机网络部署方案的决策模型训练方法 | |
Yao et al. | Performance Optimization in Serverless Edge Computing Environment using DRL-Based Function Offloading | |
CN113778620B (zh) | 基于多sdn控制器与软硬件协同的大规模集群存储系统架构 | |
CN115202591B (zh) | 一种分布式数据库系统的存储装置、方法及存储介质 | |
CN116980423B (zh) | 模型调度方法、装置、计算系统、设备及可读存储介质 | |
CN116341685B (zh) | 基于联合注意力的分布式计算卸载模型训练方法和系统 | |
CN114706687B (zh) | 计算任务的分配方法、装置、计算机设备和存储介质 | |
CN113177212B (zh) | 联合预测方法和装置 | |
CN118796443A (zh) | 资源调度方法、装置与系统、电子设备、存储介质与产品 |
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 |