IBM/adversarial-robustness-toolbox

Name: adversarial-robustness-toolbox

Owner: International Business Machines

Description: This is a library dedicated to adversarial machine learning. Its purpose is to allow rapid crafting and analysis of attacks and defense methods for machine learning models. The Adversarial Robustness Toolbox provides an implementation for many state-of-the-art methods for attacking and defending classifiers. https://developer.ibm.com/code/open/projects/adversarial-robustness-toolbox/

Created: 2018-03-15 14:40:43.0

Updated: 2018-05-24 13:15:33.0

Pushed: 2018-05-10 14:37:01.0

Homepage:

Size: 2916

Language: Python

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Adversarial Robustness Toolbox (ART v0.1)

Documentation Status

This is a library dedicated to adversarial machine learning. Its purpose is to allow rapid crafting and analysis of attacks and defense methods for machine learning models. The Adversarial Robustness Toolbox provides an implementation for many state-of-the-art methods for attacking and defending classifiers.

The library is still under development. Feedback, bug reports and extension requests are highly appreciated.

Supported attack and defense methods

The Adversarial Robustness Toolbox contains implementations of the following attacks:

The following defense methods are also supported:

Setup

The Adversarial Robustness Toolbox is designed to run with Python 3 (and most likely Python 2 with small changes). You can either download the source code or clone the repository in your directory of choice:

clone https://github.com/IBM/adversarial-robustness-toolbox

To install the project dependencies, use the requirements file:

install .

The library comes with a basic set of unit tests. To check your install, you can run all the unit tests by calling in the library folder:

 run_tests.sh

The configuration file config/config.ini allows to set custom paths for data. By default, data is downloaded in the data folder as follows:

AULT]
ile=LOCAL

AL]
_path=./data
t_path=./data/mnist
r10_path=./data/cifar-10
0_path=./data/stl-10

If the datasets are not present at the indicated path, loading them will also download the data.

Running Nemesis

Some examples of how to use Nemesis when writing your own code can be found in the examples folder. See examples/README.md for more information about what each example does. To run an example, use the following command:

on3 examples/<example_name>.py

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.