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: FedPFT #3232

Closed
14 tasks done
mahdibeit opened this issue Apr 5, 2024 · 4 comments
Closed
14 tasks done

Add Flower Baseline: FedPFT #3232

mahdibeit opened this issue Apr 5, 2024 · 4 comments
Labels

Comments

@mahdibeit
Copy link
Contributor

mahdibeit commented Apr 5, 2024

Paper

Mahdi Beitollahi, Alex Bie, Sobhan Hemati, Leo Maxime Brunswic, Xu Li, Xi Chen, Guojun Zhang (2024). Parametric Feature Transfer: One-shot Federated Learning with Foundation Models

Link

https://arxiv.org/abs/2402.01862

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

This paper introduces FedPFT (Federated Learning with Parametric Feature Transfer), a method that utilizes the transferability of foundation models to enhance both accuracy and communication efficiency in one-shot FL. FedPFT brings foundation models to one-shot FL without requiring users to train or transmit large foundation models to the server.

image

Is there something else you want to add?

This baseline surpasses previous one-shot SOTA methods. I think it can be very useful for the Flower community to utilize large, pre-trained models.

I will be implementing the main experiment of the paper (Sec. for 5.2) using 50 clients, the Caltech101 dataset, and Clip-ViT as the feature extractor.

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

Hi @mahdibeit , this paper looks cool! Let me know if you need of any help to start with the baseline creation process. If some of the steps aren't clear, ping me!

@mahdibeit mahdibeit mentioned this issue Apr 15, 2024
6 tasks
@mahdibeit
Copy link
Contributor Author

Hi @jafermarq, I just wanted to let you know that I have opened a pull request #3268. Let me know if it requires any changes.

@jafermarq
Copy link
Contributor

Hi @mahdibeit, thank you for the ping. I've approved the workflow that runs the CI tests (one of which is for the tests that check your baseline). I'll review your code soon

@jafermarq
Copy link
Contributor

@mahdibeit , many thanks for adding your FedPFT into the Flower Baselines!! Would you be interested in presenting it in an upcoming Flower Monthly event? It runs on the first Wednesday of each month. Would the June session (June 5th) work for you? More info in our Flower Monthly page. Feel free to reach to me via the Flower Slack! (https://flower.ai/join-slack/)

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