Skip to content

gozdeg/FedDropoutAvg

Repository files navigation

FedDropoutAvg

This repository hosts the FedDropoutAvg tutorial notebook that was written for the openfl workflow interface. It demonstrates how to use OpenFL's experimental workflow runtime with the FedDropoutAvg algorithm on CIFAR10 using a ResNet18 model with GroupNorm layers.

References

Repository layout

  • FedDropoutAvg_Tutorial_Using_Workflow_Interface_On_CIFAR10.ipynb – complete, self-contained tutorial.
  • workflow_interface_requirements.txt – auxiliary dependencies that sit on top of OpenFL.
  • LICENSE – MIT license for this repository.

Quick start

git clone https://github.com/gozdeg/FedDropoutAvg.git
cd FedDropoutAvg
python -m venv .venv
source .venv/bin/activate  # or .venv\Scripts\activate on Windows

# install openfl, for example:
pip install --upgrade pip
pip install "openfl @ git+https://github.com/intel/openfl.git@a4f8ae1e6507f617c3b90f602a20b61fa848031d" 
pip install -r workflow_interface_requirements.txt

Running the tutorial

  1. Launch a Jupyter environment (jupyter notebook or jupyter lab) inside the activated virtualenv.
  2. Open FedDropoutAvg_Tutorial_Using_Workflow_Interface_On_CIFAR10.ipynb.
  3. Run the cells sequentially. The first cell installs the OpenFL plus the locally provided workflow interface requirements.
  4. Adjust the training hyper-parameters (n_rounds, cdr, fdr, etc.) and rerun the cells to experiment with different amounts of client and federated dropout.

The tutorial follows the same conventions as the upstream OpenFL workflow examples, so it can also be copied back into openfl/openfl-tutorials/experimental/workflow without modification.

About

Implementation of FedDropoutAvg

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors