2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 论文阅读 (88):Adversarial Examples for Semantic Segmentation and Object Detection

论文阅读 (88):Adversarial Examples for Semantic Segmentation and Object Detection

时间:2020-02-26 18:58:12

相关推荐

论文阅读 (88):Adversarial Examples for Semantic Segmentation and Object Detection

文章目录

1. 概述2 算法2.1 稠密对抗生成2.2 选择用于检测的输入提案

1. 概述

题目:用于语义分割和目标检测的对抗样本

核心点:将对抗性样本的概念扩展到语义分割和对象检测,并提出稠密对抗生成算法(Dense adversary generation, DAG)。

引用

@inproceedings{Xie::13691378,author={Ci Hang Xie and Jian Yu Wang and Zhi Shuai Zhang and Yu Yin Zhou and Ling Xi Xie and Alan Yuille},title={Adversarial examples for semantic segmentation and object detection},booktitle={{CVPR}},pages={1369--1378},year={}}

2 算法

2.1 稠密对抗生成

令 X \mathbf{X} X表示包含 N N N个识别目标 T = { t 1 , t 2 , … , t N } \mathcal{T}=\{t_1,t_2,\dots,t_N\} T={t1​,t2​,…,tN​}的图像。每个目标 t n t_n tn​对应一个真实标签 l n ∈ { 1 , 2 , … , C } l_n\in\{ 1,2,\dots, C \} ln​∈{1,2,…,C},其中 C C C是类别数。所有的标签记为 L = { l 1 , l 2 , … , l N } \mathcal{L}=\{l_1,l_2,\dots,l_N\} L={l1​,l2​,…,lN​}。

T \mathcal{T} T依据所在的场景而有所变化,例如在图像分类中, T \mathcal{T} T只包含一个元素,即完整图像;在语义分割中由所有像素,或者说相应地感受野组成;在对象检测中,则由所有提案组成。

给定特定任务下的神经网络,令 f = ( X , t n ) ∈ R c \mathbf{f}=(\mathbf{X},t_n)\in\mathbb{R}^c f=(X,tn​)∈Rc表示第 n n n个识别对象在softmax之前的分数向量。为了生成对抗样本,理想的目标是令所有目标上的预测出错,即:

∀ n , arg max ⁡ c { f c ( X + r , t n ) } ≠ l n \forall n,\argmax_c\{ f_c(\mathbf{X}+\mathbf{r},t_n) \}\neq l_n ∀n,cargmax​{fc​(X+r,tn​)}=ln​这里的 r \mathbf{r} r即是想要生成的对抗样本。该公式的含义为,当添加扰动后,应当使得最大预测概率所对应的类别偏离原有类别。对此,我们为每个目标制定一个对抗标签 l n ′ l_n' ln′​,其中 l n ′ l_n' ln′​是从其它不正确类别的随机采样,即 l n ′ ∈ [ 1 , C ] ∖ { l n } l_n'\in[1,C]\setminus\{l_n\} ln′​∈[1,C]∖{ln​}。同理有 L ′ = { l 1 ′ . l 2 ′ , … , l n ′ } \mathcal{L}'=\{l_1'.l_2',\dots,l_n'\} L′={l1′​.l2′​,…,ln′​}。实际上,我们定义了一个随机排列函数 π : { 1 , 2 , … , C } → { 1 , 2 , … , C } \pi:\{1,2,\dots,C\}\to\{1,2,\dots,C\} π:{1,2,…,C}→{1,2,…,C},其中 π ( c ) ≠ c \pi(c)\neq c π(c)=c。在这种设置下,损失函数定义为:

L ( X , T , L , L ′ ) = ∑ n = 1 N [ f l n ( X , t n ) − f l n ′ ( X , t n ) ] (1) \tag{1} L(\mathbf{X},\mathcal{T},\mathcal{L},\mathcal{L}')=\sum_{n=1}^N\left[ f_{l_n}(\mathbf{X},t_n) -f_{l_n'}(\mathbf{X},t_n) \right] L(X,T,L,L′)=n=1∑N​[fln​​(X,tn​)−fln′​​(X,tn​)](1)最小化 L L L可以通过使得每一个目标错误预测来实现,即抑制正确类别 f l n ( X + r , t n ) f_{l_n}(\mathbf{X}+\mathbf{r},t_n) fln​​(X+r,tn​)的置信度,而增加不正确类别 f l n ′ ( X + r , t n ) f_{l_n'}(\mathbf{X+r},t_n) fln′​​(X+r,tn​)的置信度。

这里使用梯度下降法来优化,在 m m m次迭代时,添加了扰动的图像记为 X m \mathbf{X}_m Xm​。我们将寻找一个正确预测目标的集合,称为激活目标集(Active target set): T m = { t n ∣ a r g m a x c { f c ( X m , t n ) } = l n } \mathcal{T}_m=\{ t_n| argmax_c\{ f_c(\mathbf{X}_m,t_n)\}=l_n \} Tm​={tn​∣argmaxc​{fc​(Xm​,tn​)}=ln​}。然后计算关于输入数据的梯度并累计这些扰动:

r m = ∑ t n ∈ T m [ ∇ X m f l n ′ ( X m , t n ) − ∇ X m f l n ( X m , t n ) ] (2) \tag{2} \mathbf{r}_m=\sum_{t_n \in \mathcal{T}_m}\left[\nabla_{\mathbf{X}_m} f_{l_n^{\prime}}\left(\mathbf{X}_m, t_n\right)-\nabla_{\mathbf{X}_m} f_{l_n}\left(\mathbf{X}_m, t_n\right)\right] rm​=tn​∈Tm​∑​[∇Xm​​fln′​​(Xm​,tn​)−∇Xm​​fln​​(Xm​,tn​)](2)注意当 m m m增大时, ∣ T m ∣ ≪ ∣ T ∣ \left|\mathcal{T}_m\right| \ll|\mathcal{T}| ∣Tm​∣≪∣T∣,因此该策略可以降低时间复杂度。为了避免数值不稳定,我们将 r m \mathbf{r}_m rm​标准化为:

r m ′ = γ ∥ r m ∥ ∞ ⋅ r m (3) \tag{3} \mathbf{r}_m^{\prime}=\frac{\gamma}{\left\|\mathbf{r}_m\right\|_{\infty}} \cdot \mathbf{r}_m rm′​=∥rm​∥∞​γ​⋅rm​(3)其中 γ = 0.5 \gamma=0.5 γ=0.5是一个固定的超参数。然后我们在 X m \mathbf{X}_m Xm​中添加 r m ′ \mathbf{r}_m' rm′​并进行下一次迭代。算法将在 T m = ∅ \mathcal{T}_m=\empty Tm​=∅或者达到最大迭代次数时停止。最大迭代次数在分割和检测时分别设置为 200 200 200和 150 150 150。

最终的对抗扰动计算为 r = ∑ m r m ′ \mathbf{r}=\sum_m\mathbf{r}_m' r=∑m​rm′​。注意在算法实现时,输入的图像为 X \mathbf{X} X减去均值图像 X ^ \hat{\mathbf{X}} X^,因此对抗图像为 Trunc ( X + r + X ^ ) \text{Trunc}(\mathbf{X+r+}\hat{\mathbf{X}}) Trunc(X+r+X^),其中 Trunc( … ) \text{Trunc(\dots)} Trunc(…)表示将通过 [ 0 , 255 ] [0,255] [0,255]的像素修剪函数。尽管修剪将损害对抗扰动,我们观察到在实验中这样的影响其实是很小的,因为扰动 r \mathbf{r} r的量级是很小的。DAG算法的总体流程如算法1。

2.2 选择用于检测的输入提案

DAG的一个关键问题是选择一个合适的 T \mathcal{T} T。这种语义分割中是相对简单的,因为我们的目标是在所有的像素上发生错误分类。因此可以将每一个像素设置成为一个独立的目标,即在图像网格上执行稠密采样。该过程的时间复杂度正比于像素的总和。

在对象检测领域,目标选择会相对困难,因为可能的目标 (边界框提案) 的综述比语义分割中的目标大几个量级。一个简单的提案是仅考虑sideway网络,即区域提案网络(regional proposal network),而我们发现,当对抗扰动 r \mathbf{r} r 被添加到原始图像 X \mathbf{X} X时,提案的差集可以通过新的输入 X + r \mathbf{X+r} X+r来生成,以及网络依然能够正确地分类这些新提案。为了克服这个问题,我们通过增加RPN中非极大值抑制(non-maximal suppression, NMS) 的阈值来使得提案非常稠密。实际上,当IOU(intersection-over-union) 从0.7增长到0.9,每个图像的平均提案数从300增长到了3000。使用该稠密目标集 T \mathcal{T} T,最可能的对象边界框距离至少一个选定的输入提案只有像素,我们可以预期相邻边界框之间的分类错误转移。在实验中,这样的一个直观方法是很有用的,对抗扰动的性能与DAG中提案的数量成正比。

技术方面,给定RPN生成的提案,我们保留所有正提案而忽略其它。满足以下条件的称为正提案:

最近的真实目标的IOU大于0.1;真实类的置信度得分大于0.1.

如果有多个真实目标满足以上条件,我们选择IOU最大的那一个。提案的标签定义为相应地置信类。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。