▌1 引言
该论文是关于神经网络鲁棒性理论类的文章。类似有Sigmoid激活函数的神经网络,由于其非线性,使得在进行神经网络鲁棒验证评估时,不可避免地会引入了不精确性。
当前的一个研究方向是寻找更严格的近似值以获得更精确的鲁棒验证结果。然而,现有的紧密度定义是启发式的,缺乏理论基础。在该论文中,作者对现有的神经元紧密度表征进行了全面的实证分析,并揭示它们仅在特定的神经网络上具有优势。
另外,作者基于神经网络紧密度的概念重新提出了一个统一的神经网络紧密度定义,并表明计算神经网络紧密度是一个复杂的非凸优化问题。为了能够更好地理解该论文原理,文末给出了论文中一些原理示例的相关代码。
论文链接: https://arxiv.org/abs/2208.09872
▌2 预备知识
神经网络是遵循逐层传播的,输入层上的每个神经元都接受一个输入值,该输入值乘以权重系数,然后传递给下一层的后续神经元。所有传入的数字相加。总和被馈送到激活函数
,并且
的输出与偏差
相加。然后将结果传播到下一层,直到到达输出层。
给定一个
层神经网络
,即
,其中
是一个第
层非线性可微激活函数。
可以是仿射变换或卷积操作中的其中一个:
其中
,
和
分别表示权重矩阵,偏置向量和卷积操作。在该论文中,作者主要关注的是
,
和
的激活函数如下所示:
神经网络
的输出是一个
维的值为
到
之间的向量,每一个维度其对应的是属于该类别的概率。令
是一个
类分类标签集合,
表示的是输入
的输出标签
上公式直观地发现,
返回了一个集合
中的标签
,
是个输出向量中最大值。
因为神经网络本质上是由计算机通过根据训练数据微调网络中的权重而组成的“程序”。与程序员开发的手工程序不同,神经网络缺乏形式化表示,几乎无法解释,这使得形式化和验证其属性非常具有挑战性。如果对神经网络的输入的合理扰动不会改变分类结果,则神经网络该扰动是鲁棒的。扰动通常通过扰动输入
和原始输入
之间的距离来测量,使用
范数来表示,其中
可以是
、
或
。一般的情况情况下,使用的度量范数是
。
神经网络的鲁棒性可以通过界
进行量化截断,
是一个安全的扰动距离,使得任何低于
的扰动都具有与神经网络的原始输入相同的分类结果。
定义1(局部鲁棒性): 给定一个神经网络,一个输入和一个在下的边界。关于是鲁棒的,当且仅当对每个成立,使得。这样的被称为认证下界。
验证
的鲁棒性有如下两个问题:
- 需要证明对于每个
满足
,则有
其中对于每个
成立,其中