检测新突破 | AlignDet:支持各类检测器自监督新框架(ICCV2023)

news2025/2/23 0:18:22

引言

论文链接:https://arxiv.org/abs/2307.11077

项目地址:https://github.com/liming-ai/AlignDet

在这里插入图片描述

这篇论文主要研究目标检测领域的自监督预训练方法。作者首先指出,当前主流的预训练-微调框架在预训练和微调阶段存在数据、模型和任务上的不一致。具体来说

数据不一致预训练通常在分类数据集上进行,如ImageNet,而微调数据集像COCO包含多个目标物体。数据特征和域的差异会导致预训练偏离下游任务。

模型不一致当前预训练方法主要聚焦在模型的部分模块,如骨干网络,而检测器的其他关键模块如RPN和回归头没有进行预训练。

任务不一致现有预训练只将分类作为预训练任务,没有学习到目标相关的位置上下文信息,如proposal生成、目标分配和框回归。

这些不一致性可能导致目标检测性能的局限、泛化能力差和收敛速度慢的问题。为此,作者提出AlignDet框架,可以调适到不同检测器中,以弥合预训练和微调中的差异。

AlignDet将预训练过程解耦为Image-domain预训练和Box-domain预训练两个阶段。Image-domain预训练优化检测网络的骨干提取高层语义特征,Box-domain预训练则学习实例级语义和任务感知的概念,来初始化骨干以外的模块。具体来说

在Image-domain预训练中,可以用分类器对骨干网络进行监督预训练,也可以用最近出现的自监督方法进行无监督预训练。

在Box-domain预训练中,使用选择性搜索生成伪标签,构建两视图进行对比学习和坐标回归损失计算,以适应检测导向的任务。同时固定骨干网络避免过拟合噪声标签。

那么对于数据、模型和任务存在的不一致性,AlignDet都是怎么解决的呢?首先对于数据不一致性方面,AlignDet通过Box-domain预训练直接在目标检测数据集上进行,而不是仅在分类数据集上预训练。这使得预训练过程可以适应目标检测的数据分布, bridge the gap between pre-training and fine-tuning datasets。至于模型不一致性方面,AlignDet可以预训练检测器中的所有模块,而不仅仅是骨干网络。这确保了检测头等关键模块可以得到良好的初始化,有利于迁移到下游任务。从任务不一致性的方面来看,AlignDet构建了检测导向的预训练任务,既包含分类也包含回归。这使得预训练不仅学习语义信息,还学习物体的坐标信息,更贴近目标检测的实际任务。进一步来说,AlignDet通过Image-domain和Box-domain解耦设计,可以充分利用现有预训练的骨干网络,提升预训练效率。同时,它也是第一个支持各种检测器完全自监督预训练的框架。

从实验结果来看,AlignDet可以显著提升各种检测器在不同训练策略和数据量下的性能。例如,在COCO上使用12个epoch预训练,FCOS精度提升5.3 mAP,Mask R-CNN提升3.3 mAP。这充分验证了AlignDet可以有效解决目标检测预训练与微调中的差异,并取得显著的性能改进。

方 法

在这里插入图片描述

这篇论文提出了AlignDet框架,以解决目标检测中预训练和微调过程中的数据、模型和任务的不一致性问题。该框架包含Image-domain预训练提取语义特征和Box-domain预训练学习实例级语义的两个阶段。Box-domain预训练利用选择性搜索生成伪标签,并通过对比学习和坐标回归任务进行检测导向的预训练。
2.1 Image-domain Pre-training
在AlignDet框架中,Image-domain预训练主要针对骨干网络,以提取语义特征。该过程可以使用监督或自监督方式进行。
以自监督预训练为例,给定输入图像x,可以通过数据增强构建两个视图x1和x2。然后骨干网络backbone可以学习到视角不变的表示:
在这里插入图片描述

具体而言,可以使用对比学习方法SimSiam,它通过预测器predictor和停 gradient阻断梯度反向传播,最大化不同视图表示的相似性,获得泛化能力更强的特征:
在这里插入图片描述

这里的predictor通常是一个小的MLP,stopgrad表示停止梯度回传。
通过在大规模图像分类数据集上预训练,骨干网络可以学到语义特征,为后续的Box-domain预训练提供输入。这种监督或自监督的Image-domain预训练可以有效提取视角不变的特征表示,是AlignDet框架的第一步。
2.2 Box-domain Pre-training
AlignDet框架中的Box-domain预训练主要针对检测器中除骨干网络之外的模块,以学习实例级语义和任务感知的先验知识。Box-domain预训练包含以下几个关键步骤:

  1. Box-domain Pre-training:Box-domain Pre-training的目的是生成用于后续预训练的伪标签。它使用选择性搜索算法从图像中生成多个区域proposal,作为预训练时的伪真值框标签。这可以提供多对象和不同位置、尺度的样本,使预训练数据更贴近目标检测场景。实现方式是:对输入图像执行选择性搜索,获得proposal集P。同时构建图像的两增强视图,proposal集也做相应变换,获得P1和P2。检测器的回归模块预测两视图的框坐标B1和B2。
    给定输入图像x,使用选择性搜索生成区域proposal集P = {p1, p2, …, pn}作为伪标签。对x进行数据增强构建两视图x1和x2,proposal集也同时进行变换生成P1和P2。检测器的回归相关模块freg预测两视图的框坐标:
    在这里插入图片描述

这里φ表示目标分配操作,如计算IoU匹配。每视图的预测框坐标为b = (x, y, w, h, l)。
2. Box-domain Contrastive Learning:目的是学习实例级的语义特征表示。它利用预测的框坐标,最大化同一proposal在两视图中特征的相似度,实现对比学习。实现方式是:基于预测框B1和B2,提取两视图的特征表示Z1和Z2。定义正负样本,通过InfoNCE对比损失拉近正样本距离,推远负样本距离。
基于预测的框坐标,可以提取特征向量用于对比学习:
在这里插入图片描述

这里表示特征提取模块,是投影头。通过最大化同一proposal在两视图中的特征相似度,进行对比学习:
在这里插入图片描述

其中是查询框的特征,是正样本特征集,是负样本特征集,是温度参数。
3. Overall Loss:Box-domain预训练的总损失为对比损失和坐标回归损失之和:
在这里插入图片描述

这里表示不同检测器的坐标回归损失。
在这里插入图片描述

实 验

在这里插入图片描述

从Table 2的实验结果可以看出,AlignDet与只进行Image-domain预训练的方法相比,在不同的检测器、训练策略和数据量设置下都获得了显著的性能提升。在数据量方面,随着训练数据的减少,AlignDet的提升越明显。例如在只有1%数据的情况下,AlignDet分别为FCOS、RetinaNet、Faster R-CNN和Mask R-CNN带来了1.4、1.8、2.5和3.6 mAP的提升。这说明AlignDet学到的知识可以缓解数据不足的问题。
在训练策略方面,在训练轮数较少(12k iters)的情况下,AlignDet同样带来显著提升,例如Mask R-CNN在12k iters下提升3.2 mAP。这证明AlignDet加速了模型收敛速度。
在检测器方面,AlignDet对一阶段模型FCOS和RetinaNet、两阶段模型Faster R-CNN、query基础模型DETR都取得明显的效果提升。这展示了AlignDet的普适性。即使在充足数据(100% COCO)和充分训练迭代(90k iters)下,AlignDet仍可带来约1.0 mAP的提升。这进一步证明了AlignDet的有效性。与其他方法相比,AlignDet对各类检测器都获得显著且一致的效果改进,尤其是在低数据量或训练迭代较少的困难设置下,而其他方法的提升则相对较小且局限。这充分证明AlignDet可以有效地解决预训练和微调过程中的差异,为各类检测方法提供强有力的预训练方案。
在这里插入图片描述

从Table 4的迁移学习结果可以看出,AlignDet在COCO数据集上进行预训练后,可以有效地迁移至Pascal VOC数据集并提升下游检测性能。具体来看:AlignDet在所有检测器上都获得了显著的AP提升,特别是高阈值metric AP75的提升非常明显。例如Faster R-CNN的AP75提升了6.5。对于RetinaNet和FCOS等一阶段检测器而言,AlignDet预训练主要增强了分类能力,即AP50指标获得明显提升。这与一阶段检测器更依赖分类的特点一致。对于两阶段检测器Faster R-CNN,AlignDet预训练主要提升了回归准确度,即AP75指标明显增强。这与两阶段检测器同时优化分类和回归的流程吻合。而DETR这样的query基础检测器,AlignDet在分类和回归两个指标上都取得显著提升。
也就是说,AlignDet学到的知识能有效迁移到下游检测任务和数据集上,提升不同检测器的分类和回归能力。这进一步证明了AlignDet学习到的语义和坐标信息对目标检测任务具有普适的优化作用。这表明AlignDet不仅适用于COCO等多对象检测,也适用于VOC等较简单的少类检测。

讨 论

这篇论文的一大优点在于作者针对目标检测预训练与微调之间的数据、模型和任务不一致性难题,提出了一套统一且全面的AlignDet框架进行检测导向的预训练。该框架通过分别解决数据、模型和任务上的差异,成功地在有效性、效率和迁移能力上取得明显改进和突破。此外,该方法的普适性也很强,可以广泛应用于各类检测器和骨干网络。这可以说是一个具有重要意义的里程碑性工作。
但是,这篇论文也存在一些可以改进的地方。比如Box-domain预训练目前需要依赖选择性搜索生成伪标签,这可能会带来一定局限性,我们可以探索端到端的无监督框检测方法来获得proposal。此外,当前方法主要在COCO数据集验证,可以考虑在更多检测数据集和场景下进行评估。
展望未来,这项工作为目标检测的预训练研究打开了新的大门。我们可以基于该框架,继续探索无监督、弱监督proposal生成和Box-domain预训练技术,以进一步降低人工标注和计算成本。另一方面,如何将该框架扩展到其他密集预测任务也是一个有趣的方向。总之,这项工作为更好地解决预训练与下游任务的不一致提供了重要启发,是目标检测和计算机视觉领域一个高质量的工作。
在这里插入图片描述

从表1可以看出,AlignDet与其他目标检测预训练方法的主要区别在于:
数据方面:AlignDet不仅适用于单对象的数据集,也能够在多对象的数据集上进行预训练,更贴近下游任务。
模型方面:AlignDet可以预训练检测模型中的所有模块,而不仅是骨干网络,确保各模块初始化良好。
任务方面:AlignDet同时引入了分类和回归两种预训练任务,学习语义和坐标信息,更符合目标检测的需求。
效果方面:AlignDet对各类检测器都能取得显著提升,展示了更强的普适性。
效率方面:AlignDet只需要12个epoch在COCO上预训练即可取得稳定收益,训练时间上也更为高效。
创新方面:AlignDet支持各类检测器的完全自监督预训练,是第一个实现这一目标的方法。
综上所述,AlignDet相比其他方法更充分地解决了预训练和微调过程中的数据、模型和任务差异,使检测器获得了显著和一致的性能改进。这说明了AlignDet的有效性、普适性以及创新性。
在这里插入图片描述

结 论

总结而言,这篇题为“AlignDet: Aligning Pre-training and Fine-tuning for Object Detection”的论文研究了目标检测中预训练和微调过程中的数据、模型和任务不一致性问题。论文指出现有预训练范式存在上述三方面差异,导致检测性能受限、泛化能力差且收敛速度慢。为解决这一问题,论文提出了AlignDet框架,可以适配各种检测器以弥合预训练和微调的差异。该框架分为Image-domain预训练提取语义特征和Box-domain预训练学习实例级语义与任务感知先验。实验结果展示,AlignDet可以显著提升各类检测器在不同数据量、训练策略及迁移学习下的性能。例如在COCO上12轮预训练,FCOS精度提升5.3 mAP,Mask R-CNN提升3.3 mAP。可以说AlignDet是第一个支持各类检测器完全自监督预训练的框架,对推进目标检测预训练研究具有重要意义。总之,本论文不仅指出了目标检测中存在的预训练与微调不一致性问题,也设计了AlignDet框架进行有效的检测导向预训练,为该领域的研究做出了重要贡献。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/863556.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kafka的下载和安装

一、Kafka下载和安装 下载地址:https://kafka.apache.org/downloads 下载完毕解压即可 linux解压命令tar -zxvf kafka_2.13-3.5.1.tgz,linux环境下指令是在\kafka_2.13-3.5.1\bin目录。 windows直接解压即可,windows环境下指令是在kafka_2.…

centos7 安装 docker 不能看菜鸟教程的 docker 安装,有坑

特别注意 不能看菜鸟教程的 docker 安装,有坑 如果机器不能直接上网,先配置 yum 代理 proxyhttp://172.16.0.11:8443 配置文件修改后即刻生效,再执行 yum install 等命令,就可以正常安装软件了。 参考 https://blog.csdn.net/c…

倒计时 1 天!浙江大学、乘云数字、阿里云等多位技术专家教授解读最新运维技术

莫听监控繁杂声,何妨观测且徐行; 智能诊断快胜马,一键运维定乾坤。 各位朋友们,距离系统运维 MeetUp 开始只剩 2 天!此次 MeetUp 将围绕 Linux 的应用和系统可观测,eBPF 跟踪以及诊断技术等系统运维热门话…

ApiPost的使用

1. 设计接口 请求参数的介绍 Query:相当于get请求,写的参数在地址栏中可以看到 Body: 相当于 post请求,请求参数不在地址栏中显示。 请求表单类型,用form-data json文件类型,用row 2. 预期响应期望 设置完每一项点一下生成响应…

C#质检工具(StyleCop、SonarLint)

1、StyleCop StyleCop工具主要类似java中的checkStyle,是检查代码样式规范的工具。 1.1、StyleCop安装流程: 图1.1 图1.2 图1.3 安装StyleCop插件时可能会遇到下载特慢或卡住不动的情况,需注意: 1)网上说的关闭IPV6功能不管用 2)网上说的自动指定dns不管用 3)网上…

ip地址怎么改 手机ip地址怎么修改

IP地址是指互联网协议地址,是给互联网上的每台设备分配的一个唯一的标识符。改变IP地址是在一定的条件下,为了实现一些特定的目的而对设备的网络配置进行调整。下面将介绍一些常见的改变IP地址的方法。我们可以通过重启路由器或者计算机来更改IP地址。在…

域名配置HTTPS

一、注册域名 这个可以在各大平台注册,具体看一下就会注册了,自己挑选一个自己喜欢的域名。 步骤一般也就是先实名,实名成功了才能注册域名。 二、办理SSL证书 这里使用的是阿里云的SSL免费证书 1、申请证书 二、填写申请 三、域名绑定生…

vue elementui v-for 循环el-table-column 第一列数据变到最后一个

这个动态渲染table表格时发现el-table-column 第一列数据变到最后一个 序号被排到后面 代码 修改后 <el-table:data"tableData"tooltip-effect"dark"style"width: 100%"height"500"><template v-for"(item, index) i…

【计算机网络】应用层协议Https

文章目录 前言Http加密方法对称加密非对称加密数据摘要&#xff08;数据指纹&#xff09;数字签名 加密方案只使用对称加密只使用非对称加密双方都使用非对称加密对称非对称 证书 前言 上一篇文章中&#xff0c;我们提到http是不安全的&#xff0c;尽管采用了cookie和session的…

数字电路 || 逻辑代数基础

逻辑函数和最小项 最大项和最小项 Tips&#xff1a;最小项的反是最大项&#xff0c;最大项的反是最小项。即&#xff0c; 计算题&#xff0c;分清与或式/或与式 转换关系 卡诺图 A是高位&#xff0c;BC是低位 在卡诺图上合并最小项&#xff1a;圈要少、圈最大&#xff0…

【word密码】Word编辑权限,如何设置?

Word文档可以设置加密来保护文件禁止修改&#xff0c;但是在word文档中设置限制编辑功能时对它的作用是否有详细的了解呢&#xff1f;今天为大家介绍word限制编辑功能的作用以及忘记了限制编辑密码该如何解决。 设置限制大家应该都清楚&#xff0c;就是点击工具栏中的审阅 – …

手机录音转文字让你工作更轻松

你是否经常需要把一段重要的录音转换成文字&#xff0c;但又不想手动去打字&#xff1f;现在&#xff0c;有许多手机软件可以帮助你实现这个目标&#xff0c;但面对如此多的选择&#xff0c;你可能会感到不知所措。不要担心&#xff0c;如果你还不知道录音转文字手机软件哪个好…

日常BUG ——乱码

&#x1f61c;作 者&#xff1a;是江迪呀✒️本文关键词&#xff1a;日常BUG、BUG、问题分析☀️每日 一言 &#xff1a;存在错误说明你在进步&#xff01; 一、问题描述 A系统使用Feign调用B系统时&#xff0c;传递的String字符串&#xff0c;到了B系统中变为了乱…

java 文件/文件夹复制,添加压缩zip

复制文件夹,并压缩成zip 需求&#xff1a;创建A文件夹&#xff0c;把B文件夹复制到A文件夹。然后把A文件夹压缩成zip包 public static void main(String[] args) throws Exception {try {String A "D:\\dev\\program";String B "D:\\program";// 创建临…

记录一下shardingsphere-jdbc查询分表使用union all的低级错误

使用shardingsphere-jdbc查询犯的低级错误&#xff0c;union all 字段没对齐&#xff0c;导致分片值有空值或数据不对&#xff0c;分片结果不对 有个数据同步的功能&#xff0c;对应的表使用到了shardingsphere-jdbc进行分表&#xff0c;所以想着是用shardingsphere-jdbc取数据…

华为Mate30报名鸿蒙 HarmonyOS 4.0.0.108 系统更新

华为 Mate 30 系列于 2019 年 11 月 1 日上市&#xff0c;包括 Mate 30 4G / 5G、Mate 30 Pro 4G / 5G、保时捷设计版 Mate30 共五款机型。华为 Mate 30 系列 5G 版搭载麒麟 990 5G 处理器&#xff0c;同时支持 SA 及 NSA 5G 双模&#xff0c;适配三大运营商的 5G / 4G / 3G / …

Vue3 :组合式写法入门

Vue3 &#xff1a;组合式写法入门 Date: May 11, 2023 Sum: 使用create-vue搭建Vue3项目、组合式API - setup、reactive和ref、computed、watch、生命周期函数、父子通信、模版引用、provide/inject 认识Vue3 1. Vue3组合式API体验 通过 Counter 案例 体验Vue3新引入的组合式…

回顾5款实用小软件,希望大家能够喜欢

我喜欢分享好软件,这就像与老友聊天一样让我感到快乐。在这个过程中,我可以回顾这些实用的小工具,也希望它们可以帮助到更多人。 稍后阅读工具——Pocket Pocket是一个非常好用的文章保存工具,它可以让你保存感兴趣的文章或网页,稍后在任何设备上进行离线阅读。无论你在电脑或…

活动预告|聊聊Moonbeam治理和生态Grants

为Web3设计良好的治理机制是一项具有挑战性的任务。去中心化治理系统对于Web3的发展至关重要。高效运行的治理机制有助于项目的稳定运行&#xff0c;同时又能提升社区用户的参与度&#xff0c;Web3开发者的凝聚力和活跃度&#xff0c;甚至促进更多创新的商业应用在公链生态落地…

pycharm中配置conda

安装好pycharm和conda后&#xff0c;打开pycharm&#xff1a;