Empirical Studies on the Properties of Linear Regions in Deep Neural Networks

使用如ReLU等分段线性激活函数的神经网络可以将样本的输入空间划分为不同的小区域,其每个区域内神经网络的表现等价于一个完全线性的模型。具体而言,同一个线性区域的所有输入在神经网络上具有相同的激活状态,这意味着对这些输入来说,神经网络每一层都进行着相同的仿射变换。考虑到级联的一族仿射变换等价于单一的线性映射,故神经网络在同一线性区域中等价于一个完全线性的模型。

众多研究表明,神经网络的表达能力与线性区域数量的大小高度相关。直观来看,复杂的曲面通常需要更多平面的近似,同理,拟合一个复杂的数据流形分布通常需要更多数量的线性区域。之前的研究着重于描述神经网络的深度与宽度对于线性区域数量的影响(理论上的上限值或实际中的观察值),进而扩展到对神经网络表达能力的影响。尽管存在着一些争议,但通常而言神经网络的深度对于线性区域的数量提升更加有效(至少对于理论的上限值而言),因此从这个角度来看神经网络增加深度往往能够更加有效的增加其表达能力。

神经网络的架构(深度、宽度)显式的影响了神经网络所能划分的线性区域的数量,然而我们的研究表明,不同的优化方式与技巧对其影响同样巨大。更进一步的,我们的研究不再局限于单纯的计算线性区域的数量,而是对每个线性区域进行了更加细致化的分析。考虑任意一个线性区域,其构成的方式取决于每一个神经元的激活状态。我们容易知道,由于神经元激活函数分段线性的缘故,其激活状态由一个个超平面划分决定,进而使得一个线性区域为一族半空间的交集;换句话说,每一个线性区域的形态正好为一个高维的凸多面体,因此我们可以使用分析凸多面体的手段来分析这些线性区域。

需要说明的是,在高维空间下表示一个凸多面体通常有两种方式:V表示与H表示。前者将凸多面体表示为一族点集的凸组合,后者将凸多面体表示为一族半空间的交集。使用这两种表达方式在高维空间下对相同的问题进行分析往往具有不同的复杂度,事实上,当维度升高后,这两种表达方式本身就难以进行互相转化(甚至连通过H表示来计算V表达中的顶点数量都是困难的)。显然,通过神经网络激活状态构建的凸多面体表达方式为一个标准的H表示,再考虑到神经网络在这个凸多面体上表现完全线性,不难知道利用凸优化的手段来分析将会是一个不错的选择。

我们分析了线性区域包括内切球、面法向、决策边界、相邻区域相关性等在内的局部性质,发现如batch normalization(BN), dropout等优化技巧会极大的影响这些性质,即使他们得到了相似的模型表现。下图展示了一个使用不同优化技巧在MNIST数据集上训练后的线性区域对比图。我们不难直观上发现,虽然这三个模型使用的是同样的架构,但是其线性区域却具有完全不同的性质:

  1. BN和dropout帮助提升了线性区域的数量。
  2. BN比dropout的划分更加的均匀。
  3. Dropout的线性区域划分边界集中在分类边界附近。

更为准确的,我们通过凸优化等手段分析了在CIFAR-10数据集上训练的CNN以及在MNIST数据集上训练的全连接神经网络,并观察到如下现象:

  1. BN能够使得线性区域划分更小更多,而dropout更多的是使得分类边界附近的划分更加细致。
  2. BN使得线性区域的面法向正交化,而dropout则恰恰相反。
  3. Dropout使得一个线性区域内拥有更少的分类边界。
  4. 相邻线性区域中的线性模型高度相关,而BN会使得这种相关度下降。

以此为基础,我们可以从另一个角度来思考如对抗样本等其他问题。对抗样本为植入特意设计的微弱噪声的正常样本,这些噪声虽然不影响人的主观识别,但是却会使得机器学习模型表现大幅下降。很多研究表明,对抗噪声会使得神经网络内部层的激活状态发生改变,进而改变模型的预测结果,部分研究也以此为基础构建攻击、防御的方法;然而我们的研究发现一般情况下线性区域内具有分类边界,故即使具有相同的内部激活状态,对抗样本也同样有可能存在。下图给出了具有相同内部激活状态的对抗样本(需要说明的是,此图为简单的在线性区域内最大化类别概率所产生的,因此对于噪声幅值的约束只有线性区域的边界)。

除此之外,我们还可以知道,当我们使用梯度下降的方式来寻找对抗样本时,使用高阶导数的方法并不比使用一阶导数的方法更为有效。例如当我们用C&W方法来寻找对抗样本时,任意一个点都处于一个线性区域内,故其高阶导数始终为0,因此不能提供更多的梯度信息。

我们提出的方法不只是局限于分析Dropout、BN等优化技巧,还可以用于分析如初始化方式、优化器、超参数等其他优化选择,甚至可以用于分析如ResNet使用的Skip connection等架构上的设计,具有较广的适用范围。但显然,随着模型神经元数量的不断增加,一个线性区域的超平面限制会不断增加,因此我们的方法在计算复杂度上还具有一定的局限性,这也是我们后续工作期望解决的问题。

神经网络的优化是数据流形、模型架构、优化方案等多个问题极其复杂的耦合,我们认为一个好的思考方向是将其分解为两个问题:

  1. 研究什么样的线性区域能够更好的拟合数据流形。
  2. 设计优化方法来引入这种线性区域的偏好。

我们的工作对于分析这两个子问题都具有一定的帮助。

https://openreview.net/forum?id=SkeFl1HKwr

X. Zhang and D. Wu, “Empirical studies on the properties of linear regions in deep neural networks,” Int’l Conf. on Learning Representations, April 2020. 

You may also like...