Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Golnaz Ghiasi等作者路雪翻译

NIPS 2018:Quoc Le提出卷积网络专属正则化方法DropBlock

选自arXiv

机器之心编译

作者:Golnaz Ghiasi、Tsung-Yi Lin、Quoc V. Le

参与:路

近日,谷歌大脑团队在 arXiv 上发布论文,提出了一种卷积网络正则化方法 DropBlock,它是 dropout 的变体,但青出于蓝而胜于蓝。

深度神经网络在具备大量参数、使用大量正则化和噪声时效果很好,如权重衰减和 dropout [1]。尽管 dropout 的首次成功与卷积网络相关,但近期的卷积架构很少使用 dropout [3–10]。大部分情况下,dropout 主要用于卷积网络的全连接层。

本论文认为 dropout 的主要缺陷在于它随机丢弃特征。尽管这对全连接层有效,但对特征具备空间关联的卷积层而言没那么有效。当特征互相关联时,即使使用 dropout,输入信息仍然能传输到下一层,导致网络过拟合。这表明我们需要 dropout 的更结构化形式来更好地正则化卷积网络。

本论文介绍了一种 dropout 的结构化形式 DropBlock,对于正则化卷积网络格外有效。在 DropBlock 中,同一模块中的特征会被一起丢弃,即特征图的相邻区域也被丢弃了。由于 DropBlock 丢弃了相关区域中的特征,该网络必须从其他地方寻找证据来拟合数据(见图 1)。

图 1:(a) 卷积神经网络的输入图像。(b) 和 (c) 中的绿色区域包括激活单元,其包含输入图像中的语义信息。随机丢去激活单元在移除语义信息方面并没有效果,因为附近的激活单元包含高度相关的信息。而丢弃相邻区域可以移除特定语义信息(如头或脚),使剩余的单元学习可以分类输入图像的特征。

实验中,DropBlock 在大量模型和数据集中的性能大大优于 dropout。向 ResNet-50 架构添加 DropBlock 使其在 ImageNet 数据集上的图像分类准确率从 76.51% 提升到 78.13%。在 COCO 检测任务上,DropBlock 将 RetinaNet 的 AP 从 36.8% 提升到 38.4%。

论文:DropBlock: A regularization method for convolutional networks

论文链接:https://arxiv.org/pdf/1810.12890.pdf

摘要深度神经网络在过参数化和使用大量噪声和正则化(如权重衰减和 dropout)进行训练时往往性能很好。dropout 广泛用于全连接层的正则化,但它对卷积层的效果没那么好。原因可能在于卷积层中的激活单元是空间关联的,使用 dropout 后信息仍然能够通过卷积网络传输。因此我们需要 dropout 的一种结构化变体来对卷积网络进行正则化。本论文就介绍了这样一种变体 DropBlock,它会丢弃特征图相邻区域中的单元。此外,在训练过程中逐渐增加丢弃单元的数量会带来更高的准确率,使模型对超参数选择具备更强的鲁棒性。大量实验证明,DropBlock 在正则化卷积网络方面性能优于 dropout。在 ImageNet 分类任务上,具备 DropBlock 的 ResNet-50 架构达到了 78.13% 的准确率,比基线模型提高了 1.6%。在 COCO 检测任务上,DropBlock 将 RetinaNet 的 AP 从 36.8% 提升到 38.4%。

DropBlock 是类似 dropout 的简单方法。二者的主要区别在于 DropBlock 丢弃层特征图的相邻区域,而不是丢弃单独的随机单元。Algorithm 1 展示了 DropBlock 的伪代码。DropBlock 具备两个主要参数 block_size 和 γ。block_size 是要丢弃的 block 的大小,γ 控制要丢弃的激活单元的数量。

我们在不同特征通道上对共享 DropBlock mask 进行了实验,也在每个特征通道上对 DropBlock mask 进行了实验。Algorithm 1 对应后者,它的效果在实验中也更好一些。

图 2:DropBlock 中的掩码采样(mask sampling)。(a) 与 dropout 类似,我们先在每个特征图上采样掩码 M。我们仅从绿色框中采样掩码,该区域中的每个采样条目(sampled entry)都可以扩展到完全包含在特征图中的掩码。(b) M 中每个 zero entry 都可以扩展为 block_size × block_size zero block。

与 dropout 类似,我们不将 DropBlock 用于推断。

设置 block_size 的值。在实现中,我们为所有特征图设置常数 block_size,无论特征图的分辨率是多少。当 block_size = 1 时,DropBlock 类似 dropout,当 block_size 覆盖完整特征图的时候,DropBlock 类似 SpatialDropout

设置 γ 的值。在实践中,我们没有显性地设置 γ 的值。如前所述,γ 控制要丢弃的特征的数量。假设我们想把每个激活单元的保留概率设置为 keep_prob,则在 dropout 中二进制掩码会被使用伯努利分布进行采样。但是,由于掩码中的每个 zero entry 将使用 block_size^2 进行扩展,得到的 block 将被完全包含在特征图中,因此我们在采样初始二进制掩码时需要据此调整 γ 的值。在我们的实现中,γ 可以按照下列公式计算:

其中 keep_prob 是传统 dropout 中单元被保留的概率。有效种子区域的大小是 (feat_size − block_size + 1)^2,其中 feat_size 是特征图的大小。DropBlock 的奥妙在于被丢弃的 block 会有一些重叠,因此上述公式只是近似。实验中,我们首先估计 keep_prob 的值(0.75 到 0.95 之间),容纳后根据上述公式计算 γ 的值。

Scheduled DropBlock。我们发现具备固定 keep_prob 的 DropBlock 在训练过程中表现不好。最初 keep_prob 的值过小会影响模型的学习。而逐渐降低 keep_prob 的值(从 1 下降到目标值)更具鲁棒性,改进了大多数 keep_prob 的值。实验中,我们使用线性机制来降低 keep_prob 的值,其在很多超参数设置中都表现良好。该线性机制类似于 ScheduledDropPath。

4 实验

表 1:ResNet-50 架构在 ImageNet 数据集上的验证准确率。对于 dropout、DropPath 和 SpatialDropout,我们使用不同的 keep_prob 值进行训练,报告的是最优结果。DropBlock 使用 block_size = 7 进行训练。上表显示的是 3 次运行的平均值。

图 3:x 轴为 keep_prob,ResNet-50 模型在 ImageNet 数据集上的验证准确率变化(y 轴)。所有方法丢弃的都是第 3、4 组的激活单元。

图 4:在 ImageNet 数据集上训练的 ResNet-50 对比,DropBlock 应用于 group 4 或 groups 3、4。

表 2:AmoebaNet-B 架构在 ImageNet 数据集上的 top-1 和 top-5 验证准确率

理论Quoc Le卷积神经网络正则化Dropout
9
相关数据
黎越国人物

人工智能学者,博士毕业于斯坦福大学。自2013年以来于谷歌任研究科学家。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

Dropout技术

神经网络训练中防止过拟合的一种技术

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

伪代码技术

伪代码,又称为虚拟代码,是高层次描述算法的一种方法。它不是一种现实存在的编程语言;它可能综合使用多种编程语言的语法、保留字,甚至会用到自然语言。 它以编程语言的书写形式指明算法的职能。相比于程序语言它更类似自然语言。它是半形式化、不标准的语言。

元学习技术

元学习是机器学习的一个子领域,是将自动学习算法应用于机器学习实验的元数据上。现在的 AI 系统可以通过大量时间和经验从头学习一项复杂技能。但是,我们如果想使智能体掌握多种技能、适应多种环境,则不应该从头开始在每一个环境中训练每一项技能,而是需要智能体通过对以往经验的再利用来学习如何学习多项新任务,因此我们不应该独立地训练每一个新任务。这种学习如何学习的方法,又叫元学习(meta-learning),是通往可持续学习多项新任务的多面智能体的必经之路。

卷积神经网络技术

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

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

过拟合技术

过拟合是指为了得到一致假设而使假设变得过度严格。避免过拟合是分类器设计中的一个核心任务。通常采用增大数据量和测试样本集的方法对分类器性能进行评价。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

图网技术

ImageNet 是一个计算机视觉系统识别项目, 是目前世界上图像识别最大的数据库。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

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