CN116009884A - 面向边缘设备的神经网络弹性部署方法及装置 - Google Patents
面向边缘设备的神经网络弹性部署方法及装置 Download PDFInfo
- Publication number
- CN116009884A CN116009884A CN202211659466.3A CN202211659466A CN116009884A CN 116009884 A CN116009884 A CN 116009884A CN 202211659466 A CN202211659466 A CN 202211659466A CN 116009884 A CN116009884 A CN 116009884A
- Authority
- CN
- China
- Prior art keywords
- model
- edge
- elastic
- network
- super
- 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.)
- Pending
Links
Images
Classifications
-
- 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
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种面向边缘设备的神经网络弹性部署方法及装置,其中的方法包括:获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;基于所述弹性超网络模型,根据边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。该方法通过弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,能够节省大量的计算资源和人力开销,并且,由于不需要向服务器端传送边缘端侧数据,规避了现有部署方式侵犯隐私的潜在风险。
Description
技术领域
本发明涉及网络模型部署技术领域,尤其涉及一种面向边缘设备的神经网络弹性部署方法及装置。
背景技术
随着深度神经网络在图像识别、自然语言处理以及最优控制等领域取得接近甚至超越人类的效果,如何将模型应用到真实世界的各类任务,发挥其价值变得越来越重要。
由于对时延、隐私等方面的要求,开发者经常需要将模型部署运行在边缘端设备上,如边缘服务器、智能手机、智能摄像头以及车载系统等。然而,在边缘设备部署神经网络模型具有多方面的挑战,具体包括资源受限、环境多样和数据偏移等。关于其中的资源受限这一挑战,现有技术提出了各种模型压缩加速的方法进行解决,而关于边缘环境多样和数据偏移这两个问题还尚未得以较好的解决。
具体地,关于如何针对不同的边缘硬件条件,高效地对模型进行定制。与服务器端运行环境不同,端侧的模型运行环境往往是十分多样、多变的。例如,市面上不同智能手机运行相同模型的时延可能相差50多倍,即使是相同的硬件,其所处的环境温度、后台运行的进程情况、需处理的数据规模等都会影响模型的执行效率。
而同时,开发者和用户对于模型的预期时延却是相对统一的。例如,交通情况监控需要达到固定的帧率,以保证事故监测的实时性和稳定性,实时语音识别和翻译软件需要在确定的时间内返回结果,以保证良好的用户体验。
关于如何根据不同的边缘数据分布,对模型进行调整和适应。与模型训练时使用的均匀分布的数据集不同,运行在端侧的模型需要处理真实世界中分布偏移的数据。例如,智能摄像头在物理世界中部署的视角、环境光线、识别目标分布等都各有差异。据研究人员评测,在自然图片分布偏移影响下,图像分类的准确率可能下降10%以上2。并且,不同终端的数据分布各异,且分布信息难以在模型开发阶段获知。
目前,针对环境多样和数据偏移的问题,现有的方案是在服务器端利用架构搜索和迁移学习等技术针对每种边缘端情况定制生成一个专用模型,但该方法存在以下三个方面的缺陷:(1)计算开销大,即为每个边缘端定制模型需要耗费大量的计算资源;(2)管理困难,即让开发者管理和维护数目众多的边缘端模型费时费力;(3)侵犯隐私,即定制模型往往需要获取隐私敏感的边缘侧信息。
因此,如何解决现有技术中边缘端模型部署存在的计算开销大、管理困难以及涉及隐私的问题,是网络模型部署技术领域亟待解决的重要课题。
发明内容
本发明提供一种面向边缘设备的神经网络弹性部署方法及装置,用以克服现有技术中边缘端模型部署存在的计算开销大、管理困难以及涉及隐私的缺陷,实现网络模型的弹性部署,节省边缘端模型部署所需的计算资源和人力资源。
一方面,本发明提供一种面向边缘设备的神经网络弹性部署方法,包括:获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;基于所述弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
进一步地,所述弹性超网络模型的生成步骤,包括:将所述初始静态深度学习模型中的单一网络层替换为多专家混合层,所述多专家混合层用于处理不同的边缘数据分布。
进一步地,所述弹性超网络模型的生成步骤,包括:在所述初始静态深度学习模型的一层或连续多层网络中增加替换网络层,所述替换网络层对应的参数量少于所述初始静态深度学习模型中原始网络层对应的参数量。
进一步地,所述弹性超网络模型的生成步骤,包括:在所述多专家混合层、所述替换网络层以及所述初始静态深度学习模型的原始网络层中增加用以表征不同精度的精度选项。
进一步地,所述根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,包括:基于所述边缘硬件条件和所述边缘数据分布,计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度;根据所述多个子模型对应的运行时延和推理准确度,确定待部署模型。
进一步地,所述计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度,包括:确定每一个子模型中单一网络层在所述实际边缘设备上运行的时延;根据每一个子模型包含的网络层及其对应的时延,计算得到每个所述子模型的运行时延。
进一步地,所述计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度,包括:获取待推理的边缘端数据集;利用多个子模型在所述边缘端数据集上进行推理,得到每个所述子模型对应的推理准确度。
第二方面,本发明还提供一种面向边缘设备的神经网络弹性部署装置,包括:弹性超网络获取模块,用于获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;待部署模型确定模块,用于基于所述弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的面向边缘设备的神经网络弹性部署方法。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的面向边缘设备的神经网络弹性部署方法。
本发明提供的面向边缘设备的神经网络弹性部署方法,通过对初始静态深度学习模型的参数量和运行方式进行扩展,得到弹性超网络模型,基于该弹性超网络模型,根据边缘硬件条件和边缘数据分布,从弹性超网络模型的多个子模型中搜索处最适应边缘端的一个子模型作为待部署模型,并在边缘端对该待部署模型进行部署。该方法通过弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,能够节省大量的计算资源和人力开销,并且,由于不需要向服务器端传送边缘端侧数据,规避了现有部署方式侵犯隐私的潜在风险。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的面向边缘设备的神经网络弹性部署方法的流程示意图;
图2为本发明提供的神经网络弹性部署方式与传统部署方式的区别示意图;
图3为本发明提供的弹性超网络模型的网络结构示意图;
图4为本发明提供的面向边缘设备的神经网络弹性部署装置的结构示意图;
图5为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在边缘设备部署神经网络模型时,总是受边缘环境多样和数据偏移的影响,现有技术通过在服务器端利用架构搜索和迁移学习等技术,针对每一种边缘端情况定制生成相应的专用模型,以解决前述边缘环境多样和数据偏移带来的问题。但该部署方法存在计算开销大、管理困难以及涉及隐私的缺陷,考虑及此,本发明提供了一种面向边缘设备的神经网络弹性部署方法。
具体地,图1示出了本发明所提供的面向边缘设备的神经网络弹性部署方法的流程示意图。如图1所示,该方法包括:
S110,获取服务器端生成的弹性超网络模型,该弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到。
可以理解的是,基于给定的需要部署到边缘端的初始静态深度学习模型,服务器端将该初始静态深度学习模型自动弹性化转换为具有丰富可伸缩性的多分支弹性模型,即弹性超网络模型。
需要说明的是,弹性化转换的目的是将初始静态深度学习模型拓展为参数量更多、运行方式更多样的弹性超网络模型,该弹性超网络模型的计算图中,从输入到输出有多条通路,每一条通路都代表一个可执行的子模型,具有不同的运算量和预测准确度。
在获取服务器端生成的弹性超网络模型之前,需要对弹性超网络模型的生成展开描述。
对初始静态深度学习模型的参数量和运行方式进行扩展,在一个具体的实施例中,可以将初始静态深度学习模型中单一网络层替换为多专家混合层。
在另一个具体的实施例中,可以将在初始静态深度学习模型中一层或连续多层网络中增加参数量较小的替换选项。
当然,任何其他能够增加参数量、多样化运行方式的方案也同样可以适用于本实施例,在此并不做具体限定。
例如,还可以在初始静态深度学习模型中每一网络层中设置多个精度选项,以供在边缘端推理时,通过选择低精度选项缩短推理时间。
需要说明的是,在服务器端生成弹性超网络模型之后,可以采用子模型采样配合知识蒸馏的方法对超网络参数进行训练,以将弹性超网络模型训练至收敛。也即,在拓展模型结构之后,采用知识蒸馏加微调两阶段的方式对超网络参数进行训练。
具体地,在第一阶段中,设置一个模块级别的损失函数,使得对于同一个样本输入,弹性超网络模型中每一个新加入的模块的输出特征值与其在初始静态深度学习模型中的被替换模块的输出特征值更加接近,这样可以高效地更新每个新加入模块的参数。其中的模块是指弹性超网络模型中的单一网络层,该单一网络层可以为初始静态深度学习模型中的原始网络层,也可以为新增加的替换网络层。
在第二阶段中,增加另一个损失函数,对于弹性超网络模型中的每一条输入与输出之间包含新加入模块的路径,即一个完整的子模型,其最终输出与训练样本的标注更加接近,这样可以进一步提升子网络模型的参数质量,使其可以在边缘端不需要进一步训练的情况下达到一定的精度。弹性超网络模型训练完毕之后将被统一部署到不同的边缘设备中。
服务器端将训练收敛的弹性超网络模型发布到边缘端,边缘端即可获取服务器端生成的弹性超网络模型。
S120,基于弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,该待部署模型为弹性超网络模型的多个子模型中的一个子模型。
可以理解的是,在上述步骤S110获取服务器端生成的弹性超网络模型的基础上,基于该弹性超网络模型,根据实际边缘设备的的边缘硬件条件和边缘数据分布,从弹性超网络模型中搜索出一条最适合目标边缘端的通路,这一通路即为弹性超网络模型的多个子模型中的一个子模型,将该子模型作为目标边缘端的待部署模型,并将其部署于目标边缘端。
需要说明的是,在搜索最适合目标边缘端的子模型时,主要有两方面的适应,即适应边缘硬件条件和适应边缘数据分布。其中,边缘硬件条件和边缘数据分布的适应可以通过相应的优化指标进行评估,例如,边缘硬件条件的适应可以通过运行时延评估,边缘数据分布的适应可以通过推理准确度来评估。
基于上述描述的本发明所提供的面向边缘设备的神经网络弹性部署方法,为了更突出本发明与现有模型部署方式的区别,图2示出了本发明所提供的神经网络弹性部署方式与传统部署方式的区别示意图。
如图2所示,图2中的(a)示出了传统部署方式的示意图,展开地,基于待部署模型和收集的数据,服务器端将待部署模型分别根据不同的边缘端情况定制边缘端专用模型,即(a)中的模型变体1、模型变体2以及模型变体3,从而进一步将模型变体1-3分别部署到边缘环境和数据分布相适应的边缘端。
图2中的(b)示出了本发明所提供的弹性部署方式的示意图,展开地,在服务器端,基于待部署模型,对待部署模型进行弹性化转换,生成统一弹性模型,即弹性超网络模型,该统一弹性模型能够自相适应不同边缘端的边缘环境和数据分布,从而实现神经网络在边缘端的弹性部署。
根据图2可以看出,相较于传统部署方式,本发明所提供的弹性部署方式并不需要向服务器端传送边缘端侧数据,克服了传统部署方式涉及隐私的缺陷,并且,弹性部署方式在边缘端部署时,通过弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,从而,能节省大量的计算资源和人力开销。
在本实施例中,通过对初始静态深度学习模型的参数量和运行方式进行扩展,得到弹性超网络模型,基于该弹性超网络模型,根据边缘硬件条件和边缘数据分布,从弹性超网络模型的多个子模型中搜索处最适应边缘端的一个子模型作为待部署模型,并在边缘端对该待部署模型进行部署。该方法通过弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,能够节省大量的计算资源和人力开销,并且,由于不需要向服务器端传送边缘端侧数据,规避了现有部署方式侵犯隐私的潜在风险。
在上述实施例的基础上,进一步地,服务器端对初始静态深度学习模型进行扩展,得到弹性超网络模型。具体地,弹性超网络模型的生成步骤,包括:将初始静态深度学习模型中的单一网络层替换为多专家混合层,多专家混合层用于处理不同的边缘数据分布。
可以理解的是,通过对初始静态深度学习模型的参数量和运行方式进行扩展得到弹性超网络模型,具体地,可以将初始静态深度学习模型中的原始的单一网络层替换为多专家混合层,这里需要说明的是,在替换的过程中,保留原始的单一网络层。
将原始的单一网络层替换为多专家混合层,可以增加弹性超网络模型的容量,同时使不同的专家结构匹配不同的数据特征,在边缘端进行模型部署时,可以根据边缘端侧的数据偏移选择不同的专家分支。
优选地,多专家混合层包括BP神经网络、概率神经网络、决策树、最邻近算法以及贝叶斯分类算法,其中,每一专家层都对应一种算法,不同的专家层分别用于实现不同的子学习任务,即处理本发明实施例中的边缘端的不同边缘数据。
例如,在一个具体的实施例中,对于替换得到的多专家混合层,其中第一个专家层用于解决动物的分类,第二个专家层用于处理花卉的分类,第三个专家层用于处理与天气相关的数据,第四个专家层用于处理与养生相关的数据。
需要说明的是,除了将初始静态深度学习模型中的单一网络层替换为多专家混合层,还可以将初始静态深度学习模型中的连续多层网络层替换为多专家混合层,在此不作具体限定。
对于弹性超网络模型的生成步骤,还包括:在初始静态深度学习模型的一层或连续多层网络中增加替换网络层,替换网络层对应的参数量少于初始静态深度学习模型中原始网络层对应的参数量。
可以理解的是,通过对初始静态深度学习模型的参数量和运行方式进行扩展得到弹性超网络模型,具体地,可以在初始静态深度学习模型的一层或连续多层网络中增加替换选项,即替换网络层,替换网络层在参数量上少于初始静态深度学习模型中原始网络层,能够以更小的计算量完成原始网络层类似的效果。
需要说明的是,在网络层中的增加替换网络层,既可以是在初始深度学习模型的原始网络层中增加,也可以是在替换为多专家混合层的基础上增加,在此不作具体限定。
还需要说明的是,增加替换网络层的具体位置,可以根据实际情况选择性地增加,即,既可以在初始静态深度学习模型的一层网络中增加,也可以在该模型的连续多层网络中增加,在此亦不作具体限定。
对于弹性超网络模型的生成步骤,还包括:在多专家混合层、替换网络层以及初始静态深度学习模型的原始网络层中增加用以表征不同精度的精度选项。
可以理解的是,通过对初始静态深度学习模型的参数量和运行方式进行扩展得到弹性超网络模型,具体地,还可以在初始静态深度学习模型的原始网络层、新增加的替换网络层以及替换得到的多专家网络层增加不同的精度选项。
其中,不同的精度选项包括但不限于int8、int16、int32和int64,以及float16、float32和float64。例如,在一个具体的实施例中,在多专家混合层、替换网络层以及原始网络层中增加了int8和float16这两个精度选项。
在各网络层中增加不同精度的精度选项,可以允许弹性超网络模型在边缘端推理时,在某些网络层通过降低精度来节省推理时间,例如从精度为float16降为精度为int8,便可以节省许多的推理时间。
需要说明的是,在多专家混合层、替换网络层以及初始静态深度学习模型的原始网络层中增加用以表征不同精度的精度选项,具体地,可以在多专家混合层、替换网络层以及原始网络层中的其中一项中增加,也可以在所有网络层中增加,还可以在任意网络层中增加,增加的位置可以随机,在此不做具体限定。
基于上述,图3示出了本发明所提供的弹性超网络模型的网络结构示意图。
如图3所示,本发明实施例所提供的弹性超网络模型,包括替换得到的多专家混合层,如图3中的第一层到第k层,第k+3层到第n层;该弹性超网络模型还包括新增加的替换网络层,如图3中的第k+1层和k+2层,均增加有相应的替换选项1到替换选项m,并且,还增加了将多层整体替换为一层的替换网络层,如图3中将k+1层和k+2层整体替换为一层;此外,图3中每一网络层中还设有多个不同精度的选项。
根据图3还可以看出,基于多个分支节点,弹性超网络模型从模型输入到模型输出具有多条通路,每一条通路即为一个可执行的子模型。
在本实施例中,通过将初始静态深度学习模型中的单一网络层替换为多专家混合层,并在初始静态深度学习模型的一层或连续多层网络中增加参数量更少的替换网络层,还在多专家混合层、替换网络层和原始网络层中增加不同的精度选项,从而生成参数量更多、运行方式更多样的弹性超网络模型,通过该弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,能够节省大量的计算资源和人力开销,并且,由于不需要向服务器端传送边缘端侧数据,规避了现有部署方式侵犯隐私的潜在风险。
在上述实施例的基础上,进一步地,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,包括:基于边缘硬件条件和边缘数据分布,计算弹性超网络模型中多个子模型对应的运行时延和推理准确度;根据多个子模型对应的运行时延和推理准确度,确定待部署模型。
可以理解的是,在服务器端扩展生成弹性超网络模型的基础上,通过子模型采样配合知识蒸馏的方法对超网络参数进行训练,在弹性超网络模型训练完成之后,将该弹性超网络模型发布到边缘端,并将其统一部署到不同的边缘设备中。
边缘端获取该弹性超网络模型之后,采用遗传算法技术,根据边缘硬件条件和边缘数据分布,在弹性超网络模型中搜索出最适应目标边缘设备的待部署模型,并进行部署。
其中,根据边缘硬件条件和边缘数据分布,确定待部署模型,具体地,弹性超网络模型包括多个子模型,计算弹性超网络模型中多个子模型对应的运行时延和推理准确度,根据多个子模型对应的运行时延和推理准确度,确定与目标边缘设备的预期时延和预期推理准确度最接近的子模型,该子模型即为目标边缘设备对应的待部署模型。
计算弹性超网络模型中多个子模型对应的运行时延,具体地,确定每一个子模型中单一网络层在实际边缘设备上运行的时延;根据每一个子模型包含的网络层及其对应的时延,计算得到每个子模型的运行时延。
可以理解的是,要想计算弹性超网络中多个子模型对应的运行时延,首先确定每一个子模型所包括的网络层,以单一网络层作为独立模块,确定每一模块对应的单一时延,对每一子模型的多个模块在边缘设备上的单一时延进行累加,即可得到每个子模型对应的运行时延。
计算弹性超网络模型中多个子模型对应的运行时延和推理准确度,具体地,获取待推理的边缘端数据集;利用多个子模型在边缘端数据集上进行推理,得到每个子模型对应的推理准确度。
可以理解的是,计算弹性超网络模型中多个子模型对应的推理准确度,可以直接通过在边缘端数据集上评估算出。
在本实施例中,基于边缘端的边缘硬件条件和边缘数据分布,计算弹性超网络模型中多个子模型对应的运行时延和推理准确度,从而根据多个子模型对应的运行时延和推理准确度确定待部署模型,由于待部署模型的搜索过程完全在端侧完成,不仅可以保证模型性能的评估完全符合真实情况,还可以规避向服务器端传送边缘端侧数据可能会带来的隐私风险。
图4示出了本发明所提供的面向边缘设备的神经网络弹性部署装置的结构示意图。如图4所示,该装置包括:弹性超网络获取模块410,用于获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;待部署模型确定模块420,用于基于所述弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
在本实施例中,弹性超网络获取模块410通过对初始静态深度学习模型的参数量和运行方式进行扩展,得到弹性超网络模型,待部署模型确定模块420基于该弹性超网络模型,根据边缘硬件条件和边缘数据分布,从弹性超网络模型的多个子模型中搜索处最适应边缘端的一个子模型作为待部署模型,并在边缘端对该待部署模型进行部署。该装置通过弹性超网络模型在边缘端进行自动自适应调整,统一部署,不需要为不同的边缘端分别定制专门的部署模型,能够节省大量的计算资源和人力开销,并且,由于不需要向服务器端传送边缘端侧数据,规避了现有部署方式侵犯隐私的潜在风险。
本实施例所提供的面向边缘设备的神经网络弹性部署装置,与上文描述的面向边缘设备的神经网络弹性部署方法可相互对应参照,在此不再赘述。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行面向边缘设备的神经网络弹性部署方法,该方法包括:获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;基于所述弹性超网络模型,根据边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的面向边缘设备的神经网络弹性部署方法,该方法包括:获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;基于所述弹性超网络模型,根据边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种面向边缘设备的神经网络弹性部署方法,其特征在于,包括:
获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;
基于所述弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
2.根据权利要求1所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述弹性超网络模型的生成步骤,包括:
将所述初始静态深度学习模型中的单一网络层替换为多专家混合层,所述多专家混合层用于处理不同的边缘数据分布。
3.根据权利要求2所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述弹性超网络模型的生成步骤,包括:
在所述初始静态深度学习模型的一层或连续多层网络中增加替换网络层,所述替换网络层对应的参数量少于所述初始静态深度学习模型中原始网络层对应的参数量。
4.根据权利要求3所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述弹性超网络模型的生成步骤,包括:
在所述多专家混合层、所述替换网络层以及所述初始静态深度学习模型的原始网络层中增加用以表征不同精度的精度选项。
5.根据权利要求1-4中任一项所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,包括:
基于所述边缘硬件条件和所述边缘数据分布,计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度;
根据所述多个子模型对应的运行时延和推理准确度,确定待部署模型。
6.根据权利要求5所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度,包括:
确定每一个子模型中单一网络层在所述实际边缘设备上运行的时延;
根据每一个子模型包含的网络层及其对应的时延,计算得到每个所述子模型的运行时延。
7.根据权利要求5所述的面向边缘设备的神经网络弹性部署方法,其特征在于,所述计算所述弹性超网络模型中多个子模型对应的运行时延和推理准确度,包括:
获取待推理的边缘端数据集;
利用多个子模型在所述边缘端数据集上进行推理,得到每个所述子模型对应的推理准确度。
8.一种面向边缘设备的神经网络弹性部署装置,其特征在于,包括:
弹性超网络获取模块,用于获取服务器端生成的弹性超网络模型,所述弹性超网络模型通过对初始静态深度学习模型的参数量和运行方式进行扩展得到;
待部署模型确定模块,用于基于所述弹性超网络模型,根据实际边缘设备的边缘硬件条件和边缘数据分布,确定待部署模型,并执行部署操作,所述待部署模型为所述弹性超网络模型的多个子模型中的一个子模型。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一项所述的面向边缘设备的额神经网络弹性部署方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的面向边缘设备的额神经网络弹性部署方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211659466.3A CN116009884A (zh) | 2022-12-22 | 2022-12-22 | 面向边缘设备的神经网络弹性部署方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211659466.3A CN116009884A (zh) | 2022-12-22 | 2022-12-22 | 面向边缘设备的神经网络弹性部署方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116009884A true CN116009884A (zh) | 2023-04-25 |
Family
ID=86022737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211659466.3A Pending CN116009884A (zh) | 2022-12-22 | 2022-12-22 | 面向边缘设备的神经网络弹性部署方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116009884A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117439853A (zh) * | 2023-12-19 | 2024-01-23 | 华章数据技术有限公司 | 一种基于云边端的数据运维管理系统 |
-
2022
- 2022-12-22 CN CN202211659466.3A patent/CN116009884A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117439853A (zh) * | 2023-12-19 | 2024-01-23 | 华章数据技术有限公司 | 一种基于云边端的数据运维管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101961421B1 (ko) | 소스 시스템들의 운영 데이터를 사용하여 초기에 트레이닝되는 제 1 재귀 신경망 모델 및 제 2 재귀 신경망 모델을 별도로 트레이닝함으로써 타겟 시스템을 제어하기 위한 방법, 제어기, 및 컴퓨터 프로그램 제품 | |
CN111819580A (zh) | 用于密集图像预测任务的神经架构搜索 | |
CN110428046B (zh) | 神经网络结构的获取方法及装置、存储介质 | |
US20200409744A1 (en) | Workflow engine framework | |
CN108923983B (zh) | 机会网络链路的预测方法、装置及可读存储介质 | |
EP3912361A1 (en) | Method and system for user-oriented streaming of content | |
CN113590232B (zh) | 一种基于数字孪生的中继边缘网络任务卸载方法 | |
CN116009884A (zh) | 面向边缘设备的神经网络弹性部署方法及装置 | |
CN109816114A (zh) | 一种机器学习模型的生成方法、装置 | |
Yang et al. | Deep reinforcement learning based wireless network optimization: A comparative study | |
Xu et al. | Living with artificial intelligence: A paradigm shift toward future network traffic control | |
US20240095529A1 (en) | Neural Network Optimization Method and Apparatus | |
CN113031976B (zh) | 一种基于Ambari的集群容量管理方法、装置及介质 | |
CN114706675A (zh) | 基于云边协同系统的任务部署方法及装置 | |
CN112732718B (zh) | 面向云边端的智能结构化数据方法、系统和介质 | |
CN116663644A (zh) | 一种多压缩版本的云边端dnn协同推理加速方法 | |
CN113050955A (zh) | 一种自适应ai模型部署方法 | |
CN116367190A (zh) | 一种面向6g移动网络的数字孪生功能虚拟化方法 | |
CN112906745B (zh) | 基于边缘协同的诚信智能网络训练方法 | |
CN115169561A (zh) | 一种用于物联网的多分支网络协同推理方法及系统 | |
CN114528972A (zh) | 移动边缘计算中深度学习模型训练方法及相应系统 | |
CN113419496A (zh) | 一种基于大数据统计的防水材料生产智能管理管控方法及系统 | |
Chen et al. | FUNOff: Offloading applications at function granularity for mobile edge computing | |
CN112771545A (zh) | 一种循环神经网络精度和分解秩的自动搜索方法和装置 | |
CN113949633A (zh) | 基于机器学习的5g网络切片容灾池资源管理方法及装置 |
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 |