基于联邦元学习的安全移动边缘计算卸载框架①

2024-01-10 01:11杨仕成陈保罗陈铁明
高技术通讯 2023年12期
关键词:时延边缘服务器

杨仕成 陈保罗 陈铁明 黄 亮③

(*浙江工业大学信息工程学院 杭州 310023)

(**浙江工业大学计算机科学与技术学院 杭州 310023)

0 引言

移动互联网技术的快速发展,推动了越来越多的时延敏感型和资源密集型应用和服务出现。然而,这些移动应用对无线设备的计算和存储资源需求大幅增加。移动边缘计算技术(mobile edge computing,MEC)为无线设备提供额外的计算资源,为该问题提供了一种很好的解决方案[1]。新兴的移动边缘计算技术是云计算、大数据、人工智能等技术在物联网终端应用的重要基础,推进“万物互联”到“万物智联”。自《“十四五”国家信息化规划》提出加快第5 代(5G)网络规模化部署、前瞻性的布局第6 代(6G)网络技术储备以来,国家进一步大力推进5G 基建、大数据中心、人工智能、工业互联网等领域“新基建”计划。当前,电信运营商、网络设备供应商和云服务商等巨头企业都在布局迎接移动边缘计算带来的新机遇和挑战。因此,移动边缘计算也成为学术界近年来的研究热点。

1 相关研究

移动边缘计算技术通过将计算服务器配置在靠近物联网终端的网络边缘[2],可有效缩短计算任务传输时延并提升物联网终端的计算能力,深化物联网连接和计算的融合。简单而言,在移动边缘计算框架下,可使终端设备按需将计算任务卸载上传至边缘服务器,由边缘服务器完成计算任务并返回计算结果,以降低计算时延和设备能耗,提升终端设备的数据处理能力。如图1 所示,移动边缘计算在物联网、端到端组网、无人机组网、车联网等领域有着广泛的应用场景[3]。

图1 移动边缘计算网络中计算卸载应用场景[3]

以计算卸载作为移动边缘计算的关键技术也引起了人们的广泛研究[4-5]。计算卸载问题是一个混合整数规划问题,并且一般是一个非确定多项式难题(non-deterministic polynomial hard,NP-hard),难以实时生成决策。一种可行的方案是利用分支定界法(branch-and-bound algorithm,BBA)[6]或动态规划法(dynamic programming,DP)[7]进行求解,然而,这些方法存在“维数灾难”(curse of dimensionality)问题,计算复杂度较高。另一种方案是将整型的0/1决策做连续线性松弛[8]或者用二次约束来近似整数约束并做半正定松弛[9],以比迭代搜索算法低的复杂度求得近似解方案,但这种方法牺牲了求解质量,通常得到的计算卸载决策都不是最优决策。此外,考虑到移动边缘计算网络的复杂性与动态性,通常可采用基于马尔可夫决策过程[10-11]或李雅普诺夫优化方法[12]设计动态计算卸载策略,并优化相关系统资源分配,最小化能耗、计算时延和网络效用。然而,上述解决方案都依赖于专家知识和精确的数学模型。因此,如何设计一种低复杂度的算法且能适用于时变环境的移动边缘计算网络仍是一个挑战。

深度学习利用深度神经网络[13]从数据样本学习,最终生成状态空间到动作空间的最优映射,擅长处理大状态空间[14]和动作空间[15],被广泛应用于无线通信网络领域。近年来,将深度学习应用于移动边缘计算卸载的研究逐渐增多。监督学习将计算卸载问题建模为多标签分类问题,通过离线训练和线上部署深度神经网络,提升卸载决策的响应速度。监督学习算法需要预生成大量的训练数据,常用遍历搜索[16]或者传统分析优化方法[17]获得特定网络场景的最优决策。然而,当网络场景改变时,需要重新生成训练数据并训练深度神经网络,该方法不适用于动态的网络场景。深度强化学习可通过搜索计算卸载动作空间并自主学习实现最优决策。当前,基于深度Q 学习的计算卸载研究[18-21]较为广泛,其将状态/动作空间离散化并通过在线学习最优化计算卸载决策及系统资源优化。随着大型神经网络模型的兴起,模型对系统内存的需求也在逐步增高,分布式架构[22]通过并行的数据处理来减少系统内存开销,这一方法也引起了研究人员的广泛关注。联邦学习利用其分布式网络架构联合多个边缘服务器端进行数据训练,在提升模型泛化性的同时,最大限度地减少用户隐私泄露,进一步提高了计算卸载的安全性与有效性[23]。其局限性是这些方法大多数是基于静态交互的移动边缘计算环境,一旦移动边缘计算场景发生变化,在收敛到新的场景时,难以收集到足够的训练样本。针对计算任务场景动态变化以及上述深度学习方法网络参数可移植差等问题,基于元学习[24]的计算卸载方法可以有效克服这一问题,面对一个新的计算任务场景,基于元学习的计算卸载方法通过找到一个全局模型,使模型执行一个或几个梯度下降步骤来快速收敛于该场景[25]。然而,现有算法考虑的是集中式移动边缘计算网络模型,存在隐私泄露的风险,因此,如何设计一种算法能在保护用户隐私的前提下,适用于时变环境的移动边缘计算仍是一个挑战。

为解决上述问题,本文提出一种基于联邦元学习的计算卸载(federated meta-learning based offloading,FEMO)框架。一方面联邦学习可以有效解决移动边缘计算的数据隐私和数据孤岛问题,并且基于联邦学习的计算卸载还能有效降低通信带宽需求,减轻了远程云服务器的存储和计算负载,并降低模型更新相应延时[26]。另一方面,为了满足不同移动端的服务质量(quality of service,QoS)需求,本算法融合了模型无关元学习(model-agnostic meta-learning,MAML)思想,在动态变化的边缘计算网络中,仍能取得较高的卸载效率。具体来说,本文的贡献点如下。

(1)将整个移动边缘计算网络的系统效用模型化为所有无线设备的任务完成时延的加权和,为了使系统效用最小化,本文提出了一个针对移动边缘计算网络的联合计算卸载与计算资源分配问题。该问题联合优化了每个边缘服务上的无线设备的卸载决策和每个设备上计算资源分配。

(2)提出一种基于联邦元学习的计算卸载框架,通过联合多个边缘服务器上的数据共同训练学习,得到一个泛化能力更强的神经网络模型。并且进一步考虑到边缘服务器上个性化计算卸载应用,为隐私保护的个性化计算卸载提供一种新的思路。

(3)数值结果进一步验证了所提算法的有效性,针对一个新的计算任务场景,基于联邦元学习的计算卸载框架仅需少量的微调训练步数(少于10步),就能达到0.995 以上的性能。

2 系统模型和问题建模

如图2 所示,本文考虑一个移动边缘计算网络包含K台边缘服务器和一个云端服务器,其中每个边缘服务器都含有N台有计算任务的无线设备(wireless device,WD)。N台无线设备用集合N={1,2,…,N} 表示,K台边缘服务器用集合K={1,2,…,K} 表示,每个无线设备决定将每个任务卸载到对应的边缘服务器或者本地处理,即为二进制卸载策略。

图2 基于联邦学习的隐私保护计算卸载算法应用框架

每个边缘服务器的用户数据仅保存在该服务器。本文主要研究了边缘计算系统的计算资源配置优化问题,并通过用户的权重优先级系数来构造动态的计算任务场景。本文考虑了由于无线设备与服务器之间的通信而导致的延迟优化问题。

设置一个元组(αn,βn,γn) 来表示WDn的计算任务,其中n∈N,αn、βn、γn分别表示上行传输数据大小、服务器返回数据大小、完成该计算任务所需要的中央处理器(central processing unit,CPU)周期数。当WDn的任务分配给边缘服务器时,将WDn与边缘服务器之间的上行和下行链路传输速率量化为

其中,Bn表示上行和下行传输链路的带宽,ω0表示白噪声功率,Pn表示WDn将其计算任务卸载到边缘服务器的发射功率以及边缘服务器将计算结果回传的发射功率,hn(t) 表示对应的信道增益并假设该值在传输过程中保持不变。那么WDn的总通信时延可以推导为上行和下行传输时延之和,并假设上行和下行传输速率相等,则通信时延为

对于计算时延,用fk表示边缘服务器每秒能执行的CPU 周期数(cycle/s),其中k∈K,并在本文中假设各边缘服务器计算资源相同;用f0表示无线设备每秒能执行的CPU 周期数,且f0远小于fk,这是由于边缘服务器上的计算资源更丰富。当2 个或多个任务被卸载到同一台边缘服务器时,边缘服务器的计算资源被所有任务共享,计算资源的分配策略表示为ft={fn(t) |n∈Nt},其中fn(t) 表示边缘服务器分配给WDn的计算资源,Nt={n∈N|an(t)=1} 是指在时间帧t,计算任务被卸载到边缘服务器的所有无线设备集合。则WDn在边缘服务器上处理计算任务的延迟表示为

相应地,WDn在本地计算任务的计算延迟可表示为

相应地,WDn在边缘服务器执行计算任务所需要的时延可表示为

综上所述,WDn完成其计算任务所需的计算任务总传输的计算时延Tn可表示为

本文的研究目标是最小化边缘计算系统的加权时延和,问题建模如下:

上述问题为混合整数规划问题,难以直接求解。本文将上述问题进行了分层处理,其中底层问题利用神经网络学习来生成最优的卸载决策,一旦得到最优的卸载决策,将其代入到顶层问题中求解最优的计算资源分配,最终使得整个边缘计算系统的加权时延和最小。

将无线信道增益ht与最优卸载决策之间的映射关系用π表示:

显然,上述优化问题是一个凸优化问题,本文采用了KKT(Karush-Kuhn-Tucker)方法来求解该问题,其拉格朗日函数L 可表示为

其中,ν为拉格朗日系数。通过对该拉格朗日函数中的计算资源fn(t) 和拉格朗日系数ν求偏导,令其导数为零,解方程组即可得到约束条件下函数的最优解。对该函数进行求导,可得如下表达式:

当该导函数取到0 时,可通过式(17)来计算最优的资源分配结果。

由于γnwn(t) 为大于0 的实数,所以ν*大于0,因此,最优的资源分配方案满足式(18)。

将式(17)代入到式(18)中,可获得拉格朗日因子的最优值:

最后,将式(19)代入式(17),则边缘服务器的计算资源分配问题可获得如式(20)所示的最优解。

3 基于联邦元学习的算法设计

以本文研究的边缘计算系统为例,考虑到用户的隐私安全问题以及动态变化的计算任务场景,为了使得每个WDn获得更高质量的个性化模型,本节提出了一种基于联邦元学习的计算卸载算法。具体来说,根据各个边缘服务器本地数据共同训练一个全局模型,在个性化微调测试中,模型仅需少量训练样本就能快速适应该场景。

3.1 训练全局模型

基于联邦元学习的隐私保护计算卸载算法体系结构如图2 所示,每个边缘服务器都含有等量计算任务场景{|i∈K,k∈K},其中I={1,2,…,L},且每个场景中都含有M={1,2,…,M} 个数据样本,每个数据样本又由信道增益集合和最优卸载决策集合组合而成。整体的训练流程包含5 个步骤。

(1)边缘服务器Bk,k∈{1,2,…,K},从云端上下载云端网络模型参数,复制并更新边缘端网络模型,即模型参数θk=θ。

(2)对于每个边缘服务器Bk并行训练各自本地的模型参数θk。首先,各边缘服务器从本地任务场景{|i∈K,k∈K} 中随机抽取一个计算任务场景来迭代训练各自的神经网络;以单个边缘服务器为例,针对单一的计算任务场景,从该场景中不重复的随机抽取一批数据样本Mb,其中=;并将该样本表示为Mb⊂M,其中hm表示时变无线信道增益,am表示卸载策略。随后,通过最小化均方误差来计算与预测值与真实标签之间的损失值,其计算公式如式(21)所示,在得到相应的误差损失后,同样采用式(22)更新网络参数θk。

(3)当边缘服务器上的神经网络参数更新后,基于更新后的网络参数,各边缘服务器在各自的场景中重新抽取一批样本,具体可表示为={(hm,am)|m∈M{Mb}},并计算该样本下的损失。

其中,λ2是超参数。

重复上述操作,直至全局网络模型收敛。基于各边缘服务器共同训练得到的神经网络模型具有更强的泛化性,面对新的计算任务场景,能凭借少量的训练数据做到快速适应。FEMO 的算法伪代码如算法1 所示。

3.2 个性化场景下执行微调训练

在使用基于联邦元学习的计算卸载策略算法时,每个边缘服务器不止于简单复制运行云端共享模型,可以进一步个性化微调网络模型。如图3 所示,首先边缘服务器Bk从云端下载共享模型,并创建本地模型令θk=θ,∀k∈K。根据新的计算任务场景,利用该场景下的数据样本进行微调训练,使得本地模型能够快速适应该场景,满足不同边缘服务器的个性化需求。其中,对于本地模型参数的更新,仍然采用梯度下降更新方式,具体如式(24)所示。

图3 新场景下执行微调训练示意图

最后,可以基于微调过的本地模型生成卸载决策,并进一步利用式(20)得到相应的计算资源分配,最终得到相应的Q值。需要说明的是,为了将FEMO 算法部署在边缘计算网络,当全局模型训练时的损失不再变化则认为该模型收敛。而一旦模型收敛后,其参数被固定不再变化。一方面,本文更看重部署后的长远效益,当模型收敛无需动态维护该模型,大大节省了计算资源;另一方面FEMO 是一种分布式算法,通过客户端与云端之间模型参数的交互进行训练,通过在云端聚合各客户端的模型参数来进一步提升模型的性能。另外,在客户端与云端之间只涉及到模型参数的交互,而不含原始数据的信息,降低了通信成本,也保护了各客户端数据的隐私泄露。

4 算法仿真设置

4.1 算法参数设置

不失一般性,本文考虑了一个N=10 个无线设备和K=5 个边缘服务器所组成的边缘计算系统,且每台无线设备的可选权重系数被设置为W={1.0,1.5},本实验的数据集包含了210种不同计算任务场景。其中,80%的场景将被作为训练集用于训练全局网络模型,每个边缘服务器上含有等量的计算任务场景,其中L=164。而余下20%的场景将用来测试FEMO 算法的性能。本文的信道增益可利用与空间相关的路径衰落模型生成,其具体的表达式为H[dB]=103.8 +20.9 log10d[km][27]。

一旦得到无线信道增益ht以及相应的计算任务权重wt后,可以通过枚举法求解最优卸载决策。αn=0.5 MB,βn=0.28 ×αn分别表示上行、下行数据大小;γn=330 cycles/byte ×αn[28]为完成该计算任务需要的CPU 周期数。本节以Gzip 应用为计算任务类型,并设置每台无线设备的处理速率为f0=2.84 ×109cycle/s、边缘服务器的处理速率为fe=100×109cycle/s,上下行的传输信道带宽设置为Bn=10 MHz。

本节使用的网络结构均为全连接神经网络,且神经网络的结构由1 个输入层、2 个隐藏层和1 个输出层组成,并且神经元参数分别为N、120、80、N,每层的非线性函数为ReLU。其他参数为:λ1=0.010,λ2=0.001,λ3=0.010,|Mb|=10。为了验证本文提出算法的有效性及其性能,本节的实验软件平台为基于CPU 的PyTorch 深度学习框架,编程语言为Python。

4.2 算法性能评价指标

为了更直观地展现本文所提出FEMO 算法的收敛性能,将神经网络的预测输出对应的系统加权时延和作了归一化,如式(25)所示。

Q*(h,w,a*) 是由枚举法获得的真实最优卸载决策对应的系统加权时延和,而Q(h,w,a) 为FEMO算法获得的预测卸载方案对应的系统加权时延和。在预测值远离最优值时,分母大于分子,整体的比值小于1;而当其越接近于真实值,Q^ 越接近于1。

5 算法结果分析

5.1 算法收敛性分析

如图4 所示,本文研究了不同学习率下FEMO算法,在改变学习率λ1参数时,其他训练率参数保持不变。如图4(a)所示,学习率越大,模型的收敛速度越快,因此,将学习率λ1设置为0.010 0。又如图4(b)所示,学习率λ2设置范围在0.010 0到0.000 1之间,而学习率过大时,模型会陷入局部最优,所以当λ2设置为0.001 0 时,模型的收敛效果更好。为了选择一个合适的学习率参数,如图4(c)所示,将λ3设置为0.010 0。

图4 不同学习率对算法收敛性能的影响

5.2 算法有效性分析

如图5 所示,从测试集中随机抽取了一个新的计算任务场景来测试FEMO 算法在新场景中的表现。在评估之前,已经利用所有边缘端下的计算任务场景下来训练云端模型和单一模型数据集下训练得到的本地模型,实验展示了基于联邦元学习的计算卸载算法在边缘服务器的测试性能。

图5 FEMO 算法在新场景下的测试表现

实验中基于联邦元学习算法和对比算法都采用相同的神经网络模型,即神经网络模型只学习了0-1 计算卸载动作,但对比算法仅使用单一边缘服务器上的训练数据。以下实验结果均为对应测试场景下100 个数据样本的均值。训练收敛后,2 种算法都获得了不错的初始化性能,分别达到理想卸载方案的0.978 和0.972。在相同的个性化微调测试中,针对一个新移动边缘计算应用场景,FEMO 算法仅需少量的微调训练步数(少于10 步),就能达到0.995以上的性能,而单一边缘服务器的数据集下训练的模型需要更多的迭代步数(200 步)才能收敛。因此,FEMO 算法在保护各边缘服务器数据隐私的前提下,当遇到一个新的任务场景时,仅需少量的训练样本就能快速适应该场景。

为了进一步研究在小样本下FEMO 算法的有效性,针对一个全新的场景,本文将FEMO 算法与其他2 种具有代表性的基准方法进行了比较。

(1)边缘端学习。通过利用单一边缘服务器上的数据集训练本地模型,与联邦学习的过程类似,边缘端学习也是根据不同的计算任务场景创建相应的与本地模型网络结构相同的事件模型,通过汇总不同计算任务场景下的损失值来更新整个本地模型。

(2)随机初始化学习。神经网络在针对新的场景前并没有训练过,其网络参数是随机初始化的,在PyTorch 框架中全连接层的参数初始化满足均方分布。其网络结构和其他2 种算法使用的模型结构完全一致。

在实验过程中把3 种算法的学习率以及批处理大小等实验参数保持一致。如图6 所示,由于训练数据的匮乏,基准方法的性能是有限的。特别地,对于基于FEMO 算法得到的初始化参数在仅有1 个训练样本下能通过微调达到0.984,而基于单一边缘服务器数据集训练的本地模型虽然最终能获得近似FEMO 的性能,但由图4 可知,需要更多的迭代步数。使用随机初始化的神经网络模型,一开始的初始化参数就远小于其他2 种方法的初始化参数,则需要更多的样本数量以及更多的微调步数才能达到相似的性能。这表明FEMO 算法可以快速从历史的场景中学到先验知识,并迅速将其转移至新的计算任务场景。

图6 几种少量样本下基准方法的加权时延和归一化值

为了进一步评估所提算法的有效性与优越性,本文将所提算法与以下其他计算卸载算法进行比较。

(1)DSLO[29]:基于监督学习的计算卸载算法,通过标签样本训练的神经网络,预测卸载决策。

(2)DROO[30]:基于强化学习的计算卸载算法,并利用经验回放技术指导神经网络学习。该算法通过将预测的卸载决策量化成多个二进制决策,将决策代入目标函数计算系统加权时延和,从中找出使时延取最小值的分流决策。

(3)基于线性规划松弛的计算卸载[31](linear relaxation,LR):所有的二进制卸载策略松弛到0~1之间的一个实数,用∈[0,1] 表示。然后该松弛约束的优化问题(P1)相对于原卸载策略 可以用凸优化工具箱解决。一旦a^n给出,则可通过下式计算出相应的二进制卸载策略:

为避免偶然性,在整个实验过程中,均保证了神经网络结构与超参数设置保持一致。从测试集中随机选取了10 个场景下测试的均值作为实际的测试效果。如图7 所示,LR 算法产生的加权时延和归一化值始终保持为0.972,不会随着训练样本数增多而改变。FEMO 算法在20 个微调步数内,其产生的加权时延和归一化值能超过0.990,可以快速适应新的计算任务场景。DSLO 算法随着训练样本数量的增加,在120 个微调步数内,其产生的加权时延和归一化值能超过0.990,但是显然在200 个微调步数内还没有收敛到最优。因此,相较于FEMO 算法,DSLO 算法需要更多的训练样本数以及更多的微调步数。值得一提的是,DROO 算法由于缺乏标签数据,相较于DSLO 算法和FEMO 算法需要更多的微调步数才能适应新的计算任务场景,在200 个微调步数内,其产生的加权时延和归一化值为0.968。

总的来说,FEMO 算法通过学习历史场景中的先验知识,并且在少量训练样本的情况下可以达到比其他计算卸载算法更好的模型初始化参数。该算法可以迅速适应新的计算任务场景。

5.3 FEMO 泛化性能分析

如表1 所示,本文对比了在不同计算卸载算法下加权时延和归一化值。本小节将本文提出的FEMO 算法与随机卸载算法和线性松弛卸载算法进行了比较。由于FEMO 算法是利用多个计算任务场景中的先验知识来得到一个较好的神经网络初始化参数,因此,在个性化微调测试中,针对一个新的计算任务场景,在不做微调测试的情况下,其加权时延和归一化值为0.976 7,并优于其他2 种对比算法的卸载决策,最终在10 步微调测试内收敛于该场景。

表1 不同计算卸载算法性能对比

本实验一共生成了1024 个训练任务场景,其中80%的计算任务场景作为训练集。如图8 所示,本文利用不同数量的计算任务场景训练云端模型,在边缘服务器数量K不变的情况下,将L分别设置原训练集的40%、60%、80%、100%。其中,每个边缘服务器在仅有原训练集40%的计算任务且每个场景只有10 个训练样本的前提下,针对新的计算任务场景,FEMO 算法通过10 次迭代训练后,加权时延和归一化值能超过0.985。然而,更多的计算任务场景意味着更多的先验知识,使得神经网络模型有着更高的初始化参数。

图8 不同规模的训练数据对算法性能的影响

6 结论

本文面向5G 环境下的万物智联应用场景,阐述了移动边缘计算卸载是融合计算和通信的关键技术。针对5G 实际应用场景要求计算卸载决策实时性和边缘数据隐私保护安全性等挑战,本文融合联邦学习和元学习,实现了一种兼顾性能优化与隐私保护的边缘计算卸载通用框架。测试实验表明,FEMO 算法仅需少量的微调训练步数就能达到0.995以上的性能,可为未来5G 移动边缘计算应用提供关键技术支撑。

猜你喜欢
时延边缘服务器
通信控制服务器(CCS)维护终端的设计与实现
基于GCC-nearest时延估计的室内声源定位
基于改进二次相关算法的TDOA时延估计
一张图看懂边缘计算
中国服务器市场份额出炉
得形忘意的服务器标准
FRFT在水声信道时延频移联合估计中的应用
计算机网络安全服务器入侵与防御
基于分段CEEMD降噪的时延估计研究
在边缘寻找自我