Skip to content

amodas/SparseFool

Repository files navigation

SparseFool

This repository contains the official PyTorch implementation of SparseFool algorithm described in [1].

Requirements

To execute the code, please make sure that the following packages are installed:

Executing the demos

test_sparsefool.py

A simple demo that computes the sparse adversarial perturbation of a test image.

test_perceptibility.py

A simple demo that controls the perceptibility of the resulted perturbation of a test image.

Contents

sparsefool.py

This function implements the algorithm proposed in [1] using PyTorch to find sparse adversarial perturbations.

The parameters of the function are:

  • im: image (tensor).
  • net: neural network.
  • lb: the lower bounds for the adversarial image values.
  • ub: the upper bounds for the adversarial image values.
  • lambda_ : the control parameter for going further into the classification region, by default = 3.
  • max_iter: max number of iterations, by default = 50.

linear_solver.py

This function implements the algorithm proposed in [1] for solving the linearized box-constrained problem. It is used by sparsefool.py for solving the linearized problem.

deepfool.py

This function implements the algorithm proposed in [2] for computing adversarial perturbations. It is used by sparsefool.py for the linear approximation of the decision boundary.

utils.py

Includes general functions

data/

Contains some examples for the demos. The images where cropped to have square dimensions:

  • cat.jpg(source): it is used by test_sparsefool.py.
  • red_light.jpg(source): it is used by test_perceptibility.py.

Reference

[1] A. Modas, S. Moosavi-Dezfooli, P. Frossard: SparseFool: a few pixels make a big difference. In Computer Vision and Pattern Recognition (CVPR ’19), IEEE, 2019.

[2] S. Moosavi-Dezfooli, A. Fawzi, P. Frossard: DeepFool: a simple and accurate method to fool deep neural networks. In Computer Vision and Pattern Recognition (CVPR ’16), IEEE, 2016.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages