宽残差网络外文翻译资料

 2022-08-14 15:55:07

英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料


宽残差网络

摘 要

事实证明,深层残差网络能够扩展到数千层,并且性能仍在提高。但是,提高精度的百分之一需要层数几乎增加一倍,因此训练非常深的残差网络存在减少特征重用的问题,这使这些网络的训练速度非常慢。为了解决这些问题,在本文中,我们对ResNet块的体系结构进行了详细的实验研究,在此基础上,我们提出了一种新颖的体系结构,可以减少残差网络的深度并增加其宽度。我们将所得的网络结构称为宽残差网络(WRNs),并表明它们远远优于其常用的细和非常深的对应物。例如,我们证明,即使是一个简单的16层深的宽残差网络,其精度和效率也优于所有以前的深残差网络,包括千层深的网络,在CIFAR,SVHN,COCO方面取得了最新的最新结果,并对ImageNet进行了重大改进。我们的代码和模型可在以下位置获得https://github.com/szagoruyko/wide-residual-networks

  1. 介绍

从AlexNet[16],VGG[26],Inception[30]到Residual[11]网络,卷积神经网络在最近几年中的层数逐渐增加,这对应于许多图像识别任务的改进。近年来,深层网络的优越性已在几项工作中发现[3,22]。但是,训练深度神经网络有几个困难,包括爆炸/消失梯度和退化。建议使用各种技术来训练更深的神经网络,例如精心设计的初始化策略[1,12],更好的优化器[29],跳过连接[19,23],知识转移[4,24]和逐层训练[25]。

最新的残差网络[11]在ImageNet和COCO 2015竞赛中赢得了巨大成功,并在多个基准测试中达到了最先进的水平,包括ImageNet和CIFAR上的对象分类,PASCAL VOC 和MS COCO上的对象检测和分割。与Inception架构相比,它们具有更好的通用性,这意味着可以在转移学习中更好地利用这些功能。此外,后续工作表明,残差链接可加速深度网络的融合[31]。最近的后续工作探索了残差网络中激活的顺序,在残差块中显示了身份映射[13],并改善了非常深层网络的训练。通过使用高速公路网络,还可能成功地训练非常深的网络

图1:本文中使用的各种残差块。每次卷积之前都进行批处理规范化和ReLU(为清楚起见,省略了)

[28],这是在残差网络之前提出的架构。残差网络和公路网络之间的本质区别在于,在后者中,残差链接被选通,并且可以了解这些门的权重。

因此,到目前为止,残差网络的研究主要集中在ResNet块内部的激活顺序和残差网络的深度。在这项工作中,我们尝试进行超出上述几点的实验研究。通过这样做,我们的目标是探索ResNet块的更丰富的网络体系结构,并彻底检查除激活顺序之外的其他几个方面如何影响性能。正如我们在下面解释的那样,对体系结构的这种探索导致了新的有趣发现,这些发现对于残差网络具有非常重要的现实意义。

剩余网络中的宽度与深度。浅层深度网络与深层网络的问题在机器学习中讨论了很长时间[2,18],并指出了电路复杂性理论文献,这些文献表明,浅层电路比深层电路需要指数级的组件。残差网络的作者试图使它们尽可能薄,以增加其深度并减少参数,甚至引入了“瓶颈”块,使ResNet块变得更薄。

但是,我们注意到,带有身份映射的残差块允许训练非常深的网络,同时也是残差网络的弱点。当梯度流过网络时,没有什么可以强迫它通过残余块权重,并且可以避免在训练期间学习任何东西,因此有可能只有少数几个块学习有用的表示,或者有很多块共享的很少信息对最终目标的贡献很小。这个问题在[28]中被表述为减少了特征重用。[14]的作者试图通过在训练过程中随机禁用剩余块的想法来解决这个问题。可以将这种方法视为丢弃的一种特殊情况[27],其中每个残差块都有一个应用了丢弃的标识标量权重。这种方法的有效性证明了以上假设。

基于上述观察,我们的工作建立在[13]的基础上,试图回答残差网络应该有多深的问题并解决培训问题。在这种情况下,我们表明,与增加残差网络的深度相比,ResNet块的扩展(如果正确完成)提供了一种提高残差网络性能的更为有效的方法。特别是,我们提出了较[13]显着改善的更深的残差网络,其层数减少了50倍,速度提高了2倍以上。我们将由此产生的网络架构称为残差网络。例如,我们的宽16层深度网络具有与1000层薄深度网络相同的精度,并且具有相当数量的参数,尽管训练速度快了好几倍。因此,这种类型的实验似乎表明,深部残余网络的主要功率在残余块中,并且深度的影响是补充的。我们注意到,一个可以训练更宽的剩余网络,其参数是原来的两倍(或更多),这表明,要通过增加thin网络的深度来进一步提高性能,在这种情况下,需要添加数千层

在ResNet块中使用dropout。Dropout在[27]中首次引入,然后被[16,26]等许多成功的体系结构所采用。它主要应用于具有大量参数的顶层,以防止特征协同和过度拟合。然后,它主要由批量归一化[15]代替,该技术被引入作为一种技术,通过将它们归一化为特定分布来减少神经网络激活中的内部协变量偏移。它也可以充当正则器,作者实验表明,具有批归一化功能的网络比具有dropout功能的网络具有更高的准确性。在我们的案例中,由于残差块的增加导致参数数量的增加,我们研究了dropout对正规训练和防止过度拟合的影响。以前,在[13]中研究了残差网络中的缺失,将缺失插入到块的标识部分中,作者对此表示了负面影响。相反,我们在这里认为应该在卷积层之间插入dropout。宽残差网络上的实验结果表明,这将带来一致的收益,甚至产生最新的最新结果(例如,具有压差的16层深的宽残差网络在SVHN上实现1.64%的误差)。

总而言之,这项工作的贡献如下:

  • 我们目前对残差网络体系结构进行了详细的实验研究,彻底研究了ResNet块结构的几个重要方面。
  • 我们为ResNet块提出了一种新颖的扩展架构,该架构允许残差网络具有显着改善的性能
  • 我们提出了一种利用深层残差网络中的失落的新方法,以便适当地规范它们并防止训练期间的过度拟合。
  • 最后,我们证明了我们提出的ResNet架构在多个数据集上获得了最新的结果,从而极大地提高了残差网络的准确性和速度。
  1. 宽残差网络

具有身份映射的残差块可以用以下公式表示:

其中xl 1和xl是网络中第l个单元的输入和输出,F是残差函数,Wl是块的参数。剩余网络由顺序叠加组成残余积木。

在[13]中,剩余网络由两种类型的块组成:

基础-具有两个连续的3times;3卷积,具有批量归一化和ReLU之前的卷积: conv3times;3-conv3times;3Fig.1(a)

瓶颈-具有一个3times;3卷积并被维数围绕,从而缩小和扩展1times;1卷积层:conv1times;1-conv3times;3-conv1times;1Fig.1(b)

表1:残差网络的结构。网络宽度由系数k确定。原始体系结构[13]等同于k = 1。卷积组显示在括号中,其中N是组中的多个块,由组conv3和conv4中的第一层执行下采样。为便于清理,省略了最终分类层。在所示的特定示例中,网络使用B(3,3)类型的ResNet块

与[13]中的原始体系结构[11]相比,批处理规范化,残差块中的激活和卷积的顺序从conv-BN-ReLU更改为BN-ReLUconv。由于后者被证明可以更快地训练并获得更好的结果,因此我们不考虑原始版本。此外,最初使用了所谓的“瓶颈”块,以降低计算量,从而增加层数。当我们想研究扩宽的影响时,“瓶颈”被用来使网络变薄,我们也没有考虑它,而是关注“基本”残差架构。

从本质上讲,有三种简单的方法可以提高残差块的表示能力:

  • 在每个块上添加更多的卷积层
  • 通过添加更多特征平面来扩展卷积层
  • 增加卷积层中的滤波器大小

由于小型滤波器在包括[26,31]的几项工作中被证明非常有效,因此我们不考虑使用大于3times;3的滤波器。让我们还介绍两个因素,加深因子l和加宽因子k,其中l是块中的卷积数,k乘以卷积层中的要素数,因此基线“基本”块对应到l = 2,k = 1。图1(a) 和1(c) 分别显示了“基本”和“基本范围”块的示意性示例。

残差网络的一般结构如表1所示:它由一个初始卷积层conv1组成,然后是3组(每个为N个)残差块conv2,conv3和conv4,然后是平均池化和最终分类层。conv1的大小在我们所有的实验中都是固定的,而引入的扩展因子k则可缩放conv2-4三组中剩余块的宽度(例如,原始的“基本”架构等效于k = 1)。我们想研究代表的作用剩余区块的标准功率,为此,我们执行并测试了几种修改到“基本”体系结构,将在以下小节中详细介绍。

2.1 残差块中的卷积类型

令B(M)表示残差块结构,其中M是具有块中卷积层内核大小的列表。例如,B(3,1)表示具有3times;3和1 times;1卷积层(我们始终假设正方形空间核)。请注意,由于我们没有考虑前面解释的“瓶颈”块,因此块中的特征平面数始终保持不变。我们想回答一个问题,即“基本”残差体系结构的3times;3个卷积层中的每一个有多重要,以及是否可times;以用较低计算成本的1times;1层甚至是1times;1的组合来代替它们3times;3个卷积层,例如B(1,3)或B(1,3)。这可以增加或减少块的表示能力。因此,我们尝试以下组合(注意,最后一个组合,即B(3;1;1)类似于网络[20]架构中的有效网络):

    1. B(3,3)-原始的“基本”块
    2. B(3,1,3)-多一层1times;1层
    3. B(1,3,1)-所有卷积的维数相同,“拉直”瓶颈
    4. B(1,3)-网络到处都有交替的1times;1-3times;3卷积
    5. B(3,1)-与上一个块类似的想法
    6. B(3,1,1)-网络中网络样式块

2.2 每个剩余块的卷积层数

我们还对块加深因子l进行了试验,以了解它如何影响性能。必须在具有相同数量参数的网络之间进行比较,因此在这种情况下,我们需要构建具有不同的l和d的网络(其中d表示块的总数),同时确保网络复杂度保持大致恒定。例如,这意味着只要l增加,d就应该减少。

2.3 残块宽度

除上述修改外,我们还尝试了块的扩展因子k。尽管参数的数量随l(加深因子)和d(ResNet块的数量)线性增加,但参数的数量和计算复杂度却以k为平方。但是,与使用数千个小内核相比,加宽层的计算效率更高,因为GPU在大张量上的并行计算中效率更高,因此我们对最优d与k比率感兴趣。

对于更广泛的残差网络的一种说法是,残差网络之前的几乎所有架构,包括最成功的Inception[30]和VGG[26],都比[13]更为广泛。例如,残差网络WRN-22-8和WRN-16-10(请参阅下一段对此符号的说明)在宽度,深度和参数数量上与VGG架构非常相似。

我们进一步将k = 1的原始残差网络称为“细”,并将具有 kgt; 1,即“宽”。在本文的其余部分,我们使用以下符号:WRN-nk表示具有卷积层总数n和加宽因子k的残差网络(例如,具有40层且k =原始宽度的2倍的网络将表示为WRN-40-2)。同样,在适用时,我们附加块类型,例如WRN-40-2-B(3,3)。

表2:在kIF = 2和不同块类型的残差网络的CIFAR- 表3:WRN-40-2(2.2M)的CIFAR-10
10上的测试误差(%, 5次运行的中位数)。时间栏 在不同l下的测试误差(%,5次

测量一个训练时期。 运行的中位数)。

2.4 剩余块中的丢失

随着参数的增加,我们想研究正则化的方法。残差网络已经具有批量归一化功能,可以提供正则化效果,但是它需要大量的数据扩充,这是我们希望避免的,而且并非总是可能的。我们在卷积之间的每个残差块中添加一个丢失层,如图2所示。1(d)并在ReLU之后干扰下一个残差块中的批次归一化,并防止其过度拟合。在深度很深的残差网络中,这将有助于处理减少的功能重用问题,从而在不同残差块中强制学习。

  1. 实验结果

对于实验,我们选择了著名的CIFAR-10,CIFAR-100,SVHN和ImageNet图像分类数据集。CIFAR-10和CIFAR-100数据集[17]由32个32幅彩色图像组成,这些图像times;分别来自10和100个类别,分为50,000个训练图像和10,000个测试图像。对于数据增强,我们进行水平翻转,并从每侧填充了4个像素的图像中进行随机裁剪,以原始图像的反射填充缺失的像素。我们不使用[9]中提出的大量数据扩充。SVHN是Google的街景门牌号码图像的数据集,其中包含约600,000位数字图像,这些图像来自一个更加困难的现实世界问题。对于SVHN的实验,我们不进行任何图像预处理,只不过将图像除以255以

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[235193],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。