Skip to content

Commit 6a99d0e

Browse files
committed
[update] fix feddyn
1 parent 252f7d2 commit 6a99d0e

File tree

6 files changed

+60
-23
lines changed

6 files changed

+60
-23
lines changed

datasets/mnist/train/data0.pkl

97.6 MB
Binary file not shown.

datasets/mnist/train/data1.pkl

97.6 MB
Binary file not shown.

fedlab/contrib/algorithm/feddyn.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ def setup_optim(self, alpha):
2020

2121
def global_update(self, buffer):
2222
parameters_list = [ele[0] for ele in buffer]
23-
self.h = self.h - self.alpha * (1.0/self.num_clients) * (sum(parameters_list) - self.model_parameters)
23+
deltas = sum([parameters-self.model_parameters for parameters in parameters_list])
24+
self.h = self.h - self.alpha * (1.0/self.num_clients) * deltas
2425
new_parameters = Aggregators.fedavg_aggregate(parameters_list) - 1.0 / self.alpha * self.h
2526
self.set_model(new_parameters)
2627

fedlab/contrib/algorithm/fedprox.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,10 @@ def train(self, model_parameters, train_loader, mu) -> None:
7878
"""Client trains its local model on local dataset.
7979
8080
Args:
81-
model_parameters (torch.Tensor): Serialized model parameters.
81+
model_parameters (torch.Tensor): serialized model parameters.
82+
train_loader (torch.utils.data.DataLoader): :class:`torch.utils.data.DataLoader` for this client.
83+
mu (float): parameter of FedProx.
84+
8285
"""
8386
self.set_model(model_parameters)
8487
frz_model = deepcopy(self._model)

tutorials/pipeline_tutorial.ipynb

+52-19
Large diffs are not rendered by default.

tutorials/readme_exp.ipynb

+2-2
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@
273273
],
274274
"metadata": {
275275
"kernelspec": {
276-
"display_name": "Python 3.10.0 ('fedlab')",
276+
"display_name": "Python 3 (ipykernel)",
277277
"language": "python",
278278
"name": "python3"
279279
},
@@ -287,7 +287,7 @@
287287
"name": "python",
288288
"nbconvert_exporter": "python",
289289
"pygments_lexer": "ipython3",
290-
"version": "3.10.0"
290+
"version": "3.9.12"
291291
},
292292
"vscode": {
293293
"interpreter": {

0 commit comments

Comments
 (0)