adap / flower

Flower: A Friendly Federated Learning Framework
https://flower.ai
Apache License 2.0
4.45k stars 784 forks source link

EF21 #2056

Open jafermarq opened 1 year ago

jafermarq commented 1 year ago

EF21

Do you want to work on this baseline?

🌻 Check everything about the Summer of Reproducibility on flower.dev/summer

All available baselines are listed in the Summer of Reproducibility Dashboard and also in the GitHub Issues with the summer-of-reproducibility label. The content is the same.

📝 It is advised to complete these steps before your start working on your code. But if you can't wait to implement your baseline with Flower (we totally understand it 😄), please ensure you follow the steps on how to contribute a new baseline.

What follows are the steps 1 & 2 in the Summer of Reproducibility instructions.

1. Join the Summer of Reproducibility program

What happens next?

Is something wrong or not clear ?

burlachenkok commented 11 months ago

Hi! My name is Konstantin Burlachenko (Link to my GitHub account: https://github.com/burlachenkok)

I'm planning to work on this project.

What are you going to reproduce?

I'm planning to reproduce the experiments from the paper.

Specifically, I plan to reproduce:

The authors analyzed step size tolerance by plotting how the norm of gradient square changes with the number of sent bits per client via increasing step size by factors x1,x8,x16,x32,x128.

My goal will be to reproduce experiments considering all three algorithms mentioned in the paper for experiment:

jafermarq commented 11 months ago

Hi @burlachenkok , your contribution plan looks good. Including the experiments shown in Section 5 (i.e. Figure 1 & 2) make sense. How about including the deep learning experiments from Figures 13 and/or 14 in the Appendix before including those in A.1? Showing EF21 under experimental setups that are more familiar to others working in FL (typically with CIFAR, FEMNIST, etc dataset) would be very valuable for the community! Let me know what you think about this change.

burlachenkok commented 11 months ago

How about including the deep learning experiments from Figures 13 and/or 14 in the Appendix

@jafermarq Sure, let's include this. Let's replicate these figures for:

I'd like to exclude SGD, in the paper, because:

Please let me know if I can implement three Algorithms (EF21, EF21+, Classical EF) for Fig. 13, and 14 from the Paper, and it is good enough?

Thanks.

jafermarq commented 11 months ago

@burlachenkok , yeah. excluding the SGD from Fig 13 and 14 is fine. But are you still considering including Fig 1 & 2 also?

burlachenkok commented 11 months ago

@jafermarq, thank you. Yes, it includes Fig.1, Fig.2. So finally I plan to reproduce experiments that are demonstrated in Fig.1, Fig.2, Fig.13, and Fig.14.

jafermarq commented 11 months ago

@burlachenkok perfect! I have now ✅ all the points in Step 1 & 2 and added you as the assignee to this issue. Following the link in What happens next? section you'll find the details on how to start with the code for your baseline. Please reach out over Slack if you have some questions about the process or about Flower.

Looking forward to see EF21 in action !