減少通信次數:多做計算,少做通信
FedSGD:
worker節點:
server節點:
FedAvg方法:
worker節點:
在節點本地進行多次梯度下降更新參數
server節點:
該方法通過增加了節點本地結算量,減少了通信量。
FedSGD:每次采用client的所有數據集進行訓練,本地訓練次數為1,然后進行aggregation。
C:the fraction of clients that perform computation on each round
每次參與聯邦聚合的clients數量占client總數的比例。C=1 代表所有成員參與聚合
B:the local minibatch size used for the client updates.
client的本地的訓練的batchsize,B=無窮大代表batchsize是整個本地數據集
E:then number of training passes each client makes over its local dataset on each round
兩次聯邦訓練之間的本地訓練的次數
---》C=E=1 ,B=∞時,FedAvg等價於FedSGD
梯度泄露隱私:
梯度實際上是通過函數把用戶數據做了函數變換