前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何评估神经网络的"鲁棒性"?一种通用方法:CLEVER

如何评估神经网络的"鲁棒性"?一种通用方法:CLEVER

作者头像
CV君
发布2022-03-30 11:15:01
发布2022-03-30 11:15:01
3.8K0
举报

导言:

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

详细信息如下:

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

01

数学符号介绍

假定表示的是一个神经网络分类器,其中表示输入空间的维度,表示的是输出空间的维度。表示干净的输入样本,表示对抗样本,表示的是对抗扰动,表示的范数,其中。表示的是最小的对抗扰动。表示的是对抗扰动的上界,表示的是对抗扰动的下界。表示的是Lipschiz常数,表示的是局部Lipschitz常数。表示的以干净样本为中心,半径为的球体。表示的是累积分布函数。

02

分类器鲁棒性的保证分析

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

(扰动样本和对抗样本):给定一个输入向量,该样本对应的类别为类,分类函数为,预测类别为。假设是一个干净样本的一个扰动样本 ,则存在扰动,有,其中。对抗样本则是能够使得分类器预测标签出错的扰动样本。无目标攻击特指找到一个对抗样本,且有。有目标攻击特指找到一个对抗样本使得分类器预测的标签为,其中。

(最小对抗扰动):给定一个输入向量和分类器,的最小的对抗扰动表示为。

(下界):假定为样本的最小对抗扰动,则下界表示为,其中,如果对于任意样本的扰动样本有,则该扰动样本不是对抗样本。

(上界):*假定为样本的最小对抗扰动,则上界表示为,其中,进而存在一个样本的对抗样本有。

对于任何对抗攻击其最小对抗扰动的上界是很容易被发现的,但是下界却不容易找到。保证了对于任意的扰动神经网络分类器都是鲁棒的。

(Lipschitz连续和梯度范数关系):令是一个凸有界闭集,并且令是一个在包含区域的开集中连续可微函数。如果是一个有Lipschitz常数的Lipschitz函数,则对于任意,以下不等式成立

|h(x)-h(y)|\le L_q\|x-y\|_p

其中,是的梯度,并且有,。

证明:对于给定任意的和,令表示的是指向的单位向量,其中有。定义一个一元函数,并且有,,可知和分别表示的是的右导数和左导数,进而则有

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.

对于ReLU网络,至少有有限个点使得。这是因为每个不连续的都是由某些ReLU激活引起的,并且只有有限个组合,令这些点为

,在每个区间上分别使用微积分的基本定理,则对于每个,存在

\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}

(无目标攻击下界):令,是一个多分类器,其中是连续可微的,令表示的是分类器预测样本的类别。对于所有,则有

\|\delta\|_p \le \min\limits_{j \ne c}\frac{f_c(x_0)-f_j(x_0)}{L^j_q}

其中,且有,。是函数在范数的Lipschiz常数。换言之,是最小的扰动下界。

证明:根据引理1可知,假定是一个有Lipschitz常数的Lipschitz连续的函数,则有

|g(x)-g(y)|\le L^j_q \|x-y\|_p

令和,可以得到

|g(x_0+\delta)-g(x_0)|\le L^j_q \|\delta\|_p

其中可以将上面公式化简为以下形式

g(x_0)-L^j_q\|\delta\|_p \le g(x_0+\delta)\le g(x_0)+L^j_q \|\delta\|_p

当时,此时对抗样本被发现。根据上公式,的下界为。如果是足够的小以至于,则此时没有对抗样本生成

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}

为了能够达到,取在上,取上界的最小值,则有

\|\delta\|_p \le \min\limits_{j\ne c}\frac{f_c(x_0)-f_j(x_0)}{L^j_q}

定理1的一维情况的直观图如下所示,函数在附近的值位于由两条线通过形成的双圆锥内,斜率等于,其中表示的是函数在点附近的Lipschitz常数。换句话说,在附近的函数值,即可以由、和Lipschitz常数所限定。当减小到时,则此时会发现一个对抗样本,的最小变化为。

注意:是包含交叉项函数的Lipschitz常数,进而可以称为交叉Lipschitz常数。

无目标攻击的形式化保证):令是函数在点处的局部Lipschtiz常数,的取值范围为且。由定理1可知,可以得到

\|\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\}

(有目标攻击的形式化保证):令是函数在点处的局部Lipschtiz常数,的取值范围为且。对于给定的目标类别,则有

\|\delta\|_p \le \min\left\{\frac{f_c(x_0)-f_j(x_0)}{L^j_{q,x_0}},R\right\}

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

(ReLU网络的形式保证):令是一个层ReLU神经网络,第层的权重为,其中忽视偏差项

h(x)=\sigma(W_l(\sigma(W_{l-1}\cdots \sigma(W_1x)))

其中。令是一个凸闭包集合,如果是Lipschitz连续,则以下等式成立

L_q=\sup\limits_{x\in S}\{|\sup\limits_{\|d\|=1}D^{+} h(x;d)|\}

其中是单向导数,则此时定理1,推论1,推论2都成立。

03

基于极值理论估计

‍(Fisher-Tippett-Gnedenko):如果存在一序列实数对使得,,其中是一个非退化分布函数,则由如下公式成立

\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}
\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.

其中,,分别是位置,尺寸和形状参数。

定理2意味着样本的最大值遵循以上三个分布族中的一个。如果有一个有界的Lipschitz常数,是有界的,那么它的极限分布一定有一个有限的右端点。论文作者主要reverse Weibull class感兴趣,因为它的累积概率分布有一个有限的右端点。

右端点显示了分布的上极限,或被成为极值。这个极值就是局部交叉Lipschitz常数,在该论文中,作者主要是要去估计这个常数。首先在分布中生成个的样本,每一个批次中均匀且独立,共有个批次数据量。

然后去计算,在集合中保存保存下每个批次的最大值。接下来,作者对反向威布尔分布参数进行了极大似然估计,并且位置估计被用作去估计。

(单隐层神经网络):考虑一个神经网络,其中输入为,隐层有个神经元且激活函数为ReLU激活函数。如果从球中进行均匀采样,则梯度的累积分布函数记作,并且该分布函数是分段线性的,共有段。给定和,则有,其中,

证明:单隐层第个神经元的输出可以表示为

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)

其中是ReLU激活函数,和分别表示的是第一层和第二层的权重矩阵,表示的矩阵的第行,则可以计算和表示为

\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}

并且则有

\|\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

其中表示的是一个一元指示函数

\mathbb{I}(z)=\left\{\begin{array}{ll}1,&\mathrm{if}\text{ }z>0\\0,&\mathrm{if}\text{ }z \le 0\end{array}\right.

如上图所示,超平面将维空间划分为不同的区域,每一个区域内满足不同的不等式约束,比如和。给定,对于任意可以通过查看从而来判断它属于哪一个区域。

同一个区域的所有的点的梯度范数是相同的,即比如对于任意的和满足,则可以推知。因为对于一个有个超平面的维空间中会存在最多个区域,梯度函数最多可以取个不同的值。

如果以为中心,为半径的球中均匀采样的,并且记为随机变量,当随机变量的分布是离散的时候,则它的分布函数是至少有段。不失一般性,假定对于有个不同的数值,令是升序排列,的概率分布函数可以被定义为如下所示

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

其中,且有

m_{(0)}<m_{(1)}

,表示的是在维空间中的容量。

给定一个样本,分类器函数为,目标类别为。分类器鲁棒性的有目标攻击的CLEVER分数能通过和,同理无目标攻击的CLEVER也可以被计算出来,具体的算法流程图如下所示

04

实验结果

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

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

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

END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 我爱计算机视觉 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档