关注公众号,发现CV技术之美
导言:
神经网络鲁棒性评估一直是深度学习领域中一个热门的研究方向,该论文是通用评估神经网络鲁棒性方法的开山之作。作者将神经网络鲁棒性问题转换成局部Lipschitz常数的估计问题,并利用极值理论方法进行评估,进而提出了一种度量神经网络鲁棒性的通用方法-CLEVER,该方法可以对不可知的攻击方式进行评估,并且对于大规模的神经网络计算成本较少。该论文涉及到大量的数学推导,需要沉下心来慢慢琢磨。
详细信息如下:
论文链接:https://arxiv.org/abs/1801.10578v1
01
数学符号介绍
假定表示的是一个神经网络分类器,其中表示输入空间的维度,表示的是输出空间的维度。表示干净的输入样本,表示对抗样本,表示的是对抗扰动,表示的范数,其中。表示的是最小的对抗扰动。表示的是对抗扰动的上界,表示的是对抗扰动的下界。表示的是Lipschiz常数,表示的是局部Lipschitz常数。表示的以干净样本为中心,半径为的球体。表示的是累积分布函数。
02
分类器鲁棒性的保证分析
本文作者对神经网络分类器的鲁棒性给出了严格的数学定理的形式,并且该定理只需要一个很宽泛的假设,即分类器函数是Lipschitz连续的。
(扰动样本和对抗样本): 给定一个输入向量,该样本对应的类别为类,分类函数为,预测类别为。假设是一个干净样本的一个扰动样本 ,则存在扰动,有,其中。对抗样本则是能够使得分类器预测标签出错的扰动样本。无目标攻击特指找到一个对抗样本,且有。有目标攻击特指找到一个对抗样本使得分类器预测的标签为,其中。
(最小对抗扰动) :给定一个输入向量和分类器,的最小的对抗扰动表示为。
( 下界): 假定为样本的最小对抗扰动,则下界表示为,其中,如果对于任意样本的扰动样本有,则该扰动样本不是对抗样本。
( 上界): *假定为样本的最小对抗扰动,则上界表示为,其中,进而存在一个样本的对抗样本有。
对于任何对抗攻击其最小对抗扰动的上界是很容易被发现的,但是下界却不容易找到。保证了对于任意的扰动神经网络分类器都是鲁棒的。
(Lipschitz连续和梯度范数关系): 令是一个凸有界闭集,并且令是一个在包含区域的开集中连续可微函数。如果是一个有Lipschitz常数的Lipschitz函数,则对于任意,以下不等式成立
其中,是的梯度,并且有,。
证明: 对于给定任意的和,令表示的是指向的单位向量,其中有。定义一个一元函数,并且有,,可知和分别表示的是的右导数和左导数,进而则有
对于ReLU网络,至少有有限个点使得。这是因为每个不连续的都是由某些ReLU激活引起的,并且只有有限个组合,令这些点为
,在每个区间上分别使用微积分的基本定理,则对于每个,存在
(无目标攻击下界 ): 令,是一个多分类器,其中是连续可微的,令表示的是分类器预测样本的类别。对于所有,则有
其中,且有,。是函数在范数的Lipschiz常数。换言之,是最小的扰动下界。
证明: 根据引理1可知,假定是一个有Lipschitz常数的Lipschitz连续的函数,则有
令和,可以得到
其中可以将上面公式化简为以下形式
当时,此时对抗样本被发现。根据上公式,的下界为。如果是足够的小以至于,则此时没有对抗样本生成
为了能够达到,取在上,取上界的最小值,则有
定理1的一维情况的直观图如下所示,函数在附近的值位于由两条线通过形成的双圆锥内,斜率等于,其中表示的是函数在点附近的Lipschitz常数。换句话说,在附近的函数值,即可以由、和Lipschitz常数所限定。当减小到时,则此时会发现一个对抗样本,的最小变化为。
注意:是包含交叉项函数的Lipschitz常数,进而可以称为交叉Lipschitz常数。
无目标攻击的形式化保证):令是函数在点处的局部Lipschtiz常数,的取值范围为且。由定理1可知,可以得到
(有目标攻击 的形式化保证): 令是函数在点处的局部Lipschtiz常数,的取值范围为且。对于给定的目标类别,则有
进一步可以将定理1扩展成不可微的函数的特例,比如ReLU激活函数。在这种情况下,引理1中使用的Lipchitz常数可以是替换为方向导数的最大范数。
(ReLU网络 的形式保证): 令是一个层ReLU神经网络,第层的权重为,其中忽视偏差项
其中。令是一个凸闭包集合,如果是Lipschitz连续,则以下等式成立
其中是单向导数,则此时定理1,推论1,推论2都成 立。
03
基于 极值理论估计
(Fisher-Tippett-Gnedenko):如果存在一序列实数对使得,,其中是一个非退化分布函数,则由如下公式成立
其中,,分别是位置,尺寸和形状参
数。
定理2意味着样本的最大值遵循以上三个分布族中的一个。如果 有一个有界的Lipschitz常数, 是有界的,那幺它的极限分布一定有一个有限的右端点。论文作者主要reverse Weibull class感兴趣,因为它的累积概率分布有一个有限的右端点 。
右端点显示了分布的上极限,或被成为极值。这个极值就是局部交叉Lipschitz常数 ,在该论文中,作者主要是要去估计这个常数。首先在分布 中生成 个 的样本,每一个批次中均匀且独立,共有 个批次数据量。
然后去计算 ,在集合 中保存保存下每个批次的最大值。接下来,作者对反向威布尔分布参数进行了极大似然估计,并且位置估计 被用作去估计 。
(单隐层 神经网络 ):考虑一个神经网络 ,其中输入为 ,隐层有 个神经元且激活函数为ReLU激活函数。如果从球 中进行均匀采样,则梯度 的累积分布函数记作 ,并且该分布函数是分段线性的,共有 段。给定 和 ,则有 ,其中 ,
证明: 单隐层第个神经元的输出可以表示为
其中是ReLU激活函数,和分别表示的是第一层和第二层的权重矩阵,表示的矩阵的第行,则可以计算和表示为
并且则有
其中表示的是一个一元指示函数
如上图所示,超平面 将 维空间 划分为不同的区域,每一个区域内满足不同的不等式约束,比如 和 。给定 ,对于任意 可以通过查看 从而来判断它属于哪一个区域。
同一个区域的所有的点的梯度范数是相同的,即比如对于任意的 和 满足 ,则可以推知 。因为对于一个有 个超平面的 维空间中会存在最多 个区域,梯度函数 最多可以取 个不同的值。
如果以 为中心, 为半径的球 中均匀采样的,并且记 为随机变量 ,当 随机变量的分布是离散的时候,则它的分布函数是至少有 段。不失一般性,假定对于 有 个不同的数值,令 是升序排列, 的概率分布函数 可以被定义为如下所示
其中 , 且有
,
表示的是在
维空间中
的容量。
给定一个样本 ,分类器函数为 ,目标类别为 。分类器鲁棒性的有目标攻击的CLEVER分数能通过 和 ,同理无目标攻击的CLEVER也可以被计算出来,具体的算法流程图如下所示
04
实验结果
如下图所示绘制了来自不同数据集和网络结构的图像的交叉Lipschitz常数样本的概率分布函数和拟合的反向威布尔分布。还显示了估计的最大似人估计的参数、p值和K-S检验统计量D。
如下图所示,如果p值大于0.05,则不能拒绝零假设,这意味着基础数据样本很好地符合反向威布尔分布。可以发现,所有数字都接近100%,从经验上验证了可以使用反向威布尔分布作为 梯度范数。因此,反向威布尔分布(即极值)的拟合位置参数 可以是用于计算CLEVER分数的局部交叉Lipschitz 常数的良好估计。
下面两个表格分别表示了在 和 范数下,CLEVE分数与CW、I-FSGM以及SLOPE这四种评估方法在不同条件设置下的实验结果,对比实验结果可以发现,针对不同的神经网络模型CLEVER分数更好的体现出不同扰动的攻击程度,对于有防御机制的深度学习模型,CLEVER的分数也有显着的提高,说明该模型的鲁棒性能更好。
Be First to Comment