通用评估神经网络鲁棒性方法—CLEVER

引言

神经网络鲁棒性评估一直是深度学习领域中一个热门的研究方向,该论文是通用评估神经网络鲁棒性方法的开山之作。作者将神经网络鲁棒性问题转换成局部Lipschitz常数的估计问题,并利用极值理论方法进行评估,进而提出了一种度量神经网络鲁棒性的通用方法-CLEVER,该方法可以对不可知的攻击方式进行评估,并且对于大规模的神经网络计算成本较少。该论文涉及到大量的数学推导,需要沉下心来慢慢琢磨。

论文链接:https://arxiv.org/abs/1801.10578v1

数学符号介绍

假定 f : R d → R K f:\mathbb{R}^{d}\rightarrow\mathbb{R}^K f:RdRK表示的是一个神经网络分类器,其中 d d d表示输入空间的维度, K K K表示的是输出空间的维度。 x 0 ∈ R d x_0 \in \mathbb{R}^d x0Rd表示干净的输入样本, x a x_a xa表示对抗样本, δ = x a − x 0 \delta=x_a-x_0 δ=xax0表示的是对抗扰动, ∥ ⋅ ∥ p \|\cdot\|_p p表示的 p p p范数,其中 p ≥ 1 p\ge 1 p1 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min表示的是最小的对抗扰动。 β L \beta_L βL表示的是对抗扰动的上界, β U \beta_U βU表示的是对抗扰动的下界。 L q j L_q^j Lqj表示的是Lipschiz常数, L q , x 0 j L^j_{q,x_0} Lq,x0j表示的是局部Lipschitz常数。 B p ( x 0 , R ) B_p(x_0,R) Bp(x0,R)表示的以干净样本 x 0 x_0 x0为中心,半径为 R R R的球体。 C D F \mathrm{CDF} CDF表示的是累积分布函数。

分类器鲁棒性的保证分析

本文作者对神经网络分类器的鲁棒性给出了严格的数学定理的形式,并且该定理只需要一个很宽泛的假设,即分类器函数是Lipschitz连续的。

定义1(扰动样本和对抗样本): 给定一个输入向量 x 0 ∈ R d x_0\in \mathbb{R}^d x0Rd,该样本对应的类别为 K K K类,分类函数为 f : R d → R K f:\mathbb{R}^d \rightarrow \mathbb{R}^K f:RdRK,预测类别为 c ( x 0 ) = arg max ⁡ 1 ≤ i ≤ K f i ( x 0 ) c(x_0)=\argmax\limits_{1\le i \le K} f_i(x_0) c(x0)=1iKargmaxfi(x0)。假设 x a x_a xa是一个干净样本 x 0 x_0 x0的一个扰动样本 ,则存在扰动 δ ∈ R d \delta \in \mathbb{R}^d δRd,有 x a = x 0 + δ x_a=x_0+\delta xa=x0+δ,其中 Δ p = ∥ δ ∥ p \Delta_p = \|\delta\|_p Δp=δp。对抗样本则是能够使得分类器预测标签 c ( x a ) c(x_a) c(xa)出错的扰动样本。无目标攻击特指找到一个对抗样本 x a x_a xa,且有 c ( x a ) ≠ c ( x 0 ) c(x_a)\ne c(x_0) c(xa)=c(x0)。有目标攻击特指找到一个对抗样本 x a x_a xa使得分类器预测的标签为 c ( x a ) = t c(x_a)=t c(xa)=t,其中 t ≠ c ( x 0 ) t\ne c(x_0) t=c(x0)

定义2(最小对抗扰动): 给定一个输入向量 x 0 x_0 x0和分类器 f f f x 0 x_0 x0的最小的 ℓ p \ell_p p对抗扰动表示为 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min

定义3( Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min下界): 假定 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min为样本 x 0 x_0 x0的最小对抗扰动,则 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min下界表示为 β L \beta_L βL,其中 β L ≤ Δ p , m i n \beta_L\le \Delta_{p,\mathrm{min}} βLΔp,min,如果对于任意样本 x 0 x_0 x0的扰动样本有 ∥ δ ∥ p ≤ β L \|\delta\|_p \le \beta_L δpβL,则该扰动样本不是对抗样本。

定义4( Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min上界): 假定 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min为样本 x 0 x_0 x0的最小对抗扰动,则 Δ p , m i n \Delta_{p,\mathrm{min}} Δp,min上界表示为 β U \beta_U βU,其中 β U ≥ Δ p , m i n \beta_U\ge \Delta_{p,\mathrm{min}} βUΔp,min,进而存在一个样本 x 0 x_0 x0的对抗样本有 ∥ δ ∥ p ≥ β U \|\delta\|_p \ge \beta_U δpβU

对于任何对抗攻击其最小对抗扰动的上界 β U \beta_U βU是很容易被发现的,但是下界 β L \beta_L βL却不容易找到。 β L \beta_L βL保证了对于任意 ∥ δ ∥ p ≤ β L \|\delta\|_p\le \beta_L δpβL的扰动神经网络分类器都是鲁棒的。

引理1(Lipschitz连续和梯度范数关系): S ⊂ R d S \subset \mathbb{R}^d SRd是一个凸有界闭集,并且令 h ( x ) : S → R h(x):S\rightarrow \mathbb{R} h(x):SR是一个在包含区域 S S S的开集中连续可微函数。如果 h ( x ) h(x) h(x)是一个有Lipschitz常数 L q L_q Lq的Lipschitz函数,则对于任意 x , y ∈ S x,y\in S x,yS,以下不等式成立 ∣ h ( x ) − h ( y ) ∣ ≤ L q ∥ x − y ∥ p |h(x)-h(y)|\le L_q\|x-y\|_p h(x)h(y)Lqxyp其中 L q = max ⁡ { ∥ ∇ h ( x ) ∥ q : x ∈ S } L_q=\max\{\|\nabla h(x)\|_q:x\in S\} Lq=max{ h(x)q:xS} ∇ h ( x ) = ( ∂ h ( x ) ∂ x 1 , ⋯   , ∂ h ( x ) ∂ x d ) ⊤ \nabla h(x)=(\frac{\partial h(x)}{\partial x_1},\cdots,\frac{\partial h(x)}{\partial x_d})^{\top} h(x)=(x1h(x),,xdh(x)) h ( x ) h(x) h(x)的梯度,并且有 1 p + 1 q = 1 \frac{1}{p}+\frac{1}{q}=1 p1+q1=1 1 ≤ p , q ≤ ∞ 1\le p,q\le \infty 1p,q

证明: 对于给定任意的 x x x y y y,令 d = y − x ∥ y − x ∥ p d=\frac{y-x}{\|y-x\|_p} d=yxpyx表示的是 x x x指向 y y y的单位向量,其中有 r = ∥ y − x ∥ p r=\|y-x\|_p r=yxp。定义一个一元函数 u ( z ) = h ( x + z d ) u(z)=h(x+zd) u(z)=h(x+zd),并且有 u ( 0 ) = h ( x ) u(0)=h(x) u(0)=h(x) u ( r ) = h ( y ) u(r)=h(y) u(r)=h(y),可知 D + h ( x + z d ; d ) D^{+}h(x+zd;d) D+h(x+zd;d) D + h ( x + z d ; − d ) D^{+}h(x+zd;-d) D+h(x+zd;d)分别表示的是 u ( x ) u(x) u(x)的右导数和左导数,进而则有 u ′ ( z ) = { D + h ( x + z d ; d ) ≤ L q i f   D + h ( x + z d ; d ) = D + h ( x + z d ; − d ) u n d e f i n e d i f   D + h ( x + z d ; d ) ≠ D + h ( x + z d ; − d ) u^{\prime}(z)=\left\{\begin{array}{ll}D^{+}h(x+zd;d)\le L_q& \mathrm{if}\text{ }D^{+}h(x+zd;d)=D^{+}h(x+zd;-d)\\\mathrm{undefined}&\mathrm{if}\text{ }D^{+}h(x+zd;d)\ne D^{+}h(x+zd;-d)\end{array}\right. u(z)={ D+h(x+zd;d)Lqundefinedif D+h(x+zd;d)=D+h(x+zd;d)if D+h(x+zd;d)=D+h(x+zd;d)对于ReLU网络,至少有有限个点 z ∈ ( 0 , 1 ) z\in(0,1) z(0,1)使得 g ′ ( z ) g^{\prime}(z) g(z)。这是因为每个不连续的 z z z都是由某些ReLU激活引起的,并且只有有限个组合,令这些点为 0 = z 0 < z 1 < ⋯ < z k − 1 < z k = 1 0=z_0<z_1<\cdots < z_{k-1}<z_k=1 0=z0<z1<<zk1<zk=1,在每个区间上分别使用微积分的基本定理,则对于每个 i i i,存在 z ˉ i ∈ ( z i , z i − 1 ) \bar{z}_i\in(z_i,z_{i-1}) zˉi(zi,zi1) u ( r ) − u ( 0 ) ≤ ∑ i = 1 k ∣ u ( z i ) − u ( z i − 1 ) ∣ = ∑ i = 1 k ∣ u ′ ( z ˉ i ) ( z i − z i − 1 ) ∣ ≤ ∑ i = 1 k L q ∣ z i − z i − 1 ∣ = L q ∥ x − y ∥ \begin{aligned}u(r)-u(0)& \le \sum\limits_{i=1}^k |u(z_i)-u(z_{i-1})|\\&= \sum\limits_{i=1}^k |u^{\prime}(\bar{z}_i)(z_i-z_{i-1})|\\ & \le \sum\limits_{i=1}^k L_q|z_i-z_{i-1}|\\ &= L_q\|x-y\| \end{aligned} u(r)u(0)i=1ku(zi)u(zi1)=i=1ku(zˉi)(zizi1)i=1kLqzizi1=Lqxy

定理1(无目标攻击下界 β L \beta_L βL): x 0 ∈ R d x_0\in \mathbb{R}^d x0Rd f : R d → R K f:\mathbb{R}^d\rightarrow \mathbb{R}^K f:RdRK是一个多分类器,其中 f i f_i fi是连续可微的,令 c = arg max ⁡ 1 ≤ i ≤ K f i ( x 0 ) c=\argmax\limits_{1\le i \le K}f_i(x_0) c=1iKargmaxfi(x0)表示的是分类器预测样本 x 0 x_0 x0的类别。对于所有 δ ∈ R d \delta \in \mathbb{R}^d δRd,则有 ∥ δ ∥ p ≤ min ⁡ j ≠ c f c ( x 0 ) − f j ( x 0 ) L q j \|\delta\|_p \le \min\limits_{j \ne c}\frac{f_c(x_0)-f_j(x_0)}{L^j_q} δpj=cminLqjfc(x0)fj(x0)其中 arg max ⁡ 1 ≤ i ≤ K f i ( x 0 + δ ) = c \argmax\limits_{1 \le i \le K}f_i(x_0+\delta)=c 1iKargmaxfi(x0+δ)=c,且有 1 p + 1 q = 1 \frac{1}{p}+\frac{1}{q}=1 p1+q1=1 1 ≤ p , q ≤ ∞ 1\le p,q \le \infty 1p,q L q j L_q^j Lqj是函数 f c ( x ) − f j ( x ) f_c(x)-f_j(x) fc(x)fj(x) ℓ p \ell_p p范数的Lipschiz常数。换言之, β L = min ⁡ j ≠ c f c ( x 0 ) − f j ( x 0 ) L q j \beta_L=\min\limits_{j\ne c}\frac{f_c(x_0)-f_j(x_0)}{L^j_q} βL=j=cminLqjfc(x0)fj(x0)是最小的扰动下界。

证明: 根据引理1可知,假定 g ( x ) : = f c ( x ) − f j ( x ) g(x):=f_c(x)-f_j(x) g(x):=fc(x)fj(x)是一个有Lipschitz常数 L q j L^j_q Lqj的Lipschitz连续的函数,则有 ∣ g ( x ) − g ( y ) ∣ ≤ L q j ∥ x − y ∥ p |g(x)-g(y)|\le L^j_q \|x-y\|_p g(x)g(y)Lqjxyp x = x 0 + δ x=x_0+\delta x=x0+δ y = x 0 y=x_0 y=x0,可以得到 ∣ g ( x 0 + δ ) − g ( x 0 ) ∣ ≤ L q j ∥ δ ∥ p |g(x_0+\delta)-g(x_0)|\le L^j_q \|\delta\|_p g(x0+δ)g(x0)Lqjδp其中可以将上面公式化简为以下形式 g ( x 0 ) − L q j ∥ δ ∥ p ≤ g ( x 0 + δ ) ≤ g ( x 0 ) + L q j ∥ δ ∥ p g(x_0)-L^j_q\|\delta\|_p \le g(x_0+\delta)\le g(x_0)+L^j_q \|\delta\|_p g(x0)Lqjδpg(x0+δ)g(x0)+Lqjδp g ( x 0 + δ ) = 0 g(x_0+\delta)=0 g(x0+δ)=0时,此时对抗样本被发现。根据上公式, g ( x 0 + δ ) g(x_0+\delta) g(x0+δ)的下界为 g ( x 0 ) − L q j ∥ δ ∥ p g(x_0)-L^j_q\|\delta\|_p g(x0)Lqjδp。如果 ∥ δ ∥ p \|\delta\|_p δp是足够的小以至于 g ( x 0 ) − L q j ∥ δ ∥ p ≥ 0 g(x_0)-L^j_q\|\delta\|_p \ge 0 g(x0)Lqjδp0,则此时没有对抗样本生成 g ( x 0 ) − L q j ∥ δ ∥ p ≥ 0 ⟹ ∥ δ ∥ p ≤ g ( x 0 ) L q j ⟹ ∥ δ ∥ p ≤ f c ( x 0 ) − f j ( x 0 ) L q j g(x_0)-L_q^j\|\delta\|_p \ge 0 \Longrightarrow \|\delta\|_p \le \frac{g(x_0)}{L^j_q}\Longrightarrow \|\delta\|_p \le \frac{f_c(x_0)-f_j(x_0)}{L^j_q} g(x0)Lqjδp0δpLqjg(x0)δpLqjfc(x0)fj(x0)为了能够达到 arg max ⁡ 1 ≤ i ≤ K f i ( x 0 + δ ) = c \argmax\limits_{1 \le i \le K}f_i(x_0+\delta)=c 1iKargmaxfi(x0+δ)=c,取在 g ≠ c g\ne c g=c上,取 ∥ δ ∥ p \|\delta\|_p δp上界的最小值,则有 ∥ δ ∥ p ≤ min ⁡ j ≠ c f c ( x 0 ) − f j ( x 0 ) L q j \|\delta\|_p \le \min\limits_{j\ne c}\frac{f_c(x_0)-f_j(x_0)}{L^j_q} δpj=cminLqjfc(x0)fj(x0)
定理1的一维情况的直观图如下所示,函数 g ( x ) = f c ( x ) − f j ( x ) g(x)=f_c(x)-f_j(x) g(x)=fc(x)fj(x) x 0 x_0 x0附近的值位于由两条线通过 ( x 0 , g ( x 0 ) ) (x_0,g(x_0)) (x0,g(x0))形成的双圆锥内,斜率等于 ± L q \pm L_q ±Lq,其中 L q L_q Lq表示的是函数 g ( x ) g(x) g(x)在点 x 0 x_0 x0附近的Lipschitz常数。换句话说, g ( x ) g(x) g(x) x 0 x_0 x0附近的函数值,即 g ( x 0 + δ ) g(x_0+\delta) g(x0+δ)可以由 g ( x 0 ) g(x_0) g(x0) δ \delta δ和Lipschitz常数 L q L_q Lq所限定。当 g ( x 0 + δ ) g(x_0+\delta) g(x0+δ)减小到 0 0 0时,则此时会发现一个对抗样本, δ \delta δ的最小变化为 g ( x 0 ) L q \frac{g(x_0)}{L_q} Lqg(x0)

注意1: L q j L_q^j Lqj是包含交叉项 f c ( x ) − f j ( x ) f_c(x)-f_j(x) fc(x)fj(x)函数的Lipschitz常数,进而可以称为交叉Lipschitz常数。

推论1(无目标攻击 β \beta β的形式化保证): L q , x 0 j L_{q,x_0}^j Lq,x0j是函数 f c ( x ) − f j ( x ) f_c(x)-f_j(x) fc(x)fj(x)在点 x 0 x_0 x0处的局部Lipschtiz常数, x x x的取值范围为 B p ( x 0 , R ) = { x ∈ R ∣ ∥ x − x 0 ∥ p ≤ R } B_p(x_0,R)=\{x\in\mathbb{R}|\|x-x_0\|_p \le R\} Bp(x0,R)={ xRxx0pR} δ ∈ B p ( 0 , R ) \delta \in B_p(0,R) δBp(0,R)。由定理1可知,可以得到 ∥ δ ∥ p ≤ min ⁡ { min ⁡ j ≠ c f c ( x 0 ) − f j ( x 0 ) L q , x 0 j } \|\delta\|_p \le \min\left\{\min\limits_{j \ne c} \frac{f_c(x_0)-f_j(x_0)}{L^j_{q,x_0}}\right\} δpmin{ j=cminLq,x0jfc(x0)fj(x0)}

推论2(有目标攻击 β \beta β的形式化保证): L q , x 0 j L_{q,x_0}^j Lq,x0j是函数 f c ( x ) − f j ( x ) f_c(x)-f_j(x) fc(x)fj(x)在点 x 0 x_0 x0处的局部Lipschtiz常数, x x x的取值范围为 B p ( x 0 , R ) = { x ∈ R ∣ ∥ x − x 0 ∥ p ≤ R } B_p(x_0,R)=\{x\in\mathbb{R}|\|x-x_0\|_p \le R\} Bp(x0,R)={ xRxx0pR} δ ∈ B p ( 0 , R ) \delta \in B_p(0,R) δBp(0,R)。对于给定的目标类别 j j j,则有 ∥ δ ∥ p ≤ min ⁡ { f c ( x 0 ) − f j ( x 0 ) L q , x 0 j , R } \|\delta\|_p \le \min\left\{\frac{f_c(x_0)-f_j(x_0)}{L^j_{q,x_0}},R\right\} δpmin{ Lq,x0jfc(x0)fj(x0),R}

进一步可以将定理1扩展成不可微的函数的特例,比如ReLU激活函数。在这种情况下,引理1中使用的Lipchitz常数可以是替换为方向导数的最大范数。

引理2:(ReLU网络 β L \beta_L βL的形式保证): h ( ⋅ ) h(\cdot) h()是一个 l l l层ReLU神经网络,第 i i i层的权重为 W i W_i Wi,其中忽视偏差项 h ( x ) = σ ( W l ( σ ( W l − 1 ⋯ σ ( W 1 x ) ) ) h(x)=\sigma(W_l(\sigma(W_{l-1}\cdots \sigma(W_1x))) h(x)=σ(Wl(σ(Wl1σ(W1x)))其中 σ ( u ) = max ⁡ ( 0 , u ) \sigma(u)=\max(0,u) σ(u)=max(0,u)。令 S ⊂ R d S\subset \mathbb{R}^d SRd是一个凸闭包集合,如果 h ( x ) h(x) h(x)是Lipschitz连续,则以下等式成立 L q = sup ⁡ x ∈ S { ∣ sup ⁡ ∥ d ∥ = 1 D + h ( x ; d ) ∣ } L_q=\sup\limits_{x\in S}\{|\sup\limits_{\|d\|=1}D^{+} h(x;d)|\} Lq=xSsup{ d=1supD+h(x;d)}其中 D + h ( x ; d ) = lim ⁡ t → 0 + h ( x + t d ) − h ( x ) t D^{+}h(x;d)=\lim\limits_{t\rightarrow 0^{+}}\frac{h(x+td)-h(x)}{t} D+h(x;d)=t0+limth(x+td)h(x)是单向导数,则此时定理1,推论1,推论2都成立。

基于极值理论估计 L q , x 0 j L_{q,x_0}^j Lq,x0j

定理2(Fisher-Tippett-Gnedenko): 如果存在一序列实数对 ( a n , b n ) (a_n,b_n) (an,bn)使得 a n > 0 a_n>0 an>0 lim ⁡ n → ∞ F Y n ( a n y + b n ) = G ( y ) \lim\limits_{n \rightarrow \infty}F^n_Y(a_n y +b_n)=G(y) nlimFYn(any+bn)=G(y),其中 G G G是一个非退化分布函数,则由如下公式成立 G u m b e l   c l a s s   ( T y p e   I ) :   G ( y ) = exp ⁡ { − exp ⁡ [ − y − a W b W ] } ,   y ∈ R \mathrm{Gumbel\text{ } class}\text{ }(\mathrm{Type}\text{ }\mathrm{I}):\text{ }G(y)=\exp\{-\exp [-\frac{y-a_W}{b_W}] \},\text{ }y\in \mathbb{R} Gumbel class (Type I): G(y)=exp{ exp[bWyaW]}, yR F r e c h e t   c l a s s   ( T y p e   I I ) :   G ( y ) = { 0 , i f   y < a W , exp ⁡ { − ( y − a W b W ) − c W } , i f   y ≥ a W , \mathrm{Frechet\text{ }class \text{ }(Type \text{ }II)}:\text{ }G(y)=\left\{\begin{array}{ll}0,&\mathrm{if}\text{ }y< a_W,\\ \exp\left\{-(\frac{y-a_W}{b_W})^{-c_W}\right\},&\mathrm{if}\text{ }y\ge a_W,\end{array}\right. Frechet class (Type II): G(y)={ 0,exp{ (bWyaW)cW},if y<aW,if yaW, R e v e r s e   W e i b u l l   c l a s s   ( T y p e   I I I ) :   G ( y ) = { exp ⁡ { − ( a W − y b W ) c W } , i f   y < a W , 1 , i f   y ≥ a W \mathrm{Reverse\text{ }Weibull\text{ }class\text{ }(Type\text{ }III):}\text{ }G(y)=\left\{\begin{array}{ll}\exp\{-(\frac{a_W - y}{b_W})^{c_W}\},&\mathrm{if}\text{ }y<a_W,\\1,&\mathrm{if}\text{ }y\ge a_W \end{array}\right. Reverse Weibull class (Type III): G(y)={ exp{ (bWaWy)cW},1,if y<aW,if yaW其中 a W ∈ R a_W\in \mathbb{R} aWR b W > 0 b_W >0 bW>0 c W > 0 c_W >0 cW>0分别是位置,尺寸和形状参数。

定理2意味着样本的最大值遵循以上三个分布族中的一个。如果 g ( x ) g(x) g(x)有一个有界的Lipschitz常数, ∥ ∇ g ( x ( i ) ) ∥ q \|\nabla g(x^{(i)})\|_q g(x(i))q是有界的,那么它的极限分布一定有一个有限的右端点。论文作者主要reverse Weibull class感兴趣,因为它的累积概率分布有一个有限的右端点 a W a_W aW。右端点显示了分布的上极限,或被成为极值。这个极值就是局部交叉Lipschitz常数 L q , x 0 j L^j_{q,x_0} Lq,x0j,在该论文中,作者主要是要去估计这个常数。首先在分布 B p ( x 0 , R ) B_p(x_0,R) Bp(x0,R)中生成 N s N_s Ns x ( i ) x^{(i)} x(i)的样本,每一个批次中均匀且独立,共有 N b N_b Nb个批次数据量。然后去计算 ∥ ∇ g ( x ( i ) ) ∥ \|\nabla g(x^{(i)})\| g(x(i)),在集合 S S S中保存保存下每个批次的最大值。接下来,作者对反向威布尔分布参数进行了极大似然估计,并且位置估计 a ^ W \hat{a}_W a^W被用作去估计 L q , x 0 j L^j_{q,x_0} Lq,x0j

定理3(单隐层神经网络 F Y ( y ) F_Y(y) FY(y)): 考虑一个神经网络 f : R d → R K f:\mathbb{R}^d \rightarrow \mathbb{R}^K f:RdRK ,其中输入为 x 0 ∈ R d x_0\in \mathbb{R}^d x0Rd,隐层有 U U U个神经元且激活函数为ReLU激活函数。如果从球 B p ( x 0 , p ) B_p(x_0,p) Bp(x0,p)中进行均匀采样,则梯度 ∥ ∇ g ( x ) ∥ q \|\nabla g(x)\|_q g(x)q的累积分布函数记作 F Y ( y ) F_Y(y) FY(y),并且该分布函数是分段线性的,共有 M = ∑ i = 0 d C U i M=\sum\limits_{i=0}^d C^i_U M=i=0dCUi段。给定 c c c j j j,则有 g ( x ) = f c ( x ) − f j ( x ) g(x)=f_c(x)-f_j(x) g(x)=fc(x)fj(x),其中 1 p + 1 q = 1 \frac{1}{p}+\frac{1}{q}=1 p1+q1=1 1 ≤ p , q ≤ ∞ 1 \le p,q \le \infty 1p,q

证明: 单隐层第 j t h j_{th} jth个神经元的输出可以表示为 f j ( x ) = ∑ r = 1 U V j r ⋅ σ ( ∑ i = 1 d W r i ⋅ x i + b r ) = ∑ r = 1 U V j r ⋅ σ ( w r x + b r ) f_j(x)=\sum\limits_{r=1}^U V_{jr}\cdot \sigma\left(\sum\limits_{i=1}^d W_{ri}\cdot x_i+b_r\right)=\sum\limits_{r=1}^UV_{jr}\cdot \sigma(w_rx+b_r) fj(x)=r=1UVjrσ(i=1dWrixi+br)=r=1UVjrσ(wrx+br)其中 σ ( z ) = max ⁡ ( z , 0 ) \sigma(z)=\max(z,0) σ(z)=max(z,0)是ReLU激活函数, W W W V V V分别表示的是第一层和第二层的权重矩阵, w r w_r wr表示的矩阵 W W W的第 r r r行,则可以计算 g ( x ) g(x) g(x) ∥ ∇ g ( x ) ∥ q \|\nabla g(x)\|_q g(x)q表示为 g ( x ) = f c ( x ) − f j ( x ) = ∑ r = 1 U V c r ⋅ σ ( w r x + b r ) − ∑ r = 1 U V j r ⋅ σ ( w r x + b r ) = ∑ r = 1 U ( V c r − V j r ) ⋅ σ ( w r x + b r ) \begin{aligned}g(x)=f_c(x)-f_j(x)&=\sum\limits_{r=1}^U V_{cr}\cdot \sigma(w_r x+b_r)-\sum\limits_{r=1}^U V_{jr}\cdot \sigma(w_r x+b_r)\\&=\sum\limits_{r=1}^U(V_{cr}-V_{jr})\cdot \sigma(w_r x+b_r)\end{aligned} g(x)=fc(x)fj(x)=r=1UVcrσ(wrx+br)r=1UVjrσ(wrx+br)=r=1U(VcrVjr)σ(wrx+br)并且则有 ∥ ∇ g ( x ) ∥ q = ∥ ∑ r = 1 U I ( w r x + b r ) ( V c r − V j r ) w r ⊤ ∥ q \|\nabla g(x)\|_q = \left\|\sum\limits_{r=1}^U\mathbb{I}(w_r x+b_r)(V_{cr}-V_{jr})w^{\top}_r\right\|_q g(x)q=r=1UI(wrx+br)(VcrVjr)wrq其中 I ( z ) \mathbb{I}(z) I(z)表示的是一个一元指示函数 I ( z ) = { 1 , i f   z > 0 0 , i f   z ≤ 0 \mathbb{I}(z)=\left\{\begin{array}{ll}1,&\mathrm{if}\text{ }z>0\\0,&\mathrm{if}\text{ }z \le 0\end{array}\right. I(z)={ 1,0,if z>0if z0

如上图所示,超平面 w r x + b r = 0 , r ∈ { 1 , ⋯   , U } w_r x +b_r=0,r\in\{1,\cdots,U\} wrx+br=0,r{ 1,,U} d d d维空间 R d \mathbb{R}^d Rd划分为不同的区域,每一个区域内满足不同的不等式约束,比如 w r + x + b r + > 0 w_{r_+}x+b_{r_+}>0 wr+x+br+>0 w r − x + b r − < 0 w_{r_-}x+b_{r_-}<0 wrx+br<0。给定 x x x,对于任意 r r r可以通过查看 w r x + b r w_rx+b_r wrx+br从而来判断它属于哪一个区域。同一个区域的所有的点的梯度范数是相同的,即比如对于任意的 x 1 x_1 x1 x 2 x_2 x2满足 I ( w r x 1 ) = I ( w r x 2 + b r ) \mathbb{I}(w_rx_1)=\mathbb{I}(w_rx_2+b_r) I(wrx1)=I(wrx2+br),则可以推知 ∥ ∇ g ( x 1 ) ∥ = ∥ ∇ g ( x 2 ) ∥ \|\nabla g(x_1)\|=\|\nabla g(x_2)\| g(x1)=g(x2)。因为对于一个有 U U U个超平面的 d d d维空间中会存在最多 M = ∑ i = 0 d C U i M=\sum\limits_{i=0}^d C_U^i M=i=0dCUi个区域,梯度函数 ∥ ∇ g ( x ) ∥ q \|\nabla g(x)\|_q g(x)q最多可以取 M M M个不同的值。

如果以 x 0 x_0 x0为中心, R R R为半径的球 B p ( x 0 , R ) B_p(x_0,R) Bp(x0,R)中均匀采样的,并且记 ∥ g ( x ) ∥ q \|g(x)\|_q g(x)q为随机变量 Y Y Y,当 Y Y Y随机变量的分布是离散的时候,则它的分布函数是至少有 M M M段。不失一般性,假定对于 Y Y Y M 0 < M M_0 < M M0<M个不同的数值,令 m ( 1 ) , m ( 2 ) , ⋯   , m ( M 0 ) m_{(1)},m_{(2)},\cdots,m_{(M_0)} m(1),m(2),,m(M0)是升序排列, Y Y Y的概率分布函数 F Y ( y ) F_Y(y) FY(y)可以被定义为如下所示 F Y ( m i ) = F Y ( m ( i − 1 ) ) + V ( { x ∣ ∥ ∇ g ( x ) ∥ q = m ( i ) } ) ∩ V d ( B p ( x 0 , R ) ) V d ( B p ( x 0 , R ) ) ,   i = 1 , ⋯   , M 0 F_Y(m_i)=F_Y(m_{(i-1)})+\frac{\mathbb{V}(\{x|\|\nabla g(x)\|_q=m_{(i)}\})\cap \mathbb{V}_d(B_p(x_0,R))}{\mathbb{V}_d(B_p(x_0,R))},\text{ } i=1,\cdots,M_0 FY(mi)=FY(m(i1))+Vd(Bp(x0,R))V({ xg(x)q=m(i)})Vd(Bp(x0,R)), i=1,,M0其中 F Y ( m ( 0 ) ) = 0 F_Y(m_{(0)})=0 FY(m(0))=0,且有 m ( 0 ) < m ( 1 ) m_{(0)}<m_{(1)} m(0)<m(1) V d ( E ) \mathbb{V}_d(E) Vd(E)表示的是在 d d d维空间中 E E E的容量。

给定一个样本 x 0 x_0 x0,分类器函数为 f ( x 0 ) f(x_0) f(x0),目标类别为 j j j。分类器鲁棒性的有目标攻击的CLEVER分数能通过 g ( x 0 ) g(x_0) g(x0) L q , x 0 j L_{q,x_0}^j Lq,x0j,同理无目标攻击的CLEVER也可以被计算出来,具体的算法流程图如下所示

实验结果

如下图所示来自不同数据集和网络结构的图像的交叉Lipschitz常数样本的概率分布函数和拟合的反向威布尔分布。还显示了估计的最大似人估计的参数、p值和K-S检验统计量D。

如下图所示,如果p值大于0.05,则不能拒绝零假设,这意味着基础数据样本很好地符合反向威布尔分布。可以发现,所有数字都接近100%,从经验上验证了可以使用反向威布尔分布作为 梯度范数。因此,反向威布尔分布(即极值)的拟合位置参数 a ^ W \hat{a}_W a^W可以是用于计算CLEVER分数的局部交叉Lipschitz常数的良好估计。

下面两个表格分别表示了在 L ∞ L_\infty L L 2 L_2 L2范数下,CLEVE分数与CW、I-FSGM以及SLOPE这四种评估方法在不同条件设置下的实验结果,对比实验结果可以发现,针对不同的神经网络模型CLEVER分数更好的体现出不同扰动的攻击程度,对于有防御机制的深度学习模型,CLEVER的分数也有显著的提高,说明该模型的鲁棒性能更好。

猜你喜欢

转载自blog.csdn.net/qq_38406029/article/details/123174565