当前位置: 首页 > 工具软件 > Zeno > 使用案例 >

Zeno++ and clustered federated learning

邹誉
2023-12-01

两篇论文:Zeno++ and clustered federated learning
上周和导师聊过后,感觉还是要看仔细点,所以这周就看了两篇,其实有一篇还是上周就看过的,不过这看认真点这样。这周主要说的话,就是看了cluster federated learning这篇文章吧,把里面的推导过程都推了一遍。

  • ZENO++: ROBUST FULLY ASYNCHRONOUS SGD
    这个模型是asynchronous的模型,有server和worker,也就是centralized。对于每个worker,就是从server中取 X t X_t Xt(parameters)出来,然后作为自身的模型的parameter,用自身的数据集进行训练,之后得到更新后的梯度 g ~ \tilde{g} g~,将这个 g ~ \tilde{g} g~上传到server上。这就是worker的一次迭代。
    对于server来说,有 v v v这个东西, v v v就是server根据自己的dataset来更新得到的梯度。server会接收来自任何一个worker的 g ~ \tilde{g} g~,然后通过和 v v v的相似度来判断这个梯度能不能进行更新,该判断是使用的hard threshold。相似度大,就可以更新 X t X_t Xt。并且使用lazy_update的方法来更新 v v v值,减少计算的消耗。(因为计算一次v就要跑一次模型,计算花费很大。)
    优点:可以解决拜占庭错误(因为通信失败而导致梯度变化和预期差距过大),且不需要考虑错误的worker的数量。是一个asynchronous模型。
    缺点:这个模型考虑的是iid的数据集,并且是centralized的。但是实际上centralized也很常见,这个可能算不上缺点?感觉问题比较大的是iid数据集这个问题。实验也是采用的cifar-10的数据集,randomly sample onto all workers。实际上可能比较难以实现。并且实验只用了10个worker,感觉说服力不算强?
    这篇论文的数学推导还没看,也许下周会看。

  • Clustered Federated Learning: Model-Agnostic Distributed Multi-Task Optimization under Privacy Constraints
    这个也是centralized的,流程如下:对总模型进行FL,得到stationary point θ ∗ \theta^* θ。然后根据 θ ∗ \theta^* θ得到similarity matrix α i , j \alpha_{i,j} αi,j,用的是cosine相似度。对similarity matrix α i , j \alpha_{i,j} αi,j进行cluster,得到两个类,然后再根据文中的条件进行判断,看看是否需要继续进行cluster。重复上述过程直至不再需要进行cluster。
    优点:personalized,可以解决iid的问题。实验上的设计也是按照non-iid的方式来设置的。
    缺点:不是asynchronous,所以可能在实际中比较难以运用。
    这篇文章的数学推导我推了一遍,在(73)那里作者应该是复制粘贴的时候没改过来,符号错了,不过对于整个证明过程来说不是什么大问题。

这两篇文章的experiment的worker数量不大,第一篇是10个,第二篇是20个,所以不太清楚是不是FL的experiment目前都是这个样子的?

 类似资料:

相关阅读

相关文章

相关问答