联邦学习的收敛性分析(全设备参与,不同本地训练轮次)

联邦学习的收敛性分析

在这里插入图片描述

在联邦学习中,我们的目标是分析全局模型的收敛性,考虑设备异构性(不同用户的本地训练轮次不同)和数据异质性(用户数据分布不均匀)。以下推导从全局模型更新开始,逐步引入假设并推导期望损失的递减关系,最终给出收敛性结论。

1. 全局模型更新与泰勒展开

全局模型更新

在联邦学习中,设全局模型在第 t t t 轮为 g t g_t gt,共有 U U U 个用户参与训练。每个用户 k k k 从全局模型 g t g_t gt 开始(即 w t k , 0 = g t w_t^{k, 0} = g_t wtk,0=gt),进行 l k t l_k^t lkt 轮本地梯度下降更新:

w t k , i + 1 = w t k , i − η ∇ G t k , i , w_t^{k, i+1} = w_t^{k, i} - \eta \nabla \mathcal{G}_t^{k, i}, wtk,i+1=wtk,iηGtk,i,

其中 η \eta η 是学习率, ∇ G t k , i \nabla \mathcal{G}_t^{k, i} Gtk,i 是用户 k k k 在第 i i i 轮本地训练时的梯度。经过 l k t l_k^t lkt 轮训练后,用户 k k k 的本地模型为:

w t k , l k t = w t k , 0 − η ∑ i = 0 l k t − 1 ∇ G t k , i = g t − η ∑ i = 0 l k t − 1 ∇ G t k , i . w_t^{k, l_k^t} = w_t^{k, 0} - \eta \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i} = g_t - \eta \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i}. wtk,lkt=wtk,0ηi=0lkt1Gtk,i=gtηi=0lkt1Gtk,i.

全局模型通过聚合所有用户的本地模型得到:

g t + 1 = 1 U ∑ k = 1 U w t k , l k t = g t − η U ∑ k = 1 U ∑ i = 0 l k t − 1 ∇ G t k , i . g_{t+1} = \frac{1}{U} \sum_{k=1}^U w_t^{k, l_k^t} = g_t - \frac{\eta}{U} \sum_{k=1}^U \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i}. gt+1=U1k=1Uwtk,lkt=gtUηk=1Ui=0lkt1Gtk,i.

泰勒展开

为了分析全局损失 F ( g t + 1 ) F(g_{t+1}) F(gt+1) 的变化,我们对 F ( g t + 1 ) F(g_{t+1}) F(gt+1) g t g_t gt 处进行二阶泰勒展开:

F ( g t + 1 ) ≈ F ( g t ) + ∇ F ( g t ) T ( g t + 1 − g t ) + 1 2 ( g t + 1 − g t ) T ∇ 2 F ( g t ) ( g t + 1 − g t ) . F(g_{t+1}) \approx F(g_t) + \nabla F(g_t)^T (g_{t+1} - g_t) + \frac{1}{2} (g_{t+1} - g_t)^T \nabla^2 F(g_t) (g_{t+1} - g_t). F(gt+1)F(gt)+F(gt)T(gt+1gt)+21(gt+1gt)T2F(gt)(gt+1gt).

代入 g t + 1 − g t = − η U ∑ k = 1 U ∑ i = 0 l k t − 1 ∇ G t k , i g_{t+1} - g_t = -\frac{\eta}{U} \sum_{k=1}^U \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i} gt+1gt=Uηk=1Ui=0lkt1Gtk,i

F ( g t + 1 ) ≈ F ( g t ) − η U ∇ F ( g t ) T ( ∑ k = 1 U ∑ i = 0 l k t − 1 ∇ G t k , i ) + η 2 2 ( 1 U ∑ k = 1 U ∑ i = 0 l k t − 1 ∇ G t k , i ) T ∇ 2 F ( g t ) ( 1 U ∑ k = 1 U ∑ i = 0 l k t − 1 ∇ G t k , i ) . F(g_{t+1}) \approx F(g_t) - \frac{\eta}{U} \nabla F(g_t)^T \left( \sum_{k=1}^U \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i} \right) + \frac{\eta^2}{2} \left( \frac{1}{U} \sum_{k=1}^U \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i} \right)^T \nabla^2 F(g_t) \left( \frac{1}{U} \sum_{k=1}^U \sum_{i=0}^{l_k^t - 1} \nabla \mathcal{G}_t^{k, i} \right). F(gt+1)F(gt)UηF(gt)T

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不搞学术柒柒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值