赞
踩
提出low-shot Transfer detector,来解决标注样本数据不足的情况。利用source domain知识,来构建高效的target-domain检测器,仅需要很少的训练样本。
transfer learning for low-shot detection challenge:
本文贡献:
由于文章是2018年的,就跳过了
bounding box regression in the fashion of SSD
object classification in the fashion of faster rcnn
总的来说,就是结合了SSD的多尺度信息,结合了Faster RCNN的Proposal Generation、ROI Pooling层,让其分类会更加准确。中间有一个小trick就是,在SSD和Faster RCNN拼接部分,增加了一个二分类的检测器,来检查框内是否有object,进行一个先行过滤。
值得一提的是,在最后的分类过程中,使用卷积层代替了原始的全连接层。
End to end regularized transfer learning framework
首先,LSTD现在大规模的source data中进行训练。然后再对预训练的LSTD模型在target data微调。
微调使用了新的正则化方法:
其中 L m a i n L_{main} Lmain是指loss summation of multi-layer bounding box regression and coarse-to-fine object classification in LSTD。由于target data中会有很多新类,所以(K+1 K个类别+1个背景)Object classification需要进行重新的初始化,即使bounding box regression and object-or-not classification 可以被source data初始化。为了避免过拟合,所以就引入了分 L r e g L_{reg} Lreg。
具体来说,我们首先从LSTD的中间卷积层生成convolutional feature cube,然后用GT bbox mask 掉 convolutional cube中所有目标。那么不在bbox,也就是剩下的就是背景 F B D F_{BD} FBD,为了去抑制背景,我们使用了L2正则去惩罚 F B D F_{BD} FBD。 L B D = ∣ ∣ F B D ∣ ∣ 2 L_{BD}=||F_{BD}||2 LBD=∣∣FBD∣∣2
在迁移学习过程中,特征提取,边界框回归,二分类等过程都可以利用在源数据集上预训练得到的结果作为初始化,但因为源数据集和目标数据集所包含的物体类别和数量都不相同,所以最后的多分类阶段无法利用源数据预训练的结果,只能从随机状态开始初始化。虽然source data和target data的数据集类别不同,但还是有关联的,不管是形态上还是颜色上。所以对于每个proposal都应用了transfer-Knowledge(TK)。
第一步:我们将训练数据(也就是target data)分别喂给原来用source data训练好的LSTD(后面叫1号)和重新初始化分类起的target LSTD(后面叫2号)。然后我们将target LSTD生成的proposal,传给1号的ROI pooling哪一块后面进行分类。得到
第二步:我们更改2号的多任务学习架构,也就是说加一个source-object soften classification,这个分类器和一号的一样,但是权重是重新初始化的,就相当于加了一个辅助分支。得到:
第三步,计算上面得到的俩个的交叉熵损失, 就是希望上面俩个结果一样,也就相当于用源域的知识来指导目标域的收敛和分类。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。