联邦策略:FedProx#

FedAvg v.s FedProx#

异构性

FedAvg

FedProx

数据异构性

FedAvg不能对non-iid数据保证拟合

FedProx能够对non-iid数据保证拟合速率

设备异构性

FedAvg没有考虑不同设备的异质性,例如计算力上的不同;对于每个设备来说,会安排相同的workload

FedProx支持让每个设备进行不同workload的本地训练:通过在每轮为每个设备设置一个不同的“γ -inexact”参数,调整对每个设备在本地训练的精度要求;

Fit#

在目标函数中增加Proximal Term

: 对于一组参数w,在设备k上训练k本地数据得到的loss: 在第t轮训练中,服务器发送给设备k的初始模型参数: 一个超参数 : proximal term,限制优化后的w与 t轮发布的差异度,让每个设备k更新后的w之间不要差别过大,帮助拟合

每个设备不同训练要求:γ -inexact#

FedAvg要求每个设备在本地训练时都完整地进行优化E个epochs;而由于设备异质性,FedProx希望在每一轮t中对每一个设备k提出不同的优化要求,不需要所有设备都完整地进行优化;,值越高代表限制条件越宽松,即对设备k的训练完成度要求越低;反之,当的时候要求参数训练的更新为0,要求本地模型完全拟合;借助可以按照设备的计算力资源调整每个设备每轮的训练量;

Convergence分析中对参数选取的要求#

当选取的参数满足下述条件,模型的convergence rate的期望值可以被bound

参数条件#

要设置参数有三组:K,;其中K是t轮中选取的client设备数量,, 是设置proximal term的超参数;

拟合速率#

如果参数的设置满足上述要求,则能够证明收敛性

参数选取的充分非必要条件#

和B之间存在tradeoff,比如B越大说明数据分布差异性越大,则必须越小,对每个设备的训练要求越高;

实验1: proximal term和inexactness的有效性#

figure_1

总结#

的定义和存在还比较理论, 在实践中可以直接按照设备资源确定设备的workload

实现情况#

  1. 针对数据non-iid的proximal term已实现

  2. 针对设备异质性的inexactness待实现

参考文献#

Federated Optimization in Heterogeneous Networks