此篇为目标检测系列论文:OverFeat 论文翻译(OverFeat:Integrated Recognition, Localization and Detection using Convolutional Networks)翻译(已逐句校正,方便大家学习)
我们提出了一个使用卷积网络进行分类、定位和检测的集成框架。我们展示了如何在卷积神经网络中有效地实现多尺度和滑动窗口方法。提出了一种新的深度学习方法,通过学习预测目标的边界来定位。为了增加检测的置信度,边界框将被累积而不是被抑制。我们证明了使用单一的共享网络可以同时学习不同的任务。该集成框架是2013年ImageNet大尺度视觉识别挑战赛(ILSVRC2013)定位任务的获胜者,在检测和分类任务上获得了非常好的结果。在比赛后的工作中,我们为检测任务建立了一个最新最优的技术。最后,我们从我们最好的模型中发布了一个叫做OverFeat的特征提取器。
识别一个图像中主要对象的类别是一种卷积网络(ConvNets)17任务,已应用多年。这些对象包含手写字符[16],房子数字[24],碗筷玩具[18]、交通标志(3、26),Caltech- 101数据集[14]中的对象,或1000-类别ImageNet数据集[15]中的对象。像Caltech-101这样的小型数据集,ConvNets的准确性虽然还算不错,但也不是很出色。然而,更大的数据集的出现使ConvNets显著地推动了发展现状(提高准确率),如1000类的ImageNet[5](AlexNet)。
对于许多这样的任务,ConvNets的主要优点是整个系统是端到端的训练,从原始像素到最终类别,从而减少了手动设计合适的特征提取器的需求。主要的缺点是需要大量带标签的训练样本。
本文的主要观点是:训练卷积网络同时对图像中的目标进行分类、定位和检测,可以提高所有任务的分类精度,检测和定位精度。本文提出了一种基于单卷积神经网络的目标检测、识别和定位的集成方法。同时提出了一种基于累积预测边界盒的定位检测方法。我们建议,通过结合许多定位预测,可以在不训练背景样本的情况下进行检测,并且可以避免耗时和复杂的训练过程。没有背景样本的训练也让网络只专注于正类别,以获得更高的准确性。
我们在ImageNet ILSVRC 2012和2013数据集上进行了实验,并获得了ILSVRC 2013定位和检测任务的最好结果。
虽然来自ImageNet分类数据集的图像在很大程度上被选择为包含一个大致居中、填充了大部分图像的对象,但是感兴趣的对象在图像中有时在大小和位置上有很大的差异。解决这个问题的第一个想法是在图像的多个位置以滑动窗口的方式和在多个尺度上应用一个卷积神经网络。然而,即使有了这个,许多观察窗口可能包含一个完美可识别的对象的一部分(例如,一只狗的头),但不是整个对象,甚至不是对象的中心。这导致了很好的分类,但是很差的定位和检测。因此,第二个想法是训练系统不仅生成每个窗口的类别分布,而且生成包含相对于窗口的对象的包围框的位置和大小的预测。第三个想法是在每个位置和大小为每个类别积累置信度。
许多作者提出使用ConvNets进行检测和定位,并在多个尺度上使用滑动窗口,这可以追溯到20世纪90年代早期的多字符字符串[20]、人脸[30]和手[22]。最近,ConvNets在自然图像[4]中的文本检测、人脸检测[8,23]和行人检测[25]中的性能都达到了最佳水平。
一些作者还建议训练ConvNets来直接预测将要定位的对象的实例化参数,比如相对于查看窗口的位置,或者对象的姿态。例如Osadchy等人的[23]描述了一个同时用于人脸检测和姿态估计的卷积神经网络。人脸在9维输出空间中由三维流形表示。流形上的位置指示姿态(俯仰、偏仰和翻身)。当训练图像为人脸时,对网络进行训练,在已知姿态的位置上生成流形上的点。如果图像不是人脸,则输出将被推离流形。在测试时,到流形的距离表示图像是否包含人脸,而流形上最近点的位置表示姿态。Taylor等[27,28]利用卷积神经网络来估计身体部位(手、头等)的位置,从而得到人体姿态。他们使用一个度量学习标准来训练网络来生成一个身体姿态流形上的点。Hinton等人还提出训练网络来计算特征的显式实例化参数,作为识别过程[12]的一部分。
其他作者提出了通过基于卷积神经网络的分割来实现目标定位。最简单的方法是训练ConvNet将其查看窗口的中心像素(或体素)分类为区域之间的边界,或不是边界[13]。但是当必须对区域进行分类时,最好执行语义分割。其主要思想是训练卷积神经网络将观察窗口的中心像素按照其所属对象的类别进行分类,并将窗口作为决策的上下文。应用范围从生物图像分析[21],到移动机器人的障碍标记[10]到照片[7]的标记。该方法的优点是边界轮廓不需要是矩形,区域不需要是边界分明的对象。缺点是它需要密集的像素级标签进行训练。这种分割预处理或对象建议步骤最近在传统的计算机视觉中得到了广泛的应用,以减少用于检测的位置、比例和高宽比的搜索空间[19,2,6,29]。因此,一种昂贵的分类方法可以应用于搜索空间中的最优位置,从而提高识别精度。此外,[29,1]表明,这些方法通过大幅度减少不太可能的目标区域来提高准确性,从而减少潜在的误报。然而,我们的密集滑动窗口方法能够在ILSVRC13检测数据集上胜过对象建议方法。
Krizhevsky等人最近使用大型卷积神经网络(AlexNet)展示了优秀的分类性能。作者还参加了2012年的ImageNet竞赛,赢得了分类和定位的挑战。尽管他们展示了优秀的定位性能,但是他们并没有发表过该方法的工作描述。因此,我们的论文第一次对卷积神经网络如何用于ImageNet数据的定位和检测做出了明确的解释。
在本文中,我们使用了与2013年ImageNet竞赛中使用的术语相一致的定位和检测,即唯一的区别是使用的评价标准,并且两者都涉及到预测图像中每个对象的边界框。
在这篇论文中,我们探索了三个计算机视觉任务(按难度增加的顺序):(i)分类,(ii)定位,(iii)检测。每个任务都是下一个任务的子任务。所有的任务都是使用一个单独的框架和一个共享的特性学习基础来处理的,我们将在下面的小节中分别描述它们.
在论文中,我们报告了2013年ImageNet大尺度视觉识别挑战(ILSVRC2013)的结果。在这个挑战的分类任务中,每个图像都被分配了一个对应于图像中主要对象的单一标签。允许五次(top-5)猜测找到正确答案(这是因为图像也可以包含多个未标记的对象)。定位任务与此类似,每个图像允许5次猜测(top-5),但除此之外,每个猜测必须返回预测对象的包围框。要想被认为是正确的,预测框必须与金标准匹配至少50%(使用PASCAL标准的IOU),并使用正确的类进行标记(即每个预测是一个与边界框关联在一起的标签)。检测任务不同于定位任务,因为每个图像中可以有任意数量的对象(包括零),误报由平均精度(mAP)度量来惩罚。定位任务是分类和检测之间的一个方便的中间步骤,它允许我们独立地评估我们的定位方法,而不受特定于检测的挑战(例如学习一个背景类)的影响。在图1中,我们展示了带有定位/检测预测以及相应的金标准的图像示例。请注意,分类和定位共享相同的数据集(单一大对象),而检测还包含其他数据(其中对象可以更小)。检测数据还包含一组不含对象的图像。这可以用于引导,但我们还没有在这个工作中使用它。
图1:定位(顶部)和检测任务(底部)。左图包含我们的预测(按置信度递减排序),而右图显示了groundtruth标签。检测图像(底部)示出了检测数据集的较高难度,其可以包含许多小对象,而分类和定位图像通常包含单个大对象。
我们的分类体系结构类似于Krizhevsky等人的最佳ILSVRC12体系结构。然而,我们在网络设计和推理步骤上进行了改进。由于时间的限制,Krizhevsky模型中的一些训练特性没有得到充分的探索,因此我们期望我们的结果能够得到进一步的改进。这些将在未来的工作(第6节)中讨论
我们在ImageNet 2012训练集(120万张图片和C = 1000个类)[5]上训练网络。我们的模型使用与Krizhevsky等人在训练时提出的固定输入大小方法相同的方法,但是在下一节中我们将使用多尺度分类。训练时,每幅图像都向下采样,使最小尺寸为256像素,然后我们提取5个大小为221x221像素的随机裁剪图(以及它们的水平翻转)送入网络,batch=128。随机初始化权重:均值为0标准差为10(-2)。然后通过随机梯度下降更新,,动量为0.6,l2衰减权重为10(-5)。学习率最初是5×10^(-2),在(30、50、60、70、80)个epoch之后,学习率依次减半。在分类器的全连通层(6、7层)上采用了速率为0.5的DropOut[11]。
我们在表1和表3中详细说明了体系结构的大小。注意,在训练期间,我们将此体系结构视为非空间的(大小为1x1的输出映射),而不是生成空间输出的推理步骤。1-5层类似于Krizhevsky等人的[15],使用relu非线性和最大池,但有以下不同:(i)不使用相应的归一化;(ii)池化区域不重叠,(iii)我们的模型拥有较大的1层和2层特征图,这得益于较小的步长(2步而不是4步)。较大的步长有利于提高速度,但会降低准确性。
表1:快速模型的架构细节。特征图的空间大小取决于输入图像大小,其在我们的推断步骤期间变化(参见附录中的表5)。这里我们展示了训练空间大小。层5是顶部卷积层。后续层完全连接,并在测试时以滑动窗口方式应用。完全连接的层也可以被视为空间设置中的1x1卷积。精确模型的相似尺寸可参见附录。
在图2中,我们展示了前两个卷积层的滤波系数。第一层滤波器捕获定向边缘、花纹和圆点。在第二层,滤波器有各种各样的形式,一些是扩散的,另一些具有强线条结构或有方向性的边缘。
随着这篇论文的发表,我们发布了一个名为OverFeat (https://cilvr.nyu.edu/doku.php?id=software:overfeat:start)的特征提取器,为计算机视觉研究提供强大的特征。我们提供了两种模型,一种快速的一种准确的。表1和表3描述了每种体系结构。
表3:精确模型的体系结构细节。它与快速模型的不同之处主要在于第一卷积的步幅、阶段的数量和特征图的数量。
我们还在表4中比较了它们在参数和连接方面的大小。
表4:不同型号的参数和连接数量。
准确型的模型比快速型的模型更准确(表2中的分类错误为14.18%,16.39%),但是它需要的连接数几乎是快速模型的两倍。使用7个精确模型的投票可以达到13.6%的分类误差,如图4所示。
在[15]中,使用多视图投票来提高性能:一组固定的10个视图(4个角+中心,以及它们的水平翻转)被平均。然而,这种方法可能忽略图像的许多区域,并且在视图重叠时是计算冗余的。此外,它只适用于一个单一的尺寸,这可能不是能激发出卷积神经网络最佳性能的尺寸。
相反,我们通过在每个位置和多个尺度上密集地运行网络来探索整个图像。虽然滑动窗口方法对于某些类型的模型在计算上可能是禁止的,但它在ConvNets的情况下具有固有的效率(参见第3.5节)。这种方法为投票提供了更多的视图,从而增强了鲁棒性,同时保持了效率。将一个卷积网络与任意大小的图像进行卷积,得到的结果是每个尺度上的c维向量的空间映射。
然而,在上述网络中,总的子采样率是2x3x2x3,即36。因此,当应用密集时,这种架构只能在沿每个轴的输入维度中每36个像素生成一个分类向量。与10视图方案相比,这种粗糙的输出分布降低了性能,因为网络窗口与图像中的对象没有很好地对齐。网络窗口与对象的一致性越好,网络响应的置信度越强。为了避免这个问题,我们采用了与Giusti等人介绍的[9]类似的方法,并在每个偏移处应用最后的下采样操作。这样就消除了这一层的分辨率损失,得到的总采样率是x12,而不是x36。
现在,我们将详细解释如何执行分辨率增强。我们使用了6种输入尺度,这导致了第5层(第六层)映射池化前有不同的分辨率(见表5)。然后,使用图3所示的步骤,将这些数据汇集起来,提供给分类器。
表5:我们的多尺度方法的空间维度。使用6种不同尺寸的输入图像,导致不同空间分辨率的层5未合并特征图(尽管在表中未指示,但全部具有256个特征通道)。(3x 3)结果来自我们的密集合并操作,其中(∆x,∆y)= {0,1,2}。有关如何将这些转换为输出映射的详细信息,请参见文本和图3。
多尺度方法的空间维度。使用了6种不同大小的输入图像,导致第5层拥有不同空间分辨率未合并的特征图(尽管表中没有指出,但所有的都有256个特征通道)。(3x3)是由(x, y) ={0,1,2}的密集池操作产生的。有关如何将这些内容转换为输出映射的详细信息,请参见文本和图3。
(a)对于单个图像,在给定的比例下,我们从未池化的第5层特征映射开始(设20*20)
(b)每个未池化的特征图都经过3 * 3的最大池化操作(非重叠区域),对于{0,1,2}的(△x, △y)像素偏移重复3 * 3次。
(c)这产生了一组合并的特征图,针对不同的(∆x,∆y)组合复制(3x3)次。
(d)分类器(第6,7,8层)的输入大小固定为5x5,并为池化映射图中的每个位置生成c维输出向量(2×2)。分类器以滑动窗口的方式应用于池化后的映射,生成c维输出映射(对于给定的(x, y)组合)。(共2×2×9)
(e)将不同(△x, △y)组合的输出映射重塑为单个3D输出映射(两个空间维度 x C个类)。(6×6×C)
用于分类的输出图计算的1D图示(按比例),使用比例2的y维度作为示例(参见表5)。(a):20像素未合并的层5特征图。(b):在非重叠的3个像素组上的最大池化,使用Δ = {0,1,2}像素(分别为红色、绿色、蓝色)的偏移。(c):针对不同Δ,得到的6个像素合并图。(d):5像素分类器(层6、7)以滑动窗口方式应用于池化图,针对每个Δ产生2像素乘C图。(e):通过C输出映射重新整形为6像素。
这些操作可以被看作是通过池化层而不进行子采样,并在下一层使用跳跃内核(其中邻居的值是不相邻的),将分类器的查看窗口移动1个像素。或者等价于,在每个可能的偏移处应用最后的池化层和完全连接的堆栈,并通过交叉输出来组装结果。(相当于f=3×3,stride=1)
对每个图像的水平翻转版本重复上述过程。然后,我们通过(i)在每种尺寸和翻转时获取每个类的空间最大值;(得到12个c维向量)(ii)对来自不同尺度和翻转的c维向量求平均值(得到一个c维向量)(iii)从平均类向量中取前1或前5个元素(取决于评估标准),来生成最终的分类。
从直观上看,网络的两部分,即特征提取层(1-5)和分类器层(6-输出)的使用方式是相反的。在特征提取部分,过滤器在一次通过整个图像的卷积。从计算的角度来看,这比在图像上滑动一个固定大小的特征提取器,然后聚合来自不同位置的结果要有效得多。但是,对于网络的分类器部分,这些原则是相反的。在这里,我们希望在不同位置和尺度的第5层特征映射中寻找固定大小的表示。因此,分类器有一个固定大小的5x5输入,并被用尽于第5层映射。穷举池方案(具有单像素位移(x, y))确保我们能够在分类器和特征图中对象的表示之间获得良好的对齐。
在表2中,我们对不同的方法进行了实验,并将其与Krizhevsky等人的单网络模型[15]进行了比较,以供参考。上面描述的方法,使用6个尺寸,top-5错误率为13.6%。正如预期的那样,使用更少的尺度会降低性能:单尺度模型更差,有16.97%的top-5错误率。图3所示的精细跨步技术虽然对单尺度体系的改善相对较小,但对于本文所示的多尺度增益也具有重要共献。
表2:验证集上的分类实验。精细/粗略步幅是指在应用分类器时使用的Δ值的数量。精细:∆ = 0、1、2;粗:∆ = 0。
我们在图4中报告了2013年比赛的测试集结果,我们的模型(OverFeat)通过7个ConvNets(每个训练都有不同的初始化)的投票获得了14.2%的准确率,并在18个团队中排名第5。仅使用ILSVRC13数据的最佳准确度为11.7%。通过使用来自ImageNet Fall11数据集的额外数据进行预处理,可以将这个数字提高到11.2%。在比赛后的工作中,我们通过使用更大的模型(更多的特性和更多的层)将OverFeat结果的误差降低到13.6%。由于时间的限制,这些较大的模型没有得到充分的训练,更多的改进预计会及时出现。
图4:测试集分类结果。在比赛期间,OverFeat使用7个快速模型的平均值产生了14.2%的前5名错误率。在比赛后的工作中,OverFeat以13.6%的错误率排名第五,使用更大的模型(更多特征和更多层)。
与许多每次为输入的每个窗口计算整个流水线的滑动窗口方法不同,当以滑动方式应用时,ConvNets天生高效,因为它们自然地共享重叠区域的计算。当我们在测试时将我们的网络应用于较大的图像时,我们只需在整个图像的范围内应用每个卷积。这扩展了每个层的输出,以覆盖新的图像大小,最终生成输出类预测的映射,并为输入的每个窗口(视图)提供一个空间位置。如图5所示。卷积是自底向上应用的,因此相邻窗口的计算只需执行一次。
图5:ConvNets的检测效率。在训练过程中,ConvNet只产生一个空间输出(顶部)。但是当在测试时间应用于较大图像时,其产生空间输出图,例如2x2(底部)。由于所有层都是卷积应用的,因此较大图像所需的额外计算仅限于黄色区域。为简单起见,该图省略了特征维度。
请注意,我们架构的最后一层是完全连接的线性层。在测试时,这些层被具有1x1空间范围内核的卷积操作有效地替换。整个卷积网络就是一系列的卷积,最大池和阈值操作。
从我们的分类训练好的网络开始,我们用一个回归网络代替分类器层,并训练它预测每个空间位置和尺度上的对象边框。然后,我们将回归预测与每个位置的分类结果结合在一起,正如我们现在所描述的。
为了生成对象边界框预测,我们同时在所有位置和尺度上运行分类器和回归器网络。由于它们共享相同的特征提取层,因此只需在计算分类网络之后重新计算最后的回归层。类c在每个位置的最终softmax层的输出提供了一个评分,以确定在相应的视图范围中是否存在类c的对象(尽管不一定完全包含)。因此,我们可以为每个边界框分配一个置信度。
回归网络将来自第5层的池化特征映射作为输入。它有2个全连接的隐藏层,大小分别为4096和1024通道。最后的输出层有4个单元,它们指定了边界框边缘的坐标。与分类一样,由于△x、△y的变化,整个分类中有(3 * 3)个副本。结构如图8所示。
(a)对于(3x3)∆x、∆y偏移中的每一个,在此尺度下回归器的输入是空间上的6x7像素乘以256个通道。
(b)回归网络的第1层中的每个单元连接到第5层图中的5x5空间邻域以及所有256个通道。对于层中的4096个通道中的每一个,以及对于(3x3)Δ x、Δ y移位中的每一个,将5x5邻域移位导致2x3空间范围的图。
(c)第二个回归层具有1024个单元,并且是完全连接的(即紫色元素仅连接到(B)中的紫色元素,跨越所有4096个通道)。
(d)回归网络的输出是针对2x3图中的每个位置以及针对(3x3)Δ x、Δ y移位中的每一个的4向量(指定边界框的边缘)。
我们固定了分类网络的特征提取层(1-5),并对每个示例使用预测和金标准边界框之间的欧式距离损失来训练回归网络。最后一个回归层是特定于类的,有1000个不同的版本,每个类一个。我们使用与第3节中描述的相同的一组尺度来训练这个网络。我们比较回归网络在每个空间位置的预测与金标准边界框,转换到回归函数在卷积内的平移偏移的参照系中(见图8)。然而,我们不训练与输入重叠不到50%的回归框:由于对象主要位于这些位置之外,所以包含该对象的回归窗口(另一个窗口)可以更好地处理它。(也就是,本窗口只包含该对象的一部分,而对象中心在另一个窗口中)
多尺度回归模型的训练对于跨尺度预测组合具有重要意义。单一尺度的训练在该尺度上表现良好,而在其他尺度上表现尚可。然而,训练多尺度将使预测在不同尺度上正确匹配,并成倍地增加合并预测的可信度(优点)。反过来,这使我们能够只使用少量的尺度,而不是通常在检测中使用许多刻度来执行(缺点)。在行人检测[25]中,典型的比率从一个扩展到另一个约为1.05至1.1。在这里,我们使用的是一个大的比例,约1.4(这个数字因适应网络步伐的尺寸调整而有所不同),这能让我们的系统更快运行。
我们使用下面的算法,通过一个应用于回归框的贪婪合并策略来合并单个预测(见图7)
图7:回归网络生成的边界框示例,然后组合到最终预测中。此处所示的示例为单一比例。根据对象,预测在其他尺度下可能更优。在这里,最初被组织为网格的大部分边界框收敛到单个位置和尺度。这表明网络对对象的位置非常有信心,而不是随机分布。左上角的图像显示,如果存在多个对象,它也可以正确地识别多个位置。预测的边界框的各种纵横比表明,该网络能够科普各种对象姿态。
(a)对于每个尺度s,获取该尺度空间位置上前k个最大检测类,分配到集合Cs中;
(b)对于Cs中每个类(k个),将回归网络预测边框(多个)分配给集合Bs,对每个s重复一次;
(c)将Bs并入集合B;
(d)对于所有(6个)Bs,重复上一步直到全部合并;
在上面的式子中,match_score用于计算两个边框中心的距离加它们交集的面积;box_merge用于计算边框坐标均值。
若两个边框的match_score小于阈值t,则合并。这种方法可以淘汰那些低置信度以及低连续(多个box相差很远)的类别,会更加鲁棒。
最后的预测是通过获取合并的边框和最大的类分数来给出的。这是通过将检测类输出与预测每个边界框的输入窗口相关联来累积计算的。图6是合并到一个高置信度边界框中的边界框示例。在这个例子中,一些海龟和鲸鱼的边界框出现在中间的多尺度步骤中,但是在最终的检测图像中消失了。不仅这些边界框的分类置信度很低(最多分别为0.11和0.12),而且它们的集合不像熊边界框那样连贯,从而无法获得显著的置信度提升。熊边框有很高的置信度(平均每个尺寸0.5分)和高匹配分数。因此,在合并后,许多熊边框被融合成一个非常高的置信盒,而假阳性由于缺乏边框的一致性和置信度而在检测阈值中被删除。这一分析表明,我们的方法通过奖励边框一致性,自然地比传统的非最大抑制方法更能抵抗来自纯粹分类模型的假阳性。
图6:定位/检测流水线。原始分类器/检测器输出每个位置的类别和置信度(第一图)。这些预测的分辨率可以使用第3.3节(第2张图)中描述的方法来提高。然后,回归预测对象相对于每个窗口的位置比例(第三图)。然后将这些边界框合并并累积为少量对象(第4个图)。
我们将我们的网络应用到Imagenet 2012验证集,使用比赛指定的定位标准。结果如图9所示。图10是2012年和2013年的定位比赛结果(这两年的训练和测试数据是相同的)。我们的方法是2013年比赛的冠军,有29.9%的误差。
图10:ILSVRC12和ILSVRC13竞争结果(测试集)。我们的参赛作品是ILSVRC13本地化竞赛的赢家,错误率为29.9%(前5名)。注意,这两年的训练和测试数据是相同的。OverFeat条目使用4个量表和单类回归方法。
图9:ILSVRC12验证集的定位实验。我们实验了不同数量的尺度和使用单类回归(SCR)或每类回归(PCR)
我们的多尺度和多视图方法是获得良好性能的关键,如图9所示:仅使用单一的集中裁剪,我们的回归网络的错误率达到40%。通过结合来自两个尺度的所有空间位置的回归预测,我们获得了一个好得多的错误率31.5%。添加第三个和第四个尺寸可以将性能进一步提高到30.0%。
令人惊讶的是,在回归网络中为每个类使用不同的顶层(图9中的Per-Class regression (PCR)),性能不如使用所有类共享的单一网络的效果(44.1% vs. 31.3%)。这可能是因为在训练集中,每个类用边界框注释的例子相对较少,而网络的顶层参数要多1000倍,导致训练不足。这种方法可以通过只在相似的类之间共享参数来改进(例如,为所有类的狗训练一个网络,为车辆训练另一个网络,等等)。
检测训练类似于分类训练,但以空间方式进行。可以同时训练图像的多个位置。由于模型是卷积的,所以所有的权值在所有位置之间共享。与定位任务的主要区别在于,当没有对象存在时,需要预测一个背景类。传统上,训练的负样本最初是随机抽取的。然后,最令人讨厌的负面错误被添加到bootstrapping通道的训练集中。独立的bootstrapping传递使得训练变得复杂,并且在负面样本收集和训练时间之间存在潜在的不匹配风险。此外,需要调整bootstrapping通道的大小,以确保在一个小的集合上训练不会过拟合。为了避免所有这些问题,我们动态地执行负训练,通过为每个图像选择一些有趣的负样本,例如随机的或者最令人讨厌的。这种方法计算开销更大,但使过程更简单。由于特征提取最初是通过分类任务进行训练的,因此检测微调的时间并不长.
在图11中,我们报告了2013年ILSVRC竞赛的结果,我们的检测系统以19.4%的平均精度(mAP)排名第三。我们后来建立了一个新的检测系统,mAP为24.3%。请注意,前3种方法与其他团队之间有很大的差距(第4种方法的mAP为11.5%)。此外,我们的方法与前两名的系统有很大的不同,这两个系统使用初始分割步骤将候选窗口从大约200,000个减少到2,000个。这种技术加快了推断的速度,并大大减少了潜在的误报数量。[29, 1]表明当使用密集滑动窗口时,相对于选择性搜索,检测精度下降,选择性搜索丢弃不可能的目标位置,从而减少误报。结合我们的方法,我们可以看到类似的改进,正如这里看到的传统密集方法和基于分割的方法。
还需要注意的是,我们没有像NEC和UvA那样微调检测验证集。验证集和测试集的分布与训练集有很大的差异,仅这一点就可以将结果提高大约1个点。图11中两个OverFeat结果之间的改进是由于训练时间的延长和上下文的使用,即每个scale也使用低分辨率的scale作为输入。
图11:ILSVRC13测试集检测结果。比赛期间,UvA以22.6%mAP排名第一。在比赛后的工作中,我们以24.3%mAP建立了一个新的艺术状态。用 * 标记的系统用ILSVRC12分类数据预训练。
我们提出了一种多尺度、滑动窗口的方法,可用于分类、定位和检测。我们将其应用于ILSVRC 2013数据集,目前其分类排名第四,定位排名第一,检测排名第一。本文的第二个重要贡献是解释了如何有效地将ConvNets用于检测和定位任务。这些从未在[15]中提到过,因此我们是第一个在ImageNet 2012中解释如何做到这一点的人。我们提出的方案包括对为分类而设计的网络进行大量修改,但是清楚地表明ConvNets能够完成这些更有挑战性的任务。我们的定位方法赢得了2013年ILSVRC竞赛,显著优于2012年和2013年的所有方法。检测模型在比赛中名列前茅,赛后检测结果排名第一。我们提出了一个集成的流水线,可以执行不同的任务,它们共享一个完全从像素直接学习的特征提取器。
我们的方法仍可能在几个方面得到改进。(i)就定位而言,我们目前并不支持整个网络;这样做可能会提高性能。(ii)我们使用了l2损失,而不是直接优化用于测量性能的交并比(IOU)标准。改变损失函数应该是可能的,因为IOU仍然是可微的,只要有一些重叠。(iii)边界框的替代参数化可能有助于减少关联输出,这将有助于网络培训。