没有合适的资源?快使用搜索试试~ 我知道了~
从头开始训练的稳定性研究及代码实现
2268ScratchDet:从头开始训练单次目标检测器朱瑞1,4岁,张世峰2岁,王晓波1岁,文龙银3岁,石海林1岁,波烈峰3岁,梅涛1岁,JD AIResearch,中国;2 CASIA,UCAS,中国;3 JD Digits,美国;4中山大学,中国{zhurui10,wangxiaobo8,longyin. wen,shihailin,liefeng.bo,tmei}@ jd.com,shifeng.nlpr.ia.ac.cn摘要当前最先进的对象对象是从在大规模分类数据集ImageNet上预训练的现成网络中微调的,这会带来一些额外的问题:1)分类和检测对翻译存在不同程度的敏感性,导致学习目标偏差; 2)体系结构受分类网络的限制,导致修改不便。为了应对这些问题,从头开始训练检测器是一个可行的解决方案。然而,从头开始训练的检测器通常比预先训练的检测器表现得更差,甚至在训练中存在收敛问题在本文中,我们探索从零开始鲁棒地训练对象检测器。通过分析以前的工作优化景观,我们发现,在当前的从头训练检测器被忽视的一借助BatchNorm带来的稳定和可预测的梯度,检测器可以从头开始稳定地训练,同时保持良好的性能与网络结构无关利用这一优势,我们能够探索各种类型的网络进行对象检测,而不会受到收敛性差的影响通过大量的实验和对下采样因子的分析,提出了Root-ResNet骨干网络,充分利用了原始图像的信息在所有从头开始训练的检测器中,我们的SundechDet代码将在https上公开提供//github.com/KimSoybean/ScratchDet网站。1. 介绍目标检测在卷积神经网络(CNN)的框架下取得了很大的进展.当前最先进的检测器通常从高精度分类网络进行微调,例如,,VGGNet [36],ResNet [12]和GoogLeNet [37]在ImageNet上预训练同样贡献,这项工作是在JD AI Research完成的。†通讯作者。[29]数据集。微调将从源域学习的分类知识转移到处理对象检测任务。一般来说,从预先训练的网络进行微调可以比从头开始训练获得更好的性能然而,世上没有免费的午餐。微调预训练的网络来进行目标检测有一些严重的局限性。一方面,分类和检测任务对翻译具有不同程度的敏感性 分类任务更倾向于平移不变性,因此需要下采样操作(例如,具有步幅2的最大池化和卷积)以获得更好的性能。相比之下,局部纹理信息对于对象检测更关键,使得使用不变性操作(例如,下采样操作)。另一方面,在微调过程中,不方便改变网络的架构(即使是很小的变化)。如果我们采用新的架构,则应该在大规模数据集上重新进行预训练(例如,,ImageNet),需要高计算成本。幸运的是,从头开始训练检测器能够消除上述限制。DSOD [32]是第一个从头开始训练CNN检测器的人,其中深度监督起着关键作用。DenseNet [13]中引入了深度监督作为密集的逐层连接。然而,DSOD也受到DenseNet预定义架构的限制。 如果DSOD采用其他类型的网络(例如,,VGGNet和ResNet),性能会急剧下降(有时甚至在训练中崩溃此外,与预先训练的检测器相比,目前从头训练的检测器的最佳性能因此,如果我们希望从零开始利用训练检测器,它需要实现两个改进:(1)在保证训练收敛性的同时,消除了任何类型网络的结构限制,(2)给出与预训练网络一样好(甚至更好)的性能。为此,我们研究了随机初始化网络对检测器优化产生重大影响的因素正如[30]中所指出的,BatchNorm重新参数化优化问题,使其景观显着更平滑,而不是减少内部协变量偏移。2269基于这一理论,我们假设从头开始训练检测器时缺乏BatchNorm是导致收敛性差的主要原因因此,我们将BatchNorm集成到骨干和检测头子网络中(图2),并发现BatchNorm可以帮助检测器在任何形式的网络(包括VGGNet和ResNet)中很好地收敛,而因此,我们可以自由地修改架构,而不受预训练模型的限制。通过利用 这一优势 ,我们分 析了具 有各种配 置的基于ResNet和VG-GNet的SSD[24]检测器的性能,并发现第一卷积层中的采样步幅在此基础上,通过引入新的根块,重新设计了检测器的结构,保留了检测特征图的丰富信息,大大提高了检测精度,尤其是对小目标的检测精度 。我们报告 了在 PASCAL VOC 2007 [6],PASCAL VOC 2012 [7]和MS COCO [23]数据集上进行的广泛实验,以证明我们的SlogchDet比一些预先训练的基于检测器和所有最先进的从头开始训练检测器表现得更好,例如。,将最先进的mAP提高了1. 2007年,7%的VOC,1。2012年VOC的5%,以及2。占7%关于COCO本文的主要贡献概括如下。(1)我们提出了一个从头开始训练的单次对象检测器,名为SundechDet,它集成了BatchNorm,以帮助检测器从头开始很好地收敛,与网络类型(2)提出了一种基于新设计的根块的Root-ResNet骨干网络,显著提高了检测精度,特别是对小目标的检测。(3)与最先进的train-from-scratch检测器和一些预训练的检测器相比,SundechDet表现良好2. 相关工作具有预训练网络的对象检测器。大多数基于CNN的对象检测器都是从ImageNet上的预训练网络中进行微调的。一般可分为两类:两阶段和一阶段的方法。两阶段方法首先生成一组候选对象建议,然后预测准确的对象区域和相应的类标签。随着从Faster R-CNN [28],R-FCN [4],FPN [21]到Mask R-CNN [11]的逐步改进,两阶段方法在几个具有挑战性的数据集上实现了最佳性能,例如。、PASCAL VOC和MS COCO.两阶段方法的最新发展集中在重新设计架构图[20],卷积形式[5],重新排列检测分数[3],使用上下文推理[1]和利用多层进行预测[19]。追求高效率的一步法近年来备受关注,同时也重新审视了gresses对象的位置和大小,以及相应的OverFeat [31]是第一个单级检测器之一,从那时起,已经提出了其他几种方法,如YOLO [26,27]和SSD [24]。最近对一阶段方法的研究集中在丰富检测特征[8],设计不同的架构[39]和解决类别不平衡问题[41,22,40]。列车从零开始的物体探测器。 DSOD [32]首先从头开始训练一级对象检测器,并提出了一系列产生良好性能的原则。GRP- DSOD [33]通过应用门控递归特征金字塔。这两种方法专注于DenseNet的深度监督,但忽略了BatchNorm对优化的影响以及从头开始训练检测器的网络架构的灵活性批量归一化。BatchNorm[14]通过规范化层输入来解决内部协变量移位问题,这使得使用大学习率来加速网络训练可行。最近,Santurkar等人 [30]为BatchNorm使优化景观显著更平滑而不是减少内部协变量偏移的解释提供了经验证明和理论依据3. ScratchDet在本节中,我们首先研究Batch- Norm从头开始训练SSD的有效性。然后,我们重新设计的骨干网络,通过分析的检测性能的ResNet和VGGNet基于SSD。3.1. 从头开始训练的BatchNorm在不失一般性的情况下,我们考虑在SSD中应用批量范数,这是一个阶段的最常见的框架SSD由骨干子网(例如,具有几个附加卷积块的截断VGGNet-16)和检测头子网络(即,,预测块在每个检测层之后,其由一个3× 3边界框回归卷积层和一个3× 3类别标签预测卷积层)。请注意,原始SSD框架中没有BatchNorm动机通过最近的工作[30],我们相信使用BatchNorm有助于从头开始训练SSD。BatchNorm使优化环境变得更加平滑,从而使梯度的行为更具可预测性和稳定性 以允许更大的搜索空间和更快的收敛。DSOD成功地从头开始训练检测器,然而,它将结果归功于DenseNet的深度监督,而没有强调BatchNorm的效果我们认为有必要从头开始研究BatchNorm对训练检测器的影响。为了验证我们的论点,我们从头开始训练SSD,使用批量大小128,而不使用BatchNorm作为基线。如表1的第一列所示 , 我 们 的 基 线 产 生 67 。 VOC 2007 测 试 集 的 6%mAP。2270基础lr:67.6 mAP检测头上的基底lr + BN: 71.0 mAP检测头上的10 x基底lr + BN: 75.6 mAP基础lr:67.6 mAP检测头上的基底lr + BN: 71.0 mAP检测头上的10 x基底lr + BN: 75.6 mAP梯度的~2范数的涨落二十五两21412个2. 020101 .一、81581 .一、661041. 4521 .一、200 20k40k60k80k100k120k步骤020k40k60k80k100k120k步骤0 20k40k60k80k100k120k步骤(a) 损耗值(b) 梯度的L2范数(c) 梯度L2范数的涨落图1.优化景观分析。(a)训练损失值。(b)梯度的L2范数。(c)梯度的L2范数波动(平滑)。蓝色曲线是原始SSD,红色和绿色曲线分别表示在1倍和10倍基本学习率的头部子网络中使用BatchNorm训练的SSD。BatchNorm使优化景观更平滑,并具有更稳定的梯度(红色与蓝色)。有了这个优势,我们可以设置更大的学习率(绿色)来搜索更大的空间,更快地收敛,从而获得更好的解决方案。主干子网中的BatchNorm。我们在骨干子网的每个卷积层中添加Batch- Norm,然后从头开始如表1所示,在骨干网络中使用BatchNorm可以提高5. mAP的2%。更重要的是,在骨干网络中添加BatchNorm使优化环境更加平滑。因此,我们可以使用更大的学习率(0。01和0。05)以进一步提高性能(即,mAP由72. 8%至77。8%,78。0%)。它们的性能都超过了从预训练的VGG-16模型(77. 2%[24])。这些结果表明,在骨干子网中添加BatchNorm是从头开始训练SSD的关键问题之一。检测头子网中的BatchNorm。为了分析BatchNorm在检测头子网中的效果工作中,我们绘制了训练损失值,梯度的L2范数,以及梯度的L2范数与训练步骤的波动。如图1(b)和1(c)中的蓝色曲线所示,从头开始训练SSD,默认学习率为0。001具有较大的梯度L2范数波动,特别是在训练的初始阶段,这使得损失值突然变化并收敛到不良的局部极小值(即,在图1(a)中的训练过程结束时的相对高的损失和差的检测结果67。6% mAP)。这些结果有助于解释使用大学习率的现象 从头开始使用原始架构或预先训练的网络来训练SSD通常会导致梯度爆炸,稳定性差和梯度预测能力弱(见表1)。相比之下,在检测头子网络中集成BatchNorm使损耗情况更平滑(参见图1中的红色曲线),从而将mAP从67提高到67。6%至71。0%(见表1)。平滑的景观允许我们设置更大的学习率,这带来了更大的搜索空间和更快的收敛(见图1(a)和1(c))。因此,mAP 从 71 提 高 。 0% 至 75 。 6% 。 此 外 , 使 用BatchNorm,更大的学习率也有助于跳出糟糕的局部极小值并产生稳定的梯度(图1(b)和1(c)中的绿色曲线)。BatchNorm在整个网络中。我们还研究了在骨干和检测头子网中使用BatchNorm的检测器在整个检测器网络中使用Batch- Norm后,我们能够使用更大的基础学习率(0. 05)从头开始训练检测器,这产生1. 与使用预训练的VGG-16主干初始化的检测器相比,mAP高5%(78. 7% v.s77. 2%)。更多详情请参见表1。3.2. 骨干网如 上 所 述 , 我 们 从 头 开 始 使 用 BatchNorm 训 练SSD,并实现了比预训练SSD更好的准确性这鼓励我们从头开始训练检测器,同时保持性能独立于网络架构。通过利用这一优势,我们能够探索各种类型的网络来完成目标检测任务。ResNet和VGGNet的性能分析截断的VGG-16和ResNet-101是SSD中使用的两种常用骨干网络(图2中的简要结构概述一般来说,ResNet-101产生更好的分类结果比VGG-16(例如,、5。99% v.s 8. 68%,2. ImageNet上的前5名分类错误降低了69%)。然而,如DSSD [8]所示,基于VGG-16的SSD表现良好比基于ResNet-101的SSD具有相对小的输入大小(例如,,300× 300)上的PASCAL VOC。 我们认为,这种现象是由第一卷积层(即,,conv1 x with stride 2)的ResNet-101。 这一行动严重影响了...基础lr:67.6 mAP检测头上的基底lr + BN: 71.0 mAP检测头上的10 x基底lr + BN: 75.6 mAP训练损失2.2梯度范数2271图2.基于VGG-16和ResNet的SSD的简要概述101. BatchNorm是为了清晰而覆盖如图3和表2所示,ResNet的第一个步幅2在小输入大小的PASCAL VOC上的性能较差检测精度,特别是对小物体(见表2)。在我们删除ResNet-18的conv1 x中的下采样操作以形成图3(c)中的ResNet-18-B之后,检测性能从73提高了很大幅度。1%至77。6%的mAP。我们还删除了第二次下采样操作,以形成图3(b)中的ResNet-18-A,其改进相对较小。综上所述,第一卷积层中的下采样操作对检测精度有不好的影响,特别是对于小物体。针对目标检测的主干网络重新设计。为了克服基于ResNet的骨干网络用于对象检测的缺点,同时保留其强大的分类功能,能 力 , 我 们 设 计 了 一 个 新 的 架 构 , 命 名 为 Root-ResNet,这是对原始SSD检测器中截断ResNet的改进,如图3(d)所示我们移走在第一个卷积层中进行下采样操作,并用3× 3卷积滤波器的堆栈替换7× 7卷积内核(类似于DSOD[32]中的主干块,但由于第一个步幅的影响很大,因此表示为根块)。凭借丰富的输入,Root-ResNet能够利用从图像中提取更多的局部信息,从而为小目标检测提取此外,我们将四个卷积块(由SSD添加以提取不同尺度的特征图)替换为四个残差块到Root-ResNet的末尾每个残差块由两个分支形成。一个分支是步长为2的 1× 1卷积层,另一个分支由步长为2的3×3卷积层和步长为1的3× 3卷积层组成每个卷积中的输出通道数层设置为128。这些残差块带来了参数和计算的效率,而没有性能下降。4. 实验我们进行了几个实验的PASCAL VOC和MS COCO数据集,包括20和80个对象类。在Caffe库中实现了所提出的SockchDet[15]所有的代码和训练过的模型都将公开。4.1. 培训详情所有模型都是使用SGD从头开始训练的,0的情况。0005重量衰减和0. 9个势头4 NVIDIA图3.第4.2.2节中的网络图示。(a)ResNet-18:原始结构。(b)ResNet-18-A:删除第一个最大池化层。(c)ResNet-18-B:将第一conv层中的步幅大小从2改变为1。(d)Root-ResNet-18:将ResNet-18-B中的7 × 7 conv层替换为三个堆叠的3 × 3conv层。PASCAL 2007测试(从零开始“07+12”培训)的相应mAP为73。百分之一,七十五。3%,77. 6%,78。5%。值得注意的是,为了公平比较,无论我们如何修改结构,我们选择的检测层的空间大小都与SSD 300和DSOD 300相同(即,、38× 38、19×19、10 × 10、5× 5、3× 3、1× 1)。Tesla P40 GPU。为了公平比较,我们使用与原始SSD相同的训练设置,包括数据增强,锚点设置和损失函数。我们删除了L2标准化[25]。值得注意的是,所有实验都选择具有与SSD 300和DSOD 300相同的固定空间尺寸的检测层,即,,不要使用较大尺寸的特征图进行检测。在DSOD之后,我们使用相对较大的批量128从头开始训练我们的SockchDet,以确保BatchNorm在训练阶段的稳定统计结果同时,我们对基于预训练模型的SSD使用默认的批量大小32(我们也尝试对预训练模型使用128批量大小,但性能没有提高)。值得注意的是,我们使用ResNet-18重新设计的然而,与最先进的探测器相比,我们使用2272表1.在VOC 2007测试集上从头开始训练SSD的BatchNorm和学习率分析所有的网络都是基于截断的VGG-16骨干网。最佳表现(78)7%mAP),并满足以下三个条件:(1)主干和头部的BatchNorm,(2)非预训练,(3)较大的学习率。“NAN”indicates that the training is组件0.001里拉lr 0.010.05里拉骨干网预训练头部BN✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦最大平均接入点(%)67.671.072.871.877.177.6楠75.677.877.376.978.2楠楠78.078.7楠75.5一个更深的骨干网络“Root-ResNet-34”,以获得更好的性能。我们的SockchDet中的所有参数都是通过“xavier”方法初始化的此外,所有模型都是在300× 300的输入大小下训练的,我们相信使用更大的输入尺寸。4.2. Pascal VOC 2007对于PASCAL VOC 2007,所有模型都在VOC 2007和VOC 2012训练集(16,551张图像)上进行训练,并在VOC 2007测试集(4,952张图像)上进行测试。我们使用相同的设置和配置,除了模型组件的某些指定更改。4.2.1BatchNorm分析我们构建了原始SSD的几个变体,并在VOC 2007上对其进行了评估,以证明BatchNorm在从头开始训练SSD方面的有效性,如表1所示没有BatchNorm。我们训练原始SSD,批量大小为128。所有其他设置都是与[24]中的相同。如表1的第一列所示,我们得到67。6%的mAP,即9。比由预训练的分类网络初始化的检测器差6%(即,,77。2%)。此外,由于不稳定的梯度和不平滑的优化景观,训练只能以学习率0成功收敛。001,并进入坏的局部最小值(见图1中的蓝色曲线如表1所示,如果我们使用更大的学习率(0. 01和0。05),训练过程不会收敛。主干子网中的BatchNorm。BatchNorm被广泛用于实现深度神经网络的快速和稳定训练为了验证BatchNorm在骨干子网,我们将BatchNorm操作添加到截断的VGG-16网络中的每个卷积层,表示为VGG-16-BN,并从头开始训练基于VGG-16-BN模型的SSD 如表1所示,在具有相对大的学习率(0. 05)提高mAP从67. 6%至78。0%的百分比。检测头子网中的BatchNorm。 我们还研究了BatchNorm在检测头子网络中的有效性。如前所述,SSD中的检测头子网用于预测对象的位置、大小和原始SSD方法[24]在检测头子网中不使用BatchNorm。中提出表1中,我们发现仅在检测头子网上使用BatchNorm改进了3. 4%的mAP从67。6%至71。0%的百分比。在使用10倍大的基础学习率0. 01,性能可以从71. 0%至75。6%。这一明显的改善(8)。0%)证明了在检测头子网络中使用BatchNorm的重要性BatchNorm在整个网络中。我们在SSD中的每个卷积层上使用BatchNorm,并使用三种不同的基本学习率(0.001,0。01和0。05)的情况。对于0。001和0。01的基础学习率,达到71. 8%,77。3%的mAP。当我们使用最大学习率0. 05,性能将进一步提升1. 4%的mAP至78。7%,优于基于预训练网络的SSD检测器(78. 7%v.s77. 2%)。这些结果表明,在SSD中的每个卷积层上使用BatchNorm对于从头开始训练它至关重要。预训练网络的BatchNorm。为了验证BatchNorm对来自预训练网络的SSD微调的效果,我们构建了原始SSD的变体,即将BatchNorm操作添加到每个卷积层。 的骨干网络中的层由ImageNet中预训练的VGG-16-BN模型初始化,该模型由PyTorch官方模型转换如表1所示,我们观察到,最好的结果达到78。2%有学习率0的情况。01.与从预训练网络微调的原始SSD相比,BatchNorm仅提高了1。0%mAP(77. 第78节. 2%)的检测器,这是相当小的com-composition的改进训练从头开始检测器(即。,11。mAP从67提高了1%。6%至78。7%) 1.我们还想强调的是,与从预训练的网络( 即 基 于 BatchNorm 的 SSD ) 训 练 的 SSD 相 比 ,SockchDet的性能更好。、78. 7% v.s78. 2%)。结果表明,BatchNorm对于从头开始训练的SSD比从预训练模型进行微调更重要DSOD中的BatchNorm。 DSOD将其成功归功于DenseNet的监督,忽略了批处理的效果诺姆删除DSOD中的所有BatchNorm层后,mAP下降6。2%,77。7%至71。2007年VOC的5%因此,我们认为BatchNorm而不是深度监督是训练检测器的关键,表1中的实验验证了这一点。此外,从头开始训练基于VGG 16的Faster R-CNN而不使用BatchNorm无法收敛1我们还尝试批量大小128与SSD的默认设置,produc- ING 78.VGG-16-BN的2% mAP和76. VGG-16的mAP为8%,无改善。2273在DSOD论文中,但使用BatchNorm,它可以成功收敛到67。2%的mAP,尽管它仍然低于预训练的mAP(73.2%mAP)。4.2.2主干子网分析我们分析了基于ResNet和VGGNet的SSD检测器的优缺点,并重新设计了主干网络,称为Root-ResNet。具体而言,所有模型都是基于ResNet-18骨干网络设计的。我们还在检测头子网络中使用BatchNorm。在训练阶段,学习率设置为0。05,并分别连续除以10用于另外的30k、20k和5k迭代。如表2所示,基于ResNet- 18从头开始训练SSD仅产生73。1% mAP。我们分析原因如下。第一层的内核大小。与VGG 16相比,ResNet-18中的第一个卷积层使用相对较大的内核大小7× 7,步幅为2。我们的目标是探索第一卷积层的核大小对检测器从零开始训练 如表2的前两行所示,卷积层的内核大小对性能没有影响(即,、73. 1%为7×7v.s 73。3×3为2%)。使用较小的内核大小3× 3会产生稍好的结果速度更快也可以得到同样的结论当我们将第一个卷积层的步幅大小设置为1而不进行下采样时,请参见表2的第五和第六行以了解更多细节。第一层中的下采样。与VGGNet相比,ResNet-18在第一个卷积层上使用下采样,导致相当大的局部信息丢失,这极大地影响了检测性能,特别是对于小目标。如表2所示,在移除第一层中的下采样操作(即,,ResNet-18-B in Figure 3),我们可以改进4. 5%和4。7×7和3×3的6% mAP内核大小分别。当我们只移除第二个下采样操作并保持第一步幅= 2(即,,ResNet-18-A在图3中),性能达到75. 3%mAP,2. 3%,低于修改第一层(77。6% mAP)。这些结果表明,第一卷积层中的下采样操作是获得良好结果的障碍。我们需要从零开始训练基于ResNet的SSD时删除此操作。根块中的层数。 受DSOD和GoogLeNet-V3 [38]的启发,我们使用几个内核大小为3 × 3的卷积层来代替7 ×7卷积层(即,,图3中的Root-ResNet-18在这里,我们研究了根块中堆叠卷积层的数量对检测性能的影响见表2。随着卷积层数从1增加到3,mAP分数从77提高。8%至78。百分之五然而,随着堆叠层的数目变大,表2.在VOC 2007测试集上从头开始训练SSD的骨干网络分析所有模型都基于ResNet-18主干。FPS是在Tesla P40 GPU上测量的。第一个conv层根块FPS地图1:7×759.573.1关于DownsMapling1:3×362.973.22:3×358.174.93:3×354.575.41:7×737.077.61:3×337.277.8没有向下映射2:3×331.578.13:3×326.978.54:3×324.378.45:3×321.878.5在3.我们认为,根块中的三个3×3卷积层足以从原始图像中学习信息,添加更多的3×3层并不能再提高精度。根据经验,我们使用三个3× 3卷积层在PASCALVOC2007,2012和MS COCO数据集上进行检测任务,输入大小为300 × 300。上述结论还可以推广到更深层次的ResNet骨干网络,例如、ResNet-34.如表3所示,使用Root-ResNet-34,我们的SockchDet的mAP从78提高到78。5%至80。4%,这是300× 300输入尺寸的最佳结果。在基准测试的比较实验中,我们使用Root-ResNet-34作为骨干网。4.2.3结果我们在表3中比较了SNOuchDet与最先进的检测器。在300 × 300的小输入下,SSDCHDet产生80. 4%的mAP没有花里胡哨的东西,比几个最先进的一阶段预训练对象检测器更好,tors ( 例 如 , , 80 。 0%mAP 的 Refinedet 320 和 79 。7%mAP的DES 300)。请注意,我们保留了大部分原始SSD配置和DSOD的相同时期。其结果优于SSD 300-VGG 16(80。4% v.s77. 2%和3。2% mAP高)和SSD321-ResNet 101 ( 80. 4% v.s77. 1% , 3. 3% mAP 更高)。ScratchDet的性能优于最先进的从头开始训练检测器,其1. mAP评分提高7%(即,80。4% v.s78. 7%的GRP- DSOD)。在多尺度测试中,我们的SlogchDet达到了84。1%(SNOCHDet300+)mAP,这是最先进的。4.3. Pascal VOC 2012遵 循 VOC 2012 的 评 估 协 议 , 我 们 使 用 VOC2012trainval 集 , VOC 2007trainval 和 测 试 集( 21 , 503 张 图 像 ) 从 头 开 始 训 练 我 们 的SundrachDet,并在VOC 2012测试集(10,991张图像)上进行测试。SpherichDet的检测结果将提交给公共测试服务器进行评估。学习率和批量大小的设置与VOC 2007相同。表3也报告了SundochDet的准确性2274表3.PASCAL VOC数据集上的检测结果对于VOC 2007,所有方法都在VOC 2007和2012训练集上进行训练,并在VOC 2007测试集上进行测试对于VOC 2012,所有方法都在VOC 2007和2012训练集以及VOC 2007测试集上进行训练,并在VOC 2012测试集上进行测试为了进行公平的比较,在一个TITAN X GPU上测量了SpherichDet的FPS†:http://host.robots.ox.ac.uk:8080/anonymous/0HPCHC.html†:http://host.robots.ox.ac.uk:8080/anonymous/JSL6ZY.html方法骨干输入大小FPS最大平均接入点(%)预训练两阶段:超网络[19]VGG-16∼1000× 6000.8876.371.4更快的R-CNN[28]ResNet-101∼1000× 6002.476.473.8ION[1]VGG-16∼1000× 6001.2576.576.4MR-CNN[9]VGG-16∼1000× 6000.0378.273.9R-FCN[4]ResNet-101∼1000× 600980.577.6[第43话]ResNet-101∼1000× 6008.282.780.4预训练一阶段:RON384[18]VGG-16384× 3841574.271.7SSD321[8]ResNet-101321× 32111.277.175.4SSD300固态硬盘 [24]VGG16300× 3004677.275.8[27]第二十七话暗网-19544× 5444078.673.4DSSD 321 [8]ResNet-101321× 3219.578.676.3DES300[42]VGG-16300× 30029.979.777.1[39]第三十九话VGG-16320× 32040.380.078.1从零开始训练:DSOD300[32]DS/64-192-48-1300× 30017.477.776.3GRP-DSOD 320 [33]DS/64-192-48-1300× 30016.778.777.0SundechDet300Root-ResNet-34300× 30017.880.478.5†SundlechDet300 +Root-ResNet-34--84.183.6米最先进的方法。使用300 × 300的小输入大小,SchDet产生78。5%mAP,优于一些输入量相近的一步法,如:,SSD321-ResNet101(75. 4%,3. mAP高1%),DES 300-77 .第十七章1%,1。4%高mAP )和Refinedet 320-VGG 16(78. 1%,0. 4%更高的mAP)。同时,与基于预训练网络的两阶段方法相比,在1000 × 600的输入大小下,SchDet也比R-FCN产生更好的结果(77. 6%,0. 9%更高的mAP)。此外,本发明还提供了一种方法,我们的SockchDet优于所有从头开始的列车检测器。它比DSOD高出2倍。2%的mAP,减少60个训练周期,超过GRP-DSOD 1。5% mAP。值得注意的是,在多尺度测试中,SundochDet获得83。6%mAP,远优于一步法和两步法的最新技术水平。4.4. MS Coco我们还在MS COCO数据集上评估了SchDet。该模型在MS COCOtrainval 35 k集上从头开始训练,并在test-dev集上进行测试。我们将基本学习率设置为0。05,并依次除以10,分别用于另外的100k、60k和10k迭代。表4显示了MS COCO测试开发集的结果。32.第32章.7%的AP,这是优于所有其他方法具有类似的输入大小由一个大的margin,如SSD 300(25。1%,7. 6%高AP),SSD321(28. 0%,4. 7%高AP),GRP-DSOD320(30. 0%,2. 7%高AP)、DSSD321(28. 0%,4.7% 高 AP ) , DES 300 ( 28. 3% , 4. AP 高 4% ) 、Refinedet 320-VGG 16(29. 百分之四3 .第三章。3%高AP),RetinaNet400(31. 9%,0. AP高8%和Refinedet 320-ResNet 101(32. 0%,0. 7%)。值得注意的是,在相同的输入大小下,DSOD 300在trainval集合上训练,该集合包含的图像比trainval 35k多5000个( 即 , , 123 , 287 v.s 118 , 287 ) , 而 我 们 的SundechDet产生了更好的结果(32. 7%对29。3%,3.4%)。一些方法在训练和测试中使用的输入大小(1000× 600)比我们的SJUCHDet300,例如,,CoupleNet,Faster R-CNN和De-可形成R-FCN。为了进行公平比较,我们还在表4中报告了SellchDet300的多尺度测试AP结果,即,39. 1%,这是目前最好的结果,超过了那些具有大输入图像尺寸的突出的两阶段和一阶段方法。与具有类似输入图像大小的最先进方法相比,SundechDet300产生最佳AP S(13. 0%),性能优于SSD 321 6. 8%。在小对象的显着改善证明了我们的SpherichDet架构的小对象检测的优越性。4.5. 从MS COCO到PASCAL VOC我 们 还 研 究 了 MS COCO 数 据 集 如 何 帮 助 检 测PASCAL VOC。由于PASCAL VOC中的对象类如表5所示,SJUCHDet300实现了84. 0%,82。在VOC 2007测试集和VOC 2012测试集上的mAP为1%,优于其他从头开始训练的方法。在多尺度测试中,2275表4.MS COCO测试开发套件的检测结果方法数据骨干APAP50AP75APSAPMAPL预训练两阶段:ION[1]火车VGG-1623.643.223.66.424.138.3OHM ++[34]trainvalVGG-1625.545.926.17.427.740.3R-FCN[4]trainvalResNet-10129.951.9-10.832.845.0[第43话]trainvalResNet-10134.454.837.213.438.150.8更快的R-CNN+trainvalResNet-101-C434.955.737.415.638.750.9更快的R-CNN w FPN火车35kResNet-101-FPN36.259.139.018.239.048.2更快的R-CNN wTDM[35]trainvalInception-ResNet-v2-TDM36.857.739.216.239.852.1可变形R-FCN[5]trainval对齐-初始-ResNet37.558.040.819.440.152.5Mask R-CNN[11]火车35kResNet-101-FPN38.260.341.720.143.251.2预训练一阶段:[27]第二十七话火车35k暗网-1921.644.019.25.022.435.5SSD300固态硬盘 [24]火车35kVGG1625.143.125.86.625.941.4RON384++[18]trainvalVGG-1627.449.527.1---SSD321[8]火车35kResNet-10128.045.429.36.228.349.3DSSD 321 [8]火车35kResNet-10128.046.129.27.428.147.6DES300[42]火车35kVGG-1628.347.329.48.529.945.2DFPR300 [17]trainvalVGG-1628.448.229.18.230.144.2[39]第三十九话火车35kVGG-1629.449.231.310.032.044.4DFPR300 [17]trainvalResNet-10131.350.532.010.533.849.9PFPNet-R320 [16]火车35kVGG-1631.852.933.612.035.546.1[22]第二十二话火车35kResNet-10131.949.534.111.635.848.5[39]第三十九话火车35kResNet-10132.051.434.210.534.750.4从零开始训练:DSOD300[32]trainvalDS/64-192-48-129.347.330.69.431.547.0GRP-DSOD 320 [33]trainvalDS/64-192-48-130.047.931.810.933.646.3SundechDet300火车35kRoot-ResNet-3432.752.034.913.035.649.0SundlechDet300 +火车35kRoot-ResNet-
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- CoreOS部署神器:configdrive_creator脚本详解
- 探索CCR-Studio.github.io: JavaScript的前沿实践平台
- RapidMatter:Web企业架构设计即服务应用平台
- 电影数据整合:ETL过程与数据库加载实现
- R语言文本分析工作坊资源库详细介绍
- QML小程序实现风车旋转动画教程
- Magento小部件字段验证扩展功能实现
- Flutter入门项目:my_stock应用程序开发指南
- React项目引导:快速构建、测试与部署
- 利用物联网智能技术提升设备安全
- 软件工程师校招笔试题-编程面试大学完整学习计划
- Node.js跨平台JavaScript运行时环境介绍
- 使用护照js和Google Outh的身份验证器教程
- PHP基础教程:掌握PHP编程语言
- Wheel:Vim/Neovim高效缓冲区管理与导航插件
- 在英特尔NUC5i5RYK上安装并优化Kodi运行环境
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功