Presented at ICML 2023. Cite paper as:
@inproceedings{khaddaj2023rethinking,
title = {Rethinking Backdoor Attacks},
author = {Alaa Khaddaj and Guillaume Leclerc and Aleksandar Makelov and Kristian Georgiev and Hadi Salman and Andrew Ilyas and Aleksander Madry},
booktitle = {ICML},
year = {2023},
}
This repository implements the maximum-sum submatrix subroutine from our backdoor defense. To use it:
-
Clone the repo
-
Install our code dependencies
conda env create -f env.yml -y conda activate poisenv
-
Copy your datamodel matrix in the folder (or specify its path using
DM_PATH
variable inrun.sh
script). To compute the datamodel matrix, you can check the datamodel repo. -
Run the bash script
run.sh
. The resulting output to analyze will be saved in./results/scores/sample_scores.npy
file. Each index value in the array is the score of the target example returned by our algorithm. The inputs with the highest scores will be flagged as backdoored.