Skip to main content
QUICK REVIEW

[论文解读] Foolbox: A Python toolbox to benchmark the robustness of machine learning models

Jonas Rauber, Wieland Brendel|arXiv (Cornell University)|Jul 13, 2017
Computational Physics and Python Applications被引用 143
一句话总结

Foolbox 提供大量对抗性攻击的参考实现,以及一个基准模型鲁棒性的框架,通过在多个框架和标准下找到使模型误分类所需的最小扰动来进行基准测试。

ABSTRACT

Even todays most advanced machine learning models are easily fooled by almost imperceptible perturbations of their inputs. Foolbox is a new Python package to generate such adversarial perturbations and to quantify and compare the robustness of machine learning models. It is build around the idea that the most comparable robustness measure is the minimum perturbation needed to craft an adversarial example. To this end, Foolbox provides reference implementations of most published adversarial attack methods alongside some new ones, all of which perform internal hyperparameter tuning to find the minimum adversarial perturbation. Additionally, Foolbox interfaces with most popular deep learning frameworks such as PyTorch, Keras, TensorFlow, Theano and MXNet and allows different adversarial criteria such as targeted misclassification and top-k misclassification as well as different distance measures. The code is licensed under the MIT license and is openly available at https://github.com/bethgelab/foolbox . The most up-to-date documentation can be found at http://foolbox.readthedocs.io .

研究动机与目标

  • 强调需要以最小扰动作为基准测试指标来量化 ML 模型对对抗性扰动的鲁棒性。
  • 提供一个统一的、与框架无关的接口,用于生成对抗示例并在模型之间比较鲁棒性。
  • 提供大量攻击的参考实现,并带有内部超参数调优以近似最小扰动。
  • 实现带有标准化版本控制和评判标准的基准结果报告,以确保可比性。

提出的方法

  • 为对抗性构造定义五个部分的结构:model、criterion、distance、attack、adversarial object。
  • 通过专用的模型适配器与多种 ML 框架接口(TensorFlow、PyTorch、Theano、Lasagne、Keras、MXNet)。
  • 提供 CompositeModel,通过将来自不同来源的预测与梯度结合来对非可微分模型进行攻击。
  • 实现一组对抗性准则(误分类、前-k、基于目标的准则)以及多种距离度量(L1、L2/均方、L∞、L0)。
  • 包含大量攻击,带有内部超参数调优以定位最小扰动,在需要时使用内部线搜索或参数自适应。

实验结果

研究问题

  • RQ1一个统一的 Python 工具包如何实现对抗扰动下模型鲁棒性的跨框架公平基准测试?
  • RQ2最小扰动的鲁棒性基准测试概念是什么,以及如何在不同攻击中可靠地估计?
  • RQ3能否将不同的对抗性准则和距离度量整合以全面比较鲁棒性?
  • RQ4基准结果应如何报告和版本化以确保随时间的一致性?

主要发现

  • Foolbox 提供对主流 ML 框架的接口,并以一致的 API 支持多种攻击。
  • 攻击在内部进行超参数调优以近似最小对抗扰动。
  • CompositeModel 通过将模型预测与来自另一来源的梯度结合,实现在非可微分模型上的攻击。
  • 该工具包支持多种对抗性准则和距离度量,以丰富鲁棒性评估。
  • 建议采用结构化报告和语义版本控制方案,以确保基准结果的可比性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。