/DBA

DBA: Distributed Backdoor Attacks against Federated Learning (ICLR 2020)

Primary LanguagePython

DBA

In this repository, code is for our ICLR 2020 paper DBA: Distributed Backdoor Attacks against Federated Learning

Installation

Install Pytorch

Usage

Prepare the dataset:

LOAN dataset:

cd ./utils
./process_loan_data.sh

Tiny-imagenet dataset:

cd ./utils
./process_tiny_data.sh

Others:

MNIST and CIFAR will be automatically download

Reproduce experiments:

  • prepare the pretrained model: Our pretrained clean models for attack can be downloaded from Google Drive. You can also train from the round 0 to obtain the pretrained clean model.

  • we can use Visdom to monitor the training progress.

python -m visdom.server -p 8098
  • run experiments for the four datasets:
python main.py --params utils/X.yaml

X = mnist_params, cifar_params,tiny_params or loan_params. Parameters can be changed in those yaml files to reproduce our experiments.

Citation

If you find our work useful in your research, please consider citing:

@inproceedings{
xie2020dba,
title={DBA: Distributed Backdoor Attacks against Federated Learning},
author={Chulin Xie and Keli Huang and Pin-Yu Chen and Bo Li},
booktitle={International Conference on Learning Representations},
year={2020},
url={https://openreview.net/forum?id=rkgyS0VFvr}
}

Acknowledgement