【论文精读】Deformable DETR:用于端到端目标检测的可变形 Transformer

发布于:2025-03-12 ⋅ 阅读:(13) ⋅ 点赞:(0)

论文地址:DEFORMABLE DETR: DEFORMABLE TRANSFORMERS FOR END-TO-END OBJECT DETECTION

源代码:Deformable-DETR

摘要

        DETR 最近被提出用于消除目标检测中许多手工设计组件的需求,同时展示了良好的性能。然而,它存在收敛速度慢和特征空间分辨率有限的问题,这主要是由于 Transformer 注意力模块在处理图像特征图时的局限性。为了解决这些问题,我们提出了 Deformable DETR,其注意力模块仅关注参考点周围的少量关键采样点。Deformable DETR 能够在比 DETR 少 10 倍的训练周期内实现更好的性能(尤其是在小目标上)。在 COCO 基准测试上的大量实验验证了我们方法的有效性。

引言

        现代目标检测器使用了许多手工设计的组件(Liu et al., 2020),例如锚点生成、基于规则的训练目标分配以及NMS后处理。这些检测器并不是完全端到端的。最近,Carion et al. (2020) 提出了 DETR,消除了对手工设计组件的需求,并构建了第一个完全端到端的目标检测器,展现出极具竞争力的性能。DETR 采用简单的架构,结合了卷积神经网络(CNN)和 Transformer 编码器-解码器(Vaswani et al., 2017)。它利用 Transformer 强大的关系建模能力来替代手工设计的规则,同时在适当设计的训练信号下实现这一目标。

        尽管 DETR 的设计有趣且性能良好,但它也存在一些问题:(1)与现有的目标检测器相比,它需要更长的训练周期才能收敛。例如,在 COCO(Lin et al., 2014)基准测试中,DETR 需要 500 个训练周期才能收敛,这比 Faster R-CNN(Ren et al., 2015)慢了大约 10 到 20 倍。(2)DETR 在检测小目标时的性能相对较低。现代目标检测器通常利用多尺度特征,其中小目标通过高分辨率特征图进行检测。然而,高分辨率特征图会导致 DETR 的计算复杂度难以接受。上述问题主要归因于 Transformer 组件在处理图像特征图时的不足。在初始化时,注意力模块会对特征图中的所有像素分配几乎均匀的注意力权重。需要经过长时间的训练,注意力权重才能学会聚焦于稀疏且有意义的位置。另一方面,Transformer 编码器中的注意力权重计算与像素数量呈二次方关系。因此,处理高分辨率特征图的计算和内存复杂度极高。

        在图像领域,可变形卷积(Dai et al., 2017)是一种强大且高效的机制,用于关注稀疏的空间位置。它自然地避免了上述问题。然而,它缺乏关系建模机制,而这是 DETR 成功的关键。

        在本文中,我们提出了 Deformable DETR,以缓解 DETR 的收敛速度慢和复杂度高的问题。它结合了可变形卷积的稀疏空间采样优势和 Transformer 的关系建模能力。我们提出了可变形注意力模块,该模块仅关注少量采样位置,作为从所有特征图像素中筛选出关键元素的预过滤器。该模块可以自然扩展到聚合多尺度特征,而无需借助特征金字塔网络(FPN)(Lin et al., 2017a)。在 Deformable DETR 中,我们用(多尺度)可变形注意力模块替换了处理特征图的 Transformer 注意力模块,如图 1 所示。

        Deformable DETR 为探索端到端目标检测器的各种变体提供了可能,这得益于其快速收敛以及计算和内存效率。我们探索了一种简单而有效的迭代边界框细化机制,以提高检测性能。我们还尝试了两阶段的 Deformable DETR,其中区域提议也由 Deformable DETR 的变体生成,并进一步输入到解码器中进行迭代边界框细化。

        在 COCO(Lin et al., 2014)基准测试上的大量实验验证了我们方法的有效性。与 DETR 相比,Deformable DETR 可以在少 10 倍的训练周期内实现更好的性能(尤其是在小目标上)。我们提出的两阶段 Deformable DETR 变体可以进一步提高性能。

2 相关工作

高效注意力机制。 Transformer(Vaswani et al., 2017)包含自注意力和交叉注意力机制。Transformer 最为人熟知的问题之一是其在处理大量关键元素时的时间和内存复杂度较高,这在许多情况下限制了模型的可扩展性。最近,许多研究致力于解决这一问题(Tay et al., 2020b),这些研究大致可以分为以下三类。

第一类是使用预定义的稀疏注意力模式对关键元素进行处理。最直接的方法是将注意力模式限制为固定的局部窗口。大多数工作(Liu et al., 2018a; Parmar et al., 2018; Child et al., 2019; Huang et al., 2019; Ho et al., 2019; Wang et al., 2020a; Hu et al., 2019; Ramachandran et al., 2019; Qiu et al., 2019; Beltagy et al., 2020; Ainslie et al., 2020; Zaheer et al., 2020)都遵循这一范式。尽管将注意力模式限制在局部邻域可以降低复杂度,但这种方法会丢失全局信息。为了弥补这一点,Child et al. (2019); Huang et al. (2019); Ho et al. (2019); Wang et al. (2020a) 以固定间隔关注关键元素,以显著增加关键元素的接收场。Beltagy et al. (2020); Ainslie et al. (2020); Zaheer et al. (2020) 允许少量特殊标记访问所有关键元素。Zaheer et al. (2020); Qiu et al. (2019) 还添加了一些预定义的稀疏注意力模式,以便直接关注远处的关键元素。

第二类是学习数据依赖的稀疏注意力。Kitaev et al. (2020) 提出了一种基于局部敏感哈希(LSH)的注意力机制,该机制将查询和关键元素分别哈希到不同的桶中。Roy et al. (2020) 提出了一个类似的想法,通过 k-means 找出最相关的关键元素。Tay et al. (2020a) 学习块排列以实现块稀疏注意力。

第三类是探索自注意力中的低秩特性。Wang et al. (2020b) 通过在线性投影中减少关键元素的数量来降低复杂度,而不是在通道维度上进行操作。Katharopoulos et al. (2020); Choromanski et al. (2020) 通过核化近似重写了自注意力的计算。

在图像领域,高效注意力机制的设计(例如 Parmar et al., 2018; Child et al., 2019; Huang et al., 2019; Ho et al., 2019; Wang et al., 2020a; Hu et al., 2019; Ramachandran et al., 2019)仍然局限于第一类。尽管理论上复杂度有所降低,但 Ramachandran et al. (2019); Hu et al. (2019) 承认,由于内存访问模式的内在限制,这些方法在实现时比传统卷积慢得多(至少慢 3 倍),即使它们的浮点运算量(FLOPs)相同。

另一方面,如 Zhu et al. (2019a) 所讨论的,卷积的变体(例如可变形卷积(Dai et al., 2017; Zhu et al., 2019b)和动态卷积(Wu et al., 2019))也可以被视为一种自注意力机制。特别是,可变形卷积在图像识别中比 Transformer 自注意力运行得更高效,但它缺乏元素关系建模机制。

我们提出的可变形注意力模块受到可变形卷积的启发,属于第二类。它仅关注从查询元素特征中预测出的少量固定采样点。与 Ramachandran et al. (2019); Hu et al. (2019) 不同,可变形注意力在相同 FLOPs 下仅比传统卷积稍慢。

多尺度特征表示用于目标检测。 目标检测的一个主要困难是如何有效地表示不同尺度的目标。现代目标检测器通常利用多尺度特征来解决这一问题。作为开创性工作之一,特征金字塔网络(FPN)(Lin et al., 2017a)提出了一个自顶向下的路径来组合多尺度特征。PANet(Liu et al., 2018b)进一步在 FPN 的基础上增加了自底向上的路径。Kong et al. (2018) 通过全局注意力操作将所有尺度的特征结合起来。Zhao et al. (2019) 提出了一个 U 形模块来融合多尺度特征。最近,NAS-FPN(Ghiasi et al., 2019)和 Auto-FPN(Xu et al., 2019)通过神经架构搜索自动设计跨尺度连接。Tan et al. (2020) 提出了 BiFPN,这是 PANet 的一个简化版本。我们提出的多尺度可变形注意力模块可以通过注意力机制自然地聚合多尺度特征图,而无需借助这些特征金字塔网络。

3 重温 Transformer 和 DETR

Transformer 中的多头注意力机制。 Transformer(Vaswani et al., 2017)是一种基于注意力机制的网络架构,用于机器翻译。给定一个查询元素(例如输出句子中的目标单词)和一组关键元素(例如输入句子中的源单词),多头注意力模块会根据衡量查询-关键元素对兼容性的注意力权重,自适应地聚合关键内容。为了使模型能够关注来自不同表示子空间和不同位置的内容,不同注意力头的输出会通过可学习的权重进行线性聚合。假设索引一个查询元素,其表示特征为,而索引一个关键元素,其表示特征为 ,其中 C 是特征维度, 分别指定查询和关键元素的集合。那么多头注意力特征的计算公式为:

其中 m 索引注意力头,和 Wm​∈RC×Cv​ 是可学习的权重。注意力权重 经过归一化处理,使得 ,其中 也是可学习的权重。为了区分不同的空间位置,表示特征 通常是元素内容和位置嵌入的拼接/求和。

Transformer 存在两个已知问题。第一个问题是 Transformer 需要较长的训练时间才能收敛。假设查询和关键元素的数量分别为​,在适当的参数初始化下,的分布均值为 0,方差为 1,这使得当 很大时,注意力权重 。这会导致输入特征的梯度模糊,因此需要较长的训练时间,以便注意力权重能够聚焦于特定的关键元素。在图像领域,关键元素通常是图像像素, 可能非常大,因此收敛过程非常缓慢。

另一方面,当查询和关键元素数量较多时,多头注意力的计算和内存复杂度可能非常高。公式(1)的计算复杂度为。在图像领域,查询和关键元素都是像素,,复杂度主要由第三项主导,即。因此,多头注意力模块的复杂度随着特征图尺寸呈二次方增长。

DETR。 DETR(Carion et al., 2020)基于 Transformer 编码器-解码器架构构建,并结合了一种基于集合的匈牙利损失函数,该函数通过二分图匹配强制为每个真实边界框生成唯一的预测结果。我们简要回顾其网络架构如下。

给定由 CNN 主干网络(例如 ResNet(He et al., 2016))提取的输入特征图,DETR 利用标准的 Transformer 编码器-解码器架构将输入特征图转换为目标查询的特征集合。在解码器的输出上添加了一个 3 层前馈神经网络(FFN)和一个线性投影,作为检测头。FFN 作为回归分支,用于预测归一化的边界框坐标,其中表示边界框中心的归一化坐标、边界框的高和宽(相对于图像尺寸)。线性投影作为分类分支,用于生成分类结果。

对于 DETR 中的 Transformer 编码器,查询和关键元素都是特征图中的像素。输入为带有位置嵌入的 ResNet 特征图。假设 H 和 W 分别表示特征图的高度和宽度,编码器中自注意力的计算复杂度为,随着空间尺寸呈二次方增长。

对于 DETR 中的 Transformer 解码器,输入包括编码器输出的特征图以及 N 个目标查询(由可学习的位置嵌入表示,例如 N=100)。解码器中有两种类型的注意力模块:交叉注意力和自注意力模块。在交叉注意力模块中,目标查询从特征图中提取特征。查询元素是目标查询,关键元素是编码器输出的特征图。在这种情况下,,交叉注意力的复杂度为 。复杂度随着特征图的空间尺寸线性增长。在自注意力模块中,目标查询相互交互,以捕获它们之间的关系。查询和关键元素都是目标查询。在这种情况下,,自注意力模块的复杂度为 。当目标查询的数量适中时,这种复杂度是可以接受的。

DETR 是一种吸引人的目标检测设计,它消除了对手工设计组件的需求。然而,它也存在一些问题,这些问题主要归因于 Transformer 注意力在处理图像特征图作为关键元素时的不足:(1)DETR 在检测小目标时的性能相对较低。现代目标检测器使用高分辨率特征图来更好地检测小目标。然而,高分辨率特征图会导致 DETR 中 Transformer 编码器的自注意力模块复杂度不可接受,因为其复杂度与输入特征图的空间尺寸呈二次方关系。(2)与现代目标检测器相比,DETR 需要更多的训练周期才能收敛。这主要是因为处理图像特征的注意力模块难以训练。例如,在初始化时,交叉注意力模块几乎对整个特征图进行平均注意力分配,而在训练结束时,注意力图被训练成非常稀疏的,仅聚焦于目标的边缘。似乎 DETR 需要较长的训练时间来学习注意力图的这种显著变化。

4 方法

4.1 用于端到端目标检测的可变形 Transformer

可变形注意力模块。 将 Transformer 注意力应用于图像特征图的核心问题是它会查看所有可能的空间位置。为了解决这一问题,我们提出了可变形注意力模块。该模块受到可变形卷积(Dai et al., 2017; Zhu et al., 2019b)的启发,仅关注参考点周围的少量关键采样点,而与特征图的空间尺寸无关,如图 2 所示。通过为每个查询仅分配少量固定数量的关键点,可以缓解收敛速度慢和特征空间分辨率有限的问题。

给定输入特征图 ,假设 q 索引一个查询元素,其内容特征为 z_{q},2D 参考点为 p_{q},可变形注意力特征的计算公式为:

 其中 m 索引注意力头,k 索引采样的关键点,K 是采样关键点的总数(K≪HW)。​ 和 分别表示第 m 个注意力头中第 k 个采样点的采样偏移量和注意力权重。标量注意力权重 的取值范围为 [0,1],并满足归一化条件是二维实数,其取值范围不受限制。由于是分数坐标,因此在计算时采用双线性插值,与 Dai et al. (2017) 中的方法一致。均通过查询特征 z_{q}的线性投影获得。在实现中,查询特征z_{q}输入到一个 3MK 通道的线性投影算子中,其中前 2MK 通道编码采样偏移量​,其余 MK 通道通过 softmax 操作获得注意力权重​。

可变形注意力模块旨在处理卷积特征图作为关键元素。假设查询元素的数量为N_{q},当 MK 相对较小时,可变形注意力模块的复杂度为(详细信息见附录 A.1)。当应用于 DETR 编码器时,,复杂度变为,与空间尺寸呈线性关系。当应用于 DETR 解码器中的交叉注意力模块时,(N 是目标查询的数量),复杂度变为,与空间尺寸 HW 无关。

多尺度可变形注意力模块。 大多数现代目标检测框架受益于多尺度特征图(Liu et al., 2020)。我们提出的可变形注意力模块可以自然扩展到多尺度特征图。

假设是输入的多尺度特征图,其中​。假设是每个查询元素 q 的归一化坐标,则多尺度可变形注意力模块的计算公式为:

其中 m 索引注意力头,l 索引输入特征级别,k 索引采样点。分别表示第 l 级特征图中第 m 个注意力头的第 k 个采样点的采样偏移量和注意力权重。标量注意力权重满足归一化条件。这里,我们使用归一化坐标以清晰表示尺度公式,其中坐标 (0, 0) 和 (1, 1) 分别表示图像的左上角和右下角。函数在公式 3 中将归一化坐标转换为第 l 级输入特征图的坐标。多尺度可变形注意力模块与单尺度版本非常相似,区别在于它从多尺度特征图中采样 LK 个点,而不是从单尺度特征图中采样 K 个点。 

当 L=1,K=1,且为单位矩阵时,我们提出的注意力模块退化为可变形卷积(Dai et al., 2017)。可变形卷积是为单尺度输入设计的,仅关注每个注意力头的一个采样点。然而,我们的多尺度可变形注意力模块会从多尺度输入中查看多个采样点。我们提出的(多尺度)可变形注意力模块也可以被视为 Transformer 注意力的高效变体,其中通过可变形采样位置引入了预筛选机制。当采样点覆盖所有可能的位置时,我们提出的注意力模块等同于 Transformer 注意力。

可变形 Transformer 编码器。 我们用提出的多尺度可变形注意力模块替换了 DETR 中处理特征图的 Transformer 注意力模块。编码器的输入和输出均为具有相同分辨率的多尺度特征图。在编码器中,我们从 ResNet(He et al., 2016)的 C3 至 C5 阶段提取多尺度特征图(通过 1×1 卷积转换),其中C_{l}的分辨率比输入图像低 2^{l}倍。通过在 C5 阶段的最终输出上应用 3×3、步长为 2 的卷积,获得最低分辨率的特征图x^{L}​,记为 C6。所有多尺度特征图的通道数均为 C=256。需要注意的是,我们没有使用 FPN(Lin et al., 2017a)中的自顶向下结构,因为我们的多尺度可变形注意力模块本身就可以在多尺度特征图之间交换信息。多尺度特征图的构建过程也在附录 A.2 中进行了说明。第 5.2 节的实验表明,添加 FPN 并不会提升性能。

在编码器中应用多尺度可变形注意力模块时,输出是与输入具有相同分辨率的多尺度特征图。关键元素和查询元素均为多尺度特征图中的像素。对于每个查询像素,参考点就是其自身。为了识别每个查询像素所在的特征级别,我们在特征表示中添加了一个尺度级别嵌入 e_{l},以及位置嵌入。与具有固定编码的位置嵌入不同,尺度级别嵌入是随机初始化的,并与网络一起联合训练。

可变形 Transformer 解码器。 解码器中包含交叉注意力和自注意力模块。两种注意力模块的查询元素均为目标查询。在交叉注意力模块中,目标查询从特征图中提取特征,其中关键元素是编码器输出的特征图。在自注意力模块中,目标查询相互交互,其中关键元素是目标查询本身。由于我们提出的可变形注意力模块是为处理卷积特征图作为关键元素而设计的,因此我们仅将交叉注意力模块替换为多尺度可变形注意力模块,而保留自注意力模块不变。

对于每个目标查询,参考点的二维归一化坐标通过其目标查询嵌入经由一个可学习的线性投影并结合 Sigmoid 函数预测得到。

由于多尺度可变形注意力模块提取的是参考点周围的图像特征,我们让检测头预测边界框为相对于参考点的偏移量,以进一步降低优化难度。参考点被用作边界框中心的初始猜测,检测头预测相对于参考点的偏移量。更多细节见附录 A.3。通过这种方式,学习到的解码器注意力与预测的边界框具有强相关性,这也加速了训练的收敛。

通过将 DETR 中的 Transformer 注意力模块替换为可变形注意力模块,我们建立了一个高效且快速收敛的检测系统,称为 Deformable DETR(见图 1)。

4.2 Deformable DETR 的额外改进和变体

由于 Deformable DETR 具有快速收敛以及计算和内存效率高的特点,它为探索端到端目标检测器的多种变体提供了可能性。由于篇幅有限,这里仅介绍这些改进和变体的核心思想,具体实现细节在附录 A.4 中给出。

迭代边界框细化。 这一机制受到光流估计中迭代细化(Teed & Deng, 2020)的启发。我们建立了一个简单而有效的迭代边界框细化机制,以提高检测性能。具体来说,每一层解码器都会根据前一层的预测结果对边界框进行细化。

两阶段 Deformable DETR。 在原始的 DETR 中,解码器中的目标查询与当前图像无关。受两阶段目标检测器的启发,我们探索了一种用于生成区域提议的 Deformable DETR 变体,作为第一阶段。生成的区域提议将被输入到解码器中作为目标查询,以进行进一步细化,形成两阶段 Deformable DETR。

在第一阶段,为了实现高召回率的提议,多尺度特征图中的每个像素都充当一个目标查询。然而,直接将目标查询设置为像素会为解码器中的自注意力模块带来不可接受的计算和内存成本,因为其复杂度与查询数量的平方成正比。为了避免这一问题,我们移除了解码器,形成了一个仅包含编码器的 Deformable DETR,用于区域提议生成。在这一阶段,每个像素都被分配为一个目标查询,直接预测一个边界框。选择得分最高的边界框作为区域提议。在将区域提议输入到第二阶段之前,不应用NMS。

5 EXPERIMENT

数据集 我们在 COCO 2017 数据集(Lin et al., 2014)上进行实验。模型在训练集上进行训练,并在验证集和测试开发集上进行评估。

实现细节 我们使用在 ImageNet(Deng et al., 2009)上预训练的 ResNet-50(He et al., 2016)作为主干网络进行消融实验。在不使用 FPN(Lin et al., 2017a)的情况下提取多尺度特征图。默认情况下,可变形注意力模块中注意力头的数量 M 设置为 8,采样点的数量 K 设置为 4。可变形 Transformer 编码器在不同特征级别上的参数是共享的。其他超参数设置和训练策略主要遵循 DETR(Carion et al., 2020),唯一的区别是使用了 Focal Loss(Lin et al., 2017b),其权重为 2,用于边界框分类,并且目标查询的数量从 100 增加到 300。我们还报告了在这些修改下 DETR-DC5 的性能,记作 DETR-DC5+。默认情况下,模型训练 50 个周期,并在第 40 个周期将学习率降低 0.1 倍。按照 DETR(Carion et al., 2020)的设置,我们使用 Adam 优化器(Kingma & Ba, 2015)进行模型训练,基础学习率为 2\times 10^{-4}\beta _{1}​=0.9,\beta _{2}=0.999,权重衰减为 10^{-4}。用于预测目标查询参考点和采样偏移量的线性投影的学习率乘以 0.1 的因子。运行时间在 NVIDIA Tesla V100 GPU 上进行评估。

5.1 与 DETR 的比较

如表 1 所示,与 Faster R-CNN + FPN 相比,DETR 需要更多的训练周期才能收敛,并且在检测小目标时性能较低。与 DETR 相比,Deformable DETR 在少 10 倍的训练周期内实现了更好的性能(尤其是在小目标上)。详细的收敛曲线如图 3 所示。借助迭代边界框细化和两阶段机制,我们的方法可以进一步提高检测精度。

我们提出的 Deformable DETR 的计算量与 Faster R-CNN + FPN 和 DETR-DC5 相当,但运行速度比 DETR-DC5 快 1.6 倍,仅比 Faster R-CNN + FPN 慢 25%。DETR-DC5 的速度问题主要是由于 Transformer 注意力模块中大量的内存访问。我们提出的可变形注意力模块可以缓解这一问题,但代价是无序的内存访问。因此,它的速度仍然略低于传统卷积。

 图 3:Deformable DETR 和 DETR-DC5 在 COCO 2017 验证集上的收敛曲线。对于 Deformable DETR,我们通过改变学习率降低的周期(即 AP 分数跳跃的位置)来探索不同的训练计划。

5.2 可变形注意力的消融研究

表 2 展示了可变形注意力模块不同设计选择的消融实验结果。使用多尺度输入代替单尺度输入可以有效提高检测精度,特别是在小目标上,APS 提高了 2.9%,整体 AP 提高了 1.7%。增加采样点的数量 K 可以进一步提高 0.9% 的 AP。使用多尺度可变形注意力(允许在不同尺度级别之间交换信息)可以额外提高 1.5% 的 AP。由于已经采用了跨尺度特征交换,因此添加 FPN 不会提升性能。当不使用多尺度注意力且 K=1 时,我们的(多尺度)可变形注意力模块退化为可变形卷积,其精度明显较低。

5.3 与最新方法的比较

表 3 比较了我们提出的方法与其他最新方法的性能。在我们的模型中,迭代边界框细化和两阶段机制都被使用。使用 ResNet-101 和 ResNeXt-101(Xie et al., 2017)作为主干网络时,我们的方法分别达到了 48.7 AP 和 49.0 AP,没有任何额外的技巧。通过使用 ResNeXt-101 和可变形卷积(DCN)(Zhu et al., 2019b),精度可以提高到 50.1 AP。在测试时使用水平翻转和多尺度测试等增强手段后,我们的方法达到了 52.3 AP。

6 结论 

Deformable DETR 是一种高效且快速收敛的端到端目标检测器。它使我们能够探索更多有趣且实用的端到端目标检测器变体。Deformable DETR 的核心是(多尺度)可变形注意力模块,这是一种在处理图像特征图时高效的注意力机制。我们希望我们的工作能够为端到端目标检测的进一步探索开辟新的可能性。

A 附录

A.1 可变形注意力的复杂度

假设查询元素的数量为 N_{q}​,在可变形注意力模块(见公式 2)中,计算采样坐标偏移量 和注意力权重 ​ 的复杂度为。给定采样坐标偏移量和注意力权重后,计算公式 2 的复杂度为,其中因子 5 来自双线性插值和注意力中的加权求和。另一方面,我们也可以在采样之前计算,因为它与查询无关,因此计算公式 2 的复杂度将变为 。因此,可变形注意力的整体复杂度为。在我们的实验中,默认情况下 M=8,K≤4,且 C=256,因此 5K+3MK<C,复杂度为

A.2 为 Deformable DETR 构建多尺度特征图

如第 4.1 节所述(并见图 4),编码器的输入多尺度特征图是从 ResNet(He et al., 2016)的 C3 至 C5 阶段的输出特征图中提取的(通过 1×1 卷积转换)。通过在最终的 C5 阶段应用 3×3、步长为 2 的卷积,获得最低分辨率的特征图 x^{L}。需要注意的是,我们没有使用 FPN(Lin et al., 2017a),因为我们的多尺度可变形注意力模块本身就可以在多尺度特征图之间交换信息。

A.3 Deformable DETR 中的边界框预测

由于多尺度可变形注意力模块提取的是参考点周围的图像特征,我们设计检测头以预测边界框为相对于参考点的偏移量,从而进一步降低优化难度。参考点被用作边界框中心的初始猜测,检测头预测相对于参考点的偏移量 ,其中 \mathbb{R} 是由检测头预测的值。σ 和 \sigma ^{-1} 分别表示 Sigmoid 函数及其反函数。使用 σ 和 \sigma ^{-1}的目的是确保 \widehat{b}是归一化坐标,即 。通过这种方式,学习到的解码器注意力与预测的边界框具有强相关性,这也加速了训练的收敛。

A.4 更多实现细节

迭代边界框细化 每个解码器层根据前一层的预测结果对边界框进行细化。假设解码器有 D 层(例如 D=6),给定第 (d−1) 层解码器预测的归一化边界框​,第 d 层解码器对边界框进行细化:

其中 是在第 d 层解码器中预测的值。不同解码器层的预测头不共享参数。初始边界框设置为系统对 的选择较为鲁棒。我们尝试了将它们设置为 0.05、0.1、0.2 和 0.5,结果相似。为了稳定训练,类似于 Teed & Deng (2020),梯度仅通过反向传播,而在 处被阻断。

在迭代边界框细化中,对于第 d 层解码器,我们根据第 (d−1) 层解码器预测的边界框采样关键元素。对于公式 3 中第 d 层解码器的交叉注意力模块, 作为新的参考点。采样偏移量 也根据边界框的大小进行调整,即。这些修改使得采样位置与之前预测的边界框的中心和大小相关。

两阶段 Deformable DETR 在第一阶段,给定编码器的输出特征图,对每个像素应用检测头。检测头由一个 3 层前馈网络(FFN)组成,用于边界框回归,以及一个线性投影用于边界框的二元分类(即前景和背景)。假设 i 索引来自特征级别的像素,其二维归一化坐标为,则对应的边界框预测为:

其中基础目标尺度 s 设置为 0.05,是由边界框回归分支预测的值。使用 DETR 中的匈牙利损失进行检测头的训练。

给定第一阶段预测的边界框,选择得分最高的边界框作为区域提议。在第二阶段,这些区域提议被输入到解码器中作为初始边界框进行迭代边界框细化,其中目标查询的位置嵌入设置为区域提议坐标的嵌入。

多尺度可变形注意力的初始化 在实验中,注意力头的数量设置为 M=8。在多尺度可变形注意力模块中,是随机初始化的。用于预测​ 和的线性投影的权重参数初始化为零。偏置参数初始化为使,且 在初始化时。

对于迭代边界框细化,解码器中用于预测​ 的偏置参数的初始值进一步乘以​,以确保所有采样点在初始化时都位于前一层解码器预测的边界框内。

A.5 Deformable DETR 关注了什么?

        为了研究 Deformable DETR 在最终检测结果中依赖哪些像素,我们绘制了最终预测中每个项目(即目标中心的 x/y 坐标、目标边界框的宽/高以及目标类别分数)相对于输入图像每个像素的梯度范数,如图 5 所示。根据泰勒定理,梯度范数可以反映输出相对于像素扰动的变化程度,因此它可以展示模型主要依赖哪些像素来进行每个项目的预测。

        图 5 的可视化结果表明,Deformable DETR 关注目标的极点来确定其边界框,这与 DETR(Carion et al., 2020)中的观察结果类似。具体来说,Deformable DETR 关注目标的左/右边界来预测 x 坐标和宽度,关注目标的上/下边界来预测 y 坐标和高度。与此同时,与 DETR(Carion et al., 2020)不同的是,我们的 Deformable DETR 还会关注目标内部的像素来预测其类别。

 图 5:输入图像 I 中每个像素相对于最终检测结果中每个项目(目标中心的坐标 x,y、目标边界框的宽/高 w,h 以及目标类别分数 c)的梯度范数。

A.6 多尺度可变形注意力的可视化

为了更好地理解学习到的多尺度可变形注意力模块,我们可视化了解码器最后一层的采样点和注意力权重,如图 6 所示。为了便于阅读,我们将来自不同分辨率特征图的采样点和注意力权重合并到一张图中。

  • 多尺度可变形自注意力(编码器):与 DETR(Carion et al., 2020)类似,Deformable DETR 的编码器已经能够区分不同的实例。编码器中的注意力模块通过多尺度特征图的采样点和权重分布,展示了模型如何关注不同尺度的特征来提取目标信息。

  • 多尺度可变形交叉注意力(解码器):与 DETR 不同,我们的模型不仅关注目标的极点(如边界框的边缘),还关注目标内部的像素,以确定目标的类别。这与 DETR 的行为有所不同,DETR 主要关注目标的极点来预测边界框。通过可视化​​(图 5 中目标类别分数相对于输入图像的梯度范数),我们可以推测 Deformable DETR 需要同时关注目标的极点和内部像素来确定目标类别。

  • 多尺度适应性:可视化结果还表明,提出的多尺度可变形注意力模块能够根据前景目标的不同尺度和形状自适应地调整采样点和注意力权重。这种自适应性使得模型在处理不同大小和形状的目标时更加灵活和高效。

图 6:多尺度可变形注意力的可视化。为了便于阅读,我们将不同分辨率特征图中的采样点和注意力权重绘制在同一张图中。每个采样点用一个实心圆表示,其颜色表示对应的注意力权重大小。参考点用绿色十字标记表示,在编码器中,它等同于查询点。在解码器中,预测的边界框用绿色矩形表示,类别和置信度分数显示在矩形上方。 

A.7 符号表


网站公告

今日签到

点亮在社区的每一天
去签到