论文笔记: LSTD A Low-Shot Transfer Detector for Object Detection

背景知识: 

Zeroshot Learning,零次学习。

模型 对于 训练集没有出现过 类别,能自动创造出相应的映射: X→Y

Low/Few-shot Learning、One-shot Learning少/一次学习。

训练集中,每个类别 都有样本,但都只是 少量样本 (甚至只有一个)。

要:

 

提出了一个Low-Shot Transfer Detector (LSTD)利用丰富的源领域Source Domain知识来构建一个高效的目标域Target Domain检测器(几乎不需要训练样例)

主要贡献:

  1. 设计了一个灵活的LSTD深层架构,以缓解Low-Shot检测中的tranfer困难。同时,该架构结合了SSD和Faster RCNN各自的优势。
  2. 其次,提出了一种新的 transfer learning framework,其中包括 Transfer Knowledge (转移指数 TK)和 Background Depression (背景抑制 BD)正则化方法,可以分别从源域和目标域利用目标知识,加强fine-tune 。

 

 以前的解决方法:

  1. weakly/semi-supervised. 引入额外的易于注释的标签图像。缺点:由于训练集的缺乏监督,检测器的效果往往受限。 弱监督:有标签没有框;半监督:有标签,部分有框。
  2. 对深度模型进行迁移学习。缺点:(1)当目标检测数据集很小的时候,对目标检测使用一般的迁移策略是不适用的(例如,简单的使用预训练的深度分类模型来初始化深度检测模型)。在很小的数据集上进行微调时,通常很难分辨检测和分类之间的区别。(2)在迁移学习中,深度检测模型比深度分类模型更容易出现过拟合。(3)简单的微调通常会降低可转移度(经常会忽略源域和目标域都具有的重要的目标知识)。

TKBD的主要作用:

TK:对每一个目标域的 proposal 迁移源域目标标签知识,使得能够在目标域中泛化Low-shot Learning

BD:在目标域图片的特征图上加入bounding box knowledge来做额外监督,使得模型在transferring中能够抑制背景的干扰,专注于目标。

网络的基本结构:

 

 

 图1 

First, we design bounding box regression in the fashion of SSD.

利用SSD设计bounding box regression。每一卷积层都有默认的候选框,每一层都用smooth L1来对框的回归进行训练。

  • 训练数据:large-scale source domain
  • 训练目的:为了学习尺度的多样性(少样本缺少的信息),避免重新初始化bbox回归,减少target domain时的fine-tuning负担

Second, we design object classification in the fashion of Faster RCNN.

Faster RCNN设计object classification。这里就是将原始Faster RCNN的框的回归换成了SSD的多尺度框的回归,原始的RoI层中的特征层用SSD的卷积的中层特征代替。

实现流程如下: 

  • 根据SSD部分的objects的分数排序,选出region proposals筛选作为RPN的结果
  • 使用ROI pooling层的middle-level卷积层,为每个proposal产生固定大小的卷积特征cube
  • 不使用原有的faster rcnn的全连接层,而是在ROI pooling layer使用两个卷积层,用于K+1分类。

优势: 

  • 当参数较少时,减少了过拟合。
  • 与直接的K+1类分类相比,粗到细分类,减少了迁移学习的训练难度。
  • 相较于背景来说,sourcetarget中的物体共享一些相同的特性(例如清晰的边缘,均匀的质地)。

Regularized Transfer Learning for LSTD

 

 

 图2

  1.  train the source-domain LSTD with a large-scale source data set.
  2. initialize the target-domain LSTD using the pretrained source-domain LSTD.
  3. use the small-scale target data to fine-tune the target-domain LSTD with the proposed low-shot detection regularization.

具体来说,首先用大量的source data 训练图1中的模型,得到pretained source-domain LSTD;然后用该模型初始化 target-domain LSTD;最后用文章提出的正则化方法在target-domain中fine-tune经过初始化的target-domain LSTD

fine-tune过程中总的损失函数如下:

 

 

 

其中,L_main 指在LSTD中的多个尺度层的回归损失和微调目标分类的损失(即后面的两个卷积)。(源域与目标域相关但不同,因为low-shot旨在从少量目标数据中检测出之前没有出现过的类别)。因此在目标域中需要重新初始化,即源域训练好的用来当做目标域的初始化,然后来进行微调。

为了进一步在目标域中加强low-shot detection,加入了新的正则项:L_reg,形式如下:

 

 

 其中,L_BD,L_TK分别为背景抑制和知识迁移正则项。

Background-Depression (BD) Regularization

由于复杂的背景信息会影响localization性能,所以在目标域中用object knowledge 设计了BD正则化。具体的,首先从卷积的中间层生成特征立方(candidate boxes) ,然后用groud truth bounding boxes取匹配框,去除掉这个匹配框,仅保留与背景对应的特征区域,即F_BD。最后使用L2正则化惩罚激活的F_BD。从而抑制背景信息,在仅有的target数据中更关注target的物体信息。 

BD的作用:

 

 

 

Transfer-Knowledge (TK) Regularization

由于源域与目标域的类别不同,所以在目标域中就要微调。但是如果只用目标域的数据进行微调,就不能充分利用源域的知识。所以提出了TK正则化,它将源域的目标标签预测作为源知识去正则化目标网络。此处假设的前提是target和source的物体之间有一定的相关性。具体的步骤如下:

  1. Source-Domain Knowledge:将training图片分别喂到source-domain LSTD 和target-domain LSTD里面,然后将target-domain的proposals应用于source-domain LSTD的ROI池层,最终从源域目标分类器中生成知识向量:

     其中a_s是 pre-softmax activation vector for each object proposal,τ是参数,可以产生soften label和richer label-relation information。

  2. Target-Domian Prediction of Source-Domain Categories:将1中的target-domain LSTD微调成多任务学习框架:通过添加a source-object soften classifier at end of target-domain lSTD,然后对于每一个target proposal,该分类器会产生一个 soften prediction of source object categories:

    其中a_pre是 pre-softmax activation for each proposal.

  3. TK Regularization:计算knowledge p_ts of source-domain LSTD and the soften prediction p_pre of target-domain LSTD的交叉熵损失:

整个模型的训练过程:

 

 

参考:

1. http://blog.leanote.com/post/lilac_yue/%5BAAAI2018%5DLSTD

2. https://blog.csdn.net/u011630472/article/details/89216035

posted on 2019-10-17 15:51  daiy  阅读(960)  评论(0编辑  收藏  举报