We only tested our implementation on Ubuntu 16.04 and Python 3.6.5.
Please follow website instructions to install pytorch 1.0.0 and torchvision 0.2.1 (GPU recommended).
Please install the following packages via pip
:
pip install -U tensorflow
pip install tensorboardX
pip install -U protobuf
Please download the Adult, CIFAR10, CIFAR100, Covertype, KDDCup08, Letter and MNIST dataset:
bash data.sh
Binary and multi-class classification experiments are implemented respectively in binary.py
and multi.py
. To reproduce results in our paper:
bash binary.sh f1 linear NUMBER-OF-PROCESSES
for x in f1-linear-*; do bash select.sh $x f1; done
bash binary.sh f1 mlp NUMBER-OF-PROCESSES
for x in f1-mlp-*; do bash select.sh $x f1; done
bash multi.sh f1_micro linear NUMBER-OF-PROCESSES
for x in f1_micro-linear-*; do bash select.sh $x f1; done
bash multi.sh f1_micro mlp NUMBER-OF-PROCESSES
for x in f1_micro-mlp-*; do bash select.sh $x f1; done
bash binary.sh g1 linear NUMBER-OF-PROCESSES
for x in g1-linear-*; do bash select.sh $x g1; done
bash binary.sh g1 mlp NUMBER-OF-PROCESSES
for x in g1-mlp-*; do bash select.sh $x g1; done
bash multi.sh g1_micro linear NUMBER-OF-PROCESSES
for x in g1_micro-linear-*; do bash select.sh $x g1; done
bash multi.sh g1_micro mlp NUMBER-OF-PROCESSES
for x in g1_micro-mlp-*; do bash select.sh $x g1; done