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 Flower Baseline: Floco #4940

Open
9 tasks done
dennis-grinwald opened this issue Feb 17, 2025 · 2 comments
Open
9 tasks done

Add Flower Baseline: Floco #4940

dennis-grinwald opened this issue Feb 17, 2025 · 2 comments
Labels

Comments

@dennis-grinwald
Copy link

Paper

Dennis Grinwald, Philipp Wiesner, Shinichi Nakajima. Federated Learning over Connected Modes (NeurIPS'25)

Link

https://openreview.net/pdf?id=JL2eMCfDW8

Maybe give motivations about why the paper should be implemented as a baseline.

Floco is an effective method for improving personalized model performance in the non-IID cross-silo federated learning setting compared to many state-of-the-art personalized FL methods while increasing global model performance compared to FedAvg and FedProx. It achieves this by training a shared parameter simplex, called solution simplex, across clients. This approach assigns similar clients to similar regions within the simplex, leading to better collaboration of similar clients, i.e. clients with similar data distributions, and less interference with dissimilar clients.
The goal of this issue is to reproduce the SimpleCNN CIFAR-10 results from the original paper. The resulting code can be easily extended to the full experimental setup of the paper.

Is there something else you want to add?

No response

Implementation

To implement this baseline, it is recommended to do the following items in that order:

For first time contributors

Prepare - understand the scope

  • Read the paper linked above
  • Decide which experiments you'd like to reproduce. The more the better!
  • Follow the steps outlined in Add a new Flower Baseline.
  • You can use as reference other baselines that the community merged following those steps.

Verify your implementation

  • Follow the steps indicated in the EXTENDED_README.md that was created in your baseline directory
  • Ensure your code reproduces the results for the experiments you chose
  • Ensure your README.md is ready to be run by someone that is no familiar with your code. Are all step-by-step instructions clear?
  • Ensure running the formatting and typing tests for your baseline runs without errors.
  • Clone your repo on a new directory, follow the guide on your own README.md and verify everything runs.
@jafermarq
Copy link
Contributor

Hey @dennis-grinwald , it's great to see Floco running on Flower. We'll take a look into your PR in the coming days!

@dennis-grinwald
Copy link
Author

Hi @jafermarq . Great! Thank you and looking forward to hearing from you :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants