[目标检测] Simple Multi-dataset Detection

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

代码地址:https://github.com/xingyizhou/UniDet

摘要

怎样得到一个普遍和广泛的目标检测系统?我们使用所有标注过得标签,这些标签跨越具有潜在不一致分类法的不同数据集;本文中,作者使用了一个简单的方法在大批量的数据集上用于训练一个统一的检测器。作者使用特定数据集训练协议和loss,但是共享一个通用的有特定数据集输出的检测分支。作者展示了怎样自动整合这些特定的数据集输出到常见的语义分类。与之前的工作相比,作者的方法不需要手工分类核对。本文的方法与在每个数据集上单独训练的模型效果相比一样好,同时可以在没有微调的情况下,将其泛化到没有见过的数据集上;

介绍

计算机视觉的目的就是生成一个广泛,普遍的有目的感知系统,将其用在场景数据中。但是目标检测数据集很多【18,22,24,33】,所以我们的模型就被锁定在了特定的区域;尽管这些数据带来了目标检测和分割算法的快速的发展;同时也有缺陷。单个训练数据被限制在了特定的域,标签类别业有限,不能够得到一个普遍的识别系统。是否可以通过联合各种各样的检测数据集减少这种限制?

本文中,作者直接将收集到的所有数据训练一个单模型。不同的数据集训练使用不同的loss,数据采样策略和schedules。本文展示了我们可以训练一个检测器,不同的数据集有不同的输出,数据集之间相互监督。我们的训练模拟了使用特定数据和常见网络训练。结果,本文中的单个检测器充分利用了所有的训练数据,在训练的域表现很好,在没有见过的域泛化性也很好。但是,这个检测器会产生多个类别的重复输出,特别是产生在多个数据集中(this detector produces duplicate outputs for classes that occur in multiple datasets)。

核心挑战就是整合不同的数据集在一个常见的类别,训练一个检测器推理出泛化(gengral)目标代替特定数据集的类别。传统方法使用手工制作分类器【19,47】,不仅耗时,还有错误倾向。作者展示了一个全自动化方式去统一多数据集检测系统,就是使用仅仅可视化数据。我们利用这样一个事实,即来自不同数据集的类似概念的对象检测器会触发类似的新对象(we use the fact that object detectors for similar concepts from different datasets fire on similar noval object);这就允许我们定义在不同数据集上的代价,全自动化的优化一个常规的分类器。作者优化的目的就是发现一个统一的分类器,可以隐射到每一个数据集。针对每个数据集的统一分类的检测器使用新的0-1整数编码公式。在这个统一分类法上训练的对象检测器有一个从所有训练数据集中自动构建的大型概念词汇表;

作者使用了超大规模的数据对目标检测器做了评估。在三个大规模的数据集上训练,有COCO,Objects365,OpenImages【18】。首先,作者验证了单个检测器的性能和特定数据集训练的模型效果一样的好,一个统一的分类器还对检测性能有所提升。而且,本文的方法在各类训练样本训练后,在没有进行微调的作用下,在新的数据集上模型泛化性能也很好;

相关工作

Training on multiple datasets.近些年来在大量数据集上训练作为一种有效的工具去提升模型在深度估计上的鲁棒性【29】;立体匹配【43】,和人体检测【13】。在这些领域,统一的输出空间涉及到不同的摄像头转换或深度模糊度。反之,对于识别,数据集统一涉及到混合不同的语义概念。MSeg【19】手动整合了7个语义分割数据集,并使用了Amazon Mechanical Turk去解决不连续的标注。本文中,作者提出从视觉数据自动的学习标签空间,不需要任何其他的人工工作;

【40】中,作者训练了一个统一的目标检测器,通过联合不同的监督获得了较好的鲁棒性,这与本文中的分区(our partitioned detector)检测器相似 ;虽然他们在小数据集上工作,并且没有对不同数据集之间的训练差异进行建模。Universal-RCNN【42】在三个大数据集上训练一个分区检测器,使用一个类内的注意力模块建模不同类之间的联系。然而,它们再次对所有数据集使用相同的训练方法,如果同一对象出现在多个数据集中,则会为其生成重复的输出;【40】和跑【19】注意到了单个统一模型的性能下降,使用我们的专用的训练框架,我们统一的模型表现出的性能和单个数据模型效果一样好。当在域内评估的时候,他们需要测试领域内的知识。当在域外评测时,对于单个concept产生了大量的输出。这就是限制了模型的泛化性,导致模型效果不佳。作者的方法,整合了一个单标签空间,产生了一个模型,不需要在测试数据集的域中进行训练,可以部署在新的域。

【47】训练了一个统一的检测器:COCO【22】,VOC【6】,和SUNRGBD【37】,整个有100个类。他们手工混合了分类器,使用交叉数据集训练pseudo-labels产生一个特定的模型。pseudo-label就是一个补充性的工作。作者的整合标签空间学习移除人工劳力,并工作在一个大的数据规模上:所用数据集有COCO,Objects365,和OpenImages,和很多复杂的标签空间,类别有900+类。YOLO9000【30】结合检测和分类数据集扩大检测内容。LVIS【12】扩展COCO标注>1000个类别;作者的方法混合了大量的标注数据集用于补偿,且不用手工去统一分散的目标检测数据集。

zero-shot classification and detection推理是关于训练集中出现的一个新类别【1,8】,一个新的类别通常是用语义表针【25】或者附加属性标签【7】来表征的。在零样本目标检测中(in zero-shot detection),【1】提出了一种方法来避免新的类别被划分为背景类。【28】使用测试时间训练时(test-time training)去基于单词嵌入逐步生成新的类别。【21】减少使用外别文本描述处理新的类别。我们的编程方式是补充性的:我们的通过混合不同的数据来创立一个充分的大的标签空间,这些训练过得检测器在夸域的数据集上转换效果很好,甚至没有使用机械(machinery),例如词嵌量或者属性。这类机械可以加入,来更好的优化我们的模型词汇量;

预备工作

目标检测目的就是预测图像中每个目标i的一个位置b_{i}\in R^{4}和一个类别级的检测分数d_{i}\in R^{|L|}.

inter-dataset sampline strategy[26,35]——>class_aware sampling

在类别不平衡时的采样策略:这种操作会提升0.6%的精度

Class-aware Sampling. 
To address this issue, we apply a sampling strategy, named “class-aware sampling”, during training.
 We aim to fill a mini-batch as uniform as possible with respect to classes, and prevent the same example and class from always appearing in a permanent order. In practice, we use two types of lists, 
an iteration, we first sample a class X in the class list, then sample an image in the per-class 
image list of class X. When reaching the end of the per-class image list of class X, a shuffle
 operation is performed to reorder the images of class X. When reaching the end of class list, a 
strategy to effectively tackle the non-uniform class distribution, and the gain of accuracy on the validation set is about 0.6%.
 

有两个列表,一个类别列表X,一个每类列表的样本列表Y。在每次取mini-batch时,先取一个X,再取一个Y中对应的一个样本,即获得一张图片用于mini-batch。往后遍历X,依次类推获得mini-batch,用以训练迭代。若X遍历完毕,再打乱X,再从头遍历X。若Y中某一类样本遍历完毕,则打乱该列样本,下次取该列类别样本时,从该列头开始取。
————————————————
版权声明:本文为CSDN博主「oneTaken」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011394059/article/details/77942121

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫猫与橙子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值