Dense Relation Distillation with Context-aware Aggregation for Few-Shot Object Detection (2021 CVPR)

1. 出处

2021 CVPR
北大

2. 问题

小样本目标检测在只有少量样本可用的情况下,很容易忽视新物体的细粒度的特征。

已有的方法有几个缺陷:

  1. support特征和query特征之间的关系几乎没被探索过,在support特征上进行的全局池化操作用于调制query分支,这易于损失局部细节信息。support图像和query图像之间的外观变化差异很大或者有遮挡时,会对结果产生很大误导。没有足够的对比性信息的话,模型难以学到关键特征用于分类和定位。
  2. 尺度变化问题仍然是小样本检测任务的阻碍

3. 解决方案

为了充分利用有标注novel object的特征,并捕获query object细粒度的特征,作者提出了DCNet。在元学习架构基础上构建,Dense Relation Distillation模型目的是完全利用support features, support features和query features密集匹配,以前向传播的方式覆盖了所有空间位置。

当外观变化时,局部细节特征对匹配候选目标或模板具有决定性作用,因此,作者不再获取support set的全局表示,而是提出了dense relation distillation mechanism,query特征和support特征在像素级别上匹配。key和value maps从特征中产生,分别担任endoding视觉语义用于匹配,包含细节外观信息用于decoding.

为了缓解尺度不同的问题,作者设计了context-aware feature aggregation module在RoI pooling阶段捕获不同尺度的关键线索。识别不同尺度的物体需要不同的不同层的上下文信息,然而固定的池化分辨率会造成重要上下文信息的损失。因此作者提出了一个适应性的聚合机制(一种注意力机制)。

4. 整体结构

4.1 基础检测模型

采用Faster R-CNN

4.2 特征加权

作者采用Meta-RCNN作为baseline方法,RoI特征由RoI池化层产生,特定类的向量由reweighting module产生,和特征提取器共享backbone参数。

4.3 DCNet

4.3.1 输入

query images和support images的特征通过共享的特征提取器,获取到的特征作为Dense Relation Distillation Module的输入

4.3.2 Dense Relation Distillation Module结构

query feature和support feature通过复杂的编码器编码成成对的key-value图,query编码器和support编码器采用相同的结构,但不共享参数。

key maps用于度量query特征和support特征之间的相似度,能够辅助决定在哪提取相关的support值。学到的key maps编码视觉语义用于匹配,value maps存储细节信息用于识别。

生成的key和value map进一步喂入关系蒸馏部分,query和support的keys图密集匹配用于处理target目标。
在这里插入图片描述
关系蒸馏:通过度量query特征和support特征的key图之间的相似性,计算support特征的value图软权重。

4.3.3 Context-aware Feature Aggregation

修正后的query特征,随后被喂入RPN,输出region proposal,以proposals和特征作为输入,RoI Align模型为最终分类回归进行特征提取。在原始实现中,池化操作通过一个固定的8分辨率实现,会导致训练过程中信息损失,对于一般的检测,这种信息损失会由于数据量大得以补救,但在小样本场景下这种问题就很严重了。

由于小样本的本质,随着尺度变化被放大,模型易于失去泛化到新类的能力。

基于以上原因,作者提出了Context-aware Feature Aggregation模型。不再使用固定的8分辨率,而是选择4,8,12三种分辨率,进行平行池化。
在这里插入图片描述
因为每个生成的特征包含不同level的语义信息,为了有效聚合不同尺度RoI pooling的特征,作者提出了注意力机制来适应性地混合池化结果。

结构:为包含两个blocks的每个特征都添加一个注意力分支,第一个block包含一个全局平均池化,第二个包含两个连续的全连接层。随后为生成的权重进行softmax标准化,来平衡各个feature的贡献度。最终输出是三部分特征的加权求和。

5. 学习策略

在这里插入图片描述
整个学习过程分两个阶段:

  1. 元训练

    在base classes上进行训练

  2. 元微调

    在base classes和novel classes上进行微调

    由于novel classes只有k个bbox,所以为了平衡base classes和novel classes,作者也为每个base classes选择k个boxes。

    训练方法和元训练阶段一样,但很少轮就能收敛。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值