guodong's blog

PhD@zhejiang university
   

论文阅读:Generative Modeling for Small-Data Object Detection(iccv2019)

摘要:本文探讨了在小数据体制下的目标检测,其中只有有限数量的带注释的边界框可用。 如今,这是一个普遍的挑战,因为机器学习已被应用到许多新任务中,而在这些新任务中,获取训练数据更具挑战性,例如在患有罕见疾病的医学图像中,医生有时一生只能见一次。 在这项工作中,我们将从生成建模的角度探讨这一问题,方法是学习生成带有相关边界框的新图像,并将其用于训练目标检测器。 我们表明,简单地训练先前提出的生成模型并不能产生令人满意的性能,这是因为它们针对图像真实性而不是对象检测精度进行了优化。 为此,我们开发了一种具有新颖展开机制的新模型,该机制共同优化了生成模型和检测器,从而生成的图像提高了检测器的性能。 我们显示,该方法在两个具有挑战性的数据集(疾病检测和小数据行人检测)上的表现优于现有技术,将NIH胸部X射线的平均精度提高了约20%,并将定位精度提高了约50%。

以直接应用现有的生成模型是有问题的。首先,以前针对生成模型插入对象的工作通常需要分割蒙版,这通常是不可用的,比如在疾病检测任务中。 其次,GAN旨在产生逼真的图像(与真实图像没有区别),但是现实并不保证它可以帮助完成下游目标检测任务。特别是,从检测器到发生器没有直接反馈。 这意味着无法对生成器进行专门的训练以改进探测器。

为了解决这个问题,我们提出了一个新的DetectorGAN模型(如图1所示),该模型将检测器和GAN连接在一起。 该联合模型将检测器集成到生成器-判别器管道中,并训练生成器以显着提高检测性能。

DetectorGAN在生成器之后有两个分支:一个带有鉴别器,以改善生成的图像的真实性和可解释性,另一个带有检测器,以反馈生成的图像如何改善检测器。 我们共同优化对抗损失检测损失。 为了生成对检测器有利的图像,损失公式很重要。一个困难是我们的目标是使生成的图像提高真实图像的检测器性能,但是由于真实图像不是生成的,因此生成器无法接收来自真实图像检测损失的梯度。 为了解决这个问题,提出的方法通过展开检测器训练的一次前后移动来桥接生成器和真实图像上的检测损失之间的这种联系。

模型结构

模型包括三个组件:生成器,(多)鉴别器和一个检测器。检测器给生成器反馈生成的图片是否提升检测性能。鉴别器提升生成图片的真实度和可解释性,鉴别器有助于产生逼真的和可理解的合成图像。模型结构基于CycleGAN,DetectorGAN中的生成器生成带标记的(插入对象的)合成图像,这些图像随后馈入两个分支:鉴别器分支和检测器分支。 我们认为没有目标的干净图像属于域X,带有目标的带标签图像属于域Y。

生成器:使用9个blocks作为生成器Gx和Gy。正向的Gx接受两个输入:一个是真实的干净图片,这个图片被用于作为背景图片来插入目标。另一个是掩膜mask,其中,目标边界框内的像素被填充为1,其余为0。生成器的输出是一个有着输入背景和在标记位置插入目标的合成图片。反向的生成器Gy接受真实的标记图片和表示目标位置的mask,输出是一个移除目标的图片。

难以获得物体的合理插入位置。对于NIH疾病任务,作者通过预处理和随机抽样获得这些位置。 从理论上讲,该位置可以在肺区域中的任何位置,但是由于在实践中没有针对肺区域的分割蒙版,因此作者首先将每个干净的图像与带有边界框的最相似的标记图像进行匹配,然后运行随机移动位置以获得采样的地面真值框位置。 对于行人检测任务,作者遵循先前工作中的设置[24]。 值得注意的是,掩膜位置的选择不会改变作者的方法,因为另一种方法是可以使用可训练的方法来预测可能的位置。

鉴别器:包含两个全局判别器DISglobalX和DISglobalY,如CycleGAN,以及用于局部区域真实性的局部判别器DISlocalX 。 全局标识符DISglobalX和局部标识符DISlocalX在整个图像上或局部在边界框crop上,在真实标签图像和合成标签图像(由GX生成)之间进行鉴别。 DISglobalY鉴别GY生成的内容(通过从实际标记的图像中删除对象来生成合成清晰图像)和真实清晰图像。 不需要DISlocalY,因为移除目标后,不太在乎局部真实性。

检测器:探测器DET可以将带有目标的真实和合成标记图像作为输入和输出边界框。只要探测器是可训练的,就可以将其集成到回路中。

训练

Detection Losses:将检测损失(回归和分类损失)记为Ld(·),其中·是标记的图像,可以是真实的或合成的。检测损失具体为:

展开以优化真实图像上的检测损失:希望,给一个真实图片y,GX的目标是使用生成的图片来帮助减少检测损失。也就是说Gx应该参与训练来减少等式1的。但是,Gx和在等式1中并未出现。但是作者发现,虽然没有直接连接关系,但是在上一步通过Gy生成的合成图片有参与检测。因此有了下式:

具体理解看图2

Detection Loss on Synthetic Images:生成器旨在使合成图像对检测器有用。 它将合成图像(公式2)的检测损失最大化以生成检测器之前未见过且无法很好预测的图像。 在这种情况下,生成的图像可以帮助提高性能。

可能有人认为,生成器应该将合成图像的检测损失降到最低。 这与类似ACGAN的损失有一些相似的想法,其中将合成图像上的辅助分类损失最小化以提高真实感。 但是,出于我们提高真实图像检测性能的目标,将合成图像上的检测损失降至最低可能无济于事,甚至可能损害真实图像上的检测性能。 这背后的直觉是,合成物体可能会偏离探测器的优化目标。 在我们的实验中,我们表明将诸如ACGAN之类的合成图像损失降至最低会损害真实图像的检测性能。

Overall Losses:DetectorGAN模型应该生成图像,这些图像(1)可以帮助训练更好的检测器;(2)插入对象; 和(3)与全局和本地的真实图像没有区别。

此外,使用周期一致性损失和身份损失来帮助保留整个图像中的信息。

Training:总而言之,在更新鉴别器时,目标是使生成图像上的鉴别器损失最大化,并使真实结节图像上的损失最小化。 更新检测器时,目标是使实际和生成的结节图像的检测损失最小化。 在更新生成器时,目标是:(1)最小化生成图像上的鉴别器损失; (2)最小化对真实物体图像的检测损失,(3)最大化对生成图像的检测损失。

我们使用合成图像的历史[?没看懂],为了更快地收敛,分别训练了鉴别器-生成器对和检测器,然后对其进行联合训练。当有一个带标签的图像但没有边界框注释时,仍然会更新鉴别器DISglobalX以改善全局逼真度。




上一篇:
下一篇:

头像

guodong

没有评论


你先离开吧:)



发表评论

电子邮件地址不会被公开。 必填项已用*标注