DETReg: Unsupervised Pretraining with Region Priors for Object Detection
0 Abstract
目前的方法没有对整个物体检测网络进行预训练,尤其是定位和区域嵌入部分。如图所示
以前的方法如SwAV,只对检测器backbone进行预训练,而不对定位进行预训练。因此预训练后的模型无法检测到物体,如绿框。定位模块必须随机初始化,并针对下游任务从头开始训练。
最近的Up-DETR对整个网络进行了预训练,然而由于预训练过程中缺少groundtruth,其预训练任务只能学会重新识别随机区域,而不是物体。因此,预训练后,也无法有效的定位实际物体,橙色框所示。
为了解决这一问题,DETReg通过学习预测区域建议算法生成的建议区域。提出了一种以对象为中心的预训练方法。以对象为中心的预训练允许DETReg在预训练阶段结束后立即定位对象,蓝框所示。
1 DETReg
DETReg是一种自监督方法,使用了DETR系列检测头对物体检测器进行全面的预训练,包括:
- 区域定位组件–学习如何与无监督区域建议生成器预测的区域相匹配嵌入组件
- 嵌入组件–通过自监督图像编码器学习生成嵌入(每个预测区域的)。
下图展示了预文本任务如何预训练DETReg的。
预文本任务可以分成3个部分:
目标检测:如图左侧,给定图像 xxx 的嵌入 vvv, DETR检测器预测出有3个头部建议区域。
-
fboxf_{box}fbox 预测边界框 b^\hat bb^ fbox:Rd→R4f_{box}: \mathbb{R}^d \rightarrow \mathbb{R}^4 fbox:Rd→R4
-
femdf_{emd}femd 生成对象嵌 z^\hat zz^$ fbox:Rd→Rdf_{box}: \mathbb{R}^d \rightarrow \mathbb{R}^d fbox:Rd→Rd
-
fcatf_{cat}fcat 生成对象分数 p^\hat pp^$ fbox:Rd→RLf_{box}: \mathbb{R}^d \rightarrow \mathbb{R}^L fbox:Rd→RL
LLL是物体分类的数量,包括背景类。
伪标签生成:如图右侧,伪标签通过区域建议生成器生成,如选择性搜索。对于每个区域建议(bbb),可以使用现有的自监督方法训练编码器生成对象嵌入(zzz)。区域建议的对象得分(ccc)始终为1。
为检测到的对象分配标签:如图中心,检测器预测的每个边界框都会通过双向匹配和一个groundtruth区域建议相匹配。对于未匹配的预测结果,使用c=0c = 0c=0的填充建议进行分配。
2.目标检测
这个任务的目标是学习检测由简单的区域简易方法生成区域先验,例如选择性搜索方法。
区域建议方法是以高召回率但低精度生成大量的类别无关区域建议。这本不该成为问题,因为非对象框的内容往往比对象框更为多变,而对象框更为明确,深度学习模型可以被训练来识别对象的视觉属性,尽管给定了嘈杂的标签。
2.1 Predicting objects
DETR最多可以检测NNN个对象。给定一张图像 xxx, DETR使用一个backbone和一个transformer生成 NNN 个查询嵌入 v1,..,vNv_1,..,v_Nv1,..,vN,每个嵌入都是长度为 ddd 的一维向量。然后 viv_ivi 被送入两个heads。第一个head是生成 fboxf_{box}fbox,第二个head生成 fcatf_{cat}fcat
2.2 Generating the pseudo labels
为了训练定位组件,从由区域建议方法生成的所有区域建议中选择了 MMM 个框。有几种选框的方式:
- 前 KKK 个 : 使用基于它们的对象分数的前 KKK 建议。
- 随机 KKK 个:使用 KKK 个随机建议。这会导致建议质量较低,但是允许更多的探索。
- 重要采样:根据以下采样概率进行采样。其中 XiX_iXi 是一个随机概率,表示我们是否会输出在位置iii 处排名的 bib_ibi, 其中 i=1,...,ni=1,...,ni=1,...,n。 这个方法依赖于区域建议方法的排名,同时也鼓励更多样化的建议。
2.3 将预测与伪标签匹配
二分类法被用于将预测与伪标签匹配。未匹配的预测被分配带有填充建议的c=0c = 0c=0。
2.4 Loss
L1 Loss
3. Object Embedding Task
对于每个检测到的对象,使用MLP femdf_{emd}femd 来从相应的DETR查询嵌入 viv_ivi 预测对象嵌入 ziz_izi。它学会生成类似现有的自监督图像编码器生成的嵌入的嵌入。这样的图像编码器的示例是SwAV, 它生成具有变换不变性的特征。
4. Loss Function
损失函数涉及将预测的方框与 M 方框进行匹配
5. 评估数据方法
在以下平台上进行了物体检测任务实验
- 全数据机制 Full-data regimes
- 低数据机制 Low-data regimes
- 半监督学习 Semi-supervised Learning
- 少量学习 Few-shot Learning
6. Default settings
根据消融情况,默认设置如下:
- 使用 SwAV初始化 DETReg 的 ResNet50 主干网(在 IN1K 上使用多作物视图预训练了 800 个epochs)。
- femdf_{emd}femd 和 fboxf_{box}fbox 是具有2个size为256的隐藏层的MLP,然后送入ReLU。 femdf_{emd}femd 和 fboxf_{box}fbox 的输出大小分别为512和4。
- 使用DETReg top-k区域选择变体, k=30k=30k=30
7. Dataset
使用了以下数据库:
- IN1K(ImageNet ILSRVC 2012)— 120万张图像,1000个类别。用于预训练。
- IN100(ImageNet ILSRVC 2012的子集)— 12.5万张图像,100个类别。用于消融研究。
目标检测数据集如下:
- MS-COCO — 12.1万张标记图像,80个物体类别。
- PASCAL-VOC — 2万张自然图像,21个类别。
- Air-bus Shop Detection — 23.1万张卫星图像,包含船只的边界框。航拍图像数据集。
参考: https://hktan07.medium.com/paper-review-detreg-2fbbb0a5426f