foolbox
Version 3.3.4
pip install foolbox使用Python 3.8测试了Foolbox,并且更新 - 但是,它很可能还可以与3.6-3.8版一起使用。要与Pytorch,Tensorflow或Jax一起使用,需要单独安装相应的框架。这些框架不是被声明为依赖项,因为不是每个人都想使用并安装所有框架,并且因为其中一些软件包对不同的体系结构和CUDA版本具有不同的构建。除此之外,所有基本依赖项均自动安装。
您可以在下面的“兼容性”部分中看到我们目前用于测试的版本,但通常可以使用较新的版本。
import foolbox as fb
model = ...
fmodel = fb . PyTorchModel ( model , bounds = ( 0 , 1 ))
attack = fb . attacks . LinfPGD ()
epsilons = [ 0.0 , 0.001 , 0.01 , 0.03 , 0.1 , 0.3 , 0.5 , 1.0 ]
_ , advs , success = attack ( fmodel , images , labels , epsilons = epsilons )可以在示例文件夹中找到更多示例,例如完整的RESNET-18示例。
如果您使用Foolbox进行工作,请使用以下Bibtex条目在Foolbox Anitial(即,傻瓜3.0)上引用我们的Joss Paper和iCML Workshop论文:
@article {rauber2017foolboxnative,
doi = {10.21105/joss.02607},
url = {https://doi.org/10.21105/joss.02607},
年= {2020},
Publisher = {the Open Journal},
音量= {5},
数字= {53},
页= {2607},
作者= {Jonas Rauber和Roland Zimmermann和Matthias Bethge和Wieland Brendel},
title = {foolbox本机:快速对抗攻击,以基准在Pytorch,Tensorflow和Jax}中的机器学习模型的稳健性,
日记= {开源软件期刊}
}
@inproceedings {rauber2017foolbox,
title = {foolbox:python工具箱,用于基准机器学习模型的鲁棒性},
作者= {Rauber,Jonas和Brendel,Wieland和Bethge,Matthias},
BookTitle = {野生研讨会中的可靠机器学习,第34届机器学习国际会议},
年= {2017},
url = {http://arxiv.org/abs/1707.04131},
}
我们欢迎各种贡献,请查看我们的开发准则。特别是,邀请您贡献新的对抗性攻击。如果您想提供帮助,您还可以查看受到贡献所标记的问题。
如果您有疑问或需要帮助,请随时在Github上打开问题。一旦GitHub讨论公开可用,我们将切换到此。
Foolbox 3.0比Foolbox 1和2要快得多。在Performance文件夹中可以找到基本的性能比较。
我们目前使用以下版本进行测试: