关于EAD: Elastic-Net Attacks to Deep Neural Networks via Adversarial Examples的理解

在本文中,作者基于之前的Carlini & Wagner攻击提出了一些新的改进,从而在确保攻击成功率的情况下,增强了攻击的可转移性。
  作者仍然沿用之前C&W攻击的目标函数 f(x,t) f ( x , t )

f(x,t)=max{maxjt[Logit(x)]j[Logit(x)]t,k} f ( x , t ) = max { max j ≠ t [ L o g i t ( x ) ] j − [ L o g i t ( x ) ] t , − k }

在此基础上,与之前加入L1或者L2范数正则化项不同的是,作者提出加入弹性网络正则化项,即同时加入L1和L2范数正则化项,从而得出如下优化问题:
minxcf(x,t)+β||xx0||1+||xx0||22s.t.x[0,1]p min x c ⋅ f ( x , t ) + β | | x − x 0 | | 1 + | | x − x 0 | | 2 2 s.t. x ∈ [ 0 , 1 ] p

EAD公式旨在找到一个敌对的例子 x x ,它将被归类为目标类别 t t ,同时最小化δ=xx0在弹性净损失 β||δ||1+||δ||22 β | | δ | | 1 + | | δ | | 2 2 ,它是 x x x0 x 0 之间的L1和L2失真度量的线性组合。值得注意的是,当 β=0 β = 0 时,C&W的L2攻击的表述成为EAD公式的一个特例,它忽略了 δ δ 上的L1惩罚。 然而,L1惩罚是一个直观的调整对抗样本生成1的手段,因为 ||δ||1=pi=1|δi| | | δ | | 1 = ∑ i = 1 p | δ i | 代表扰动的总变化量,也是促进扰动稀疏性的广泛使用的替代函数。 正如作者后面评估部分所表明的那样,包括扰动的L1惩罚确实产生了一组独特的对抗性例子,并且它导致了攻击转移能力的提高,并补充了对抗性学习。
  在C&W攻击中,他们使用了一种变量替代的方法 (change of variable, COV) 来消去约束条件,即:
x=12(tanh(x0)+1) x = 1 2 ( t a n h ( x 0 ) + 1 )
|
β>0 β > 0 时,我们发现相同的COV方法在求解EAD问题中不是有效的,因为相应的对抗样本对 β β 的变化不敏感。 由于L1惩罚是一个不可微的分段线性函数,因此COV方法的失败可以用它在基于梯度的优化问题中的低效性来解释。
因此作者提出使用ISTA(Iterative Shrinkage-Thresholding Algorithm)和FISTA(Fast Iterative Shrinkage-Thresholding Algorithm)求解该问题。
简单介绍一下ISTA和FISTA算法:
若函数 f(x) f ( x ) 的梯度满足Lipschitz连续条件,即 2f(x) ∇ 2 f ( x ) 的的绝对值有上界,其最小上界称为Lipschitz常数 L(f) L ( f ) 。这时,对于任意的 LL(f) L ≥ L ( f ) ,有:
f(x)f(y)+xy,f(y)+L2||xy||2 f ( x ) ≤ f ( y ) + ⟨ x − y , ∇ f ( y ) ⟩ + L 2 | | x − y | | 2

因此对于如下的优化问题 minx F(x)=f(x)+g(x) min x   F ( x ) = f ( x ) + g ( x ) ,其中 fg f 和 g 都是凸函数,但是 g g 可能非光滑的情况下,我们可以改问题转化为(给定了点y):
QL(x,y)=f(y)+xy,f(y)+L2||xy||2+g(x) Q L ( x , y ) = f ( y ) + ⟨ x − y , ∇ f ( y ) ⟩ + L 2 | | x − y | | 2 + g ( x )

因此约减过后可以得到序列的迭代公式:
xk+1=argmaxx{g(x)+L2||x(xk1Lf(xk))||2}=pL(xk) x k + 1 = arg ⁡ max x { g ( x ) + L 2 | | x − ( x k − 1 L ∇ f ( x k ) ) | | 2 } = p L ( x k )

其中 L L 起到了步长的作用,我们只需要选择一个比Lipschitz常数L(f)大的常数即可。实际上我们可以选择更好的 L L 来加快收敛速度(即回溯步型),详见这篇论文A Fast Iterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems,但是EAD这里并没有。但是和这篇论文一样,EAD也采用了一种加速的方式来加快收敛,实际上就是ISTA应用Nestrerov加速,Nestrerov加速的梯度下降法可以写为:
  1. ξ0=0
  2. ξk=1+1+4ξ2k12,γk=1ξk1ξk ξ k = 1 + 1 + 4 ξ k − 1 2 2 , γ k = 1 − ξ k − 1 ξ k ,
  3. yk=xk1tkf(xk1) y k = x k − 1 − t k ∇ f ( x k − 1 )
  4. xk=(1γk)yk+γkyk1 x k = ( 1 − γ k ) y k + γ k y k − 1
带入即可得到常数步型的FISTA:
missing
我们进一步看一下这个 pL(yk) p L ( y k ) 如何计算,我们对 QL(x,xk) Q L ( x , x k ) 求梯度,可以得到:
xQL(x,xk)=f(xk)+L(xxk)+g(x)=0 ∇ x Q L ( x , x k ) = ∇ f ( x k ) + L ( x − x k ) + ∇ g ( x ) = 0

我们记 zk=xk1Lf(xk) z k = x k − 1 L ∇ f ( x k ) ,并且根据问题,有 g(x)=β||xx0||1 g ( x ) = β | | x − x 0 | | 1 ,这是一个非光滑的函数,我们只能求次梯度。我们按每一个维度来求解:
xQL(x,xk)i=xizk,i+1Lβ(|xix0,i|) ∇ x Q L ( x , x k ) i = x i − z k , i + 1 L β ( | x i − x 0 , i | ) ′

由于 |x| | x | 在0点的次导数(对于定义域中的任何 x0 x 0 ,我们总可以作出一条直线,它通过点 (x0,f(x0)) ( x 0 , f ( x 0 ) ) ,并且要么接触f的图像,要么在它的下方。这条直线的斜率称为函数的次导数)是-1到1范围内的任意值,因此上式可以写成
xQL(x,xk)i=xizk,i+1L+βwhen xi>x0,idwhen xi=x0,i and βdββwhen xi<x0,i ∇ x Q L ( x , x k ) i = x i − z k , i + 1 L { + β w h e n   x i > x 0 , i d w h e n   x i = x 0 , i   a n d   − β ≤ d ≤ β − β w h e n   x i < x 0 , i

所以当我们用新的 β β 来代替 βL β L 时,只需要 |x0,izk,i|β | x 0 , i − z k , i | ≤ β 时,即有梯度为0。其余情况类似,就可以得到投影算子:
Tα(x)i=(|xi|α)+sgn(xi) T α ( x ) i = ( | x i | − α ) + s g n ( x i )

应用到EAD中,就可以得到:
[Sβ(z)]i=min{ziβ,1}if zix0,i>βx0,iif ||zix0,i||βmax{zi+β,0}if zix0,i<β [ S β ( z ) ] i = { min { z i − β , 1 } i f   z i − x 0 , i > β x 0 , i i f   | | z i − x 0 , i | | ≤ β max { z i + β , 0 } i f   z i − x 0 , i < − β

他们的实验也表明了该方法的攻击成功率并没有下降,并且L1,L2范数几乎没有变化,但是却有更好的可转移性。于此同时,也可以通过这个方法打破蒸馏防御。
顺带一提,一范数正则化的稀疏性也可以由此看出: f(x)=c|x| f ( x ) = c | x | 的绝对值的次导数为:
f(x)=cx>0dx=0 and c<d<ccx<0 f ′ ( x ) = { c x > 0 d x = 0   a n d   − c < d < c − c x < 0

因此当 c c 在一定范围内时,如果足够大,只要x为0,以L1范数为惩罚项的目标函数的梯度就很容易(可能)为 0 0 <script type="math/tex" id="MathJax-Element-26816">0</script>。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值