Git Product home page Git Product logo

balancefl's Introduction

BalanceFL

This is the repo for IPSN 2022 paper: "BalanceFL: Addressing Class Imbalance in Long-Tail Federated Learning".

BalanceFL is a long-tailed federated learning framework that can robustly learn both common and rare classes from a real-world dataset, simultaneously addressing the global and local data imbalance problems.

BalanceFL mainly includes two components: knowledge inheritance and inter-class balancing. They address the class missing issue and the local class imbalance issue, respectively.


Requirements

The program has been tested in the following environment:

  • Python 3.7.11
  • Pytorch 1.8.1
  • torchvision 0.9.1
  • torchaudio 0.8.1
  • numpy 1.21.2
  • librosa 0.6.0
  • PyYAML 5.4.1
  • Pillow 8.3.2
  • h5py 3.4.0

Project Structure

Datasets

In Total, the evaluation involves three datasets. Each folder contains the code of one dataset.

  • CIFAR10 and Speech Command are two public datasets, which will be automatically downloaded by running the related code.
  • Our collected IMU dataset is available in ./dataset/IMU/.

BalanceFL and and six baselines

quick start: run python3 XXX.py

  • train_ours.py: ours
  • train_central_bal.py: centralized training with balanced softmax (Balanced Meta-Softmax for Long-Tailed Visual Recognition)
  • train_central.py: naive centralized training
  • train_fedavg.py: FedAvg
  • train_fedprox.py: FedProx
  • train_local.py: Local Training
  • train_per.py: Per-FedAvg

Citation

The dataset included in this repository is for non-commericial use. Please cite our work if you feel our work is helpful or use our collected IMU dataset:

@INPROCEEDINGS{9825928,
  author={Shuai, Xian and Shen, Yulin and Jiang, Siyang and Zhao, Zhihe and Yan, Zhenyu and Xing, Guoliang},
  booktitle={2022 21st ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN)}, 
  title={BalanceFL: Addressing Class Imbalance in Long-Tail Federated Learning}, 
  year={2022},
  volume={},
  number={},
  pages={271-284},
  doi={10.1109/IPSN54338.2022.00029}}

balancefl's People

Contributors

sxontheway avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.