参与蒋思源 戴一鸣 李亚洲

成熟的目标检测,也该自己学习数据增强策略达到SOTA了

只要数据增强就能在 COCO 数据集上达到当前最优,谷歌大脑 Quoc Le 等研究者表明,目标检测中各种高大上的正则化方法,都不如自动数据增强来的实在。

2018 年,谷歌大脑的研究者在 arXiv 上发表论文,提出一种自动搜索合适数据增强策略的方法 AutoAugment。该方法创建一个数据增强策略的搜索空间,利用搜索算法选取适合特定数据集的数据增强策略,从而在 ImageNet、CIFAR 等分类任务上取得了极好的表现。

今日,这支团队再次宣布开源面向目标检测的数据增强策略。

本文作者之一,谷歌大脑的创始成员、AutoML 的缔造者之一 Quoc Le 在 Twitter 上表示,该策略能够极大的已经检测模型在他们基准上的表现。

  • 论文链接:https://arxiv.org/abs/1906.11172

  • Github 链接:https://github.com/tensorflow/tpu/tree/master/models/official/detection

Quoc Le 等研究者表示,尽管数据增强能极大的改进图像分类表现,但它在目标检测任务上的效果还未被透彻研究过。此外,目标检测所用图像的注释会造成大量的成本,所以数据增强对此计算机视觉任务的影响可能会更大。在此研究中,作者们研究了数据增强在目标检测上的影响。

在 COCO 数据集上的实验结果说明,优化后的数据增强策略将检测准确率提升了超过 2.3 mAP,使单推理模型能够达到最佳效果——50.7 mAP。重要的是,COCO 数据集上发现的这种最佳策略可以直接迁移到其他目标检测数据集上,同样可以提升预测准确率。

左图为 COCO 数据增强示例,右图为带(红色)或不带(黑色)学习的数据增强策略效果。

研究结果说明,在目标检测方面,学习数据增强策略比最好的模型结构正则化更有效,即使在基线模型本身就很强的情况下也是如此。

目标检测中的自动数据增强

最近的研究显示,与其手动设计数据增强策略,不如让模型从数据中学习优化策略。这样可以显著提升模型在图像分类中的泛化表现。那么,是否可以直接将图像分类中的数据增强方法迁移到目标检测中?或者说找到一种新的学习方案让模型自己决定该怎样做数据增强?

在这项研究中,研究人员建立了一些可以用在目标检测数据集上的数据变换策略,并将这些策略迁移到其他检测数据集和模型结构上。研究人员使用的变换策略包括一些可以在整张图像中使用,但是不会影响边界框位置的方法(例如,从图像分类中借鉴的色彩变换策略)、也有通过改变边界框位置从而影响整个图像的策略(例如,翻转或裁剪图像),以及一些只对边界框内的目标产生影响的变换策略。

当变换策略的数量变得较大时,人为地结合不同的策略变得难以追踪。因此,研究人员只搜索针对目标检测数据集的策略。实验说明,这种策略在不同的数据集、不同的数据集大小、不同的模型结构和检测算法上都达到了非常好的效果。另外,研究人员探究了搜索空间中操作数量不同时,数据增强策略的表现,以及在不同数据集大小下增强技术的效果。

方法概要

研究人员将增强搜索视为视为离散的最优化问题,它的优化目标主要是增强策略的泛化性能。

他们定义一个增强策略为一个无序的、有 K 个子策略的集合。在训练中随机选择子策略中的一个,并在当前图像中使用。每个子策略都有 N 个图像变换过程,它们依次应用到不同的图像上。通过创建搜索空间,研究人员将搜索一个学习增强策略的问题转换为离散的最优化问题。

在这篇论文中,搜索空间由 K = 5 个子策略构成,每个子策略有 N = 2 个操作,依照顺序对单一图像进行处理。此外,每个操作都和两个超参数有关,这两个超参数定义了采用操作的概率,以及操作的大小。如下所示,图 2 展示了 5 个学习到的子策略。

学习数据增强子策略的例子。一张样本图像使用 5 个学习子策略,每列是对应不同子策略的随机样本。每个增强子策略都由三元组构成,包括操作、应用概率以及大小度量。为了确保边界框与增强策略保持一致,可以调整边界框位置。

在一些基本实验中,研究人员发现了在搜索空间中发现了 22 种对目标检测有收益的操作。这些操作可以简要总结为:

  • 颜色操作:扭曲颜色通道,不改变边界框位置(例如,均衡化、对比化、改变亮度)。

  • 几何操作:几何扭曲图像,相对的也改变边界框标注的位置和大小(例如,旋转、剪切 X、转换 Y 等)。

  • 边界框操作:只改变边界框标注内的像素内容(例如,只在 BBox 内均衡化、只在 BBox 内旋转、只在 BBox 内翻转)。

实验结果

研究者将自动增强方法应用到 COCO 数据集上,他们希望能找到一种可以泛化到其它目标检测数据集上的增强策略,且模型只需要使用普通的 ResNet-50 和 RetinaNet 就行。研究者使用 COCO 数据集上搜索到的最优策略,并迁移到不同的数据集大小和架构配置以检验其泛化性。

在如下表 1 中,学习到的自动增强策略在不同的骨架网络上都能获得对应的性能提升,后续的实验都使用 ResNet-50 作为检测器的骨架网络。

表 1:所有结果和性能增益都是在 RetinaNet 检测器和 COCO 数据集上测试获得的。

如下表 2 所示,为了更好地理解性能增益都来自哪些方面,研究者将数据增强策略拆为三部分:色彩操作、几何操作和 bbox-only 操作。

表 2:通过学习到的增强策略提升目标检测的性能,所有结果都是在 COCO 数据集上应用 RetinaNet 检测器和 ResNet-50 骨干网络获得的。注意其中 DropBlock 为应用了当前最优的正则化方法,从而获得比较不错的性能提升。

如下图 3 所示,正如研究者所预期的,学习的数据增强策略在训练集非常小时,它获得的性能增益会非常大。

图 3:根据不同的目标样本数量,数据增强策略在 mAP 上的提升百分比。

如下表 4 所示,当使用数据增强策略训练时,研究人员不改变任何训练参数,只将从 COCO 数据集上发现的策略在数据预处理中使用。这使得 mAP50 提升了 2.7 个百分点。

表 4:将学习到的增强策略迁移到其他目标检测数据集上。其中 mAP 都是在 PASCAL VOC 2007 数据集上,使用 Faster R-CNN 检测器的 ResNet-101 模型进行训练和评价获得的。

入门谷歌大脑
41
相关数据
超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

推荐文章
还有迁移学习