This repository contains the Official Pytorch Implementation for [ECCV'24] SkyMask: Attack-agnostic Robust Federated Learning with Fine-grained Learnable Masks.
If the project is useful to you, please give us a star. ⭐️
pip install -r requirements.txt For Fashion-MNIST and CIFAR-10 datasets, they will be download automatically during runtime.
For Human Activity Recognition (HAR) dataset, please download train.csv and test.csv from https://www.kaggle.com/datasets/meetnagadia/human-action-recognition-har-dataset, then put them into ./data/HAR/ directory.
Below are the command-line arguments supported by the script:
| Parameter | Type | Default | Description |
|---|---|---|---|
--server_pc | int | 100 | The number of data samples held by the server. |
--dataset | str | FashionMNIST | The dataset to use. Options: FashionMNIST, CIFAR-10, HAR. |
--bias | float | 0.5 | Degree of non-IID data distribution. |
--net | str | cnn | The neural network architecture. Options: cnn, resnet20, LR. |
--batch_size | int | 32 | Batch size for local training. |
--local_lr | float | 0.6 | Local learning rate for federated learning. |
--global_lr | float | 0.6 | Global learning rate for federated learning. |
--nworkers | int | 100 | Number of workers (clients) in federated learning. |
--niter | int | 2500 | Number of global iterations. |
--nbyz | int | 20 | Number of Byzantine (malicious) workers. |
--byz_type | str | no | Type of Byzantine attack. Options: no, trim_attack, krum_attack, etc. |
--aggregation | str | fedavg | Aggregation method. Options: fedavg, etc. |
--p | float | 0.1 | Bias probability of 1 in server samples. |
--local_iter | int | 5 | Number of local iterations per worker. |
--thres | float | 0.5 | Threshold for mask application. |
python main.py --aggregation skymask --net resnet20 --dataset CIFAR-10 --niter 500 --global_lr 0.5 --local_lr 0.5 --local_iter 1 --batch_size 64 --nworkers 100 --nbyz 20 --bias 0.5 --byz_type minmax_agnostic @inproceedings{yan2024skymask, title={SkyMask: Attack-agnostic robust federated learning with fine-grained learnable masks}, author={Yan, Peishen and Wang, Hao and Song, Tao and Hua, Yang and Ma, Ruhui and Hu, Ningxin and Haghighat, Mohammad Reza and Guan, Haibing}, booktitle={European Conference on Computer Vision}, pages={291--308}, year={2024}, organization={Springer} } 