又快又准确,新目标检测器速度可达每秒200帧

目标检测技术的很多实际应用在准确度和速度上都有很高的要求,但目前大多数相关研究都更注重准确度表现的突破。在另一个方向上,爱尔兰联合技术研究中心的两位研究者近日在 arXiv 上发布了一份研究成果,介绍了他们在保证准确度的同时达到了 200 FPS 速度的目标检测研究进展。

目标检测是计算机视觉领域内的一个基本问题。得益于深度卷积网络的成功,近些年来,我们已经见证了目标检测器准确度的显著提升 [25, 27, 22, 26, 7, 10, 21]。事实已经表明,基于深度学习的现代目标检测器能以相当高的准确度和合理的速度检测多个一般目标 [22, 26]。这样的进展让目标检测被应用在了多种行业应用中,比如监控、自动驾驶机器人。这一领域的大多数研究都关注的是在公共基准上实现当前最佳表现。

这些研究所取得的进展大都依赖于更深度的架构(Inception [33]、VGG [32]、Resnet [11]),其代价是更高的计算复杂度和更多内存需求。尽管这些结果已经表明了目标检测在多种问题上的可用性,但对全面行业部署而言,可扩展性仍是一个悬而未决的问题。比如,有 50 个摄像头和 30 帧/秒速率的安保系统即使使用最快速的检测器 SSD(512 分辨率时速度为 22 FPS),也将需要带有 60 个 GPU 的专用服务器 [22]。对于某些行业问题(大型建筑内的安保应用)而言,这些数字还会更大。在这些情况下,速度和内存需求会变得很关键,因为其能在单个 GPU 上实现多个数据流的处理。让人惊讶的是,研究者们并不很重视设计快速有效且内存需求低的目标检测器 [17]。在本研究中,我们试图填补这一漏洞,我们的研究重点是开发出一种高效的目标检测器,其有较低的内存需求且能在单个 GPU 上高速处理多个数据流。

图 1:我们所提出的检测器与其它竞争方法的速度和表现比较。对于 SSD 和 Yolo-v2,我们还给出了更准确的模型的结果。

鉴于简单快速的架构存在局限性,我们调查研究了可以提升表现的有效训练方法。从准确度合理的轻量级检测器开始,我们利用了有更优表现的更深度的网络来进一步改进训练策略。为此,我们考虑了网络 distillation [12, 2, 1],其中更大网络的知识会被用来高效地学习更小网络的表征。尽管这一思想最近已经在目标检测上得到过应用,但我们的工作在我们应用 distillation 的方式上有关键性的贡献。

(1)我们最早将 distillation 应用到了单流程检测器(Yolo)上,这使得我们的工作不同于之前的将其应用于区域建议网络(region proposal network)的工作。(2)我们的方法的关键基于这一观察:目标检测涉及非极大抑制(NMS)步骤,而这个步骤在端到端学习之外。在 NMS 步骤之前,检测网络的最后一层由检测区域中的密集激活构成,如果它被直接迁移给学生网络,就会导致过拟合和表现下降的问题。因此,为了将 distillation 应用于检测,我们提出了特征图非极大抑制(Feature Map-NMS 或 FM-NMS),其会抑制对应于重叠检测的激活。(3)通过强调教师检测中有更高目标性(objectness)值的检测结果,我们将该问题形式化为了一个目标性缩放的 distillation 损失问题。我们的结果表明,这种 distillation 是一种在保持复杂度较低的同时提升表现的有效方法。

最后,我们在目标检测语境中调查研究了「数据的有效性」[8]。有标注数据是有限的,但使用高准确度的目标检测器和无限量的无标注数据,我们探索了我们提出的轻量级检测器的表现可以提升的程度。我们的思路遵循半监督学习 [29, 35, 4],这是深度学习目标检测器领域一个尚未得到深入研究的领域。Radosavovic et. al. [23] 是与我们的方法密切相关的一项近期研究,其中的标注是使用组合在一起的检测器生成的。我们的思路与他们的方法有两个主要差异:(1)我们是迁移来自教师网络的卷积特征图的软标签,事实表明这在网络 distillation 上更高效 [28]。(2)我们通过目标性缩放和 distillation 权重得到了损失公式,这让我们可以根据教师标签控制权重。这个公式提供了灵活性,能为基本真值(ground-truth)的检测结果赋予高权重,为不准确的教师预测结果提供相对更低的权重。此外,我们的训练损失公式无缝整合了检测损失与 distillation 损失,这让该网络可以从有标注数据和无标注数据的混合数据中学习。就我们所知,这是第一个通过联合使用有标注数据和无标注数据来训练深度学习目标检测器的研究。

图 2:我们的检测器的基本架构。为了保证架构简单,我们限制了网络的深度,并且保证特征图的数量少且使用了较小的过滤器核(3×3 或 1×1)。

图 3:distillation 方法的整体架构。distillation 损失在有标注数据和无标注数据上都会使用。FM-NMS 被应用在教师网络的最后一层特征图上以抑制重叠的候选项。

图 4:教师网络在最后一层同时预测边界框坐标和类别概率。蓝色和绿色表示的每一列对应 N 个检测结果,其中 N 是锚定框(anchor box)的数量。相邻的列通常会得到具有同一类别标签的高度重叠的边界框。我们提出的 FM-NMS 只会保留相邻单元中最强的候选项。这个候选项会被作为软标签而迁移给学生网络。

表 2:不同架构修改方法的速度比较。

表 3:在 Pascal VOC 2007 上使用不同策略的 distillation 的表现比较。这里给出的结果是两个教师网络在两个有标注训练数据集(Pascal VOC 数据集以及 Pascal VOC 和 COCO 的组合数据集)上的结果。

论文:每秒 200 帧的目标检测(Object detection at 200 Frames Per Second)

论文地址:https://arxiv.org/abs/1805.06361 

在本论文中,我们提出了一种高效快速的目标检测器,其每秒可处理数百帧图像。为了实现这一目标,我们调查研究了目标检测框架的三个主要方面:网络架构、损失函数和训练数据(有标注的和无标注的)。为了得到紧凑的网络架构,我们引入了多种基于近期研究的改进措施,以开发出一个计算上轻量级的且能达到合理表现水平的架构。为了在保证同等复杂度的同时进一步提升表现,我们使用了 distillation 损失函数。使用 distillation 损失,我们可将更准确的教师网络的知识迁移给我们提出的轻量级学生网络。为了让 distillation 能高效用于我们提出的单阶段检测器流程,我们提出了多种创新:目标性缩放的 distillation 损失、特征图非极大抑制、用于检测的单个统一 distillation 损失函数。最后,基于 distillation 损失,我们探索了通过使用无标注数据我们可以给表现带来多大提升。我们使用教师网络的软标签,通过无标注数据训练了我们的模型。在 Pascal 数据集上,与基于 VGG 的目标检测网络相比,我们的最终网络的参数数量少十几倍,并且能实现超过 200 FPS 的速度,另外我们提出的修改能让检测准确度超过基准 14 mAP。

理论目标识别计算机视觉论文
2
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

半监督学习技术

半监督学习属于无监督学习(没有任何标记的训练数据)和监督学习(完全标记的训练数据)之间。许多机器学习研究人员发现,将未标记数据与少量标记数据结合使用可以显着提高学习准确性。对于学习问题的标记数据的获取通常需要熟练的人类代理(例如转录音频片段)或物理实验(例如,确定蛋白质的3D结构或确定在特定位置处是否存在油)。因此与标签处理相关的成本可能使得完全标注的训练集不可行,而获取未标记的数据相对便宜。在这种情况下,半监督学习可能具有很大的实用价值。半监督学习对机器学习也是理论上的兴趣,也是人类学习的典范。

权重技术

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

VGG技术

2014年,牛津大学提出了另一种深度卷积网络VGG-Net,它相比于AlexNet有更小的卷积核和更深的层级。AlexNet前面几层用了11×11和5×5的卷积核以在图像上获取更大的感受野,而VGG采用更小的卷积核与更深的网络提升参数效率。VGG-Net 的泛化性能较好,常用于图像特征的抽取目标检测候选框生成等。VGG最大的问题就在于参数数量,VGG-19基本上是参数量最多的卷积网络架构。VGG-Net的参数主要出现在后面两个全连接层,每一层都有4096个神经元,可想而至这之间的参数会有多么庞大。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

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

卷积技术

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

机器人技术技术

机器人学(Robotics)研究的是「机器人的设计、制造、运作和应用,以及控制它们的计算机系统、传感反馈和信息处理」 [25] 。 机器人可以分成两大类:固定机器人和移动机器人。固定机器人通常被用于工业生产(比如用于装配线)。常见的移动机器人应用有货运机器人、空中机器人和自动载具。机器人需要不同部件和系统的协作才能实现最优的作业。其中在硬件上包含传感器、反应器和控制器;另外还有能够实现感知能力的软件,比如定位、地图测绘和目标识别。之前章节中提及的技术都可以在机器人上得到应用和集成,这也是人工智能领域最早的终极目标之一。

过拟合技术

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

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