联邦学习FedAvg记录

Notation

符号 含义
F(w) 总目标函数
w 待优化参数
Fk(w) k个client的目标函数
pk k个client在总表函数中的占比
E 每个local update的次数
T 总迭代次数,即通讯次数为T/E
ηt t时刻学习率
L 函数FkLsmooth,即2Fk(w)L
μ 函数Fkμconvex,即2Fk(w)u
σk E(Fk(wtk,ξtk)Fk(wtk))σk2
G E(Fk(wtk,ξtk))G2
F 最优函数值
Fk 单独对第k个client优化得到的最优函数值
Γ FkpkFk,度量异质性
ηt t时刻的学习率
κ Lμ,可近似看为条件数
w 最优参数
ξtk client kt时刻进行随机梯度下降选出的样本

假设

  1. 函数FkLsmooth,对于所有的k
  2. 函数Fkμconvex,对于所有的k
  3. clientk每次计算的随机梯度的方差是σk2有界的
  4. 所有计算的随机梯度的范数是G有界的

全参与下的收敛性证明

引入两个变量,vtkwtk

vt+1k=vtkηtFk(wtk,ξtK)wt+1k={vt+1for t+1IEkNpkvk+1kfor t+1IE

定义

v¯t=kpkvtkw¯t=kpkwtkg¯t=kpkFk(wtk)gt=kpkFk(wtk,ξkt)

由于tIE,在能够交换的迭代轮次才能获取参数的更新w,变量v用来表示在不能进行交换数据的轮次的参数。由于全局参与,v¯t=w¯t对于所有的t,而且v¯t+1=w¯tηtgt

个人理解:

要证明收敛性需要证明,参数是收敛的,由于参数w¯t是根据梯度下降求出来的,所以需要证明,

Ew¯t+1wl(w¯tw)

即当前迭代的参数和最优点的w的距离是小于上一次迭代参数与最优参数的距离,而且l函数是可以递推的。也就是说,当前迭代的参数和最优点的w的距离的上界是逐渐减小的。

文章没有选择w¯w而是选择了v¯w,因为v¯是对应所有client的,在部分参与的场景下,w¯是偏差的。

(1)Ev¯t1w2=Ew¯tηtgtwηtg¯t+ηtg¯t2=E(w¯tηtg¯tw2+2ηt<w¯tηtg¯tw,gt+g¯t>+ηt2g¯tgt2)

上面之所以拆分出ηtg¯t+ηtg¯t的原意是想利用E(ηtgtηtg¯t)=0来对1进行拆分。

对于E(w¯tηtg¯tw2)继续进行计算

w¯tηtg¯tw2=w¯tw22ηt<w¯tw,g¯t>+ηt2g¯t2

根据Lsmooth[1]

(3)Fk(wtk)22L(Fk(wtkFk))

因为二范数为凸函数再结合 3,得到

ηt2g¯t2ηt2pkFk(wtk)22Lηt2(Fk(wtkFk))

对于2ηt<w¯tw,g¯t>展开

2ηt<w¯tw,g¯t>=2ηtpk<w¯tw,Fk(wtk)>=2ηtpk<w¯twtk,Fk(wtk)>2ηtpk<wtkwtk,Fk(wtk)>

根据可惜施瓦茨不等式和矩阵不等式得到

2<w¯twtk,Fk(wtk)>≤1ηtw¯twtk2+ηkFk(wtk)2

根据μconvex得到

<wtkw,Fk(wtk)>≤(Fk(wtk)Fk(w))μ2wtkw2

因此 ???写为

w¯tηtg¯tw2=w¯tw22ηt<w¯tw,g¯t>+ηt2g¯t2w¯tw2+2Lηt2(Fk(wtkFk))+ηtpk(1ηtw¯twtk2+ηkFk(wtk)2)2ηtpk(Fk(wtk)Fk(w)μ2wtkw2)(1μηt)w¯tw2+pkw¯twtk2+4Lηt2pk(Fk(wtk)Fk)2ηtpk(Fk(wtk)Fk(w))

拿出后面的4Lηt2pk(Fk(wtk)Fk)2ηtpk(Fk(wtk)Fk(w))一项,定义γt=2ηt(12Lηt),同时假定ηt随时间非增(也就是学习率是衰减的)且ηt14L。可以得到定义的ηtγt2ηt。整理得到

4Lηt2pk(Fk(wtk)Fk)2ηtpk(Fk(wtk)Fk(w))=2ηt(12Lηt)pk(Fk(wtk)Fk)+2ηtpk(Fk(w)Fk)=γtpk(Fk(wtk)F)+(2ηtγt)pk(FFk)=γtpk(Fk(wtk)F)+4Lηt2Γ

第三个等号将Fk(wtkFk)拆分为Fk(wtk)F+FFk

pk(Fk(wtk)F)=pk(Fk(wtk)Fk(w¯t))+pk(Fk(w¯t)F)pk<Fk(w¯t),wtkw¯t>+Fk(w¯t)F12pk[ηtFk(w¯t)2+1ηwtkw¯t2]+(F(w¯t)F)pk[ηtL(Fk(w¯t)Fk)+12ηwtkw¯t2]+(F(w¯t)F)

综上所述,

4Lηt2pk(Fk(wtk)Fk)2ηtpk(Fk(wtk)Fk(w))γtpk[ηtL(Fk(w¯t)Fk)+12ηwtkw¯t2]γ(F(w¯t)F)++4LηtΓ=γt(ηtL1)pk(Fk(w¯t)F)+(4Lηt2+γtηtL)+γ2ηtpkwtkw¯t26Lηt2Γ+pkwtkw¯t2

最后一个不等式取得的原因是(ηtL1)34pk(Fk(w¯t)F)0

因此

w¯tηtg¯tw2(1μηt)w¯tw2+6Lηt2Γ+pkwtkw¯t2

加上梯度方差有限假设,即

Egtg¯t2=Epk(Fk(wk,ξtk)Fk(wtk))pk2σk2

Epkw¯twtk2=Epkwtkw¯t0(w¯tw¯t0)2Epkwtkw¯t02pkEt=t0t1(E1)ηt2Fk(wtk,ξtk)4ηt2(E1)2G2

因此最终,令Δt=Ew¯t+1w

Δt+1(1μηt)Δt+ηt2B

B=pk2σk2+6LΓ+8(E1)2G2

参考资料

  1. Francis Bach, Statistical machine learning and convex optimization
posted @   Neo_DH  阅读(2210)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示