Adaptive Asynchronous Federated Learning in Resource-Constrained Edge Computing

简要介绍

  • 背景:联邦学习在边缘计算中大范围的使用
  • 存在的问题:
    1.数据不平衡,每个边缘结点存储的数据大小由500MB到50GB不等;
    2.边缘动态性,户外的边缘结点很可能会由于网络状况不能工作;
    3.资源限制,如更新模型频繁的数据传输需要带宽资源
  • 方法:自适应异步联邦学习(AAFL)
    与现有的算法不一样的是,他每次是选择一个或者多个随机模型来更新。服务器将仅从一小部分 (fraction)边缘节点按照它们在每个epoch的到达顺序聚合本地更新模型,并根据实时系统情况(如网络资源和状态)自适应地确定不同epoch的最佳 fraction values。AAFL 可以有效应对同步障碍问题,避免模型聚合的长时间等待
  • 主要贡献:
    1.设计了一种自适应的异步联邦学习(AAFL)
    2.提出一种基于深度强化学习的经验驱动的算法,能自适应的确定每个epoch的最佳 fraction value。实现更快的训练和更低的网络管理复杂性。
    3.证明了提出的算法的高效性。(这也算贡献?)

该部分介绍了一般联邦学习的工作机制。提到的两种,同步和异步。

  • 普通同步联邦学习:
    每次是选择所有模型或特定数目的进行聚合。但由于边缘结点异构性导致训练时间差别太大,等待时间会有最长的训练时间决定。另外很难确定聚合泉河模型时的最佳模型模型个数。
  • 普通异步联邦学习:
    通过随机选择一个本地模型来更新,可以应对问题的第二点边缘动态性。虽然他不用等最久的模型训练时间,但他每个epoch只能聚合一个本地模型,会导致需要更多的epoch,更多的训练时间才能达到相同的效果。加上资源的限制,频繁的数据交只互会需要更大的带宽。

前言和问题的提出

联邦学习

该部分介绍了联邦学习的学习机制优点等

提到了三个经典的损失函数,文中只是简单的额提到,下面做出补充:

  1. 线性回归 z = w ∗ x + b z=w^*x+b z=wx+b,一般预测连续的值,损失函数用均方差表示 f i ( w ) = 1 2 ( x i T w − y i ) 2 f_i(w)=\frac{1}{2}\left(x_i^{\mathbb{T}}w-y_i\right)^2 fi(w)=21(xiTwyi)2
  2. 逻辑回归 z = w ∗ x + b z=w^*x+b z=wx+b y = 1 1 + e − z y=\frac{1}{1+\mathrm{e}^{-z}} y=1+ez1,预测的变量y一般是离散的值。本质是将线性回归进行一个变换,该模型的输出变量范围始终在 0 和 1 之间。损失函数用对数似然表示
    L ( w ) = ∏ [ p ( x i ) ] y i [ 1 − p ( x i ) ] 1 − y i L(w)=\prod[p(x_i)]^{y_i}[1-p(x_i)]^{1-y_i} L(w)=[p(xi)]yi[1p(xi)]1yi => J ( w ) = − 1 N l n L ( w ) J(w)=-\frac{1}{N}ln L(w) J(w)=N1lnL(w) ,由于是求的最大似然函数 L ( w ) L(w) L(w)是期望最大,求的是梯度上升的,所以损失函数需要加负号 − 1 N -\frac{1}{N} N1
    详细文章
  3. 支持向量机 求解最大的软间隔
    视频详细文章

自适应异步联邦学习

主要介绍了聚合的机制
Fig 2进行说明。并对于该机制存在的延迟,设计延迟补偿机制
在这里插入图片描述
左侧为同步联邦学习,需全部的worker完成上传才会进行聚合
右侧为AAFL,每次会选择实时环境(包括资源、损失值)确定 α \alpha α α t ∈ { 1 n , 2 n , … , 1 } \alpha_t\in\{\frac{1}{n},\frac{2}{n},\ldots,1\} αt{n1,n2,,1},所以每次确定的模型数量则是 α ⋅ n \alpha \cdot n αn

如图所示,在t1时刻,会对#1,#2,#3进行聚合,这样相比同步FL会更快一些。

但是会有一个问题,如t3-t4时刻#2此时上传的模型是根据第一次聚合的全局模型进行训练的,但此时全局模型已经是第三个版本了,这是对于#2机存在staleness过时,这里是3 - 1 = 2,为了加上最新模型的影响,PS对于收到的#2发来的M2还需要进一步的处理,具体来说是 M 2 = ζ x ⋅ M 2 + ( 1 − ζ x ) ⋅ M G M_2=\zeta^x\cdot M_2 + (1-\zeta^x)\cdot M_G M2=ζxM2+(1ζx)MG,x代表#2的staleness

Fig 3:该图对比由于边缘动态性出现问题(网络失去连接、系统故障等)时,同步FL和AAFL的情况。认为AAFL即时有部分的worker出现故障,也能根据自身算法随机选择 α ⋅ n \alpha \cdot n αn个模型进行全局模型的聚合

收敛性证明

该部分证明了一番。。。。
结论就是:1.收敛的边界与 α \alpha α和训练的epoch的个数 T T T有关。2. α \alpha α T T T越大,最佳间隔Gap将会越小。

问题的提出

定义了具有资源约束的自适应异步联邦学习 (AAFL-RC) 问题,即在资源受限和会收敛保证的情况下,找到 α \alpha α T T T,来达到训练时间最短。

资源消耗分为两类。一类是本地更新带来的消耗 g k g_k gk,k表示资源的种类;一类是模型交换带来的消耗 b k b_k bk

总的本地更新和模型交换消耗分别是: T ⋅ n ⋅ g k T\cdot n\cdot g_k Tngk ∑ t = 1 T ( α t + 1 ) ⋅ n ⋅ b k \sum_{t=1}^T(\alpha_t+1)\cdot n\cdot b_k t=1T(αt+1)nbk。括号内需要 + 1 是因为PS每次会将全局模型发送给每个边缘节点,既接收全局模型的消耗。

  • 问题的数学描述:
    目的用最短的训练时间达到收敛。
    不等式1,达到的收敛门限值
    不等式2, B k B_k Bk是全部的消耗,即所有的资源使用不得超过 B k B_k Bk
    不等式3,每个epoch需要在聚合时,需要至少 α ⋅ n \alpha \cdot n αn个模型提交
    不等式4,为1或者为0,表示模型i是否在轮次t中参加聚合
    不等式5,确定的 α \alpha α取值 ,i/n

  • 问题的解决方案:
    使用深度强化学习DRL。
    然后提到一点是,根据第二个不等式发现 α \alpha α T T T是相关。先确定 α \alpha α,然后由此确定 T T T

AAFL-RC的算法设计

深度强化学习智能体

以Fig. 4进行介绍
在这里插入图片描述
DRL系统由Agent和Env组成。Agent由状态,动作,奖励组成。

  1. 状态State: s t = ( t , H t , w t , F t , △ F t , F , b t , G t ) s_t = (t,H_t,w^t,F_t, \triangle F_t,\mathcal F,b_t,\mathcal G_t) st=(t,Ht,wt,Ft,Ft,F,bt,Gt),各个分量分别代表,轮次、训练时间、模型参数、损失函数、 △ F t = F − F t \triangle F_t=\mathcal F-F_t Ft=FFt F \mathcal F F收敛的程度、资源消耗、资源剩余

  2. 动作Action:如图所示,由神经网络输入state产生一组动作集合 π \pi π。对每种 α \alpha α有一个概率。 π ( a t ∣ s t ; θ ) → [ 0 , 1 ] \begin{aligned}\pi(a_t|s_t;\theta)& \to[0,1] \end{aligned} π(atst;θ)[0,1], θ \theta θ是网络的参数。

  3. 奖励Reward:下面是动作后产生奖励的公式。其中注意的是,当 ∣ △ F t ∣ |\triangle F_t| ∣△Ft变小时,奖励会增大,但是根据公式会发现有问题,其实没有问题。因为 △ F t \triangle F_t Ft是一个负值,是一个较大的数不断接近 F \mathcal F F的,可由第一点中 △ F \triangle F F的计算公式知道。
    r t = − Υ H t − H ‾ t − 1 H ‾ t − 1 + △ F t F − b t G t , t < T , r_t=-\Upsilon^{\frac{H_t-\overline{H}_{t-1}}{\overline{H}_{t-1}}}+\frac{\triangle F_t}{\mathcal{F}}-\frac{b_t}{\mathcal{G}_t},\quad t<T, rt=ΥHt1HtHt1+FFtGtbt,t<T,
    关于一个epoch的最后一个奖励计算,要么是资源耗尽,要么时达到收敛门限

    r T = { L T + C if F ( w T ) ≤ F  and  G T ≥ 0 , L T − C otherwise. r_T=\left\{\begin{array}{lr}\mathcal{L}_T+\mathcal{C}&\textrm{if}F(w^T)\le\mathcal{F}\textrm{ and }\mathcal{G}_T\ge0,\\ \mathcal{L}_T-\mathcal{C}&\textrm{otherwise.}\end{array}\right. rT={LT+CLTCifF(wT)F and GT0,otherwise.
    表示当最后一步不是正常结束,则会减去一个 C C C,让奖励减少,Agent知道好做出下一个决定。
    如果当前动作的奖励与其他动作的奖励相比较大,则该动作在下一个 epoch 中被选中的概率会增加。否则会减少。

    然后文章在3.1提到了 R t = ∑ d = 0 T − t γ d r t + d R_t=\sum_{d=0}^{T-t}\gamma^dr_{t+d} Rt=d=0Ttγdrt+d奖励的计算。
    在这个公式中,下标 t+d 表示从时期 t 开始的未来回报。这个公式计算了从时期 t 开始的总累积回报,其中每个未来时期的回报都乘以一个折扣因子。

    以下解释来自New Bing:
    这意味着,随着时间的推移,每个时期的回报将乘以一个折扣因子,以便更多地关注近期回报。这是强化学习中常用的技术,用于平衡对即时回报和未来回报的关注。
    实际上,未来的回报 rt 是未知的,因此无法直接计算 Rt。在强化学习中,通常使用一种称为时间差分学习(TD learning)的技术来估计 Rt。这种方法利用了马尔科夫决策过程(MDP)的性质,即未来时期的回报与当前时期的状态和动作有关。因此,可以使用当前时期和下一时期的信息来估计 Rt。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lawey#

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值