Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add FedNova baseline #2179

Merged
merged 57 commits into from
Dec 20, 2023
Merged

Add FedNova baseline #2179

merged 57 commits into from
Dec 20, 2023

Conversation

ashdtu
Copy link
Contributor

@ashdtu ashdtu commented Aug 1, 2023

FedNova

Proposal for implementation of FedNova baseline to Flower framework under Summer of Reproducibility challenge.

@ashdtu ashdtu mentioned this pull request Aug 4, 2023
7 tasks
@jafermarq jafermarq added the summer-of-reproducibility About a baseline for Summer of Reproducibility label Aug 4, 2023
@jafermarq
Copy link
Contributor

jafermarq commented Sep 19, 2023

Hi @ashdtu , how is it going? Let me know if you'd like to discuss something about your FedNova implementation. The Summer of Reproducibility ends in ~10 days.

@ashdtu ashdtu marked this pull request as ready for review October 2, 2023 04:03
@ashdtu
Copy link
Contributor Author

ashdtu commented Oct 2, 2023

Hi @jafermarq I have a working version of the baseline now. that is producing results similar to the one in the paper. However there are certain parts that I wanted to refactor in the code that will be a work in progress in the coming week. Request you to take a look at the current state so that we can have a 1-on-1 soon.

Copy link
Contributor

@jafermarq jafermarq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @ashdtu,

I have done an initial pass. See some suggestions below. The summary of my comments are:

  • (important) please rename your directory (and its subdirectory) from fedNova to fednova. Then don't forget to reflect that in the pyproject.toml (see comment), and update all the imports so they make use of fednova.<your file>. I was able to run your code after doing it by doing python -m fednova.main.
  • Try to have a minimal version of the readme ready.
  • If you make plots, please add them to a directory called _static and placed in the same directory as the README.md.
  • Does state/init_params_torch.pt need to be part of the repo? (it's a large file)

Please ping me when you are done making the changes. Happy to discuss them further over here or slack.

baselines/fedNova/pyproject.toml Outdated Show resolved Hide resolved
baselines/fedNova/pyproject.toml Outdated Show resolved Hide resolved
baselines/fedNova/pyproject.toml Outdated Show resolved Hide resolved
baselines/fedNova/fedNova/main.py Outdated Show resolved Hide resolved
baselines/fedNova/fedNova/main.py Outdated Show resolved Hide resolved
baselines/fedNova/fedNova/state/init_params_torch.pt Outdated Show resolved Hide resolved
baselines/fedNova/README.md Outdated Show resolved Hide resolved
baselines/fedNova/README.md Outdated Show resolved Hide resolved
baselines/fedNova/fedNova/models.py Outdated Show resolved Hide resolved
Copy link
Contributor

@jafermarq jafermarq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @ashdtu,

Just a couple of small comments about the README.md and the location where the results are stored.

baselines/fednova/EXTENDED_README.md Outdated Show resolved Hide resolved
baselines/fednova/README.md Show resolved Hide resolved
baselines/fednova/fednova/conf/base.yaml Outdated Show resolved Hide resolved
baselines/fednova/fednova/main.py Outdated Show resolved Hide resolved
baselines/fednova/fednova/strategy.py Show resolved Hide resolved
baselines/fednova/fednova/strategy.py Show resolved Hide resolved
baselines/fednova/EXTENDED_README.md Outdated Show resolved Hide resolved
@jafermarq jafermarq changed the title FedNova implementation Add FedNova baseline Dec 20, 2023
Copy link
Contributor

@jafermarq jafermarq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @ashdtu,

I did a couple of small changes today. But i'm glad to say FedNova looks merge-ready !! Many thanks for the hardwork.

@jafermarq jafermarq enabled auto-merge (squash) December 20, 2023 19:47
@jafermarq jafermarq merged commit 216fdac into adap:main Dec 20, 2023
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
summer-of-reproducibility About a baseline for Summer of Reproducibility
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants