foolbox:一款神奇的Python工具箱

原文:foolbox
作者:Jonas Rauber && Wieland Brendel
翻译:Vincent

Foolbox简介

Foolbox是一个Python工具箱,它可以创建一些对抗样本从而来迷惑神经网络。 它需要Python,NumPy和SciPy。

安装

pip install foolbox

我们测试的时候使用的是Python 2.7、3.5和3.6版本。当然Python其它版本也可以工作。但是我们建议使用Python 3版本!

文档

可在readthedocs上获取文档:http://foolbox.readthedocs.io/

样例

import foolbox
import keras
from keras.applications.resnet50 import ResNet50, preprocess_input

# instantiate model
keras.backend.set_learning_phase(0)
kmodel = ResNet50(weights='imagenet')
fmodel = foolbox.models.KerasModel(kmodel, bounds=(0, 255),preprocess_fn=preprocess_input)

# get source image and label
image, label = foolbox.utils.imagenet_example()

# apply attack on source image
attack  = foolbox.attacks.FGSM(fmodel)
adversarial = attack(image, label)

其它一系列深度学习的接口也是可以用的,例如TensorFlow,PyTorch,Theano,Lasagne和MXNet等。

model = foolbox.models.TensorFlowModel(images, logits, bounds=(0, 255))
model = foolbox.models.PyTorchModel(torchmodel, bounds=(0, 255), num_classes=1000)
# etc.

不同的对抗标准,例如Top-k,特定的Target Class或Original Class、Target Class的目标概率值可以传递给attack,例如:

criterion = foolbox.criteria.TargetClass(22)
attack    = foolbox.attacks.FGSM(fmodel, criterion)
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值