1.一种面向异构边缘计算环境的分散联邦学习方法,其特征在于:该方法包括以下步骤:步骤1:在联邦学习系统中,边缘节点初始化自己的模型;
步骤2:边缘节点根据本身的通信速率和计算能力计算通信成本函数,该成本函数表示边缘节点之间的匹配程度;节点基于贪婪算法选择成本函数小的相邻节点作为匹配集;
步骤3:对于每个边缘节点,基于梯度和权重衡量边缘节点模型间的相似性,使用Monte Carlo方法进行从匹配集中选择邻居,即将上一轮中的邻居与当前随机抽样的相邻节点一起放进候选列表,从候选列表中选择相似度最大的前k名候选节点作为当前轮邻居;
边缘节点在t0时刻初始化模型W0,k;
节点之间的通信速率用R表示,计算能力用CPU频率f表示;为确定客户端之间的开销,采用以下策略:2
Cij=1/Rij+μ(fi‑fj)
其中Cij表示节点i和j之间的连接开销,表明它们的交流状态和计算能力的差异;节点i和j之间的通信速率用变量Rij表示,频率分别用fi和fj表示;该策略描述节点之间的匹配程度;C值低表明节点之间的通信速率更高,计算能力更接近;节点i为确定自己的匹配集ζi,采用基于贪婪的算法策略:Ci,k<ε×Cmin
其中Cmin代表所有节点中最低的通信成本;当节点i和k的通信成本小于一定的阈值,则节点k属于节点i的匹配集ζi;
根据以上节点i的匹配集ζi,基于梯度和累积权重更新确定节点i的邻居集;
使用梯度g的余弦相似度来度量优化目标的一致性,函数表示为:初始模型中积累的权重更新h表示历史优化方向,而权重更新h的余弦相似度表示目标的一致性:最终模型相似性通过Si,j度量:
使用Monte Carlo方法进行从匹配集中选择邻居,即将上一轮中的邻居与当前随机抽样的相邻节点一起放进候选列表,从候选列表中选择相似度最大的前k名候选节点作为当前轮邻居,即:步骤4:节点从邻居处接收权重和更新模型,基于得到的数据,通过共识得到聚合模型ψt,i;
节点i在t轮通信中,从邻居节点k处接收权重αi,k和更新模型Wt,k, 基于得到的数据和本身的模型Wt,i,通过共识得到聚合模型ψt,i:步骤5:节点通过聚合模型,计算梯度下降,更新模型,并发给邻居;
节点通过聚合模型ψt,k,计算梯度下降,更新模型Wt+1,i,并发给其他邻居;
2.根据权利要求1所述的一种面向异构边缘计算环境的分散联邦学习方法,其特征在于:所述联邦学习系统由一个中央服务器和包含n个节点的节点集c=(1,2,...,n)组成,每个节点拥有自己的数据;中央服务器负责发布训练任务、选择节点以及完成模型聚合;节点集c中被选中的节点接收中央服务器下发的本轮参数,在本地数据上使用中央服务器选择的数据量进行训练,并将更新后的参数上传至中央服务器;
节点依靠与邻居节点的本地合作和本地网络来协同训练模型;网络的交互拓扑被建模为一个有向图 ν=(1,2,……,K)表示节点的集合,ξ表示相连节点的边,节点K的邻居集表示为Nk。