/FL-bench

Benchmark of federated learning, dedicated to the community.

Primary LanguagePythonMIT LicenseMIT

Federated Learning Benchmark

Methods

Regular FL methods

Personalized FL methods

More reproductions/features would come soon or later (depends on my mood 🤣).

Usage

So easy, right? 😎

cd data/utils
python run.py -d cifar10 -a 0.1 -cn 100
cd ../../

cd src/server
python ${algo}.py

About methods of generating federated dastaset, go check data/utils/README.md for full details.

Monitor

  1. Run python -m visdom.server on terminal.
  2. Go check localhost:8097 on your browser.

Supported Datasets

🤗 This benchmark only support algorithms to solve image classification problem for now.

Regular image datasets

  • MNIST (1 x 28 x 28, 10 classes)

  • CIFAR-10/100 (3 x 32 x 32, 10/100 classes)

  • EMNIST (1 x 28 x 28, 62 classes)

  • FashionMNIST (1 x 28 x 28, 10 classes)

  • FEMNIST (1 x 28 x 28, 62 classes)

  • CelebA (3 x 218 x 178, 2 classes)

  • SVHN (3 x 32 x 32, 10 classes)

  • USPS (1 x 16 x 16, 10 classes)

  • Tiny-Imagenet-200 (3 x 64 x 64, 200 classes)

Medical image datasets

Acknowledgement

Some reproductions in this benchmark are referred to https://github.com/TsingZ0/PFL-Non-IID, which is a great FL benchmark. 👍