聯邦學習 联邦学习是一种机器学习技术具體來說就是人們在多个擁有本地数据样本的分散式边缘设备或服务器上训练算法这种方法与传统的集中式机器学习技术有顯著不同传统的集中式机器学习技术将所有的本地数据集上传到一个服务器上而更经典的分散式方法则通常假设本地数据样本都是相同分布的联合学习使多个參與者能够在不共享数据的情况下建立一个共同的强大的机器学习模型从而可以解决数据隐私数据安全数据访问权限和异构数据访问等关键问题 联合平均FedAvg是 FedSGD 的泛化允许本地节点对本地数据进行多次批量更新并交换更新的权重而不是梯度此外对来自相同初始化的调整权重进行平均并不一定会损害所得平均模型的性能尽管它很简单但它在现实环境中缺乏理论保证 传统的联邦学习是基于每个worker设备节点的梯度下降在每一轮中每个worker通过其本地数据集在本地多次更新其梯度下降权重然后中央节点聚合器对权重进行平均所有工人并再次分配给工人对多轮重复上述过程这种方法的主要缺点是效率低众所周知由于频繁的梯度传输导致的高通信开销会减慢 FL为了减轻通信开销已经研究了两种主要技术i表征通信和计算之间权衡的权重的本地更新和ii表征通信和精度之间权衡的梯度压缩