Skip to content

Communication-Efficient Generalized Neuron Matching for Federated Learning (ICPP'23)

License

Notifications You must be signed in to change notification settings

Xtra-Computing/FedGMA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FedGMA

This is the code of paper Communication-Efficient Generalized Neuron Matching for Federated Learning

Requirements

System requirements:

  • Openssh client & server
  • Cmake & build essentials
  • CUDA runtime >= 11.2
  • Tmux >=3.2a

Python requirements:

  • Python == 3.9
  • Install all requirements with pip install -r requirements.txt.

Usage

First edit workers.txt to configure the GPU resource allocation. Each line should have the format of <server|client> localhost <N>. <N> specifies the GPU index (starting from 0). The first line must be server localhost <N>, and the remaining lines must start with client. The total number of client lines must be greater than the total number of clients to start.

This is an example to run the code:

python -um code.launcher.client_server \
    +a fedavg +n 8 +sa -md.n unordered-resnet18 \
    -dt.r.d cifar10 -fl.bt model -fedavg.eslr 0.04 \
    -tr.bs 128 -tr.s.n reduceonplateau \
    -tr.o.sgd.wghtdcy 5e-4 -tr.e 10000 -tr.lr 0.05

This command starts a tmux session that manages all the processes of the experiment. To query all the available hyperparameters, run:

python -um code.launcher.node.node -l.a <algorithm>.server -h

where <algorithm> is the algorithm to run (i.e. fedavg|fednova|fedgma). The datasets will be downloaded if they are not already present after the experiment starts.

The processes are managed by tmux. Use tmux attach to attach to the tmux session and observe the progress of the experiment. Experiment logs will also be outputted to logs/<date_time>.

Results

Accuracies on CIFAR-10/100

CIFAR10 CIFAR100

Accuracy -- Data Curve on CIFAR10

VGG9 ResNet18 InceptionNet3

Citation

TBD

About

Communication-Efficient Generalized Neuron Matching for Federated Learning (ICPP'23)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages