刘天赐 刘晓坤翻译

牛津大学提出神经网络新训练法:用低秩结构增强网络压缩和对抗稳健性

和目前普遍的稀疏性诱导、结构化限制相似,神经网络的低秩结构也具有压缩的性质,并在对抗攻击中具备稳健性。在本文中,来自牛津大学计算科学部和阿兰图灵机构的研究者开发了一种新方法,通过在训练过程中引入修正,增强神经网络表征的低秩属性。

引言

深度(卷积)神经网络已经取得了许多重大成果,「表征学习」就是其中非常迷人的一个方面:深度网络能够从原始数据中生成可以用于多个任务的表征。有趣的是,从奠基性论文 Krizhevsky et al. (2012) 开始,人们发现,即使是在完全的监督学习体系下训练出的神经网络也具有这一性质。在其他和分类、检索、聚类(通常和原始的分类问题无关)等相关领域,人们利用这些学得的表征(即迁移学习)已经取得了巨大的成功(Kiros et al., 2014; Lin and Parikh, 2015)。

从本质上讲,可以认为倒数第二层(或接近输出层的某一层)神经元的激活就是原始数据的一个习得表征(learned representation)(也就是希望从这张图像中希望得到的内容)。而最后一层神经元通常只是一个多类别 logistic 回归模型。在本文中,作者主要研究了 ResNet-18 和 ResNet-50(He et al., 2016),同时也部分包括 VGG 网络(Simonyan and Zisserman, 2014)上的研究结果。尽管近年来许多人广泛研究了神经网络架构的方方面面,但几乎没有关于如何理解这些表征本质的相关工作。

本文研究了这些习得表征,主要探索了其(有效)维度问题。一个 ResNet-18/50 网络基本都是由 4 个 ResNet 块(block)组成(其中每个块又包含了多个卷积层和跳过连接)。我们探索的是第 3、第 4 个 ResNet 块末端激活的维度。在 ResNet-18 中,第 3 个 ResNet 块后的激活维度为 16384,第 4 个 ResNet 块后的激活维度则为 512。在 ResNet-50 中,作者只研究了最后一个 ResNet 块后的激活维度:为 2048。在实验中,每一个数据点 x 都映射为向量 a ∈ R^m,用 d 表示上述层(layer)中的激活数量;而向量 a 则是 x 的一个习得表征。实证研究(Oyallon, 2017)表明:给定类别,这些习得表征(近似)处于一个低秩(仿射)空间中。(Oyallon 2017 年的研究中,使用了另一个不同的卷积神经网络来处理图像分类问题)。

作者对训练过程进行了修正,以保证激活可以(近似)处于一个低秩空间中;准确的说,他们在损失函数中加入了一项,以促使特定层的激活能够处于低秩仿射空间。使用修正后训练过程得到的结果准确率基本没有下降(在一些场景下甚至有少量提升),同时增强了习得特征的低秩属性。修正在模型中「加入」了一个虚拟的(virtual)低秩层,可以保证习得特征基本处于低秩空间中。在优化修正后的目标函数时,使用的是交替最小化方法,该想法类似于迭代硬阈值(Blumensath and Davies, 2009)或奇异值投影(Jain et al., 2010)中所使用的方法。

考虑到朴素奇异值阈值方法会使得训练过程无法满足任何实际场景下的需要,作者采用了基于 Nystr¨om 方法(Williams and Seeger, 2001; Halko et al., 2011)的列采样方法,训练速度得到了显著的提升,但也使得没有得到最优的低秩映射。可以认为,修正后的训练过程能够防止神经网络出现过度参数化(over-parametrization),不过使用了和目前普遍的稀疏性诱导方法(如 Anwar et al. (2017); Wen et al. (2016))以及结构化限制方法(Moczulski et al. (2015); Liu et al. (2015))都不同的手段。

最后,作者也探索了学习低秩表征的优点。其中一个明显的优点是在其它的应用场景中,低秩表征能够压缩嵌入:事实上,由于这些习得表征(近似)处于一个低维(仿射)空间中,它们本身就满足一种压缩框架。另外,我们研究了这种方式训练出的神经网络在对抗性攻击(Szegedy et al., 2013)下的稳健性。结果显示,相比于标准架构,这些神经网络基本上对由 GSM 方法(Gradient Sign Method)及其变体(Kurakin et al., 2016)生成的对抗性攻击有更好的稳健性。实证评估进一步表明,在使用习得表征(或其低秩投影)来训练 SVM 分类器时,利用修正方法训练得到的神经网络在使用习得表征低秩投影时,可以给出更准确的预测结果。

3 LR-Layered 网络

4.1 模型性能没有下降

表 1:不同的 ResNet 模型在 CIFAR-10 上的测试准确率。

表 2:ResNet 模型在 CIFAR-100 上的测试准确率:包含原始结果和迁移到 Fine Label 后的结果。

4.2 方差率捕获

图 1:倒数第二层上的方差率(Variance Ratio)。

图 2:第 4 个 ResNet 块前的层上的方差率。

4.4 低维嵌入的有效性

表 3:低维嵌入准确率:利用 CIFAR-100 的超类训练 ResNet-50,在最后一个全连接层前的激活上生成低维嵌入。

表 4:低维嵌入准确率:利用 CIFAR-10 训练的 ResNet-18,利用最后一个 ResNet 块的嵌入生成低维嵌入。

5 对抗攻击


图 5:上图展示了对抗性的误分类和扰动量级间的关系。(扰动量级使用归一化 L2 差异度量。其中 1-LR 和 2-LR 分别表示 ResNet18-1-LR 和 ResNet18-2-LR。LR-V 和 N-LR-V 分别对应低秩 VGG19 模型和标准 VGG19 模型)。

图 6:CIFAR-100 超类标签的 PCA 图。左图展示了 ResNet-50 上训练的 LR 模型的嵌入结果,右图展示了标准的 ResNet-50 模型结果,两个模型使用了类似的训练方法。图中不同颜色表示不同类别。

论文:Low Rank Structure of Learned Representations(习得表征的低秩结构)

论文地址:https://arxiv.org/pdf/1804.07090.pdf

摘要:神经网络——尤其是深度卷积神经网络——有一个很重要的特征:它们能够从数据中学习出非常有用的表征,而最后一层神经元则只是在这些习得特征上训练的线性模型。虽然神经网络在其它诸如分类、检索、聚类等目标中得到了广泛使用(即迁移学习),但并没有足够的关于这些表征结构,或是否可以在训练过程中引入某些结构的相关研究结果。

本文选择了一些在图像分类问题中表现很好的神经网络,并研究了其习得表征的维度。我们选取了 ResNet-18、ResNet-50 以及 VGG-19,并使用 CIFAR10/CIFAR100 数据集来训练模型;我们发现,这些模型的习得表征表现出了明显的低秩结构。在训练过程中,我们引入了一定的修正,以促进神经网络不同阶段激活的低秩表征。实证结果表明,低秩结构具有压缩的性质,在对抗样本问题中,也具有更高的稳健性。

理论神经网络牛津大学论文
相关数据
表征学习技术

在机器学习领域,表征学习(或特征学习)是一种将原始数据转换成为能够被机器学习有效开发的一种技术的集合。在特征学习算法出现之前,机器学习研究人员需要利用手动特征工程(manual feature learning)等技术从原始数据的领域知识(domain knowledge)建立特征,然后再部署相关的机器学习算法。虽然手动特征工程对于应用机器学习很有效,但它同时也是很困难、很昂贵、很耗时、并依赖于强大专业知识。特征学习弥补了这一点,它使得机器不仅能学习到数据的特征,并能利用这些特征来完成一个具体的任务。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

对抗样本技术

对抗样本是一类被设计来混淆机器学习器的样本,它们看上去与真实样本的几乎相同(无法用肉眼分辨),但其中噪声的加入却会导致机器学习模型做出错误的分类判断。

推荐文章
暂无评论
暂无评论~