【DN-DETR论文阅读】:基于查询去噪的DETR训练加速范式,从根源解决双边匹配不稳定问题
论文信息标题DN-DETR: Accelerate DETR Training by Introducing Query Denoising会议CVPR 2022 (Oral)单位香港科技大学、清华大学、IDEA研究院代码github.com/IDEA-Research/DN-DETR论文https://arxiv.org/pdf/2203.01305.pdf一、引言DETR训练为什么慢得让人崩溃DETR凭借端到端、无Anchor、无NMS的极简检测范式封神但它有个致命缺陷训练收敛极慢常规需要500轮才能达到稳定性能是Faster R-CNN的10倍以上。过往工作都把锅甩给交叉注意力效率低查询没有显式空间先验多尺度特征缺失但本文直接戳穿真相DETR收敛慢的核心元凶是——双边匹配匈牙利算法不稳定早期训练中同一查询在不同轮次会被分配给不同GT优化目标持续跳变模型根本学不动。于是DN-DETR提出查询去噪训练Denoising Training把带噪声的真实框直接作为辅助查询送入解码器让模型学习“去噪还原真值”绕过不稳定的双边匹配最终效果✅ 训练收敛速度提升1倍50轮 原版100轮✅ COCO数据集**1.9 AP**巨大涨点✅ 12轮训练达到46.0 AP50轮达到49.5 AP✅ 即插即用兼容所有DETR变体Deformable/Anchor/DAB等✅ 还能用于分割、3D检测、追踪等所有集合预测任务二、核心动机双边匹配的“不稳定性”毒瘤2.1 什么是匹配不稳定DETR通过匈牙利算法把查询和真值做一对一匹配但这个过程天生不稳定成本矩阵微小变化 → 匹配结果剧烈跳变查询的优化目标频繁改变 → 梯度混乱早期训练尤为严重 → 收敛极慢2.2 量化指标匹配不稳定性 IS本文首次定义不稳定性得分 ISIS1N∑i1N∑j1M1(Vji≠Vji−1)IS \frac{1}{N}\sum_{i1}^{N}\sum_{j1}^{M}\boldsymbol{1}(V_j^i \neq V_j^{i-1})ISN1∑i1N∑j1M1(VjiVji−1)符号解释ISISIS不稳定性得分越高越不稳定NNN图像数量MMM查询数量VjiV_j^iVji第iii轮第jjj个查询的匹配结果1(⋅)\boldsymbol{1}(\cdot)1(⋅)指示函数成立为1否则为0通俗解释统计前后两轮之间有多少查询的匹配目标发生了“跳变”。2.3 可视化证据不稳定性对比图DAB-DETR 和 DN-DETR 在训练过程中的 IS 值。对于每种方法我们在相同的设置下进行 12 个周期的训练。我们通过在验证集上测试每两个周期之间匈牙利匹配的变化来计算 IS 值。曲线含义蓝色DAB-DETR基线橙色DN-DETR本文方法横轴训练轮数Epoch纵轴不稳定性得分IS图片分析DN-DETR的IS曲线全程显著低于基线证明去噪训练大幅降低了双边匹配的不稳定性让查询优化目标更稳定。三、核心原理查询去噪到底怎么做3.1 总体思想在标准DETR训练基础上额外加入一批“带噪声的真值查询”从真值框构造带噪声的查询送入解码器做去噪还原真值去噪损失直接监督不经过双边匹配主任务依旧使用匈牙利损失推理时丢弃所有去噪查询完全不影响速度一句话总结用简单的去噪任务“带路”让模型先学会框回归再去做困难的双边匹配。3.2 去噪查询构造对真值框(x,y,w,h)(x,y,w,h)(x,y,w,h)加入随机噪声xnoisedxδxx^{noised} x \delta_xxnoisedxδxynoisedyδyy^{noised} y \delta_yynoisedyδywnoisedw⋅δww^{noised} w \cdot \delta_wwnoisedw⋅δwhnoisedh⋅δhh^{noised} h \cdot \delta_hhnoisedh⋅δh符号解释x,yx,yx,y真值框中心坐标w,hw,hw,h真值框宽高δx,δy\delta_x,\delta_yδx,δy高斯噪声δw,δh\delta_w,\delta_hδw,δh缩放噪声同时对类别标签也加入噪声实现分类回归联合去噪。3.3 双重查询设计解码器接收两类查询标准查询正常可学习查询匈牙利损失监督去噪查询带噪声真值构造去噪损失监督并使用注意力掩码隔离两类查询互不干扰。3.4 总损失函数LtotalLhungλ⋅Ldn\mathcal{L}_{total} \mathcal{L}_{hung} \lambda \cdot \mathcal{L}_{dn}LtotalLhungλ⋅Ldn符号解释Lhung\mathcal{L}_{hung}Lhung标准匈牙利损失Ldn\mathcal{L}_{dn}Ldn去噪损失分类回归λ\lambdaλ损失权重通常取1四、核心创新点全文精读总结创新1提出查询去噪训练范式首次将去噪思想引入DETR训练用辅助去噪任务稳定双边匹配加速收敛。创新2分类回归联合去噪同时对框坐标类别标签加噪并还原提供全维度强监督。创新3注意力掩码隔离查询主查询与去噪查询互不干扰保证去噪只辅助不破坏主任务。创新4零推理开销训练用去噪查询推理直接丢弃速度、结构、部署完全不变。创新5极致通用兼容所有DETR变体还能用于分割、追踪、3D检测等。五、核心代码PyTorch官方风格# # DN-DETR 核心去噪查询构造# defgenerate_denoising_queries(gt_boxes,gt_labels,noise_scale0.2): 输入真值框、真值标签 输出带噪声的去噪查询、去噪目标、注意力掩码 # 1. 坐标加噪noisetorch.randn_like(gt_boxes)*noise_scale noised_boxesgt_boxesnoise noised_boxesbox_clip(noised_boxes)# 2. 标签加噪noised_labelsgt_labels.clone()ifrandom.random()0.1:noised_labelstorch.randint_like(noised_labels,0,91)# 3. 生成注意力掩码去噪查询只看自己不干扰主查询dn_masktorch.ones(len(noised_boxes),len(noised_boxes))returnnoised_boxes,noised_labels,dn_mask# # 去噪损失计算# defdenoising_loss(pred_boxes,pred_logits,gt_boxes,gt_labels):# 回归L1GIoU损失loss_boxgiou_loss(pred_boxes,gt_boxes)l1_loss(pred_boxes,gt_boxes)# 分类交叉熵损失loss_clscross_entropy(pred_logits,gt_labels)returnloss_boxloss_cls六、实验结果与深度分析6.1 主实验结果COCO val2017模型训练轮数APAP50AP75DAB-DETR1244.162.347.3DN-DAB-DETR1246.064.649.6DAB-DETR5047.665.550.8DN-DAB-DETR5049.567.252.7表格1来自原文Table 1实验分析12轮1.9 AP超级涨点50轮1.9 AP持续涨点小/中/大目标全面提升6.2 收敛速度对比我们基于变形式 DETR 并采用去噪训练构建的模型 DN-可变形-DETR 与基于 ResNet-50 骨干网络的先前模型之间的收敛曲线。曲线含义下方曲线DAB-DETR上方曲线DN-DAB-DETR图片分析DN-DETR收敛速度大幅领先50轮效果超过基线100轮训练成本减半。6.3 锚框-目标距离对比DAB-DETR 与 DN-DETR 在锚点与目标距离方面的对比。纵轴查询锚框与真值框的平均距离图片分析DN-DETR的距离全程更小证明查询能更快定位到目标位置。6.4 通用性实验表格2来自原文Table 8模型基线APDN后AP提升Deformable DETR45.347.01.7Vanilla DETR42.043.61.6Anchor DETR43.545.11.6Mask2Former48.750.11.4实验分析DN-DETR是通用训练插件所有DETR类模型、分割模型全涨点。七、全文总结最精炼5句话根源DETR训练慢 双边匹配不稳定查询优化目标跳变方案加入去噪查询学习从噪声还原真值绕过不稳定匹配结构主查询 去噪查询掩码隔离双重损失监督效果收敛加速1倍1.9 AP零推理开销价值工业落地必备成为DINO、MaskDINO、GroupDETR等SOTA的基础模块DN-DETR是DETR训练方式的革命性改进用最简单的去噪思想解决了最核心的匹配不稳定难题。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2589503.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!