Defense-GAN: Protecting Classifiers Against Adversarial Attacks Using Generative Models

Pouya Samangouei, Maya Kabkab, Rama Chellappa
5/17/2018
cs.CVcs.LGstat.ML

Official code: kabkabm/defensegan (248 stars, Apache-2.0, last commit 2019-10-24).

Abstract

In recent years, deep neural network approaches have been widely adopted for machine learning tasks, including classification. However, they were shown to be vulnerable to adversarial perturbations: carefully crafted small perturbations can cause misclassification of legitimate images. We propose Defense-GAN, a new framework leveraging the expressive capability of generative models to defend deep neural networks against such attacks. Defense-GAN is trained to model the distribution of unperturbed images. At inference time, it finds a close output to a given image which does not contain the adversarial changes. This output is then fed to the classifier. Our proposed method can be used with any classification model and does not modify the classifier structure or training procedure. It can also be used as a defense against any attack as it does not assume knowledge of the process for generating the adversarial examples. We empirically show that Defense-GAN is consistently effective against different attack methods and improves on existing defense strategies. Our code has been made publicly available at https://github.com/kabkabm/defensegan

View on arXivView PDF

Code Implementations(1)

kabkabm/defenseganOfficial100%
Apache-2.0

Defense-GAN: Protecting Classifiers Against Adversarial Attacks Using Generative Models (published in ICLR2018)

24863PythonApr 27, 20187 years agoApache-2.0
adversarial-attacksadversarial-examplesdeep-learninggenerative-adversarial-networkiclr2018

Similar Papers

Cite this paper

@article{samangouei2018defensegan,
  title  = {Defense-GAN: Protecting Classifiers Against Adversarial Attacks Using Generative Models},
  author = {Pouya Samangouei and Maya Kabkab and Rama Chellappa},
  year   = {2018},
  eprint = {1805.06605},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1805.06605}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1805.06605.svg)](https://codeofpaper.com/paper/1805.06605)

Discussion