没有合适的资源?快使用搜索试试~ 我知道了~
PolyNet:灵活地扩展性能和效率的深度网络
718PolyNet:在非常深的网络张兴城李志忠陈昌来林大华{zx016,lz015,ccloy,dhlin}@ ie.cuhk.edu.hk摘要输出许多研究表明,增加卷积网络的深度或宽度是提高图像识别性能的有益方法然而,在我们的研究中,我们观察到沿这两个方向的困难。一方面,追求非常深的网络会带来收益递减和训练难度增加;另一方面,扩大网络将导致计算成本和内存需求的二次增长这些困难促使我们在设计深度网络时探索具体来说,我们提出了一个新的模块家族,即PolyInception,它可以灵活地单独插入或作为重新组合插入。5.65.24.84.44PolyNet系列Inception-ResNet-v2系列4.484.25网络的不同部分的布局。 选择Poly-以体系结构效率为指导的初始化模块可以在保持相当计算成本的同时提高表达能力。 非常深的PolyNet1,100 200 300 400 500 600 700#卷积层图像按照这一方向设计,在ILSVRC 2012基准上展示了对最先进技术的与Inception-ResNet-v2相比,它将单一作物上的前5个验证错误从4个减少到4个。9%至4。25%,多作物从3. 7%至3。百分之四十五1. 介绍在过去的四年里,ILSVRC基准的分类错误急剧减少[19]。伴随着这一进步的是网络深度的显著增加– from AlexNet [16] to ResNet [9], the numbers of layershave been raised from 性能和深度之间的这种强相关性激发了一系列工作[10,21]来追求非常深的网络。另一方面,增加网络的宽度也已显示出这是一个有效的方法来提高性能[1,28,33]。这条探索路线最近也引起了很多关注增加深度或宽度是追求最佳性能的最佳策略吗?然而,对这个问题的肯定回答似乎得到了许多证据的支持这两位作者对这项工作的贡献是相等的。1代码可从https://github.com/CUHK-MMLAB/polynet获得。图1:我们提出了一个新的构建块家族,称为PolyInceptions。PolyNet是一种使用Poly- Inceptions的新网络架构,其性能优于Inception-ResNet-v2及其深化版本,将单作物前5名错误减少到4。ILSVRC 2012验证集的25%在以前的工作中,我们的实证研究表明,否则。具体来说,我们发现,随着我们继续增加深度,奖励会减少到一定程度。另一个方向,即扩大网络,也有自己的问题。最重要的问题是运行时复杂性和内存需求的二次增长。我们的研究表明,这种计算成本的显着增加可能无法通过它带来的性能增益来证明这些问题促使我们探索结构多样性,网络设计的另一个维度。事实上,多样性的重要性已经在以前的工作中反复证明,例如Inception模块[26],网络集成[15],以及最近的一项研究[30],该研究将ResNet与隐式集成联系起来。然而,仍有几个问题有待回答:(1)在网络中建立多样性的最佳方式是什么,(2)当追求多样性比追求深度更有价值时。Top-5错误719在这项工作中,我们提出了一个新的家庭的模块称为PolyInception。具体地,每个PolyInception模块是Inception单元的“多项式”组合,其以并行或级联的方式集成多个路径,如图1所示。1.与基本单元顺序堆叠的传统范例相比,这种替代设计可以大大增强网络的结构多样性请注意,PolyInception模块旨在作为大型网络的构建块,可以单独插入或组合插入以替换现有模块。我们还提出了一个烧蚀研究,比较了各种模块配置在不同条件下的性能和成本,这为网络设计提供了有用的指导。基于对不同设计选择的系统比较,我们设计了一个新的网络,称为Very Deep PolyNet,它包括三个阶段,在不同的空间分辨率上运行。PolyInception模块的每个阶段都经过精心挑选。在ILSVRC 2012验证集上,Very Deep PolyNet实现了前5名错误率 4. 25% 的单 一作 物和 3。45% 用于 多种 作物。 与Inception-ResNet-v2 [25]的通信,最新的最先进技术,获得前5名的错误率4。9%(单一作物)和3. 7%(多作物),这是一个很大的改善。此外,在相同的计算条件 下 , Very Deep PolyNet 的 性 能 也 优 于 Inception-ResNet-v2的深化版本这是一个非常小的参数大小(92M与133M)。总的来说,这项工作的主要贡献包括:几个方面:(1)对结构多样性的系统研究,一种超越深度和宽度的替代维度,(2)PolyInception,一种用于构建非常深的网络的新的构建块家族,以及(3)非常深的PolyNet,一种在ILSVRC上获得最佳单网络性能的新的网络架构。2. 相关工作深度革命在ImageNet挑战中的各种复杂的卷积神经网络中得到了最好的描述这些网络,从AlexNet [16],VGG [21],GoogleNet [26]到ResNet [9],采用了越来越深的架构,然而,非常深的网络很难训练,容易过拟合,有时甚至导致性能下降,如[2,6,8,23,24]中所报道的。残余结构[9,10]大大减轻了这种风险。原因之一是它引入了可以有效地向前和向后传递信号BN [14]和dropout [23]等技术也有助于训练过程。此外,广泛的研究[7,8,18,27]已经完成,以找到良好的设计选择,例如。深度、通道尺寸、过滤器尺寸和激活函数。最近的一些研究质疑深度不是ResNet成功背后的关键因素之一有争议的是,具有增强的表示能力的更强大的残差块也可以实现类似的或甚至更好的性能,而不需要太深。宽残差网络(WRN)[33]增加了宽度,同时减少了深度。Zhang等人[34]ResNet of ResNet(RoR)。Targ等人[28]在ResNet(RiR)中提出ResNet,它概括了残差以允许更有效的学习。多残差网络[1]通过组合多个并行块以不同的方式扩展了ResNet从另一个角度来看,剩余结构可以被看作是相对浅网络的指数集合。Veit等人[30]假设能量就在这个集合中利用这种隐式集合的网络被称为结构集合。也可以在学习过程中鼓励集成的形成,这被称为训练集成。随机深度技术[13]在训练中随机丢弃一个层的子集。这个过程可以被解释为训练具有不同深度的网络的集合。这种方式不仅简化了非常深的网络的训练,而且还提高了性能。Swapout [22]是一种随机训练方法,它通过使用随机变量来控制单元是保留还是丢弃来概括dropout和随机深度。一些最近设计的网络[1,17,22]接受这种整体解释。剩余网络和公路网络中的路径[24]激发了对更一般拓扑结构的探索,其中两个例子是DenseNet [12],它将快捷 方式密集地 添加到构建 块,以及FractalNet[17],它使用截断的分形布局。据我们所知,Inception-ResNet-v2 [25]在ImageNet上实现了迄今为止最好的单一模型准确度。它是最新版本的Incep-tion结构和残差结构的组合,其中Inception块用于捕获残差。Inception块是GoogleNet的基本组件[26]。它们的结构已被优化和微调了几次[25,26,27]。我们采用Inception-ResNet-v2作为我们研究的基础模型。3. PolyInception和PolyNet深度(层数)和宽度(中间输出的维度)是网络设计中的两个重要维度。当人们想要提高网络的性能时,在计算预算允许的情况下,更深入和更广泛是最自然的选择。这项研究的最终目标是推动深度卷积网络的发展。因此,像许多其他人一样,我们从这两个选择开始。如前所述,在过去几年中,深度网络架构的演变清楚地体现了深入的好处[9,10,21,26]。关注-72095.59594.59493.59392.50 50 100 150 200剩余单位数量图2:在ILSVRC 2012验证集上具有不同残留单元数的ResNets [10]的前5个单次裁剪精度。当剩余单位的数量增加到100以上时,我们可以看到回报减少。沿着这条路,我们继续在顶部堆叠剩余单元ResNet-152。如图2,当剩余单元的数量从16(ResNet-50)增加到89(ResNet-269)时,我们仍然可以观察到显著的性能增益。然而,当我们进一步将数量增加到166(ResNet-500)时,奖励明显减少。成本增加一倍,而错误率从4. 9%至4。8%,仅为0。百分之一。显然,当深度超过一定水平时,增加深度的策略变得不那么有效。另一个方向,即更广泛[33],也有自己的问题。当我们将所有层的通道数量增加k倍时,计算复杂度和内存需求都增加了k2倍。这种计算成本的二次增长严重限制了人们沿着这个方向前进的程度。双方所遇到的困难促使我们探索其他途径。回顾之前在深度学习方面的努力,我们发现多样性,网络设计中相对较少探索的另一个方面这表现在多个方面。首先,集合通常比其中的任何单个网络都表现得更好-这已在相关研究中反复显示[3,5,11,20]。其次,正如最近的工作[13,30]所揭示的那样,ResNets在许多任务中获得了最佳性能,可以被视为浅层网络的隐式集合。有人认为,这是多- tiplicity,而不是深度,实际上有助于他们的高性能。第三,Inception-ResNet-v2,由Szegedy等人开发的最先进的设计。[25],实现了比ResNet更好的性能,具有更少的层。与ResNet相比,这里的关键变化是用Inception模块替换了简单的残差单元。这种变化大大增加了每个单元内的结构多样性。总之,所有这些观察结果都表明,多样性作为深度网络设计的关键因素,值得进行系统的研究。图3:左:ResNet的残差单元[9]。中:Inception-ResNet-v2的B类Inception-ResNet-v2剩余单元[25]。右:抽象残差单元结构,其中残差块由F表示。3.1. PolyInception模块受这些观察的启发,我们开发了一个新的构建块家族,称为PolyInception模块,它通过各种形式的多项式组合来概括Inception残差单元[25]。这种新的设计不仅鼓励了结构的多样性,而且增强了剩余部件的表现力。首先,我们先回顾一下住宅单元的基本设计。每个单元包括从输入到输出的两条路径,即身份路径和残差块。前者保留输入,而后者通过非线性变换将输入转化为残差。这两条路径的结果在单元的输出端相加,(I + F)·x = x + F·x:= x + F(x).(一)此公式表示运算符符号的计算:x表示输入,I表示恒等算子,F表示由残差块执行的非线性变换,残差块也可以被认为是算子。 此外,委员会认为,F·x表示算子F作用于x的结果。当F由Inception块实现时,整个单元成为Inception残差单元,如图所示。3.在标准公式中,包括ResNet [9]和Inception- ResNet [25],有一个共同的问题这就限制了每个单元的能力,结果,需要大量的单元来建立整体的表达能力。虽然已经提出了几种变体来增强剩余单元[1,28,34],但是改进仍然有限。在追求结构多样性的驱动下,我们研究了另一种方法,即推广等式中算子的加法组合(1)多项式合成。例如,Eq的自然扩展(1)沿着这条线,简单地添加一个二阶项,这将导致一个新的计算单元,(I + F + F2)·x:= x + F(x)+F(F(x)).(二)ResNet 269ResNet 500ResNet 152ResNet 101ResNet 50+Iµ p4RQ LUO4 p4CoµYCoµY+Iµ p4CoµYCoµYCoµYRQ LUO4 p4CoµYCoµY+Iµ p4RQ LUO4 p4RQ 3 d4plFTop-5精度721输入干3xPoly-初始C损失输入干5辆IR-C损失(a) 聚-2(b) 聚-2(c) 多聚-2(d) 2路图5:上图:Inception-ResNet-v2的整体架构。改编自[25]。IR-A、IR-B和IR-C是分别为A、B和C阶段设计的三种类型的拦截剩余单元,图4:PolyInception结构的示例。相应的体系结构如图所示。第4(a)段。该单元包括三个路径,即,标识路径、包含一个Inception块的一阶路径和包含两个Inception块的二阶路径从这些路径产生的信号将在ReLU层之前的输出端汇总在一起这里,二阶路径允许输入信号在合并回主路径之前经历更深的变换。这可以大大提高单位的表现力。值得注意的是,沿着一阶和二阶路径,第一个Inception块的输出是相同的,即F(x)。利用这一点,我们可以简化图1中的体系结构4(a)至a如图所示的级联形式。第4(b)段。这两种形式在数学上是等价的;而后者的计算量仅为前者的2/3。注意,级联形式可以通过代数重写来反映为I+(I+F)F。由于这样的扩展体现了一个多项式组成的初始块,我 们 称 之 为 一 个 PolyIncep- tion 模 块 。 一 条 路 径 上Inception块的最大数量称为模块的阶数图4展示了几个PolyInception模块,它们在Inception块的组成方式以及它们是否共享参数方面有所不同。为方便起见,我们将它们分别称为poly-2、mmpoly-2和2-way下面的讨论比较了它们的特点。• poly-2:I+F+F2。这个单元包含两个Inception块,都用F表示。这是一个表示它们共享参数的符号约定这种设计可以在不引入额外参数的情况下提高表示能力• mmoly-2:I+F+GF。该设计的结构类似于poly-2,除了两个Inception块不共享参数。与poly-2类似,沿着第一阶和第二阶路径的第一层的计算可以共享(均由F表示),因此它也可以简化为等效的级联形式(I+(I+G)F),如图所示。第4(c)段。与poly-2相比,它具有更强的表现力。然而,与此同时,参数大小也会加倍。活泼地它们被重复多次并被串联连接。此配置表示为IR 5-10-5以供参考。下图:PolyNet的架构。该设计基于上述模式,并进行了修改,即用PolyInceptions替换Inception剩余单元对于不同的模型,每个阶段中的块的数量可能会• 双向:I+F+G。这是一个一阶PolyInception,单元中包含了一个额外的一阶路径这种构造类似于多残差网络[1]中使用的构建块这些范例设计可以基于算子多项式和网络结构之间的关系例如,poly-2和mmoly-2可以扩展到更高阶的PolyInception模块,即poly-3(I+F+F2+F3)和mmoly-3(I+F+GF+HGF)。与二阶模型相比,扩展模型具有更强的表达能力,但也增加了计算量。同样,2路也可以扩展到3路。3.2. 消融研究在 进 行 整 个 网 络 的 设 计 之 前 , 我 们 首 先 研 究PolyInceptions 如 何 影 响 整 体 性 能 。 该 研 究 使 用Inception-ResNet-v2(IR-v2) [25]的精简版本作为基线模型。如图5(a),IR-v2包括三个阶段A,B,C,它们在不同的空间分辨率(35×35,17×17和8×8)上运行。这些阶段分别包含5、10和5个初始剩余单位。因此,我们将IR-v2的标准版本表示为IR 5-10-5。这是一个非常大的网络。由于我们需要在本研究中研究许多配置,为了加快实验速度,我们将尺寸缩小到IR 3-6-3,并将其用作基线模型。在本研究中,我们构建了IR 3-6-3的许多变体版本。在每个版本中,我们选择一个阶段(从A、B和C中),并将其中的所有Inception剩余单元替换为上面介绍的六个PolyInception模块(2-way、3-way、poly-2、poly-3、mmoly-2和mmoly-3)。因此,我们总共有18个样本(基线除外)。我们使用相同的训练策略和超参数训练了这些神经网络,这将在第二节中详细介绍。4.第一章+Iµ p4IµcQ po µFIµcQ po µFIµcQ po µFRQ LUO4 p4+Iµ p4RQ LUO4 p4IµcQ po µFIµcQ po µF+Iµ p4RQ LUO4 p4IµcQ po µFIµcQ po µ(+Iµ p4RQ LUO4 p4IµcQ po µFIµcQ po µ(5辆IR-AA到B10辆IR-BB到C3xPoly-初始AA到B6xPoly-先启湾B到C72294.794.694.594.494.394.294.1650 700 750 800850时间/迭代(ms)94.794.694.594.494.394.294.1600 700 800 900 10001100时间/迭代(ms)94.794.694.594.494.394.294.1650 700 750 800时间/迭代(ms)94.794.694.594.494.794.694.594.494.794.694.594.494.394.2MPO94.394.294.394.294.121.2 21.6 22 22.422.8#参数(M)94.120 25 30 3540#参数(M)94.120 25 3035#参数(M)图6:不同PolyInception配置在3-6-3尺度上的比较。y轴是ILSVRC 2012验证集上的单次裁剪前5名精度第一行测量准确度与计算成本,其中x轴是实际实验中每次迭代的运行时间。第二行显示参数的效率。这三个柱是分别修改阶段A、B和C的配置。在这些图中,左上区域意味着更高的精度,更少的时间复杂度或更小的参数大小。图6比较了不同的ASIC的成本效率,将它们绘制为性能与成本图表在这里,性能是通过在ILSVRC 2012验证集上获得的最佳前5名单次裁剪准确度来测量的;而成本是以两种不同的方式来测量的,即,每次迭代的运行时间和参数大小。从结果中,我们可以观察到,用PolyInception模块替换Inception剩余单元总是可以提高性能,但会增加计算成本。虽然总的趋势是增加计算复杂度或参数大小可以导致更好的性能,但不同模块结构的成本效率例如,增强阶段B对于性能改进是最有效的。特别是,对于这个阶段,多聚-3似乎是最好的架构选择,为此目的,而亚军聚-3。然而,值得注意的是,poly-3的参数大小相对于mmoly-3仅为1/3。当内存约束很紧时,此属性非常有用。对于其他两个阶段,A和C,性能增益相对较小,并且在这些阶段中,k-way的性能略好于mmoly和poly。这种观察可以在使用PolyInception模块设计深度网络时提供有用的指导。3.3. 混合不同的PolyInception设计在上面的研究中,我们用特定配置的PolyInception模块替换了一个阶段中的所有Inception块。虽然该研究揭示了不同阶段之间的有趣差异,但仍然存在一个问题:如果我们在一个阶段内使用不同的多概念会怎样?我们进行了一项消融研究来调查这个问题。本研究使用更深的网络IR 6-12-6作为基线。这不仅提供了一个在更深的背景下观察行为的机会,而且还提供了一个更大的自由度来探索不同的模块组合。具体来说,我们专注于阶段B,因为我们根据经验观察到,这个阶段对整体表现的影响最大此外,关注其中一个阶段允许我们在有限的计算资源下探索更多本研究比较了5种配置,即基线IR 6-12-6,分别用poly-3、mmpoly-3和3-way替换Inception块的三种均匀的MEMS,以及混合配置。特别是,混合配置3路A多聚-2A聚-2A双向AIR 3-6-3多聚-3A聚-3ATop-5精度Top-5精度姆波尔Y-3B聚-3B双向B3-wa姆波尔黄蓝运-2Bpo ly-2BIR 3-6-3三向C2-way C多聚-3C多聚-2C多聚-3CIR 3-6-3聚-2C3-waly-2Amy A聚-3A聚-2一双向ApoIR 3-6-3ly-3A聚-3BMPoly-3B2-B3路- B聚-2B多聚-2 BIR 3-6-3三向C双向C多聚-3C聚-3CIR 3-6-3姆波利聚-2C-2C723...图7:混合配置交错3路、mmoly-3和poly-35.55.45.35.25.15IR6-12-6多聚-3B三通B聚-3BmixedB图8:PolyNets在6-12-6尺度上的性能。y轴是ILSVRC 2012验 证 集 上 的 单 一 裁 剪 前 5 名 误 差 。 混 合 结 构 采 用 ( 3-way→mpoly-3→poly-3)×4结构。我们可以看到,混合结构比三种均匀结构中的任何一种都要稍微好一些。将阶段B中的12个单元分成4组,用三个不同类型的PolyInception模块链替换每组,如图所示。7.我们将这种结构表示为(3-way→mmoly-3→poly-3)×4。在相同的设置下训练所有神经网络(详见第4节)。图8显示了比较结果。同样,我们观察到,用Poly-Inception模块替换Inception剩余单元通常会导致显着的性能提升,并且Poly-3的性能略好于其他两个。一个更值得注意的观察是,混合配置的性能远远优于所有均匀配置,但计算成本相当。这清楚地表明,加强结构多样性的好处不仅存在于每个单元内,而且存在于各个单元之间。3.4. 超深多边形网的设计通过上述所有研究,我们开始设计一个非常深入的网络,旨在将单个网络的最先进性能提升到一个新的水平。该设计遵循Inception ResNet-v2 [25]的基本结构,该结构包括底部的茎和顶部的三个阶段,分别在不同的空间分辨率上运行级C的输出将通过全连接层和softmax损耗层与类标签连接这种设计的目的是在给定的计算预算下获得最佳性能为了实现这一目标,我们仔细选择了PolyInception模块或其组成的每个阶段,考虑了多种因素,例如:表达力与成本的平衡、结构的多样性、训练的难度。此外,还讨论了由参数大小决定的通信成本,在分布式环境中训练时很重要。在一天结束时,我们获得了最终的设计,描述如下。阶段A包括10个2路PolyInception剩余单元,阶段B包括10个poly-3和2路的混合物(总共20个模块),而阶段C包括5个poly-3和2路的混合物(总共10个模块请注意,虽然我们将上述研究作为参考,但我们进行了一些修改,以适应GPU上的网络,降低通信成本,并保持足够的深度。例如,我们将上述研究中性能最佳的混合结构中使用的3路和多聚3模块更改为2路和多聚3模块。4. 训练PolyNet我们在ILSVRC图像分类基准[19]的训练集上训练了我们的网络,并在其验证集上评估了它们的性能。 任务 将每个给定的图像分类到1000个类别中的一个。这里,训练集包含大约1。28M图像,而验证集包含50K。下面,我们将介绍我们培训程序中的技术设置。数据扩充。 为了提高推广性能,我们采用了[26]中提出的多区域增强方案。具体来说,对于每个训练图像,我们随机生成一个裁剪,裁剪区域的范围是整个区域的8%到100%,长宽比在3/4到4/3之间。然后使用双线性插值将裁剪调整为标准尺寸299×299,并以50%的概率水平翻转。我们为Very Deep PolyNet提供了331×331的输入,它稍微大一些。培训设置。我们在训练中使用RMSProp [29],衰减设置为0。9,则n=1。0的情况。 批次归一化在[25]中使用的设置。学习率初始化为0。45,并将按0的因子缩放。每160K次迭代1次。所有的训练过程都在560K次迭代我们在配备8个Nvidia Titan XGPU的服务器上训练我们的模型,所有计算都以32位单精度执行。不同规模的模型在不同数量的节点上训练所有型号均基于IR 3-6-3,例如,在SEC学习的人3.2,在单个节点上训练,使用大小为256的小批量。基于IR 6-12-6的那些,例如,在SEC学习的人3.3,在双节点集群上训练,使用大小为256的小批量。非常大的模型,包括ResNet-500 , VeryDeepInception-ResNet 和 VeryDeepPolyNet,如第2节所述。3.4,在四节点集群上训练,使用大小为512的小批量。在所有设置中,每个mini-batch都均匀地分配给所有GPU。由于批量归一化是在每个GPU内本地执行的,因此收敛速度和最终性能将Top-5错误3路多聚-3聚-33路多聚-3聚-3724图9 : 两 个 示 例 说明 通 过 插 入 进 行 初 始 化。 左 :当 用PolyInception模块替换残差单元时,我们保留一阶块F的参数,并随机初始化新插入的块G。右:当网络深度加倍时,我们以交错方式插入新单元,即在原始单元之间插入新单元。我们发现这比将所有新单位堆叠在一起更有效。如果分配给每个GPU的样本数量太小,则可能会受到不利影响。这初始化。对于深度很深的网络,随机初始化有时会使收敛缓慢且不稳定.从较小的预训练模型初始化部分参数已被证明是解决以前工作中这个问题的有效方法[9,21]。受这些努力的启发,我们设计了一种称为插入初始化的策略来初始化非常深的网络,如图所示。9.我们发现这种策略通常可以稳定和加速训练,特别是在早期迭代中。残余缩放。正如在[25]中所观察到的,简单地将残差与输入相加通常会导致不稳定的训练过程。我们观察到了相同的情况,因此遵循了[25]中的实践,即在将残差路径添加到模块输出之前,用阻尼因子β缩放残差路径以2路为例。这种修改等价于将算子I+F+G改为I+βF+βG。特别地,我们设置β = 0。3在我们的实验中随机路径非常深的网络在训练的后期往往会过拟合,即使是像ImageNet这样大的数据集。随机丢弃网络部分的策略,如Dropout [23],DropConnect [31],Drop-path [17]和Stochastic Depth [13],已被证明可以有效地对抗过度拟合的趋势。受这些工作的启发,我们引入了一种称为随机路径的技术,该技术以预定义的概率随机丢弃每个模块中的一些路径,如图所示图 10 : 随 机 路 径 的 示 例 。 当 某 些 路 径 被 丢 弃 时 ,PolyInception模块将被转换为一个较小但不同的模块。左: 从I + F + GF + HGF到I + GF。从 I+F+G+H到I+G+ H。模块将对训练算法可见,并且相关联的参数相应地更新。这种方法可以减少组件之间的自适应效应,从而产生更好的泛化性能。请注意,我们发现过早应用随机路径会阻碍收敛。在我们的训练中,我们自适应地这样做-只有在观察到严重的过度拟合时才激活此策略,其中从底部到顶部的丢弃概率从0线性增加到0。二十五5. 总体比较我们比较了我们的Very Deep PolyNet(Sec. 3.4)各种现有的最先进的架构。值得注意的是,Very DeepPolyNet的计算成本明显大于Inception-ResNet-v2或公开可用的ResNet的最深版本,即Facebook的为了得到一个有说服力的比较,我们通过在Inception-ResNet-v22 中 堆 叠 更 多 的 剩 余 单 元 来 构 建 一 个 非 常 深 的Inception-ResNet,在阶段A,B和C中分别有20,56和20个我们还将ResNet扩展到ResNet-269和ResNet-500。Very Deep Inception- ResNet和ResNet-500的计算成本与我们的Very Deep PolyNet相似。我们在整个ILSVRC2012验证集上评估了这些模型的单作物和多作物分类错误我们进行的多作物评估是基于top-k池[32]。具体来说,我们生成了如[26]中所述的作物,使用8个尺度,每个尺度36种作物。然后,我们在每个规模,即前30%的池。对每个等级的作物中前30%的分数进行独立的平均,最后对所有8个等级的分数进行平均。我们首先检查图。11.在本实验中,我们逐步将原始Inception-ResNet-v2从IR 5-在图10中。 值得注意的是,不同的合奏im-PolyNet设计中嵌入的planet在这里得到了体现– with random path dropping, a PolyInception module 在每次迭代中,一个不同的子网络,它结合了一组高度多样化的2我们没有使用辅助损失或标签平滑正则化,在[25,27]中。这导致我们的实现与[25]中报告的实现之间存在小差距(前5名准确率为0.2%)。为了确保公平的比较,本文中报告的所有结果,除了表1中的一些项目,都是基于我们自己的实现。+Iµ p4RQ LUO4 p4IµcQ po µFIµcQ po µ(+Iµ p4RQ LUO4 p4IµcQ po µF+× &&×&Iµ p4RQ LUO4 p4F(++&×&&Iµ p4RQ LUO4 p4(F+聚乙烯B聚乙烯BIR-B聚乙烯BIR-B聚乙烯B…………725表1:在ILSVRC 2012验证集和测试集上进行单作物和多作物评估的单一模型性能。†表示模型是由我们训练错误率后面跟着错误率意味着它是在验证集的非黑名单子集上评估的[25],这可能会导致稍微乐观的结果。网络验证集前1名错误(%)前5名错误(%)测试集前5名误差(%)验证集前1名错误(%)前5名错误(%)ResNet-152 [9]22.166.16-19.384.49ResNet-152†20.935.545.5018.503.97ResNet-269†19.784.894.8217.543.55ResNet-500†19.664.784.7017.593.63[25]第二十五话20.0米5.0分-17.73.8Inception-ResNet-v2 [25]19.9米4.9米-17.83.7Inception-ResNet-v2†20.055.055.1118.413.98非常深的侵入-ResNet†19.104.484.4617.393.56非常深的PolyNet18.714.254.3317.363.4596.0%95.7%百分之九十五点四百分之九十五点一94.8%94.5%94.2%10-20-10混合IR 20-56-20IR 6-36-6IR 10-20-106-12-6混合物BResNet 500ResNet 269IR 5-10-53-6-3 3路3-6-3双向PolyNetinception-ResNet-v2ResNet1520 2000 4000 6000 8000 10000节点 * 时间(ms)/迭代深度和结构多样性,这可能有助于未来的深层建筑设计。表1总结了单作物/多作物评估的前1名和前5名错误。它表明,在ImageNet的验证和测试集特别是,我们获得前5名的错误率4。25%和3。45%,分别对单/多作物设置的验证集,和4。33%的测试集上的单一作物设置与IR-v2获得的最佳公布单网络性能相比,这种改进是显着的。4.第一章9%和3。7%的单一作物和多作物设置。 也是图11:使用PolyInception,在非常深的网络上仍然可以观察到很大的性能增益。结果表明,结构多样性比仅仅是更深的网络更好。10-5 到 表 示 为 IR 20-56-20 的 Very Deep Inception-ResNet。绘制了这些模型的前5个精度。我们同样绘制了一条曲线,描绘了我们的模型在不同复杂度下的性能,从具有双向结构的PolyNet 3-6-3到最终具有混合配置的Very Deep PolyNet。请注意,我们应用了自适应随机深度(Sec. 4)来改善深度模型的过拟合。图11显示了几个重要的观察结果:(1)当计算预算有限时(图11中低于3000 ms/iter),更深的结构更可取。(2)随着预算的增加,结构多样性的收益增长得更快。特别是,超过4000ms/iter,结构多样性可以带来更大的性能增益非常深的网络给定相同的计算预算,相比简单地堆叠更多的单元。(3)在相同的计算预算下,具有Inception块的架构通常比标准ResNet架构(3×3卷积这也部分证实了结构多样性的重要性。总的来说,这些观察结果揭示了值得注意的是,ResNet的多作物性能500略低于ResNet-269。这表明,深化网络而不增强结构多样性不一定会带来积极的收益。6. 结论在本文中,我们探索了一个新的方向,结构多样性,设计深度网络。在这个方向上,我们提出了一个名为PolyInception的模块族来扩展剩余样式网络。我们进行了系统的实验来探索PolyInception的行为。基于这些研究,我们设计了一个非常深的PolyNet。该模型优于Inception-ResNet-v2,最先进的,甚至是它的更深层次的变体。我们的研究表明,随着深入,加强结构多样性可以导致进一步的性能改善。鸣谢本工作部分由商汤科技集团有限公司、香港创新及科技支援计划及创业计划资助(第100号)资助。24204215)。作者还要感谢CU-DeepLink[4]团队的所有成员在ImageNet2016竞赛中的辛勤工作。特别感谢Tong Xiao提供经过培训的ResNets。Top-5精度726引用[1] M. Abdi和S.纳哈万迪多残差网络。arXiv预印本arXiv:1609.05672,2016年。[2] Y. Bengio,P. Simard,and P.弗拉斯科尼用梯度下降法学习长期依赖关系是困难的。IEEE神经网络事务,5(2):157[3] L.布莱曼装袋预测器。Machine learning,24(2):123[4] CU-DeepLink团队。PolyNet:一种超深度网络的新设计。http://mmlab.ie.cuhk.edu.hk/projects/cu_deeplink.查阅日期:2016-11-11。[5] Y.弗罗因德通过多数增强弱学习算法。在COLT,第90卷,第202-216页[6] X. Glorot和Y.本吉奥。了解训练深度前馈神经网络的困难。在Aistats,第9卷,第249-256页[7] X. Glorot,A. Bordes和Y.本吉奥。深度稀疏整流神经网络。在Aistats,第15卷,第275页,2011年。[8] K.他和J. Sun。卷积神经网络在约束时间成本。在IEEE计算机视觉和模式识别会议论文集,第5353- 5360页[9] K.他,X。Zhang,S. Ren和J. Sun.用于图像识别的深度残差学习。在IEEE计算机视觉和模式识别会议上,2016年6月。[10] K.他,X。Zhang,S. Ren和J. Sun.深度剩余网络中的身份映射。在ECCV(4),卷9908的Lec- ture Notes inComputer Science,第630-645页中。施普林格,2016年。[11] T. K.何构造决策森林的随机子空间方法。IEEE模式分析与机器智能学报,20(8):832[12] G. Huang,Z.Liu和K.Q. 温伯格密集连接的卷积网络。arXiv预印本arXiv:1608.06993,2016。[13] G. Huang,Y.黄氏Y.太阳,Z. Liu,L. Sedra和K. Q.温伯格深度随机的深度网络。在ECCV(4),Lecture Notesin Computer Science的第9908卷,第646施普林格,2016年。[14] S. Ioffe和C.赛格迪批次标准化:通过减少内部协变量偏移来加速深度网络训练。在ICML,JMLR Workshop andConference Proceedings 的 第 37 卷 , 第 448-456 页 中 。JMLR.org,2015年。[15] R. A. Jacobs,M. I. Jordan,S. Nowlan和G. E.欣顿。当地专家的适应性混合神经计算,3(1):79[16] A.克里热夫斯基岛Sutskever和G. E.辛顿Imagenet分类与深度卷积神经网络。在神经信息处理系
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功