Skip to main content

Black-box Adversarial Toolbox (BAT) - Python Library for Deep Learning Security

Project description

Black-box Adversarial Toolbox (BAT)

Build Status PyPI version License: MIT PyPI - Python Version

A Python Library for Deep Learning Security that focuses on Distributed Black-box attacks.

Installation

pip install blackbox-adversarial-toolbox

Usage (CLI)

Usage: bat [OPTIONS] COMMAND [ARGS]...

  The CLI tool for Black-box Adversarial Toolbox (BAT).

Options:
  --help  Show this message and exit.

Commands:
  api      Manage Cloud APIs
  attack   Manage Attacks
  example  Manage Examples

Useful commands:

# List supported Cloud APIs
$ bat api list

# List supported Attacks
$ bat attack list

# Test Cloud APIs
$ bat api run deepapi
$ bat api run google
$ bat api run imagga

# Run exmaples
$ bat example run simba_deepapi
$ bat example run bandits_deepapi
$ bat example run square_deepapi

Usage (Python)

import numpy as np
from PIL import Image

from bat.attacks import SimBA
from bat.apis.deepapi import DeepAPI_VGG16_Cifar10

# Load Image
x = np.asarray(Image.open("dog.jpg").convert('RGB'))
x = np.array([x])

# Initialize the Cloud API Model
DEEP_API_URL = 'http://localhost:8080'
model = DeepAPI_VGG16_Cifar10(DEEP_API_URL)

# Get Preditction
y_pred = model.predict(x)[0]

# Distributed SimBA Attack
simba = SimBA(model)
x_adv = simba.attack(x, np.argmax(y_pred), epsilon=0.05, max_it=10)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blackbox-adversarial-toolbox-0.1.2.tar.gz (783.5 kB view hashes)

Uploaded Source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page