0
点赞
收藏
分享

微信扫一扫

繁凡的对抗攻击论文精读(三)ICLR2019 利用先验知识进行高效黑盒对抗攻击的 bandits 算法(MIT)

凉夜lrs 2022-04-21 阅读 74

繁凡的对抗攻击论文精读(三)ICLR2019 利用先验知识进行高效黑盒对抗攻击的 bandits 算法

Prior Convictions: Black-Box Adversarial Attacks with Bandits and Priors
先验知识:老虎机和先验者的黑盒对抗性攻击

3043331995@qq.com

https://fanfansann.blog.csdn.net/

声明:

1)本文《繁凡的对抗攻击论文精读》是 《繁凡的论文精读》 系列对抗攻击领域的论文精读笔记。 《繁凡的论文精读》 项目 暂时包含三大板块,即:《繁凡的NLP论文精读》《繁凡的CV论文精读》 以及 《繁凡的对抗攻击论文精读》,项目地址:https://github.com/fanfansann/DL-papers-intensive-reading-notes-NLP-and-CV

该项目内包含精读论文的原文、精读笔记PDF、模型复现代码等论文相关资源,欢迎     Starred ⭐ \,\,\,\text{Starred}⭐ Starred o(〃^▽^〃)o

2)本人才疏学浅,整理总结的时候难免出错,还望各位前辈不吝指正,谢谢。

3)本文由我个人( CSDN 博主 「繁凡さん」(博客) , 知乎答主 「繁凡」(专栏), Github 「fanfansann」(全部源码) , 微信公众号 「繁凡的小岛来信」(文章 P D F 下载))整理创作而成,且仅发布于这四个平台,仅做交流学习使用,无任何商业用途。

4)《繁凡的论文精读》全汇总链接:《繁凡的论文精读》目录大纲 https://fanfansann.blog.csdn.net(待更)

文章目录

ICLR2019 Prior Convictions: Black-Box Adversarial Attacks with Bandits and Priors [1]

先验知识:老虎机和先验者的黑盒对抗性攻击

Abstract

We introduce a framework that unifies the existing work on black-box adversarial example generation We demonstrate that the current state of the art in the field is optimal in a certain natural sense. Despite this optimality, we show how to improve black-box attacks by bringing a new element into the problem: ambient priors for the gradient. We identify two such priors, and give an algorithm based on bandit optimization that allows for seamless integration of these and other priors. Our framework leads to methods that are two to three times more query-efficient and two to three times smaller failure rate than the state-of-the-art approaches.

Translation

我们引入了一个框架,该框架统一了黑盒对抗性示例生成的现有工作。我们证明了该领域的当前技术状态在某种自然意义上是最佳的。 尽管有这种最优性,我们展示了如何通过在问题中引入一个新元素来改进黑盒攻击:梯度的环境先验。 我们确定了两个这样的先验,并给出了一种基于老虎机优化的算法,该算法允许无缝集成这些先验和其他先验。 我们的框架引导的方法比最先进的方法查询效率高 2 到 3 倍,失败率低 2 到 3 倍。

Summarize

0x10 论文总结

1 Introduction

  最近的研究表明,神经网络对对抗性示例或受到轻微干扰以欺骗网络预测的输入表现出明显的脆弱性。此漏洞存在于广泛的环境中,从将输入直接馈送到分类器的情况[SZS+13、CMV+16] 到高度可变的现实世界环境 [KGB16、AEIK17]。研究人员开发了许多方法来构建此类攻击 [GSS14、MFF15、CW17、MMS+ 17]。这些攻击中的大多数对应于 first order(即基于梯度)方法。这种攻击被证明是非常有效的:在许多情况下,只需几个梯度步骤就足以构建一个成功的对抗性扰动。

  然而,其中许多攻击的一个显着缺点是它们基本上是白盒攻击。也就是说,它们关键依赖于直接访问被攻击网络的分类损失梯度。在许多现实世界的情况下,期望这种完全访问是不现实的。在如此设置中,攻击者只能向目标网络发出分类查询,这对应于更具限制性的黑盒威胁模型。

  最近的工作 [CZS+17、BHLS17、IEAL17] 为此类模型提供了许多攻击。 [CZS+ 17] 展示了如何使用零阶优化的基本原语,即有限差分法,从分类查询中估计梯度,然后使用它来发起基于梯度的攻击(除了策略之上的一些优化)。这种方法确实成功地构建了对抗扰动。然而,它的代价是在所需查询的数量方面引入了显着的开销。例如,攻击 ImageNet [RDS+ 15] 分类器需要数十万次查询。随后的工作 [IEAL17] 显着改善了这种依赖性,但仍然没有完全缓解这个问题。 (我们在评估部分提供了比较 - 参见第 4.2 节)。

1.1 Our contributions

  我们首先从经验和理论的角度重新审视对抗性示例生成背景下的零阶优化。基于这项检查,我们提出了一种基于 Bandits 老虎机优化生成黑盒对抗样本的新方法。 然后,我们展示了我们的框架如何利用上述的每个观察结果,并最终在生成黑盒对抗样本的任务上对其进行评估。所获得的方法明显优于最先进的方法。

  具体来说,我们的贡献如下:


表 1:在使用 NES 的 Inception v3 对 ℓ 2 \ell_{2} 2 ℓ ∞ \ell_{\infin} 范数下的图像网络攻击的效果总结,具有时间先验的 bandits ( Bandits T \text{Bandits}_T BanditsT) 和具有时间和数据相关先验的 bandits ( Bandits T D \text{Bandits}_{TD} BanditsTD) 对 Inception v3 攻击的有效性总结。 请注意,平均查询数仅针对成功的攻击计算,我们强制执行 10 , 000 10,000 10,000​ 个查询的查询限制。我们最强的攻击失败率降低了 2-3 倍,查询效率比之前的最新技术 NES 高 2-3 倍。

  1. 我们将梯度估计问题形式化为高效查询黑盒攻击中的中心问题。然后我们展示了生成的框架如何统一以前的攻击方法。特别是我们证明了信号处理中的经典原语最小二乘法不仅是一般梯度估计问题的最优解,而且在本质上等同于当前最佳的黑盒攻击方法。
  2. 我们证明了尽管这些方法看似最优,但我们仍然可以通过利用以前没有考虑过的问题的一个方面来改进它们:我们拥有的先验或梯度的分布。我们确定了此类先验的两个示例类别,并表明它们确实可以更好地预测梯度。
  3. 最后,我们开发了一个用于生成黑盒对抗样本的老虎机优化框架,该框架允许先验的无缝集成。为了证明其有效性,我们展示了利用上述两个先验产生的黑盒攻击比现有技术的查询效率高 2 到 3 倍,失败率低 2 到 3 倍。

2 Black-box attacks and the gradient estimation problem

对抗样本是经过仔细扰动的自然输入,以诱导分类为原始类别以外的特定类别(目标攻击)或错误分类(非目标攻击)。 为简单起见并使总体框架的介绍更加集中,在本文中,我们将注意力限制在非目标攻击的案例上。 然而我们的算法和整个框架都可以很容易地适应目标攻击的设置。 此外,我们考虑最标准的威胁模型,其中对抗性扰动必须具有 ℓ p − \ell_p- p​​​​norm,对于某些固定的 p p p​​​​​​,小于某些 ϵ p \epsilon_p ϵp​​​​​。

2.1 First-order adversarial attacks

假设我们有一些分类器 C ( x ) C(x) C(x)​​​​​​​​​​ 和相应的分类损失函数 L ( x , y ) L(x, y) L(x,y)​​​​​​​​​​,其中: x x x​​​​​​​​​​ 是某个输入, y y y​​​​​​​​​ 是其对应的标签。 为了从某个输入-标签对 ( x , y ) (x, y) (x,y)​​​​​​​​ 中生成错误分类的输入,我们希望找到一个对抗性示例 x ′ x' x​​​,它使 L ( x ′ , y ) L(x', y) L(x,y)​​ 最大化但仍保持 ϵ p − \epsilon_p- ϵp​​接近原始输入。 因此,我们可以将我们的对抗性攻击问题表述为以下约束优化任务:
x ′ = arg ⁡ max ⁡ x ′ : ∥ x ′ − x ∥ p ≤ ϵ p L ( x ′ , y ) (-) x^{\prime}=\underset{x^{\prime}:\left\|x^{\prime}-x\right\|_{p} \leq \epsilon_{p}}{\arg \max } L\left(x^{\prime}, y\right)\tag{-} x=x:xxpϵpargmaxL(x,y)(-)
尽管问题是非凸的,但一阶方法在解决它的方面往往非常成功 [GSS14(FGSM), CW17, MMS+17]。用于 ℓ p \ell_p p​ 有界对抗攻击的一些最强大的白盒对抗性攻击的主干的一阶方法是投影梯度下降 (PGD)。 这种迭代方法。 给定一些输入 x x x​​​​​ 及其正确的标签 y y y​​​​​,通过应用以下 k k k​​​​​ 步的更新( x 0 = x x_0=x x0=x​​​​​​ )计算扰动输入:
x l = Π B p ( x , ϵ ) ( x l − 1 + η s l ) (1) x_{l}=\Pi_{B_{p}(x, \epsilon)}\left(x_{l-1}+\eta s_{l}\right)\tag{1} xl=ΠBp(x,ϵ)(xl1+ηsl)(1)
以及
s l = Π ∂ B p ( 0 , 1 ) ∇ x L ( x l − 1 , y ) (2) s_{l}=\Pi_{\partial B_{p}(0,1)} \nabla_{x} L\left(x_{l-1}, y\right)\tag{2} sl=ΠBp(0,1)xL(xl1,y)(2)
这里, Π S \Pi_S ΠS​​​ 是在集合 S S S​​​ 上的投影, B p ( x ′ , ϵ ′ ) B_p(x', \epsilon') Bp(x,ϵ)​​​ 是围绕 x ′ x' x​​​ 的半径为 ϵ ′ \epsilon' ϵ​​​ 的 ℓ p \ell_p p​​​ 球, η \eta η​​​ 是步长, ∂ U \partial U U​​​ 是集合 U U U​​​ 的边界。另外,作为连续优化的标准,我们将 s l s_l sl​​​ 设为 x l − 1 x_{l-1} xl1​​​ 处的梯度 ∇ x L ( x l − 1 , y ) \nabla_x L(x_{l-1},y) xL(xl1,y)​​​ 到单位 ℓ p \ell_p p​​​ 球上的投影。 这样,我们确保 s l s_l sl​​​ 对应于与 ∇ x L ( x l − 1 , y ) \nabla_x L(x_{l-1},y) xL(xl1,y)​​​ 具有最大内积的单位 ℓ p − \ell_p- p​​​norm 向量。 (注意,在 ℓ 2 \ell_2 2​​​ 范数的情况下, s l s_l sl​​​ 只是归一化梯度,但在例如 ℓ ∞ \ell_{\infin} 范数的情况下, s l s_l sl 对应于符号向量 sgn ( ∇ x L ( x l − 1 , y ) 的坡度 ) \text{sgn} (\nabla_x L(x_{l-1},y) \text{的坡度}) sgn(xL(xl1,y)的坡度)​ 。​​​

因此,直观地说,PGD 更新在(局部)增加损失最多的方向上扰乱了输入。请注意,由于使用了 E q . ( 2 ) Eq.(2) Eq.(2)​​ 中的投影, x k x_k xk​​​​​​ 始终是原始输入 x x x​​​​​​​​​ 的有效扰动。

2.2 Black-box adversarial attacks

上面描述的投影梯度下降 (PGD) 方法旨在用于所谓上下文中的白盒攻击。也就是说,在对手可以完全访问被攻击模型的损失函数的梯度 ∇ x L ( x , y ) \nabla_xL(x,y) xL(x,y)​​​​​​​​​ 的情况下。 然而,在许多实际场景中,这种访问方式并不真正可用。 也就是说,在相应的、更现实的黑盒攻击设置中,对手只能访问一个预测模型,该预测模型对于给定的输入 ( x , y ) (x, y) (x,y)​​​​​​​​,只返回该输入的损失 L ( x , y ) L(x, y) L(x,y)​​​​​​​ 的值。

人们可能会认为 PGD 在这种黑盒设置中没有用处。 然而事实证明,这种直觉是不正确的。 具体来说,仍然可以仅使用此类值查询来估计梯度。(事实上,这种估计器是所谓的零阶优化框架 [Spa05] 的支柱。)在这种情况下,最典型的原语是有限差分法【详见0x21 有限差分法】。 该方法估计某个函数 f f f 在向量 v v v 方向上的点 x x x 处的方向导数 D v f ( x ) = ⟨ ∇ x f ( x ) , v ⟩ D_{v} f(x)=\left\langle\nabla_{x} f(x), v\right\rangle Dvf(x)=xf(x),v 为:
D v f ( x ) = ⟨ ∇ x f ( x ) , v ⟩ ≈ ( f ( x + δ v ) − f ( x ) ) δ (3) D_{v} f(x)=\left\langle\nabla_{x} f(x), v\right\rangle \approx \dfrac {(f(x+\delta v)-f(x))}{\delta}\tag{3} Dvf(x)=xf(x),vδ(f(x+δv)f(x))(3)
这里,步长 δ > 0 \delta > 0 δ>0​​​ 控制梯度估计的质量。由于精度和噪声问题,更小的步长可以得到更准确的估计,但也会降低可靠性。 因此,在实践中, δ \delta δ​ 是一个可调参数。 现在,我们可以只使用有限差分来构建梯度的估计。 为此。 可以通过使用所有标准基向量 e 1 , . . . , e d e_1,... , e_d e1,...,ed​ 估计梯度的内积来找到梯度的 d d d​ 个分量:
∇ ^ x L ( x , y ) = ∑ k = 1 d e k ( L ( x + δ e k , y ) − L ( x , y ) ) δ ≈ ∑ k = 1 d e k ⟨ ∇ x L ( x , y ) , e k ⟩ (4) \widehat{\nabla}_{x} L(x, y)=\sum_{k=1}^{d} e_{k}\dfrac {\left(L\left(x+\delta e_{k}, y\right)-L(x, y)\right)}{\delta} \approx \sum_{k=1}^{d} e_{k}\left\langle\nabla_{x} L(x, y), e_{k}\right\rangle\tag{4} xL(x,y)=k=1dekδ(L(x+δek,y)L(x,y))k=1dekxL(x,y),ek(4)
然后,我们可以使用这个估计器轻松实现 PGD 攻击( E q . ( 2 ) Eq.(2) Eq.(2)):
x l = Π B p ( x , ϵ ) ( x l − 1 + η s ^ l ) (5) x_{l}=\Pi_{B_{p}(x, \epsilon)}\left(x_{l-1}+\eta \widehat{s}_{l}\right)\tag{5} xl=ΠBp(x,ϵ)(xl1+ηs l)(5)
以及
s ^ l = Π ∂ B p ( 0 , 1 ) ∇ ^ x L ( x l − 1 , y ) (5) \widehat{s}_{l}=\Pi_{\partial B_{p}(0,1)} \widehat{\nabla}_{x} L\left(x_{l-1}, y\right)\tag{5} s l=ΠBp(0,1) xL(xl1,y)(5)
事实上,[CZS+ 17] 是第一个使用这种基本形式的有限差分方法来支持黑盒设置中基于 PGD 的对抗性攻击。 这种基本攻击被证明是成功的,但由于其查询复杂度与维度成正比,因此其产生的查询复杂度非常大。 例如,ImageNet 数据集上的 Inception v 3 v3 v3​​ [SVI+15] 分类器的维度为 d = 268 , 203 d=268,203 d=268,203​​,因此该方法需要 268 , 204 268,204 268,204​​​ 个查询。 (但值得注意的是,[CZS+ 17] 开发了额外的方法,至少部分降低了这种查询的复杂性)。

2.3 Black-box attacks with imperfect gradient estimators

根据上述讨论,人们可能想知道 E q . ( 6 ) Eq.(6) Eq.(6) 是否可以提高查询效率。这里一个自然的想法是避免完全估计梯度,而只依赖于不完美的估计器。 这引发了以下问题:执行成功的 PGD 攻击需要多精确的梯度估计?

我们首先在最简单的情况下检查这个问题:我们只采取一个 PGD 步骤(即 k = 1 k=1 k=1​​​​​ 的情况)。 以前的工作 [GSS14] 表明这种攻击已经非常强大。因此,我们研究了这种攻击的有效性如何随着梯度估计器的准确性而变化。 我们的实验如图 [1] 所示,表明即使大多数梯度坐标也没有正确估计,生成对抗样本是可行的。 例如,在 ℓ ∞ \ell_{\infin} ​​​​​ 攻击的情况下,在梯度中随机选取 20 % 20\% 20%​​​​ 的坐标来匹配真正的梯度(并使其余的坐标具有随机符号),就足以在 60 % 60\% 60% 以上的图像上单步欺骗分类器 PGD 。因此,我们的实验表明,即使在很大程度上不完美的梯度估计驱动下,对手也可能通过执行迭代 PGD 攻击来导致错误分类。

在这里插入图片描述

图 1:成功执行单步 PGDI(也称为 FGSM)攻击所需的 sgn ( ∇ x L ( x , y ) ) \text{sgn}(\nabla_xL(x,y)) sgn(xL(x,y))​​​ 正确估计坐标的分数, ϵ = 0.05 \epsilon = 0.05 ϵ=0.05​。 在实验中,对于每个 k k k​,坐标符号的前 k k k 个百分比 - 通过幅度 (top-k) 或随机 (random-k) 选择 - 设置正确,其余设置为 + 1 +1 +1 − 1 - 1 1 随机。 对抗率是 1 , 000 1,000 1,000 个随机 ImageNet 图像在一个 FGSM 步骤后被错误分类的部分。 观察到,例如,在超过 60 % 60\% 60% 的图像的情况下,仅正确估计 20 % 20\% 20%​ 的坐标会导致错误分类。

2.4 The gradient estimation problem

上面的讨论清楚地表明,成功的攻击不需要完美的梯度估计,只要这个估计是适当构造的。 然而,目前还不清楚如何有效地找到这种不完美但有用的估计器。 持续优化方法表明,所需的关键特征是让我们的估计器与实际梯度有足够大的内积。因此,我们将这一挑战视为以下梯度估计问题:

Definition 1(梯度估计问题)。 对于输入标签对 ( x , y ) (x, y) (x,y)​​​​​​​ 和损失函数 L L L​​​​​,令 g ∗ = ∇ x L ( x , y ) g* =\nabla_xL(x, y) g=xL(x,y)​​​​ 为 L L L​ 在 ( x , y ) (x,y) (x,y)​ 处的梯度。 那么梯度估计问题的目标就是找到一个最大化内积的单位向量 g ^ \hat g g^
E [ g ^ T g ∗ ] , (6) \mathbb E [\hat g^{T}g^*],\tag{6} E[g^Tg],(6)
来自有限数量的(可能是自适应的)函数值查询 L ( x ′ , y ′ ) L(x', y') L(x,y)​​ 。 (这里的期望取代了估计算法的随机性。)

关于上述梯度估计问题的一个有用观点源于将 E q . ( 6 ) Eq.(6) Eq.(6) 中的 g ∗ g^* g​​​ 恢复为欠定向量估计任务。 也就是说,可以将有限差分法(参见(3))的每次执行视为计算内积查询,在该查询中我们获得 g ∗ g^* g​​​ 和某个选定方向向量 A i A_i Ai​​​ 的内积值。 现在,如果我们执行 k k k​​​ 个这样的查询,并且 k < d k < d k<d​​​(这是我们感兴趣的机制),则在此过程中获取的信息可以表示为以下(underdetermined 欠定的,证据不足地说明)线性回归问题 A g ∗ = y Ag^* =y Ag=y​​​,其中行 矩阵 A A A​​​ 对应于查询 A 1 . . . A k A_1...A_k A1...Ak​​​ 和向量 y y y​​​ 的条目给我们相应的内积值。

与压缩感知的关系(Relation to compressive sensing) 我们开发的梯度估计问题的观点与压缩感知设置 [FR13] 有着惊人的相似之处。 因此,人们可能想知道该领域的工具包是否可以在这里应用。 然而,压缩感知关键需要估计信号中的某些稀疏结构(这里,在梯度 g ∗ g^* g​ 中),据我们所知,损失梯度似乎没有表现出这种结构。 (我们将在附录 B 部分进一步讨论。)

最小二乘法(The least squares method) 鉴于此,我们将注意力转向另一种经典的信号处理方法:范数最小化 ℓ 2 \ell_2 2 最小二乘估计。该方法通过将 (6) 中提出的估计问题转换为未定线性回归问题:其中矩阵 A A A​​ 是随机高斯矩阵(即每个内积查询对应于随机高斯向量)的 A g ∗ = b A{g^*}=b Ag=b​​​。 然后,通过求解得到回归问题的解 g ^ \hat g g^​​:
min ⁡ g ^ ∥ g ^ ∥ 2  s.t.  A g ^ = y .  \min _{\widehat{g}}\|\widehat{g}\|_{2} \quad \text { s.t. } A \widehat{g}=y \text {. } g ming 2 s.t. Ag =y
结果算法结果正是 [IEAL171] 之前应用于黑盒攻击的自然进化策略 (NES) 算法。 特别是,在附录 A 中,我们证明了以下定理。

定理 1(NES 和最小二乘等价) x ^ N E S \hat x_{NES} x^NES​​​ 为 d d d​​​ 维梯度 g \boldsymbol g g​​​ 的高斯 k k k​​​ 查询 NES 估计量,令 x ^ L S Q \hat x_{LSQ} x^LSQ​​​ 为 g \boldsymbol g g​​​ 的最小范数 k k k​​​ 查询最小二乘估计量。 对于任意 p > 0 p> 0 p>0​,我们有至少 1 − p 1-p 1p 的概率:
⟨ x ^ L S Q , g ⟩ − ⟨ x ^ N E S , g ⟩ ≤ O ( k d ⋅ log ⁡ 3 ( k p ) ) ∥ g ∥ 2 \left\langle\hat{x}_{L S Q}, \boldsymbol{g}\right\rangle-\left\langle\hat{x}_{N E S}, \boldsymbol{g}\right\rangle \leq O\left(\sqrt{\frac{k}{d} \cdot \log ^{3}\left(\frac{k}{p}\right)}\right)\|g\|^{2} x^LSQ,gx^NES,gO(dklog3(pk) )g2
请注意,当我们在欠定设置中工作时,即当 k ≪ d k \ll d kd(这是我们感兴趣的设置)时,右侧边界变得非常小。 因此,等价性确实成立。 事实上,使用精确的陈述(在附录 A 中给出并证明),我们可以证明定理 1 为我们提供了一个非空等价界:

权利要求 1(Claim 1). 在 ImageNet 大小的数据集 ( d = 300000 d = 300000 d=300000) 上应用附录 A 中证明的精确界限并使用 k = 100 k=100 k=100​ 个查询,
⟨ x ^ L S Q , g ⟩ − ⟨ x ^ N E S , g ⟩ ≤ 5 4 ∥ g ∥ 2 . \left\langle\hat{x}_{L S Q}, \boldsymbol{g}\right\rangle-\left\langle\hat{x}_{N E S}, \boldsymbol{g}\right\rangle \leq \frac{5}{4}\|g\|^{2} . x^LSQ,gx^NES,g45g2.
此外,事实证明,可以利用这种等价性来证明 [IEAL171] 中提出的算法不仅是自然的,而且是最优的。 这是因为最小二乘估计器提供了一个几乎信息论上最优的梯度估计。

定理 2(最小二乘最优性 [BBEKY13]). 对于具有已知高斯误差和固定数量的预测变量 p p p 的线性回归问题,最小二乘估计量是潜在的最优 M M M 估计量向量。

3 Black-box adversarial attacks with priors

最小二乘的最优性强烈表明我们已经达到了黑盒对抗攻击效率的极限。但真的是这样吗? 令人惊讶的是,我们表明效率的提高仍然是可能的。 关键的观察是我们建立的最小二乘法的最优性(根据定理 1 只适用于梯度估计问题的最基本设置,我们假设目标梯度是一个真正任意且完全未知的向量。

然而,在我们关心的上下文中,这个假设并不成立——实际上有很多关于可用梯度的先验知识。 首先,我们计算梯度的输入不是任意的,并且表现出局部可预测的结构,因此反映在梯度中。 其次,在执行迭代梯度攻击(例如 PGD)时,连续迭代中使用的梯度可能高度相关。

上述观察促使我们将先验信息作为梯度估计问题的一个组成部分。 具体来说,我们通过将定义 1 设定为目标来增强定义 1
E [ g ^ T g ∗ ∣ I ] \mathbb{E}\left[\widehat{g}^{T} g^{*} \mid I\right] E[g TgI]
这里明确指出了我们可用的先验信息。

这种观点的改变引发了两个重要的问题:是否存在对我们有用的先验信息? 是否存在利用这些信息的算法方法? 我们证明这两个问题的答案都是肯定的。

3.1 Gradient priors

考虑对应于某个输入 ( x , y ) (x, y) (x,y)​​​​​​​ 的损失函数的梯度 ∇ x L ( x , y ) \nabla_x L(x, y) xL(x,y)​​​​​​​。 是否存在可以从数据集 x i {x_i} xi​​​​ 中提取的某种先验,特别是输入 ( x , y ) (x,y) (x,y),可以用作梯度的预测器? 我们证明确实如此,并给出了两个此类先验的示例。

时间相关的先验(Time-dependent priors) 我们考虑的第一类先验是与时间相关的先验,其中一个标准示例就是我们所说的“多步先验”。 我们发现,沿着估计梯度所采用的轨迹,连续梯度实际上是高度相关的。 我们通过在每个点上运行 NES 估计器生成的优化路径采取步骤,并绘制连续梯度之间的归一化内积(余弦相似度),以经验方式证明这一点,由下式给出:
⟨ ∇ x L ( x t , y ) , ∇ x L ( x t + 1 , y ) ⟩ ∥ ∇ x L ( x t , y ) ∥ 2 ∥ ∇ x L ( x t + 1 , y ) ∥ 2 t ∈ { 1 … T − 1 } \frac{\left\langle\nabla_{x} L\left(x_{t}, y\right), \nabla_{x} L\left(x_{t+1}, y\right)\right\rangle}{\left\|\nabla_{x} L\left(x_{t}, y\right)\right\|_{2}\left\|\nabla_{x} L\left(x_{t+1}, y\right)\right\|_{2}} \quad t \in\{1 \ldots T-1\} xL(xt,y)2xL(xt+1,y)2xL(xt,y),xL(xt+1,y)t{1T1}
在这里插入图片描述

图 2:NES PGD 攻击的优化轨迹上当前步骤和先前步骤的梯度之间的余弦相似度,平均超过 1000 1000 1000​ 个随机 ImageNet 图像。

在这里插入图片描述

图 3:“平铺”图像梯度与原始图像梯度与方形图块长度的余弦相似度,平均超过 5,000 个随机选择的 ImageNet 图像。

图 2 表明,连续梯度之间确实存在非平凡的相关性——通常,连续步骤的梯度具有大约 0.9 0.9 0.9 的余弦相似度。 这表明将这种相关性纳入我们的迭代优化确实有潜在的好处。 为了利用这个增益,我们打算使用时间 t − 1 t-1 t1 的梯度作为时间 t t t 的梯度的先验,其中先验和梯度估计本身都在迭代中演变。

数据相关的先验(Data-dependent priors) 我们发现上面讨论的时间相关的先验并不是唯一可以在这里利用的先验类型。 也就是说,我们也可以使用输入本身的结构来降低查询复杂度。 (请注意,这种依赖于数据的先验的存在是机器学习首先取得成功的原因。)

在图像分类的情况下,这种先验的一个简单且被大量利用的示例源于图像倾向于表现出空间局部相似性(即靠近在一起的像素倾向于相似)这一事实。 事实证明,这种相似性也延伸到梯度。 具体来说,每当 ∇ x L ( x , y ) \nabla_xL(x,y) xL(x,y)​​ 的两个坐标 ( i , j ) (i,j) (i,j)​​ 和 ( k , l ) (k, l) (k,l)​​ 彼此接近时,我们期望 ∇ x L ( x , y ) i j ≈ ∇ x L ( x , y ) k l \nabla_{x} L(x, y)_{i j} \approx \nabla_{x} L(x, y)_{k l} xL(x,y)ijxL(x,y)kl​​ 也是。 为了证实和量化这种现象,我们将 ∇ x L ( x , y ) \nabla_xL(x,y) xL(x,y)​​ 与相同信号的平均模糊或“平铺”版本(“平铺长度” k k k​​)进行比较。 这种平均模糊梯度的一个例子可以在附录 B 中看到,更具体地说,我们将内核大小 ( k , k , 1 ) (k, k, 1) (k,k,1)​​ 和步幅 ( k , k , 1 ) (k, k, 1) (k,k,1)​​ 的平均池化操作应用于梯度,然后进行升级 k k k​​ 的空间维度。 然后我们测量余弦相似度在平均模糊梯度和梯度本身之间。 我们的结果(如图 3 所示)表明,图像的梯度在局部足够相似,以允许平均模糊梯度与实际梯度保持相对较高的余弦相似度,即使 tile \text{tile} tile 很大。 我们的结果表明,我们可以将问题的维度减少 k 2 k^2 k2​​ 倍(对于相当大的 k k k​),并且仍然估计指向与原始梯度接近相同方向的向量。 这个因素,我们稍后会展示。 导致黑盒对抗性攻击性能显着提高。

3.2 A framework for gradient estimation with priors

鉴于这种信息梯度先验的可用性,我们现在需要一个框架,使我们能够轻松地将这些先验纳入我们构建的黑盒对抗攻击。我们提出的方法建立在老虎机优化的框架上,这是在线凸优化 [Haz16] 的基本工具。在老虎机优化框架中,一个代理玩一个由一系列回合组成的游戏。在第 t t t​​​​​ 轮中,代理必须选择一个有效的动作,然后通过执行该动作会产生一个损失,该损失由代理做出选择时未知的损失函数 ℓ t \ell_t t​​​​​ 给出。执行完动作后,他/她只知道所选动作的损失。 (请注意,损失函数特定于第 t t t​​​​​ 轮,并且可能在轮次之间任意变化。)代理的目标是最小化所有轮次中发生的平均损失。并且代理的成功通常通过将产生的总损失与(最佳单动作策略)的损失进行比较来量化。选择这样的性能度量需要不把轮次视为独立的 —— 为了表现良好,代理需要跟踪一些潜在的记录,这些记录汇总了在一系列轮次中学到的信息。该潜在记录通常采用一种潜在向量 v t v_t vt​​​ 的形式,该向量 v t v_t vt​​​​​ 被约束到指定的有界的凸集合 K \mathcal K K​​​​​。(正如我们将看到的,老虎机优化框架的这一方面将为我们提供一种方便的方法来合并先验信息进入我们的梯度预测。

使用 bandits 进行梯度估计的概述(An overview of gradient estimation with bandits. ) 我们可以以相当直接的方式将梯度估计问题转换为 bandits 优化问题。具体来说,我们只是让每一轮 t t t​​​​​ 的动作对应于输出我们当前的梯度估计 g t g_t gt​​​​​(基于我们的潜在向量 v t v_t vt​​​​​),而损失 ℓ t \ell_t t​​​​ 对应于这个预测和实际梯度之间的(负)内积。请注意,我们无法直接访问此损失函数 ℓ t \ell_t t​​​​,但我们能够通过有限差分法 E q . ( 3 ) Eq.(3) Eq.(3) 评估其在特定预测向量 g t g_t gt​​​​​ 上的值(这就是老虎机优化框架要求我们能够去做)

就像损失函数的这种选择允许我们在老虎机优化框架中表达梯度估计问题一样,潜在向量 v t v_t vt 将允许我们在算法上将先验信息纳入我们的预测中。更准确地说,时间相关的先验将通过在不同点的梯度估计之间传递潜在向量来反映。 (事实上,事实证明,将辐射估计查询和我们正在创建的对抗性扰动的更新完全交错会导致更好的性能。)数据相关的先验将通过强制我们的潜在向量具有特定的结构来捕获。在图像的情况下,我们将通过简单的“平铺组件分组”简单地降低该向量的维数,从而无需额外的查询来识别空间上接近的梯度组件。

3.3 Implementing gradient estimation in the bandit framework

我们现在更详细地描述用于对抗性示例生成的老虎机框架。 请注意,该算法是通用的,可用于构建黑盒对抗样本,其中扰动被约束到任何凸集(因此 ℓ p − \ell_p- p​​​​​​​​​​​​norm 约束只是一种特殊情况)。我们以一般形式讨论该算法,然后提供针对 ℓ 2 \ell_2 2​​​​​​​​​​​​ 和 ℓ ∞ \ell_{\infin} ​​​​​​​​​​​ 有界情况显式调整的版本。

正如前面所说的那样,潜在向量 v t ∈ K v_t \in \mathcal K vtK​​​​​​​​​​​ 作为相应轮次 t t t​​​​​​​​ 的梯度的先验——事实上, 我们使我们的预测 g t g_t gt​​​​​​​ 正好是 v t v_t vt​​​​​​​,因此我们将 K \mathcal K K​​​​​​ 设置为有效对抗性扰动的空间(例如 ℓ 2 \ell_2 2​​​​​ 球, ℓ ∞ \ell_{\infin} ​​​​ 球)。 我们的损失函数 t t t​​​ 定义为:
ℓ t ( g ) = − ⟨ ∇ L ( x , y ) , g ⟩ \ell_{t}(g)=-\langle\nabla L(x, y), g\rangle t(g)=L(x,y),g
对于给定的梯度估计 g g g​​。 这里, L    x , y L\,\,x, y Lx,y​​ 是具有真实类别 y y y​​ 的图像 x x x​​ 上的分类损失,损失函数为 负 [梯度估计值 g g g​​ 与损失函数 L L L​​ 在 ( x , y ) (x,y) (x,y)​​​ 处的梯度的内积],这样才能使用有限差分法求得损失函数在 g g g 方向上的方向导数。

因此,我们算法的关键元素将是更新潜在向量 t t t​​​ 的方法。 我们将在这里采用规范的“从老虎机信息中减少”方法 [Haz16]。具体来说,我们的更新过程将由某个点 v v v​​ 的损失 Δ t \Delta_t Δt​​ 的梯度 ∇ v ℓ t ( v ) \nabla_{v}\ell_t(v) vt(v)​​ 的某个估计器 ℓ t \ell_t t​​​​ 和一阶更新算法参数化:
A : K × R dim ⁡ ( K ) → K , \mathcal{A}: \mathcal{K} \times \mathbb{R}^{\operatorname{dim}(\mathcal{K})} \rightarrow \mathcal{K}, A:K×Rdim(K)K,
它将潜在向量 v t v_t vt​​​​​​​ 和 ℓ t \ell_t t​​​​​​ 相对于它的估计梯度 Δ t \Delta_t Δt​​​​​ 映射到一个新的潜在向量 v t + 1 v_{t+1} vt+1​​​​​ 。生成的通用算法表示为算法 1。

在这里插入图片描述

算法 1 老虎机优化下的梯度估计

  1. 函数 BOLGE(图像 x x x,初始的标签 y init y_{\text{init}} yinit
  2.   在合法的有效对抗性扰动向量空间 A \mathcal A A 中初始化潜在向量 v 0 v_0 v0
  3.   循环 t = 1 … T t=1\dots T t=1T​ 轮:
  4.     // 第 t t t​​ 轮的损失函数 ℓ t ( g t ) = − ⟨ ∇ L ( x , y init ) , g ⟩ \ell_t(g_t)=-\langle\nabla L(x, y_{\text{init}}), g\rangle t(gt)=L(x,yinit),g​​​,负的 [梯度估计值 g g g​​ 与损失函数 L L L​​ 在 ( x , y inin ) (x,y_{\text{inin}}) (x,yinin) 处的梯度的内积]
  5.     梯度估计值 g t g_t gt 初始化为上一轮的梯度估计值 v t − 1 v_{t-1} vt1(时间先验)
  6.     第 t t t 轮的梯度估计值 Δ t \Delta_t Δt 等于 G RAD -  E ST \text{G}_\text{RAD}\text{- }\text{E}_{\text{ST}} GRADEST(图像 x x x,标签 y init y_{\text{init}} yinit,上一轮的梯度估计值 v t − 1 v_{t-1} vt1
  7.     第 t t t​ 轮的合法梯度估计值 v t v_t vt 等于 上一轮合法梯度估计值 v t − 1 v_{t-1} vt1 沿着本轮梯度估计值 Δ t \Delta_t Δt 移动以后在有效对抗性扰动空间内的映射(使其满足 ℓ p \ell_{p} p 范数的约束)
  8.   梯度估计值 g g g 等于最后一轮第 T T T 轮的合法梯度估计值 v T v_T vT
  9.   返回 梯度估计值 g g g 在有效对抗性空间集合 K \mathcal K K 上的投影 E q . ( 2 ) Eq.(2) Eq.(2)

在我们的设置中,我们将损失的梯度 − ∇ v ⟨ ∇ L ( x , y ) , v ⟩ -\nabla_{v}\langle\nabla L(x, y), v\rangle vL(x,y),v​​ 的估计器设为标准球梯度估计器(参见 [Haz16])。 我们还采用了对偶抽样( X ( i ) = X 1 ( i ) + X 2 ( i ) 2 X^{(i)}=\dfrac {X_1^{(i)}+X_2^{(i)}} 2 X(i)=2X1(i)+X2(i)​​),这导致估计被计算为:
Δ = ℓ ( v + δ u ) − ℓ ( v − δ u ) δ u \Delta=\frac{\ell(v+\delta \boldsymbol{u})-\ell(v-\delta \boldsymbol{u})}{\delta} \boldsymbol{u} Δ=δ(v+δu)(vδu)u
其中 u \boldsymbol u u​​​ 是从 N ( 0 , 1 d I ) \mathcal N(0, \frac 1 d I) N(0,d1I)​​​ 采样的高斯向量,提供随机扰动的方向。在给定当前潜在向量 v v v​​​、输入 x x x​​​ 和初始标签 y y y​​​​​ 的情况下,计算梯度估计的结果的算法被描述为 Algorithm2。

一个要注意的关键点是,上述梯度估计器 Δ t \Delta_t Δt 参数化老虎机减少与“梯度估计问题”没有直接关系 ,正如我们在第 2.4 节中定义的那样,它只是一种通用机制,我们可以通过它来更新老虎机优化中的潜在向量 v t v_t vt。 正是动作 g t g_t gt(等于 v t v_t vt)为第 2.4 节中的梯度估计问题提供了建议的解决方案。

在这里插入图片描述

算法 2 单次查询下的 ∇ v ⟨ ∇ L ( x , y ) , v ⟩ \nabla_v\left\langle\nabla L(x,y),v\right\rangle vL(x,y),v​​ 的球形估计( ℓ t \ell_t t​ 的梯度估计)

  1. 函数 G RAD -  E ST \text{G}_\text{RAD}\text{- }\text{E}_{\text{ST}} GRADEST​(图像 x x x​,标签 y y y​,潜在向量 v v v​)( v v v​ 是上一轮的梯度估计值,即梯度向量)
  2.   查询向量 u = N ( 0 , 1 d I ) u=\mathcal N(0,\frac 1 dI) u=N(0,d1I) N ( 0 , 1 d I ) \mathcal N(0, \frac 1 d I) N(0,d1I)​ 采样的高斯向量
  3.   对偶采样两个梯度向量 q 1 , q 2 q_1,q_2 q1,q2​ : { q 1 , q 2 } = { v + δ u , v − δ u } \{q_1,q_2\}=\{v+\delta\boldsymbol u,v-\delta\boldsymbol u\} {q1,q2}={v+δu,vδu}​​​
  4.   // 老虎机损失 ℓ t ( g ) = − ⟨ ∇ L ( x , y ) , g ⟩ \ell_{t}(g)=-\langle\nabla L(x, y), g\rangle t(g)=L(x,y),g
  5.   使用有限差分法 ( D v f ( x ) = ⟨ ∇ x f ( x ) , v ⟩ ≈ ( f ( x + δ v ) − f ( x ) ) δ D_{v} f(x)=\left\langle\nabla_{x} f(x), v\right\rangle \approx \dfrac {(f(x+\delta v)-f(x))}{\delta} Dvf(x)=xf(x),vδ(f(x+δv)f(x))​) 估计出损失函数的梯度 ∇ L ( x , y ) \nabla L(x,y) L(x,y)​ 与梯度向量 q 1 q_1 q1​ 的内积 ⟨ ∇ L ( x , y ) , q 1 ⟩ \langle\nabla L(x,y),q_1\rangle L(x,y),q1​ 然后取负号,得: ℓ t ( q 1 ) = − ⟨ ∇ L ( x , y ) , q 1 ⟩ ≈ − L ( x + ϵ ⋅ q 1 , y ) − L ( x , y ) ϵ ≈ L ( x , y ) − L ( x + ϵ ⋅ q 1 , y ) ϵ \ell_{t}\left(q_{1}\right)=-\left\langle\nabla L(x, y), q_{1}\right\rangle \approx - \dfrac{L\left(x+\epsilon \cdot q_{1}, y\right)-L(x, y)}{\epsilon}\approx \dfrac{L(x, y)-L\left(x+\epsilon \cdot q_{1}, y\right)}{\epsilon} t(q1)=L(x,y),q1ϵL(x+ϵq1,y)L(x,y)ϵL(x,y)L(x+ϵq1,y)
  6.   同第 5 行,估计出损失函数的梯度 ∇ L ( x , y ) \nabla L(x,y) L(x,y)​​ 与梯度向量 q 2 q_2 q2​​ 的内积 ℓ t ( q 1 ) = − ⟨ ∇ L ( x , y ) , q 2 ⟩ ≈ L ( x , y ) − L ( x + ϵ ⋅ q 2 , y ) ϵ \ell_{t}\left(q_{1}\right)=-\left\langle\nabla L(x, y), q_{2}\right\rangle \approx \dfrac{L(x, y)-L\left(x+\epsilon \cdot q_{2}, y\right)}{\epsilon} t(q1)=L(x,y),q2ϵL(x,y)L(x+ϵq2,y)​​
  7.   根据步长计算平均梯度估计值 Δ \Delta Δ​, Δ = ℓ t ( q 1 ) − ℓ t ( q 2 ) δ u = L ( x + ϵ q 2 , y ) − L ( x + ϵ q 1 , y ) δ ϵ u \Delta=\dfrac{\ell_{t}\left(q_{1}\right)-\ell_{t}\left(q_{2}\right)}{\delta} \boldsymbol{u}=\dfrac{L\left(x+\epsilon q_{2}, y\right)-L\left(x+\epsilon q_{1}, y\right)}{\delta \epsilon} \boldsymbol{u} Δ=δt(q1)t(q2)u=δϵL(x+ϵq2,y)L(x+ϵq1,y)u
  8.   // 注意,由于撤销取消,我们实际上可以只对 L L L 进行两个查询来求值 Δ \Delta Δ
  9.   返回 梯度估计值 Δ \Delta Δ

一旦凸集 K \mathcal K K​​​​​​ 已知,更新规则 A \mathcal A A​​​​​​​ 就会固定下来。 例如,当 K \mathcal K K​​​​​ 是 ℓ 2 \ell_2 2​​​​ 球时,我们使用 ℓ 2 \ell_2 2​​​ 投影梯度下降更新 ( ℓ 2 − \ell_2- 2​​​PGD),给我们:
v t = A ( v t − 1 , Δ t ) : = Π ℓ 2 [ v t − 1 + η ⋅ Δ t ] = { v t − 1 + η ⋅ Δ t  if  ∥ v t − 1 + η ⋅ Δ t ∥ 2 < 1 v t − 1 + η ⋅ Δ t ∥ v t − 1 + η ⋅ Δ t ∥ 2  otherwise  v_{t}=\mathcal{A}\left(v_{t-1}, \Delta_{t}\right):=\Pi_{\ell_{2}}\left[v_{t-1}+\eta \cdot \Delta_{t}\right]=\left\{\begin{array}{l}v_{t-1}+\eta \cdot \Delta_{t} \text { if }\left\|v_{t-1}+\eta \cdot \Delta_{t}\right\|_{2}<1 \\\frac{v_{t-1}+\eta \cdot \Delta_{t}}{\left\|v_{t-1}+\eta \cdot \Delta_{t}\right\|_{2}} \text { otherwise }\end{array}\right. vt=A(vt1,Δt):=Π2[vt1+ηΔt]={vt1+ηΔt if vt1+ηΔt2<1vt1+ηΔt2vt1+ηΔt otherwise 
并且当 ℓ ∞ \ell_{\infin} 约束是下限(即 K \mathcal K K 是一个 ℓ ∞ \ell_{\infin} 球)时,指数梯度(EG)更新:
v t = A ( g t − 1 , Δ t ) : = 1 Z v t − 1 exp ⁡ ( η ⋅ Δ t )  where  Z = v t − 1 exp ⁡ ( η ⋅ Δ t ) + ( 1 − v t − 1 ) exp ⁡ ( − η ⋅ Δ t ) v_{t}=\mathcal{A}\left(g_{t-1}, \Delta_{t}\right):=\frac{1}{Z} v_{t-1} \exp \left(\eta \cdot \Delta_{t}\right) \quad \text { where } Z=v_{t-1} \exp \left(\eta \cdot \Delta_{t}\right)+\left(1-v_{t-1}\right) \exp \left(-\eta \cdot \Delta_{t}\right) vt=A(gt1,Δt):=Z1vt1exp(ηΔt) where Z=vt1exp(ηΔt)+(1vt1)exp(ηΔt)
最后,为了将我们的梯度估计算法转化为构建黑盒对抗样本的有效方法,我们将迭代梯度估计算法与图像本身的迭代更新交织在一起,使用 g t g_t gt​​​ 的边界投影代替梯度( E q . ( 1 ) Eq.(1) Eq.(1)​​ 和 E q . ( 2 ) Eq.(2) Eq.(2)​。这产生了一个通用的、有效的、利用先验知识的算法来构建黑盒对抗性示例。在 ℓ 2 \ell_2 2​​​​ 约束情况下得到的算法显示在 Algorithm 3 。

在这里插入图片描述

算法 3 ℓ 2 \ell_2 2​​ 范数扰动的 Bandit 优化对抗示例生成

  1. 函数 A DVERSARIAL − B ANDIT- L2 ( x init  , y init  ) \text {A}_{\text{DVERSARIAL}}-\text{B}_{\text{ANDIT-}}\text{L2}\left(x_{\text {init }}, y_{\text {init }}\right) ADVERSARIALBANDIT-L2(xinit ,yinit )
  2.   // C ( ⋅ ) C(\cdot) C()​ 为分类模型的输出
  3.    v 0 v_0 v0 初始化为零向量
  4.    x 0 x_0 x0 初始化为原图
  5.   while C ( x ) = y init C(x)=y_{\text{init}} C(x)=yinitdo
  6.      g t g_t gt 初始化为上一轮的梯度向量 v t − 1 v_{t-1} vt1
  7.     上一轮的图像 x t − 1 x_{t-1} xt1 加上上一轮的扰动 x t − 1 + h   ⋅   g t ∥ g t ∥ 2 x_{t-1}+h\,\cdot\,\dfrac {g_t}{\|g_t\|_2} xt1+hgt2gt 得到 x t x_t xt
  8.     计算本轮扰动梯度 Δ t \Delta_t Δt
  9.     本轮梯度规范在 ℓ 2 \ell_2 2​​​​ 范数约束之内
  10.   t ++
  11.   返回 具有对抗性攻击的图像 x t − 1 x_{t-1} xt1

4 Experiments and evaluation

我们评估了第 3 节中描述的老虎机方法和 [IEAL17] 的自然进化策略方法,评估它们在 ℓ 2 \ell_2 2​ 和 ℓ ∞ \ell_{\infin} ​ 威胁模型中生成非目标对抗性示例的有效性。 我们在 ImageNet ILSVRC 2012 RDS+15] 数据集上测量和比较成功率和查询复杂度。 我们进一步研究了每种方法中优化轨迹的损失和梯度估计质量。

4.1 Evaluation methodology

我们评估了第 3 节中描述的三种方法:我们的具有时间先验的老虎机方法 ( Bandits T \text{Bandits}_{T} BanditsT​​​​​​​​​​​​)、我们的具有数据和时间先验的老虎机方法 ( Bandits T D \text{Bandits}_{TD} BanditsTD​​​​​​​​​​) 和 NES。 NES 是一种基线、先前的免费方法,它是以前最先进的方法 [IEAL17]。我们使用为 ImageNet 分类任务参数化的 Inception v3 \text{v3} v3​​​​​​​​​​ [SVI+ 15] 模型。我们的模型在评估中使用来自 TensorFlow Slim 存储库 1 的 Inception v3 模型权重。我们将所有图像坐标缩放到 [ 0 , 1 ] [0, 1] [0,1]​​​​​​​​ 范围内。我们评估 ℓ ∞ \ell_{\infin} ​​​​​​​ 和 ℓ 2 \ell_2 2​​​​​​ 威胁模型中的每种方法。在 ℓ ∞ \ell_{\infin} ​​​​​ 机制中,我们允许来自原始输入的 ϵ ∞ = 0.05 \epsilon_{\infin} = 0.05 ϵ=0.05​​​​ 的最大扰动,并且我们在 ℓ 2 \ell_2 2​​ 威胁模型中允许 ϵ 2 = 3 \epsilon_2 = 3 ϵ2=3​ 的最大扰动。对于给定的方法和威胁模型,我们通过来自 ImageNet 验证集的 1000 个随机选择的、最初正确分类的图像来攻击分类器。我们每次攻击最多运行 10,000 个查询,并记录错误分类的第一步。我们记录每次迭代时真实梯度和估计梯度之间的损失和余弦相似度。

4.2 Results

攻击有效性(Attack effectiveness) 我们在表 1 中列出了两种威胁模型中不同方法的有效性,其中我们显示了攻击成功率和平均查询(成功攻击的)当我们将攻击者限制为仅 10,000 个预言机时生成对抗性示例 查询。 我们最好的方法,具有数据依赖和时间先验的老虎机 ( Bandits T D \text{Bandits}_{TD} BanditsTD),在 ℓ ∞ \ell_{\infin} ℓ 2 \ell_2 2 设置中的故障率分别比之前的最先进技术低三倍和两倍。 尽管成功的攻击次数很多,但我们的方法还分别使 ℓ ∞ \ell_{\infin} ℓ 2 \ell_2 2 设置的查询复杂度降低了三倍和两倍。 我们通过 CDF(累计分布函数)进一步可视化查询到错误分类的分布,如图 4 所示; 请注意,CDF 总和不等于 1 1 1,因为在最多 10,000 次查询之后,攻击没有 100 % 100\% 100% 的成功率。在这里我们可以清楚地看到我们方法查询效率的提升; 在 ℓ ∞ \ell_{\infin} 威胁模型中,我们以仅 3,000 个查询的预算实现了 80 % 80\% 80% 的成功率,这是 NES 即使使用 10,000 个查询也无法达到的成功率。

在这里插入图片描述

图 4:在 NES 的 ℓ 2 \ell_2 2​​​​​​ 和 ℓ ∞ \ell_{\infin} ​​​​ 设置中创建对抗性示例所需的查询数量的累积分布函数、具有时间先验的老虎机 ( Bandits T \text{Bandits}_{T} BanditsT​​) 以及具有时间和数据相关先验的老虎机 ( Bandits T D \text{Bandits}_{TD} BanditsTD​) 方法。 请注意,CDF 不会收敛到一个,因为这些方法有时无法在少于 10 , 000 10,000 10,000 个查询中找到对抗性示例。

在这里插入图片描述

图 5:平均损失和余弦距离与在两种威胁模型中的方法优化轨迹上使用的查询数。 我们对来自评估集中的 100 张图像的每个查询数的每个余弦距离和损失点进行平均。

优化轨迹(Optimization trajectories) 我们可视化图 5( ℓ ∞ \ell_{\infin} ​ 和 ℓ 2 \ell_2 2​)优化轨迹中每个步骤的估计梯度和真实梯度之间的平均损失和余弦相似度。 我们看到,具有先验的老虎机方法显着更快地增加了损失,并且更准确地估计了两种威胁模型中的真实梯度。 请注意,余弦相似度图与我们在 (8) 中最大化的期望直接对应。

5 Related work

迄今为止已知的所有在黑盒设置中生成对抗性示例的技术都依赖于迭代优化方案或所谓的替代网络和可转移性。

在第一线工作中,算法使用查询逐渐扰动给定的输入以最大化相应的损失,从而导致错误分类。纳尔逊等人。 [INRH+ 12] 对一类特殊的二元分类器提出了第一个这样的迭代优化攻击。后来,徐等人。 [XQE16] 给出了一种用黑盒攻击欺骗现实世界系统的算法。具体来说。他们通过使用基于遗传算法的攻击来欺骗 PDF 文档恶意软件分类器。不久之后,Narodytska 和 Kasiviswanathan [NK17] 描述了对深度神经网络的第一次黑盒攻击;该算法使用贪婪搜索算法,选择性地改变单个像素值。陈等人。 [CZS+17] 是第一个设计基于有限差分和基于梯度优化的黑盒攻击。该方法使用坐标下降来攻击黑盒神经网络,并引入各种进一步的优化以降低样本复杂度。 llyas 等人的工作以 [CZS+17] 的工作为基础。 [IEAL17] 设计了一种黑盒攻击策略,该策略也使用有限差分,但将它们与自然进化策略 (NES) 相结合来估计梯度。然后,他们使用他们的算法来攻击商业部署的真实世界分类器。

在并行工作中,Papernot 等人。 [PMG+17] 介绍了一种用所谓的替代网络攻击模型的方法。这里。攻击者首先训练一个称为替代网络的模型来模拟目标网络的决策边界。攻击者然后在替代网络上生成对抗样本,并使用它们攻击原始目标模式。增加“可转移性”——或替代网络生成的对抗样本欺骗目标模型的速率——是替代网络工作的一个关键目标。在 [PMG+17] 中,攻击者使用黑盒查询生成由目标分类器标记的示例合成数据集。然后攻击者在数据集上训练一个替代网络。使用 [PMG+ 17] 算法生成的对抗性示例可靠地转移到目标 MNIST 分类器。在最近的工作中,刘等人。 [LCLS16] 训练替代网络来攻击黑盒商业分类器,使用在 ImageNet 数据集上训练的最先进的 ImageNet 分类器的集合作为替代网络。类型的方法往往比基于梯度估计的方法差。 (如果有人对攻击多个输入感兴趣,它们的性能会变得更有利,因为替代网络只需训练一次。)

6 Conclusion

我们针对黑盒对抗性攻击开发了一种新的、统一的观点。这种观点将这种攻击的构造视为梯度估计问题。我们证明了标准最小二乘估计器既能捕捉到现有的最先进的黑盒对抗性攻击方法,而且在某种自然意义上实际上是该问题的最佳解决方案。

然后,我们通过考虑问题的一个先前未探索的方面来打破这种最优性所带来的障碍:存在大量关于梯度的额外先验信息,人们可以利用这些信息来发起成功的对抗性攻击。我们确定了此类先验的两个示例:一个“时间相关”先验,对应于在相似输入处评估的梯度的相似性,以及一个“数据相关”先验,源自我们要攻击的输入中存在的潜在结构。

最后,我们开发了一种针对黑盒对抗性攻击的老虎机优化方法,可以无缝集成这些先验。由此产生的框架显着优于最先进的方法,在成功率方面实现了两到三倍的提高,在查询效率方面也有类似的提高。因此,我们的结果为构建更有效的黑盒对抗攻击开辟了一条新途径。

A Proofs

见原文

B Omitted Figures

见原文

C Hyperparameters

在这里插入图片描述

表 2:NES 方法的超参数。
>

在这里插入图片描述

表 3:bandits 方法的超参数(伪代码中使用的变量名称)。

0x20 预备知识

0x21 有限差分法

  在数学中,有限差分法finite-difference methods,FDM),是一种微分方程数值方法,是通过有限差分来近似导数,从而寻求微分方程的近似解。有时我们不能直接获取梯度值,就可以使用有限差分法,根据导数的定义,取极限的方法来获得对梯度的估计。

0x21.1 有限差分法的推导

  首先假设要近似函数的各级导数都有良好的性质,依照泰勒定理,可以形成以下的泰勒展开式:
f ( x 0 + h ) = f ( x 0 ) + f ′ ( x 0 ) 1 ! h + f ( 2 ) ( x 0 ) 2 ! h 2 + ⋯ + f ( n ) ( x 0 ) n ! h n + R n ( x ) , f(x_{0}+h)=f(x_{0})+{\frac {f'(x_{0})}{1!}}h+{\frac {f^{{(2)}}(x_{0})}{2!}}h^{2}+\cdots +{\frac {f^{{(n)}}(x_{0})}{n!}}h^{n}+R_{n}(x), f(x0+h)=f(x0)+1!f(x0)h+2!f(2)(x0)h2++n!f(n)(x0)hn+Rn(x),

其中 n ! n! n!​​​​​​ 表示是 n n n​​​ 的阶乘, R n ( x ) Rn(x) Rn(x)​ 为余数,表示泰勒多项式和原函数之间的差。可以推导函数 f f f 一阶导数的近似值:
f ( x 0 + h ) = f ( x 0 ) + f ′ ( x 0 ) h + R 1 ( x ) , f(x_{0}+h)=f(x_{0})+f'(x_{0})h+R_{1}(x), f(x0+h)=f(x0)+f(x0)h+R1(x),
设定 x 0 = a x_0=a x0=a,可得:
f ( a + h ) = f ( a ) + f ′ ( a ) h + R 1 ( x ) , f(a+h)=f(a)+f'(a)h+R_{1}(x), f(a+h)=f(a)+f(a)h+R1(x),
除以 h h h 可得:
f ( a + h ) h = f ( a ) h + f ′ ( a ) + R 1 ( x ) h {f(a+h) \over h}={f(a) \over h}+f'(a)+{R_{1}(x) \over h} hf(a+h)=hf(a)+f(a)+hR1(x)
求解 f ′ ( a ) f'(a) f(a)
f ′ ( a ) = f ( a + h ) − f ( a ) h − R 1 ( x ) h f'(a)={f(a+h)-f(a) \over h}-{R_{1}(x) \over h} f(a)=hf(a+h)f(a)hR1(x)
假设 R 1 ( x ) {\displaystyle R_{1}(x)} R1(x) 相当小,因此可以将 “f” 的一阶导数近似为:
f ′ ( a ) ≈ f ( a + h ) − f ( a ) h . f'(a)\approx {f(a+h)-f(a) \over h}. f(a)hf(a+h)f(a).

0x22 对称导数

  在数学中,对称导数symmetric derivative)是对普通导数的推广。它被定义为:
lim ⁡ h → 0 f ( x + h ) − f ( x − h ) 2 h . {\displaystyle \lim _{h\to 0}{\frac {f(x+h)-f(x-h)}{2h}}.} h0lim2hf(x+h)f(xh).
极限下的表达式有时称为对称差商symmetric difference quotient.)。如果函数的对称导数存在于该点, 则称该函数在点 x x x​ 处 **对称可微。**如果一个函数在一点上是可微的(在通常意义上),那么它也是对称可微的,但反之则不成立。

0x22.1 二阶对称导数

  二阶对称导数定义为
lim ⁡ h → 0 f ( x + h ) − 2 f ( x ) + f ( x h ) h 2 . {\displaystyle \lim _{h\to 0}{\frac {f(x+h)-2f(x)+f(xh)}{h^{2}}}.} h0limh2f(x+h)2f(x)+f(xh).
如果存在(通常的)二阶导数,则二阶对称导数存在并且等于它。然而,即使(普通)二阶导数不存在,二阶对称导数也可能存在。例如,考虑符号函数 sgn ⁡ ( x ) {\displaystyle \operatorname {sgn}(x)} sgn(x),其定义为
sgn ⁡ ( x ) = { − 1 if  x < 0 , 0 if  x = 0 , 1 if  x > 0. {\displaystyle \operatorname {sgn}(x)={\begin{cases}-1&{\text{if }}x<0,\\0&{\text{if }}x=0,\\1&{\text{if }}x>0.\end{cases}}} sgn(x)=101if x<0,if x=0,if x>0.
符号函数在零处不连续,因此对于 x = 0 {\displaystyle x=0} x=0 不存在。但是二阶对称导数存在于 x = 0 {\displaystyle x=0} x=0
lim ⁡ h → 0 sgn ⁡ ( 0 + h ) − 2 sgn ⁡ ( 0 ) + sgn ⁡ ( 0 − h ) h 2 = lim ⁡ h → 0 sgn ⁡ ( h ) − 2 ⋅ 0 + ( − sgn ⁡ ( h ) ) h 2 = lim ⁡ h → 0 0 h 2 = 0. {\displaystyle \lim _{h\to 0}{\frac {\operatorname {sgn}(0+h)-2\operatorname {sgn}(0)+\operatorname {sgn}(0-h)}{h ^{2}}}=\lim _{h\to 0}{\frac {\operatorname {sgn}(h)-2\cdot 0+(-\operatorname {sgn}(h))}{h^{ 2}}}=\lim _{h\to 0}{\frac {0}{h^{2}}}=0.} h0limh2sgn(0+h)2sgn(0)+sgn(0h)=h0limh2sgn(h)20+(sgn(h))=h0limh20=0.

0x23 估计梯度

  在论文 CCS 2017 ZOO: Zeroth Order Optimization Based Black-box Attacks to Deep Neural Networks without Training Substitute Models [2]中,对于待攻击的黑盒模型,无法获得被攻击模型的损失函数的梯度 ∇ x L ( x , y ) \nabla_xL(x,y) xL(x,y)​ ,作者提出可以使用有限差分法来估计梯度。

  首先对输入 x x x​​​ 进行扰动: x = x + h × e x=x+h\times e x=x+h×e​​​ , h h h​​​ 是步长,初始化 h = 0.0001 h=0.0001 h=0.0001​​​。 e e e​​​ 是标准单位向量。文中使用对称差商来估计梯度:
g ^ i : = ∂ f ( x ) ∂ x i ≈ f ( x + h e i ) − f ( x − h e i ) 2 h \hat{g}_{i}:=\frac{\partial f(\mathbf{x})}{\partial \mathbf{x}_{i}} \approx \frac{f\left(\mathbf{x}+h \mathbf{e}_{i}\right)-f\left(\mathbf{x}-h \mathbf{e}_{i}\right)}{2 h } g^i:=xif(x)2hf(x+hei)f(xhei)
在增加一次查询之后即可获得二阶信息:
h ^ i : = ∂ 2 f ( x ) ∂ x i i 2 ≈ f ( x + h e i ) − 2 f ( x ) + f ( x − h e i ) h 2 \hat{h}_{i}:=\frac{\partial^{2} f(\mathbf{x})}{\partial \mathbf{x}_{i i}^{2}} \approx \frac{f\left(\mathbf{x}+h \mathbf{e}_{i}\right)-2 f(\mathbf{x})+f\left(\mathbf{x}-h \mathbf{e}_{i}\right)}{h^{2}} h^i:=xii22f(x)h2f(x+hei)2f(x)+f(xhei)
获得了梯度估计值以后,即可直接对 x x x​ 进行梯度下降优化。

  

  论文 ICLR 2019 Prior convictions: Black-box adversarial attacks with bandits and priors. [15] 中提出使用有限差分法估计某个函数 f f f​ 在向量 v v v​ 方向上的点 x x x​ 处的方向导数 D v f ( x ) = ⟨ ∇ x f ( x ) , v ⟩ D_{v} f(x)=\left\langle\nabla_{x} f(x), v\right\rangle Dvf(x)=xf(x),v​ 为:
D v f ( x ) = ⟨ ∇ x f ( x ) , v ⟩ ≈ ( f ( x + δ v ) − f ( x ) ) δ D_{v} f(x)=\left\langle\nabla_{x} f(x), v\right\rangle \approx \dfrac {(f(x+\delta v)-f(x))}{\delta} Dvf(x)=xf(x),vδ(f(x+δv)f(x))
δ > 0 \delta > 0 δ>0​​​​ 为步长,控制梯度估计的质量。 由于精度和噪声等问题,步长更小会得到更准确的估计,但同时也会降低可靠性。 因此,在实践中,将 δ \delta δ​​​​ 作为一个可调参数使用。

我们使用有限差分来构建梯度的估计,可以通过使用所有标准基向量 e 1 , . . . , e d e_1,... , e_d e1,...,ed​​​​​ 估计梯度的内积来找到梯度的 d d d​​​​​ 个分量:
∇ ^ x L ( x , y ) = ∑ k = 1 d e k ( L ( x + δ e k , y ) − L ( x , y ) ) δ ≈ ∑ k = 1 d e k ⟨ ∇ x L ( x , y ) , e k ⟩ \widehat{\nabla}_{x} L(x, y)=\sum_{k=1}^{d} e_{k}\dfrac {\left(L\left(x+\delta e_{k}, y\right)-L(x, y)\right)}{\delta} \approx \sum_{k=1}^{d} e_{k}\left\langle\nabla_{x} L(x, y), e_{k}\right\rangle xL(x,y)=k=1dekδ(L(x+δek,y)L(x,y))k=1dekxL(x,y),ek

Bandits 算法

一个赌徒,要去摇老虎机,走进赌场一看,一排老虎机,外表一模一样,但是每个老虎机吐钱的概率可不一样,他不知道每个老虎机吐钱的概率分布是什么,那么想最大化收益该怎么办?这就是多臂赌博机问题。

https://zhuanlan.zhihu.com/p/80261581

References

[1] Andrew Ilyas, Logan Engstrom, and Aleksander Madry. Prior convictions: Black-box adversarial attacks with bandits and priors. In International Conference on Learning Representations, 2019. 1, 2, 5, 7, 8, 11

[2] Pin-Yu Chen, Huan Zhang, Yash Sharma, Jinfeng Yi, and Cho-Jui Hsieh. Zoo: Zeroth order optimization based black-box attacks to deep neural networks without training substitute models. In Proceedings of the 10th ACM Workshop on Artificial Intelligence and Security, pages 15–26. ACM, 2017.


  1. https://github.com/tensorflow/models/tree/master/research/slim ↩︎

举报

相关推荐

0 条评论