【Double Head】《Rethinking Classification and Localization for Object Detection》

Wu Y, Chen Y, Yuan L, et al. Rethinking classification and localization for object detection[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2020: 10186-10195.

https://openaccess.thecvf.com/content_CVPR_2020/papers/Wu_Rethinking_Classification_and_Localization_for_Object_Detection_CVPR_2020_paper.pdf

CVPR-2020


文章目录

  • [1、Background and Motivation](#1、Background and Motivation)
  • [2、Related Work](#2、Related Work)
  • [3、Advantages / Contributions](#3、Advantages / Contributions)
  • 4、Method
    • [4.1、Analysis: Comparison between fc-head and conv-head](#4.1、Analysis: Comparison between fc-head and conv-head)
    • [4.2、Our Approach: Double-Head](#4.2、Our Approach: Double-Head)
  • [5、Experimental Results](#5、Experimental Results)
    • [5.1、Datasets and Metrics](#5.1、Datasets and Metrics)
    • [5.2、Ablation Study](#5.2、Ablation Study)
    • [5.3、Main Results](#5.3、Main Results)
    • 5.4、APPENDIX
  • [6、Conclusion(own) / Future work / Reference](#6、Conclusion(own) / Future work / Reference)

1、Background and Motivation

R-CNN 目标检测框架的头部结构中,full connection 和 full convolution 被广泛应用于分类和回归任务

However, there is a lack of understanding of how does these two head structures work for these two tasks.

作者实验分析了两种头部结构的优缺点,结合两种结构的优点,提出了 double head 结构,涨点明显

2、Related Work

  • One-stage Object Detectors

  • Two-stage Object Detectors

  • Backbone Networks

  • Detection Heads

3、Advantages / Contributions

基于 R-CNN 二阶段的目标检测框架,分析了全卷积头和全连接头的优缺点,结合两者的长处提出 double head,COCO 上提涨点明显

4、Method

4.1、Analysis: Comparison between fc-head and conv-head

(1)Data Processing for Analysis

公平起见,作者没有采用训练好的RPN产生RoI,而是通过在ground-truth box 周围滑动窗口(sliding window)来生成大小和交并比都不同的proppsals。然后比较在相同交并比的情况下,fc-head 和 conv-head 在classification 任务上的精度和 bbx regression 任务后的 IoU,以及相应的均值和标准差。

The predefined proposals include sliding windows around the ground truth box with different sizes

读第一遍的时候确实没有读出来 sliding window 的意思,看了同行的小伙伴解读才豁然开朗

(2)Comparison on Classification Task

图2,第一行是纵坐标是分类 score(得分应该是 train 出来的,不太清楚是 sliding window proposal 后只训头还是整体训完后替换 rpn 的 proposal),横坐标是 sliding window 的 proposal 和 GT 的 IoU

可以看到 fc-head 确实比 Conv-head 对位置更加敏感

classification score is more correlated to the intersection over union (IoU) between a proposal and its corresponding ground truth box

图 3 左图也能佐证这一点,皮尔逊系数的介绍看本文最后章节

图 3 右图没有用 sliding window 的 proposal,而是用 RPN 的 proposal(anchor + bbox regression),也看出同样的趋势

(3)Comparison on Localization Task

图 2 第二行,横坐标是 sliding window 的 proposal regression 后的 bbox 与 GT 的 IoU

实话说,区别不是很明显(蓝色比红色高了一点点)

作者还是给出了 conv-head has better regression ability than fc-head.

(4)Discussion

本文将特征层输出的7x7的feature map,以余弦距离计算其相似度,每一个feature point 都要与其他 48个计算相似度,所以一共 49 张小图,每一个有7x7的网格

确实可以看出,一个是 fc-head 对位置敏感,一个是 fc-head 可能更擅长物体部分区域的响应,而不是整体区域(可以理解为感受野有限吗?)

fc-head is better to distinguish between a complete object and part of an object (classification)

4.2、Our Approach: Double-Head

(1)Network Structure

基于 mask rcnn 框架

backbone 用的是 resnet50 or resnet101,配合 FPN(【FPN】《Feature Pyramid Networks for Object Detection》

改进:引入了 non-local 模块(【NL】《Non-local Neural Networks》


作者权衡速度和精度采用的是 3 residual blocks and 2 non-local blocks (K = 5 in the second group)

损失函数

也即头部的 loss 和 rpn 结构的 loss 的加权,分类用的是 cross entropy loss,回归用的是 Smooth-L1 loss

回顾一下 mask rcnn 的 RPN 细节

(2)Extension: Leveraging Unfocused Tasks

Ext 是 extension 的意思

unfocused task supervision

fc-head 和 conv-head 都有,然后两者的分类损失和回归损失加权在了一起

加权系数 λ f c \lambda^{fc} λfc 和 λ c o n v \lambda^{conv} λconv 均为 1 时,double-head-ext 就等价于 double head


作者仅融合了分类损失,没有融合回归损失,细节如下(Complementary Fusion of Classifiers

s f c s^{fc} sfc 是 fc-head 的 classification score

s c o n v s^{conv} sconv 是 conv-head 的 classification score

5、Experimental Results

5.1、Datasets and Metrics

  • MS COCO2017

  • Pascal VOC07

AP

5.2、Ablation Study

  • Double-FC

  • Double-Conv

  • Double-Head

    作者的方法

  • Double-Head-Reverse

    倒反天罡,fc for bbox regression,conv for classification

作者的 double-head 效果最好

single-conv 比 double-conv 的分类效果更好,所以作者在 double-conv 的基础上升级加权成了 double-conv-ext

sliding window analysis,double-fc 比 single-fc 要强一些的------有没有一种可能,是头部的参数量多了一些,网络的上限可以更高了

这里作者想说明,sharing two tasks in a single fully connected head (Single-FC) is not as good as separating them in two heads (Double-FC).


More training iterations,这个就有点赖皮了,万精油基本上是,不过参数量多了,确实可能要多训一些,2x有点太多了

Double-Head gains 0.6 AP (from 39.8 to 40.4)


Balance Weights λ f c \lambda ^{fc} λfc 和 λ c o n v \lambda ^{conv} λconv

这个应该是只训练了 double-head-ext,然后选择不同的 head,配合 λ \lambda λ 做的实验

还是作者的方法精度最高,实验做的无懈可击,哈哈,很完整

double-head-ext 看起来确实比 double-head 整体精度是要好


Fusion of Classifiers

这里实验的是 fc-head 和 conv-head 的 classification 的融合形式,作者融合的方法效果最好

5.3、Main Results

Comparison with Baselines on VOC07

Comparison with Baselines on COCO,table 5

Comparison with State-of-the-art on COCO,table 6

作者只比较 only has one training stage,抛开这个约束的话,slightly below Cascade RCNN (42.8 AP)

fc-head has more capability to distinguish a complete object from part of an object, but is not robust to regress the whole object.

5.4、APPENDIX

(1)Sliding Window Analysis on Different Difficulty Levels of Classes

classes 的难易程度怎么区分的呢?

rank all object classes based upon AP results of the FPN

确实 fc-head 有利于分类,这个信号特别明显

(2)Effect of Joint Training in Double-Head-Ext

还是在 classification 上信号特别明显,double-head-ext 冠绝全场

在 bbox regression 上并不是特别的明显

(3)Qualitative Analysis

d
inaccurate proposal

It is not suppressed by NMS

就会导致重复检测

6、Conclusion(own) / Future work / Reference

相关推荐
小oo呆3 小时前
【自然语言处理与大模型】模型压缩技术之量化
人工智能·自然语言处理
Magnum Lehar3 小时前
ApophisZerg游戏引擎项目目录展示
人工智能·vscode·编辑器·游戏引擎
飞桨PaddlePaddle3 小时前
Wan2.1和HunyuanVideo文生视频模型算法解析与功能体验丨前沿多模态模型开发与应用实战第六期
人工智能·算法·百度·音视频·paddlepaddle·飞桨·deepseek
绿算技术3 小时前
存储新势力:助力DeepSeek一体机
人工智能·科技·缓存·fpga开发
Y1nhl4 小时前
搜广推校招面经八十一
开发语言·人工智能·pytorch·深度学习·机器学习·推荐算法·搜索算法
胡攀峰4 小时前
第12章 微调生成模型
人工智能·大模型·llm·sft·强化学习·rlhf·指令微调
yuanlaile4 小时前
AI大模型自然语言处理能力案例演示
人工智能·ai·自然语言处理
小白白搭建4 小时前
WordPress AI 原创文章自动生成插件 24小时全自动生成SEO原创文章 | 多语言支持 | 智能配图与排版
人工智能
Jamence4 小时前
多模态大语言模型arxiv论文略读(三十九)
人工智能·语言模型·自然语言处理
ai大模型木子4 小时前
嵌入模型(Embedding Models)原理详解:从Word2Vec到BERT的技术演进
人工智能·自然语言处理·bert·embedding·word2vec·ai大模型·大模型资料