A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection
还是那个老故事,即如何解决Deep检测跟踪器训练时正样本(尤其在occlusion和deformation情况下的hard positive)不足的问题。这个问题的紧迫性在于这样样本的缺失导致训练所得网络在occlusion、deformation等appearance variation情况下的鲁棒性不足。
传统解决此问题有两个方向的思路:1. 尽可能收集和建立越来越大越来越全的数据库,期待这个数据库能够把方方面面的variation都囊括(比如COCO超过10K的汽车样本with variations)。可是,occlusion和deformation具有long-tail的特性,即便再大的dataset也很难得到一个足够全的数据库;2. Hard samples mining in Loss function,比如类似focal loss,这样做仅仅是增加了在训练时hard样本的单体对loss的贡献,但是依然不能解决有些很罕见样本根本收集不到的问题。
在解决此问题上,本文与SINT++的思路完全一样,即通过Adversarial的概念去直接学习从hard positive的long-tail distribution中学习采样生成现实中不存在的hard positive样本,学会如何去遮挡一些真的easy positive。注意,这里的生成依旧不是输入一张图,输出一张图的传统GAN模式。因为这样的传统GAN模式依旧摆脱不了对样本的需求。这里做的是在CNN的feature map上进行遮挡,而不是pixel-wise的逐像素生成,这样一来就对adversary训练的样本需求减少很多。 注意,A-Fast-RCNN和SINT++都是在feature map上遮挡而不是在原图上遮挡。Adversary的概念体现在generator拼命生成discriminator(classifier、detector)无法识别的hard positive,而discriminator则拼命去识别generator扔过来的尽可能难的hard positive。
- 论文梗概:
本文是自实现better data utilization and provide a new way of hard positive data enhancement的角度入手得到新detector的。换言之,本文的贡献主要集中在如何用adversary的概念在已有sample基础上对抗地(generator try to predict occlusion and deformation that will degrade the detector,while the detector learn to overcome it)学会遮挡,生成新hard样本。而detector本身就是一个Fast-RCNN。
一个detector的核心能力体现在invariance to appearance variance(包括illumination,deformation,occlusion,intra-class variation,etc.)。为了使得训练得到检测器获得这种invariance的能力,最原始的思路是暴力收集建立尽可能大的dataset,使得这个dataset有丰富的hard样本可以cover各种可能的variance。但是,deformation和occlusion等variance具有long-tail distribution的特性,即有大部分variance是极其罕见的,想要完全收集齐是不现实的。
那么该怎么办呢?那么就通过生成的方法,依据现有的easy样本去创造hard正样本。即通过adverary学习如何在easy sample上面进行遮挡以使其变成hard positive。
- 深度检测器背景调研: