扩散模型(DiffusionModel)。作为深度生成模型中的新SOTA,在图像生成任务上已经超越了原有的SOTA:例如GAN,在计算机视觉、NLP、分子图建模、时间序列建模等诸多应用领域都有着优异的表现等近日,香港大学罗平团队与腾讯AILab研究人员共同提出了一个新的框架DiffusionDet,将扩散模型应用于目标检测。据我们所知,还没有研究成功地将扩散模型应用于目标检测,可以说这是第一个使用扩散模型进行目标检测的工作。DiffusionDet的表现如何?在MS-COCO数据集上进行评估,使用ResNet-50作为主干,在单个采样步骤下,DiffusionDet达到45.5AP,明显优于FasterR-CNN(40.2AP)、DETR(42.0AP),并且使用SparseR-CNN(45.0AP)可比。通过增加采样步数,DiffusionDet性能进一步提高到46.2AP。此外,在LVIS数据集上,DiffusionDet也表现出色,使用swing-base作为主干实现了42.1AP。论文地址:https://arxiv.org/pdf/2211.09788.pdf项目地址https://github.com/ShoufaChen/DiffusionDet本研究发现传统的目标检测存在一个缺陷,即它们依赖于一组固定的可学习查询。然后研究人员想知道:是否有一种甚至不需要可学习查询的简单方法来进行对象检测?为了回答这个问题,本文提出了DiffusionDet,这是一个可以直接从一组随机框中检测对象的框架,它将对象检测表述为从噪声框到目标框的去噪扩散过程。这种噪声到框的方法不需要启发式对象先验,也不需要可学习的查询,这进一步简化了对象候选并改进了检测管道。如下图1所示,本研究认为noise-to-box范式类似于denoisingdiffusionmodel中的noise-to-image过程,是一种基于likelihood-based的模型,通过learned去噪模型。图像中的噪声以生成图像。DiffusionDet通过扩散模型解决目标检测任务,将检测看作是图像中边界框位置(中心坐标)和大小(宽高)空间中的生成任务。在训练阶段,将受时间表控制的高斯噪声添加到groundtruthbox中以获得噪声框。然后使用这些噪声框从骨干编码器(例如ResNet、SwinTransformer)的输出特征图中裁剪感兴趣区域(RoI)。最后,这些RoI特征被发送到检测解码器,该解码器被训练来预测无噪声的地面真值框。在推理阶段,DiffusionDet通过反转学习的扩散过程生成边界框,将噪声先验分布调整为边界框上的学习分布。方法概述由于扩散模型迭代生成数据样本,因此在推理阶段需要多次运行模型f_θ。然而,在每个迭代步骤中直接将f_θ应用于原始图像在计算上是困难的。因此,研究人员提出将整个模型分为两部分,图像编码器和检测解码器,前者只运行一次从原始输入图像x中提取深度特征表示,后者以这个深度特征为条件提取噪声帧逐渐细化z_t中的框预测。图像编码器将原始图像作为输入,并为检测解码器提取其高级特征。研究人员使用ResNet等卷积神经网络和Swin等基于Transformer的模型来实现DiffusionDet。同时,使用特征金字塔网络为ResNet和Swin主干网络生成多尺度特征图。detectiondecoder借鉴了SparseR-CNN,以一组proposalboxes作为输入,从imageencoder生成的featuremap中裁剪出RoI特征,送入detectionhead进行boxregression和classificationresults。此外,该检测解码器由6个级联级组成。训练在训练过程中,研究人员首先构建了一个从groundtruthboxes到noiseboxes的扩散过程,然后训练模型反转这个过程。下面的算法1提供了DiffusionDet训练过程的伪代码。真相箱已满。对于现代目标检测基准,有趣实例的数量通常因图像而异。因此,研究人员首先在原始的ground-truthboxes上填充一些额外的boxes,这样所有的boxes加起来就是一个固定数量的N_train。他们探索了几种填充策略,例如重复现有的真实框、连接随机框或图像大小的框。盒子损坏了。研究人员将高斯噪声添加到填充的地面实况框中。噪声尺度由下面等式(1)中的α_t控制,它在不同的时间步长t采用单调递减的余弦调度。训练损失。检测解码器将N_train损坏的框作为输入,并预测N_train预测以进行类别分类和框坐标。还对N_train预测集应用一组预测损失。InferenceDiffusionDet的推理过程是一个从噪声到目标框的去噪采样过程。从以高斯分布采样的框开始,该模型逐步完善其预测,如下面的算法2所示。采样步骤。在每个采样步骤中,来自前一个采样步骤的随机或估计框被发送到检测解码器以预测类分类和框坐标。得到当前步的box后,采用DDIM估计下一步的box。盒子更新。为了使推理与训练更好地一致,研究人员提出了一种框更新策略,通过用随机框替换它们来恢复意外框。具体来说,他们首先过滤掉分数低于某个阈值的意外框,然后将剩余的框与从高斯分布中采样的新随机框连接起来。一种解决方案(一劳永逸)。得益于随机盒设计,研究人员可以使用任意数量的随机盒和采样步骤来评估DiffusionDet。作为比较,以前的方法在训练和评估期间依赖于相同数量的处理帧,并且检测解码器仅在前向传递中使用一次。实验结果在实验部分,研究人员首先展示了DiffusionDet的Once-for-all特性,然后在MS-COCO和LVIS数据集上将DiffusionDet与之前成熟的检测器进行了比较。DiffusionDet的主要属性是对所有推理实例进行一次训练。模型训练好后,可用于更改推理中的框数和样本步数,如下图4所示。DiffusionDet可以通过使用更多的框或/和更多的细化步骤来实现更高的准确性,但代价是更高的延迟。因此,我们将单个DiffusionDet部署到多个场景,并在不重新训练网络的情况下获得所需的速度-精度权衡。研究人员在MS-COCO和LVIS数据集上将DiffusionDet与之前的检测器进行了比较,如下表1所示。他们首先将DiffusionDet的物体检测性能与之前在MS-COCO上的检测器进行了比较。结果表明,在没有细化步骤的情况下,DiffusionDet在ResNet-50主干网络上达到了45.5AP,大大超过了FasterR-CNN、RetinaNet、DETR和SparseR-CNN等之前的成熟方法。当主干网络的规模增加时,DiffusionDet显示出稳定的改进。在更具挑战性的LVIS数据集上的结果如下表2所示,从中可以看出DiffusionDet使用更多的细化步骤可以获得显着的收益。更多实验细节请参考原论文。
