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.
- Feddropoutavg: Generalizable federated learning for histopathology image classification
- Gunesli, G. N., Bilal, M., Raza, S. E. A., & Rajpoot, N. M. (2023). A federated learning approach to tumor detection in colon histology images. Journal of Medical Systems, 47(1), 99
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.
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- Launch a Jupyter environment (
jupyter notebookorjupyter lab) inside the activated virtualenv. - Open
FedDropoutAvg_Tutorial_Using_Workflow_Interface_On_CIFAR10.ipynb. - Run the cells sequentially. The first cell installs the OpenFL plus the locally provided workflow interface requirements.
- 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.