掌桥专利:专业的专利平台
掌桥专利
首页

一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法及系统

文献发布时间:2023-06-19 18:58:26


一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法及系统

技术领域

本发明属于边缘计算领域,具体地,涉及一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法及系统。

背景技术

边云协同推理以及传统的动态电压和频率调节(DVFS)技术能够有效平衡边缘设备的功耗和推理延迟。边云协同范式将深度神经网络(DNN)的部分特征图从本地设备卸载到远程服务器。

其中,本地设备执行部分DNN,远程服务器处理剩余的DNN。最后边缘设备利用一个小型神经网络将两部分推理结果融合以得到最终输出。DVFS是一种应用广泛的低功耗技术,根据设备的实时功耗动态调节工作电压和时钟频率,通过延长任务的执行时间来减少系统能耗。

发明内容

本发明提出了一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法及系统,为每个任务计算特征图的最佳卸载比和边缘设备的计算频率,以最小化边缘设备的能耗。

本发明通过以下技术方案实现:

一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法,所述方法具体包括以下步骤:

步骤1,建立边缘设备能耗最小化模型;

步骤2,基于步骤1建立的边缘设备能耗最小化模型,构建基于DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟;

步骤3,根据步骤2构建的于DVFS的边云协同推理框架,构建基于DRL的增强型DVFS优化算法DVFO,通过联合优化边缘设备的计算频率和特征图的卸载比例来减少边缘设备的整体能耗;

步骤4,建立卸载机制,以解决特征图的卸载瓶颈问题,避免特征图的大小直接影响边云协同推理的端到端延迟。

进一步地,在步骤1中,

设χ为N个独立和非抢占式任务组成的任务集合,表示为χ={x

任务x

其中

任务x

其中

CPU的频率为

任务x

则最小化边缘设备整体的能量消耗,同时满足系统运行的最小频率:

s.t.l

其中l

进一步地,在步骤2中,

设计DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟

所述基于DVFS的边云协同推理框架包括边缘设备的本地推理和云服务器的远程推理;

使用局域网LAN上的WiFi作为通信介质以将DNN的特征图从边缘设备卸载到云服务器。

进一步地,在步骤2中,具体包括以下步骤,

步骤2.1,在边缘设备上用一个可忽略开销的特征评估器来判断当前DNN的特征;即利用计算密度评估当前DNN属于计算密集型还是内存密集型工作负载;

步骤2.2,基于DRL的DVFS模块,即DVFO,学习DNN特性和网络带宽,为每个任务设置边缘设备最佳的计算频率和特征图的卸载比例;

步骤2.3,在得到特征图的卸载比例后,需要对DNN分区以分别部署到边侧和云端;

结合远程DNN预测剩余特征图,得到最终的推理输出。

进一步地,在步骤3中,具体包括以下步骤:

步骤3.1,将公式(1)中的优化目标转化为DRL中的奖励函数,并将其建模为马尔科夫决策过程MDP;

所述DRL中的智能体由状态,动作和奖励三个组成部分,

所述状态空间具体为:在每个时刻t,DRL中的智能体会构造一个状态空间

工作负载x

所述动作空间具体为:将任务x

所述奖励将能耗优化目标转化为奖励函数,定义智能体的奖励函数r如下:

步骤3.2,利用DQN强化学习算法来控制边缘设备的计算频率和卸载比例,以减少DRL的决策开销;

所述DRL中的智能体在时刻t观测到环境的状态s

步骤3.3,通过对标准DQN进行修改来实现并发环境下的策略决策,并且离散时间中并发环境下的DQN仍然是收敛的;

因此,DQN的并发Q值函数可以重新表述如下:

进一步地,在所述步骤3.3中,具体包括:

步骤3.3.1,初始化DRL中的神经网络参数和经验缓冲区;然后将由特征评估器得到的DNN特征图类型和当前网络带宽作为DRL的初始状态;

步骤3.3.2,在训练的开始,DRL中的智能体会随机选择一个动作;

在时刻t,智能体会在离散时间的并发环境下捕获到状态s

步骤3.3.3,使用∈-贪心策略来探索环境,将由动作选择的频率和卸载率设置分别反馈到频率和卸载控制器,并得到一个即使奖励r;

步骤3.3.4,将状态由s

步骤3.3.5,在每个梯度步,首先从经验缓冲区中随机采样小批量的历史轨迹,然后利用公式(3)计算并发环境下的Q值,并根据梯度下降更新网络参数,最后将离线训练好的DVFO在线部署以评估性能。

进一步地,在步骤4中,具体包括以下步骤:

步骤4.1,确定DNN分区点的数目;对一个具有N层的DNN,一共有2

步骤4.2,确定应该对DNN中的哪一层进行划分,根据特征评估器给出的DNN类型进行分区;

对于计算密集型DNN,选择计算量最高的层进行分区;

类似的,对于内存密集型DNN,选择访存量最高的层进行分区;

步骤4.3,采用了精度量化技术,即将特征图的32位浮点数转换成8位的定长数,以降低延迟。

一种基于深度强化学习的动态频率和深度学习模型卸载联合调节系统,

所述联合调节系统包括边缘设备能耗优化模块、边云协同推理框架搭建模块、DVFS优化算法构建模块以及卸载模块;

所述边缘设备能耗优化模块用于建立边缘设备能耗最小化模型;

所述边云协同推理框架搭建模块基于边缘设备能耗优化模块建立的边缘设备能耗最小化模型,构建基于DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟;

所述DVFS优化算法构建模块根据边云协同推理框架搭建模块构建的DVFS的边云协同推理框架,构建基于DRL的增强型DVFS优化算法DVFO,通过联合优化边缘设备的计算频率和特征图的卸载比例来减少边缘设备的整体能耗;

所述卸载模块用于建立卸载机制,以解决特征图的卸载瓶颈问题,避免特征图的大小直接影响边云协同推理的端到端延迟。

一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时实现上述方法的步骤。

本发明有益效果

本发明用于云边协同推理中的DNN特征图卸载,以最小化边缘设备的能耗。使用“边移动边思考”并发策略的强化学习算法为每个任务计算特征图的最佳卸载比和边缘设备的计算频率。在不同数据集上的实验结果表明,与最先进的卸载解决方案相比,DVFO将边缘设备的平均能耗降低了33%。此外,它还实现了高达54%以上的端到端延迟减少。

附图说明

图1为本发明的基于DVFS的云边协同推理框架;

图2为本发明的阻塞环境和并发环境下的动作轨迹;

图3为本发明的特征图卸载模块;

图4为不同数据集上的能耗和端到端延迟比较图,其中(a)为EfficientNet-B0在CIFAR-10数据集上的平均能耗和平均延迟对比图,(b)为ViT在CIFAR-10数据集上的平均能耗和平均延迟对比图,(c)为EfficientNet-B0在PASCAL VOC-2012数据集上的平均能耗和平均延迟对比图,(d)为ViT在PASCAL VOC-2012数据集上的平均能耗和平均延迟对比图;

图5为不同网络带宽下的端到端延迟对比图,其中(a)为不同网络带宽下CIFAR-10的平均延迟对比图,(b)为不同网络带宽下PASCAL VOC-2012的平均延迟对比图;

图6为不同数据集下的运行时开销,其中(a)为CIFAR-10数据集归一化后的开销对比图,(b)为PASCALVOC-2012数据集归一化后的开销对比图。

具体实施方式

下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

结合图1至图6。

一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法,

所述方法具体包括以下步骤:

步骤1,建立边缘设备能耗最小化模型;

步骤2,基于步骤1建立的边缘设备能耗最小化模型,构建基于DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟;

步骤3,根据步骤2构建的于DVFS的边云协同推理框架,构建基于DRL的增强型DVFS优化算法DVFO,通过联合优化边缘设备的计算频率和特征图的卸载比例来减少边缘设备的整体能耗;

步骤4,建立卸载机制,以解决特征图的卸载瓶颈问题,避免特征图的大小直接影响边云协同推理的端到端延迟。

设χ为N个独立和非抢占式任务组成的任务集合,表示为χ={x

任务x

其中

任务x

其中

与现有技术中仅考虑CPU频率不同,本发明考虑了CPU、GPU和内存的频率,

CPU的频率为

任务x

则最小化边缘设备整体的能量消耗,同时满足系统运行的最小频率:

s.t.l

其中l

此外,在本发明中云服务器具有足够的计算资源来保证远程推理的实时性。对于每个任务集合中的x

在步骤2中,如图1所示,

设计DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟

所述基于DVFS的边云协同推理框架包括边缘设备的本地推理和云服务器的远程推理;

使用局域网LAN上的WiFi作为通信介质以将DNN的特征图从边缘设备卸载到云服务器。

在步骤2中,具体包括以下步骤,

步骤2.1,在边缘设备上用一个可忽略开销的特征评估器来判断当前DNN的特征;这是基于roofline model实现的,即利用计算密度评估当前DNN属于计算密集型还是内存密集型工作负载;

步骤2.2,基于DRL的DVFS模块,即DVFO,学习DNN特性和网络带宽,为每个任务设置边缘设备最佳的计算频率和特征图的卸载比例;

步骤2.3,在得到特征图的卸载比例后,需要对DNN分区以分别部署到边侧和云端;

具体而言,本发明将卸载控制器得到的本地特征图用边缘设备上的DNN进行预测。

结合远程DNN预测剩余特征图,得到最终的推理输出。

通过减少本地DNN的复杂性可有效减少边缘设备的整体能耗。

在步骤3中,具体包括以下步骤:

步骤3.1,将公式(1)中的优化目标转化为DRL中的奖励函数,并将其建模为马尔科夫决策过程MDP;

所述DRL中的智能体由状态,动作和奖励三个组成部分,

所述状态空间具体为:在每个时刻t,DRL中的智能体会构造一个状态空间

工作负载x

所述动作空间具体为:本发明将任务x

例如(1500,900,1200,50)意味着在将CPU、GPU、和内存的时钟分别设置为1500MHz、900MHz和1200MHz的情况下,50%的特征图在边缘设备进行本地推理,剩余50%的特征图卸载到云服务器进行计算。为了减少动作空间的复杂性以加快收敛,本发明将计算频率和卸载比例均设置为离散值。具体而言,本发明分别对三种计算频率在满足系统运行的最小频率和最大频率之间均匀设置10个频率级别。

所述奖励具体为:在基于DVFS和边云协同推理的边缘设备能耗优化问题中,本发明的目的是在满足系统运行的最低频率约束下最小化边缘设备的能耗。基于智能体的目的是最大化累积期望奖励这一事实,可以将能耗优化目标转化为奖励函数,为了实现这种转换,定义智能体的奖励函数r如下:

如图2(a)所示,大多数DRL通常假设智能体在做出决策时所处的环境状态是静止的,意味着智能体先观察状态然后做出策略决策。

然而,这种顺序执行的阻塞方式并不适用于真实世界的动态实时环境。

因为智能体在观察到环境状态并执行一个动作后,状态已经发生“滑动”,即先前的状态转化到一个新的未观测状态。

特别地,在具有严格时间约束的基于DVFS的边云协同环境中,需要利用DRL根据工作负载特征和网络带宽实时调节边缘设备的计算频率和特征图的卸载比例,因此减少DRL的决策开销是至关重要的。

步骤3.2,本发明利用DQN强化学习算法来控制边缘设备的计算频率和卸载比例,以减少DRL的决策开销;

基“边思考边移动”的并发控制机制来减少离散时间下DQN的决策开销。图2(b)描绘了这种方法背后的主要思想。

具体而言,所述DRL中的智能体在时刻t观测到环境的状态s

步骤3.3,本发明通过对标准DQN进行修改来实现并发环境下的策略决策,并且离散时间中并发环境下的DQN仍然是收敛的;

因此,DQN的并发Q值函数可以重新表述如下:

在所述步骤3.3中,具体包括:

算法1详细说明了DVFO的优化过程。

步骤3.3.1,具体而言,首先初始化DRL中的神经网络参数和经验缓冲区;然后将由特征评估器得到的DNN特征图类型和当前网络带宽作为DRL的初始状态;

步骤3.3.2,在训练的开始,DRL中的智能体会随机选择一个动作;

在时刻t,智能体会在离散时间的并发环境下捕获到状态s

步骤3.3.3,本发明使用∈-贪心策略来探索环境,将由动作选择的频率和卸载率设置分别反馈到频率和卸载控制器,并得到一个即使奖励r;

步骤3.3.4,接下来,将状态由s

步骤3.3.5,在每个梯度步,首先从经验缓冲区中随机采样小批量的历史轨迹,然后利用公式(3)计算并发环境下的Q值,并根据梯度下降更新网络参数,最后将离线训练好的DVFO在线部署以评估性能。

在步骤4中,具体包括以下步骤:

图3展示了特征图的卸载过程。

步骤4.1,本发明首先确定DNN分区点的数目;对一个具有N层的DNN,一共有2

步骤4.2,其次要确定应该对DNN中的哪一层进行划分,在这里根据特征评估器给出的DNN类型进行分区;

具体而言,对于计算密集型DNN,选择计算量最高的层进行分区;

类似的,对于内存密集型DNN,选择访存量最高的层进行分区;

上述设计可以自动为不同类型的DNN选择合适的分区策略,以缓解卸载的特征图对网络带宽造成的高负载。

步骤4.3,尽管边云协同中的模型分区减轻了网络带宽传输,但没有经过优化的原始特征图仍然会对网络带宽造成挑战。为了进一步降低卸载延迟,本发明采用了精度量化技术,即将特征图的32位浮点数转换成8位的定长数,这种方法在保证信息没有丢失过多的前提下,有效地降低了特征图的传输量。

一种基于深度强化学习的动态频率和深度学习模型卸载联合调节系统,

所述联合调节系统包括边缘设备能耗优化模块、边云协同推理框架搭建模块、DVFS优化算法构建模块以及卸载模块;

所述边缘设备能耗优化模块用于建立边缘设备能耗最小化模型;

所述边云协同推理框架搭建模块基于边缘设备能耗优化模块建立的边缘设备能耗最小化模型,构建基于DVFS的边云协同推理框架,以联合优化边缘设备的能耗和端到端延迟;

所述DVFS优化算法构建模块根据边云协同推理框架搭建模块构建的DVFS的边云协同推理框架,构建基于DRL的增强型DVFS优化算法DVFO,通过联合优化边缘设备的计算频率和特征图的卸载比例来减少边缘设备的整体能耗;

所述卸载模块用于建立卸载机制,以解决特征图的卸载瓶颈问题,避免特征图的大小直接影响边云协同推理的端到端延迟。

实施例:

数据集和DNN模型。

本发明分别在CIFAR-10和PASCALVOC-2012数据集上评估了DVFO。这两个数据集具有不同尺寸的图像,可以更全面的反应输入数据的多样性。考虑到边缘设备的计算资源受限,在推理过程中将批处理大小设置为1。此外,本发明选择EfficientNet-b0和VisualTransformer(ViT-B16)来分别代表内存密集型和计算密集型DNN。

基线方法。

本发明将DVFO与仅在边缘端推理(edge-only)、仅在云端推理(cloud-only),以及当前最先进的云边协同方法(ApplealNet和DRLDO)进行比较以评估性能。所有实验结果均在整个测试数据集上取平均值。

AppealNet:一种二进制卸载的边云协同推理框架,通过判断输入数据的难易程度来决定任务使用边缘设备上的轻量级模型还是云服务器中的复杂模型。这里在云端部署EfficientNet-b1和Visual Transformer(ViT-B32)两个复杂度更高的DNN分别对应边缘端的轻量级DNN。

DRLDO:一种基于DVFS的卸载框架,利用DRL联合优化本地设备的CPU频率和数据卸载量来减少设备能耗。

Cloud-only:将特征图全部卸载到云端进行推理。这里同样利用精度量化对原始特征图进行压缩。

Edge-only:任务仅在本地边缘设备上推理,而不考虑计算卸载。

DVFO性能比较:

首先在不同数据集上比较了DVFO与基线方法的端到端延迟和运行时能耗。本发明利用轻量级的带宽控制工具trickle将网络带宽的传输速率设置为5Mbps。图4展示了在不同数据集上分别利用本地和云边协同方式推理EfficientNet-B0和Visual Transformer(ViT)的性能比较。可以看到DVFO始终优于所有基线方法。更具体地说,DVFO推理两种DNN的平均运行时能耗比DRLDO、AppealNet、Cloud-only和Edge-only分别减少了18%、31%、39%和43%,同时将端到端延迟减少了15%-36%。

网络带宽的影响:

网络带宽主导着特征图的卸载延迟,因此有必要研究不同网络带宽下DVFO的可靠性。与云服务器不同,出于功耗和成本限制,边缘设备使用传输速率较低的WiFi模块。此外,考虑到边缘计算场景,本发明将网络带宽限制在0.5Mbps到4Mbps之间。

图5的结果表明,所有边云协同方法的端到端延迟会随着网络带宽的增加而减少,意味着在网络带宽较差的情况下,这些方法受到了较差通信条件的限制,更倾向于在边缘设备推理DNN。得益于精度量化技术,即使可用的网络带宽仅为0.5Mbps,DVFO的端到端延迟也优于基线方法,能够降低36%的平均延迟。此外,当网络带宽增加时DVFO的性能提升有所减少。这意味着网络带宽不再是决定性因素,性能差异主要来自于对本地设备计算频率的调节。相比之下,DRLDO和AppealNet的性能在很大程度上取决于网络带宽。这说明DVFO能够在网络带宽波动下对卸载率和本地设备的计算频率做出更好的自适应调整,因此可靠性更高。

运行时开销分析:

DVFO引入了额外的运行时开销(即利用DRL确定适当的计算频率和卸载比),这对于动态实时环境来说不可忽视。如图6所示,本发明比较了提出的DVFO与基线方法的平均运行时间,将所有结果归一化以方便比较。评估结果表明,DVFO比其他方法有更少的运行时开销。特别是在PASCALVOC-2012等较大的数据集上使用时,其平均运行时开销分别比DRLDO和AppealNet减少了50%和29.5%。

表1是边缘设备和云服务器的具体参数。本发明使用一个NVIDIA Xavier NX作为边缘设备,一个配备有NVIDIA RTX 3080GPU的工作站作为云服务器。由于本发明分别在边缘设备的CPU、GPU和内存最大和满足系统运行的最小计算频率之间均匀设置10个级别,因此总共有1000个CPU-GPU-内存对。

表1云边协同推理设备的具体参数

本发明利用PyTorch实现了并发环境下的DQN。具体来说,具有优先经验回放和∈-贪心策略的DQN的网络和目标网络均使用Adam优化器进行训练。整个网络由三个隐藏层和一个输出层组成,每个隐藏层分别有128、64和32个ReLU激活单元。此外,将学习率、缓冲区大小和批量大小分别设置为0.0001、1e6和256。

一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时实现上述方法的步骤。

本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasablePROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambusRAM,DR RAM)。应注意,本发明描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disc,SSD))等。

在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。

应注意,本申请实施例中的处理器可以是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

以上对本发明所提出的一种基于深度强化学习的动态频率和深度学习模型卸载联合调节方法及系统,进行了详细介绍,对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 一种基于深度强化学习的计算卸载调度方法
  • 一种基于深度强化学习的深度学习漏洞检测模型对抗样本生成方法和系统
  • 基于深度强化学习的车辆数据采集频率动态调节方法
技术分类

06120115752956