Press "Enter" to skip to content

Fisher信息量在对抗样本中的应用

 

©PaperWeekly 原创 · 作者 |  鬼谷子

 

研究方向 |  GAN图像生成、情绪对抗样本生成

 

 

引言

 

对抗样本对深度学习模型产生对抗行为的内部机理一直是一个研究热点,只有更好的理解其运作机理才能更好的对对抗攻击产生更有效的防御策略。最近几年有研究者通过利用数理统计中 Fisher 信息量的这一个数学工具去挖掘深度学习模型对抗行为的深层原因,并基于此提出了相应防御方法。 本文主要是总结归纳最近几年 Fisher 信息量在对抗样本研究中的应用,并从中选出了三篇相关代表作进行解析。

 

 

预备知识

 

2.1 Fisher信息量定义

 

Fisher 信息是一种测量可观测随机变量携带的未知参数的信息量的方法,其中的概率依赖于参数。令是一个参数为的随机变量的概率密度函数。如果随着的变化出现陡峭的峰谷,则说明从数据中得到了正确的值,换句话说数据提供了关于参数很多的信息。如果随着的变化是比较平缓的,则需要对进行更多的采样进而估计参数。

 

形式上,关于似然函数自然对数的偏导数称为分数,即为。在某些规则性条件下,如果是真参数(即为实际分布,则在真参数值处评估的分数的期望值为 0,具体推导如下所示:

 

 

Fisher 信息量则被定义为分数的方差,具体公式如下所示:

 

由上公式可以发现。携带高 Fisher 信息的随机变量意味着分数的绝对值通常很高。Fisher 信息不是特定观测值的函数,因为随机变量已被平均化。如果关于是二次可微的,则此时 Fisher 信息量可以写为如下公式:

 

因为:

 

 

又因为:

 

 

综合以上两公式可以推导出 Fisher 信息量的新形式,证毕。

 

2.2 Cramer–Rao界推导

 

Cramer-Rao 界指出,Fisher 信息量的逆是的任何无偏估计量方差的下界。考虑一个的无偏估计 ,无偏估计的数学形式可以表示为:

 

 

因为这个表达式与无关,所以它对的偏导数也必须为。根据乘积法则,这个偏导数也等于:

 

 

对于每个,似然函数是一个概率密度函数,因此,进而则有:

 

 

根据以上两个条件,可以得到:

 

 

然后将将被积函数分解为:

 

 

将积分中的表达式进行平方,再根据 Cauchy–Schwarz 不等式可得:

 

 

其中第二个括号内的因子被定义为 Fisher 信息量,而第一个括号内的因子是估计量的期望均方误差,进而则有:

 

 

由上公式可以发现估计的精度基本上受到似然函数的 Fisher 信息量的限制。

 

2.3 矩阵形式

 

给定一个的参数向量,此时 Fisher 信息量可以表示为一个的矩阵。这个矩阵被称为 Fisher 信息矩阵,具体形式如下所示:

 

Fisher 信息矩阵是一个的半正定矩阵。在某些正则条件下,Fisher 信息矩阵又可以写成如下形式:

 

 

基于Fisher信息量检测对抗攻击

 

在该论文中,作者从理论分析的角度研究了 Fisher 信息量在检测对抗攻击时的可用性,另外作者讨论了与网络大小成正比的变量有哪些,并研究了它们在对抗样本中的行为是怎样的,展示了它们如何突出单输入神经元的重要性,从而为进一步分析神经网络的不合理行为提供了可视化工具。

 

 

论文链接:

 

https://www.sciencedirect.com/science/article/abs/pii/S0925231219316546

 

3.1 论文方法

 

数据集是从维参数向量的分布采样而来的,则此时的 Fisher 信息量如下所示:

 

在该论文中作者为了简化,论文中对数似然函数估计都是足够平滑的。Fisher 信息矩阵主要测量的是对数似然估计的平均局部曲率。考虑一个小的在维向量方向上的扰动即,则在散度的泰勒展开式为:

可以被看作在参数有多少信息量可以被获得,如果数值高意味着参数并没有很好的拟合好数据样本 ,所以可以用 用于测量不正常的样本,比如对抗样本。矩阵的维度是,但是要计算这个矩阵的计算量非常大。在机器学习中,经常是需要从数据中学习一个输入到输出的参数化映射,其中包含所有的权重和偏置的参数。假定输入样本为,对应的输出为,训练中一个批次的大小为,机器学习的目的是找到一个,使得,其中是一个维的向量,并且可以写成,此时关于的 Fisher 信息矩阵可以表示为:

但是需要清楚的是,即使是一个非常小的神经网络计算参数的 Fisher 信息矩阵也是非常棘手的。因为该论文的关注点只是 Fisher 信息矩阵的最大特征值,所以可以利用矩阵的迹来进行代替,具体公式如下所示:

 

由此可以发现使用反向传播算法的计算量为,所以计算量大大减小,随着神经网络规模的增加计算量呈线性增长。

 

该论文中,作者将矩阵的迹表示为,进而则有:

 

 

其中。假定预测类别,则有以下公式:

 

 

以上公式可以看成一个二分类问题,即属于类别或者不属于类别,正则化之后可以得到

 

其中,以上目标函数是用于测量在点的统计流形曲率,现实中关于的梯度只出现在某个方向导数里,近似的计算公式为:

 

其中是一个非常小的数值。为了能够获得更多定量信息,作者引入了一个单变量的随机变量,进而则有以下公式:

 

 

其中,向量跟有相同的维度,此时关于的 Fisher 信息量的计算公式可以表示为:

 

进一步正则化则有如下计算公式:

 

其中:

 

为了简化计算量,作者在这里采用了一个非常简单直观的方法,对于每一个,取,进而则有如下计算公式:

对于每个都可以获得一个,作者称该向量为 Fisher 信息敏感度,它反映了输入中第个分量的重要程度,该方法通过一步后向传递就可以进行有效的计算。

 

基于Fisher信息量防御对抗攻击

 

在该论文中,作者提出了一种通过抑制 Fisher 信息矩阵的最大特征值来防御对抗性攻击的方案。通过理论分析可以发现 Fisher 信息矩阵的特征值较大,即使输入差异较小,输出差异也会变大,这就解释了对抗样本存在的原因。通过控制 Fisher 信息矩阵的特征值,这使得对抗防御成为可能,论文中作者由于求 Fisher 信息矩阵最大特征值的计算成本很高,其解决方案是在原始网络的损失函数中添加一个表示 Fisher 信息矩阵迹的项,因为最大特征值由矩阵的轨所限定。实验结果验证了本论文方法的有效性。

 

 

论文链接:

 

https://arxiv.org/abs/1909.06137

 

4.1 论文方法

给定一张的灰度图,分类器可以将其分为类中的某一类别。假定将图片从一个矩阵拉成一个长度为的向量,则扰动图片。干净图片和扰动图片经过深度神经网络分类,最后一层的层的输出分别为

,其中对于,且

令样本属于第类的概率位,其中是一个向量,则有且,一般情况下,和的距离通过利用散度去测量,具体公式如下所示:

 

其中  是的 Fisher 信息矩阵。散度的数值变大的时候,Fisher 信息矩阵的最大特征值也会随着变大。所以,对抗攻击的现象会出现在数值较大的时候,对抗攻击方法 OSSA 就是利用 Fisher 信息矩阵最大特征值构造而来,具体的公式如下所示:

 

 

其中表示的是平方范数的扰动上界,是损失函数。构造对抗样本的问题可以转化为找到 Fisher 信息矩阵最大特征值和对应的特征向量的问题,即。

 

4.2 可行性分析

 

当  取到最小值时的解为,这就意味着正则化项  迫使向中心点  , 不会向点 移 动,所以一个很自然的担心是这样会导致深度神经网络的分类准确率下降,在该论文中,作者表明不会出现这种状况。

 

最小化  确实会使得向点移动,但是损失函数的中的第一项会使得中心点不能被到达。移向中心点趋势并不是有害的,作者真正关心的是正确的类别,而不是的取值,所以,作者不会追求更大的值,而且使得在所有的类别概率值中值最大。

 

以上的情况说明了一个事实,一个样本分类的高置信度的结果有时候是不可靠的,原因在于类的高置信度意味着概率数值是大的,其它类别的概率值的数值是小的。一种极端的情况是当时,则有  。 总之,高置信度样本对对抗扰动是非常敏感的,因此该样本面对对抗攻击也是非常脆弱的。

 

4.3 标签平滑正则化

 

论文中的方法和都是会将份分类标签平滑化,并且正确标签依然是有最高的概率。标准的一般分为两步,首先是对于给定的类别,将标签修改为:

 

 

其中是超参数,是一个标签分量,其中正确的类别分量对应的数值是 1,其它的分量对应的数值为 0;然后用新的标签分量去训练这个网络。方法可以使得一类的数据更加紧凑,这样可以更有效的抵御对抗攻击,但是该方法的问题在于需要格外有一个先验假设即标签是均匀分布的。本文论文的方法是基于严格的数学推导,不需要这样的假设条件,因此对比可知,该论文的方法有一个更好的解释性。

 

 

基于Fisher信息量理解对抗行为

 

在该论文中,作者主要对对抗扰动可以攻击深度学习模型的对抗行为进行研究,旨在揭示深度学习模型的泛化性能与对抗行为之间的关系。作者在论文中提出了一个基于 Fisher 信息量的度量方式,该指标在信息论上可以将深度学习的损失函数分为的非鲁棒性(负责对抗行为)和鲁棒性的两个成分。实验结果表明,当前的深度学习模型在很大程度上依赖于优化非鲁棒性件成分来实现较好的分类性能。

 

 

论文链接:

 

https://arxiv.org/abs/1906.02494v1

 

5.1 论文方法

 

在之前的研究中,在测试集上预测准确率往往用于去评估深度学习模型的性能。然而,这种评估方式会隐藏模型性能和对抗行为之间的关系。在该论文中,为了建立更透明的关系和更好理解模型的对抗行为,作者提出了采用任何不同类别的数据对的平均散度作为分类性能的度量。

 

令表示的是输入的图片,是对应的标签分布,是分类器模型,是模型的输出分布。是不同类别的数据对的数目。是和的散度,论文作者提出的交叉熵散度的公式如下所示:

 

 

由不等式可知,从三角不等式中导出以下下界,可以用于描述交叉熵损失函数与论文中提出的目标之间的关系:

 

其中表示的是和的散度。能够更有效地表征模型训练过程中的行为,当训练损失下降的时候,的下界会增大。

 

从另一个视角可知,当给网络随机初始化的时候,深度神经网络没有任何正确分类样本的知识。因此,它不能够区分开输入样本,以它们的输出概率。此时,在训练的早期阶段,是相对较小的;随着训练的进行,更多的标签依赖信息被整合到模型中,神经网络的泛化能力也随之加强,并且在测试集上的输出分布会越来越接近真实的标签分布;在训练的末期阶段,模型损失将会下降到一个相对小的数值,此时将会足够接近)。

 

本文提出的度量方法可以更好的显示模型是如果能将不同类别的数据区分开来。如下公式所示为对抗训练的目标函:

 

随着训练的进行,参数会接近最优,输出分布能够接近真实标签。在这种情况下散度是关于第一个变量连续的,所以则有如下公式:

以上观察可以从分布的视角下去研究模型的对抗行为。为了更好的了解对抗行为和度量之间的联系,作者定义了以下对抗度量的公式:

相应对抗训练的目标函数如下所示:

给定,其泰勒展开是可以表示:

 

其中是关于的 Fisher 信息量,是的第项,是的元素数,其中的具体计算公式如下所示:

 

 

其中是足够的小,更高阶的项的是接近于,以上公式可以简化为:

 

 

通过设定,可以得到,其中是矩阵的最大特征值。因此,则有:

 

 

需要注意的是是 Fisher 信息矩阵的谱范数。以上的推导展示了模型在输入样本附近的对抗行为由 Fisher 信息矩阵所决定,如果的谱范数越大,则附近的对抗行为越严重。给定两个数据标签对和,并且,可以将重新整理为:

 

因此,通过泰勒展开可以得到式可以得到:

 

由此可知在每一个数据点的对抗行为与目标损失函数的分数与在每个点的 Fisher 信息量有关。上文提出的对抗训练限制了一个深度神经网络模型的输入输出 Fisher 信息量,这种限制是一个好的深度模型的标准。由 Cramer-Rao 界可知:

 

 

如果尝试使用输出概率到统计数据来重建输入,则方差的不确定性由 Fisher 信息的倒数限定。对于深度神经网络,当它使用正确的标签对图像进行分类时,标签没有任何关于环境的信息(例如,狗是什幺颜色、狗在哪里、对抗干扰等)。这意味着,对于一个好的深度神经网络模型,从输出分布导出的任何统计量的方差都相对较大。鉴于 Cramer-Rao 界,这意味着深度神经网络的 Fisher 信息量是一个相对较小的值。令表示为  表示为。因此,   可以公式化为:

 

 

由上公式可以发现,当和增大时,都会使得的值变大。是诱导的二阶多项式,是两个输入和之间固定的距离,增大将会导致的范数增大。所以可知,如果一个模型严重依赖的变大来提升性能,则会的范数也会随之增大。又由以上的结论可知,的范数越大,在点附近的对抗行为越严重,因为可知对抗行为和模型的分类性能是有一种内在冲突的。项可以提升分类性能但是却不会引起对抗行为。所以,以上目标函数成功地将非鲁棒元素和鲁棒元素分解开来。

 

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注