adap / flower

Flower: A Friendly Federated AI Framework
https://flower.ai
Apache License 2.0
5.13k stars 881 forks source link

FedDF #2012

Open jafermarq opened 1 year ago

jafermarq commented 1 year ago

FedDF

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 ?

divyanshugit commented 1 year ago

Hi @jafermarq , I would love to implement FedDF framework in flower.

Contributions + Result Reproduction:

Background:

Currently, I work as a AI Research Engineer at EnkryptAI which focuses on model security. Previously, I was working as a Research Associate at IISc, where I worked on MT for low-resource languages and Privacy Preserving Generative Models. I've done my bachelor's Electronics & Communication Engineering and I'm based in India(One of the eligble country in the list).

I would to discuss more on this and get started as soon as it possible. I go by @Divyanshu on the slack.

jafermarq commented 1 year ago

Hey @divyanshugit, it's great to see you are keen in implementing FedDF! 💯

From the architectures-datasets pairs you listed, could you point me to which experiments you want to reproduce exactly (i.e. what figure/table in the paper). Maybe Table 1, Table 2 (CIFAR-10 part), Table 3 and Figure 3? If you think you can take this then go for it! Your plan sound quite ambitious! Just think if you have the bandwidth for all these experiments before we move on to Stage 3.

Also, please indicate which baselines that appear in these tables are you also going to implement for the purpose of having a point of reference in the tables your baseline will reproduce (it could be FedAvg, FedProx or FedAvgM).

divyanshugit commented 1 year ago

For starters, I will focus on replicating the results from Table 2 and Figure 3 with FedAvg. Yeah, like my focus is going to be to finish replicating results, and if time permits then creating example notebooks as well.

jafermarq commented 1 year ago

@divyanshugit Great! thanks for the clarification. I've ✅ all the points above for Steps 1 & 2 and add you as the assignee to this issue. I also moved this FedDF baseline to "In Progress". You can find first steps on how to start working on your baseline via the link in the What happens Next ? section in the issue description.

Looking forward to see FedDF in action!