Skip to content
/ MHFL Public

This is an evaluation work for model heterogeneous federated learning

License

Notifications You must be signed in to change notification settings

zza234s/MHFL

Repository files navigation

Toward Better Model Heterogeneous Federated Learning: A Benchmark and Evaluation Work

This is an evaluation work for Model Heterogeneous Federated Learning (MHFL). It also aims to provide an easy-to-use MHFL benchmark.

这是一个模型异构联邦学习的评估性工作, 同时旨在提供一个易于使用的模型异构联邦学习基准。

The code of this project is under construction.

项目的代码正在完善中~~

Acknowledgment

All code implementations are based on the FederatedScope V0.3.0: https://github.com/alibaba/FederatedScope

We are grateful for their outstanding work.

Currently Supported Algorithms

Basic baseline

  • LOCAL: each client only performs local training without the FL process.

Methods based on knowledge distillation (with public dataset)

Abbreviation Title Venue Materials
FedMD FedMD: Heterogenous Federated Learning via Model Distillation NeurIPS 2019 Workshop [pub] [repository]
FedDF Ensemble Distillation for Robust Model Fusion in Federated Learning NeurIPS 2020 [pub] [repository]
FSFL Few-Shot Model Agnostic Federated Learning ACM MM 2022 [pub] [repository]
FCCL Learn from Others and Be Yourself in Heterogeneous Federated Learning CVPR 2022 [pub] [repository]

Methods without public dataset

Abbreviation Title Venue Materials
FML Federated Mutual Learning ArXiv 2020 [pub] [repository]
FedHeNN Architecture Agnostic Federated Learning for Neural Networks ICML 2022 [pub]
FedProto FedProto: Federated Prototype Learning across Heterogeneous Clients AAAI 2022 [pub] [repository]
FedPCL Federated Learning from Pre-Trained Models: A Contrastive Learning Approach NeurIPS 2022 [pub] [repository]

Methods being implemented (Coming soon)

Abbreviation Title Venue progress bar
FEDAUX FedAUX: Leveraging Unlabeled Auxiliary Data in Federated Learning TNNLS 2021 [#----------]0%
DENSE DENSE: Data-Free One-Shot Federated Learning NeurIPS 2022 [########--]90%
TBD .....

Model and Dataset

Currently, we simply conduct experiments on two FL benchmark datasets: CIFAR-10 and FEMNIST.

Quickly Start

Step 1. Install FederatedScope

Users need to clone the source code and install FederatedScope (we suggest python version >= 3.9).

  • clone the source code
git clone https://github.com/zza234s/MHFL
cd MHFL
  • install the required packages:
conda create -n fs python=3.9
conda activate fs

# Install pytorch
conda install -y pytorch=1.10.1 torchvision=0.11.2 torchaudio=0.10.1 torchtext=0.11.1 cudatoolkit=11.3 -c pytorch -c conda-forge
  • Next, after the required packages is installed, you can install FederatedScope from source:
pip install -e .[dev]

Step 2. Run Algorithm (Take running FedProto as an example)

  • Enter the folder corresponding to the selected algorithm
cd federatedscope/model_heterogeneity/methods/fedprotos
  • Run the script file
bash run_fedproto_low_heterogeneity_FEMNIST.sh

PS

Please feel free to contact me.

My email is: hanlinzhou@zjut.edu.cn

My WeChat is: poipoipoi8886

About

This is an evaluation work for model heterogeneous federated learning

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published