Motivation & Intro
基于DETR的目标检测范式(语义分割的Maskformer也与之相似)通常会用到一系列固定的query,这些query是图像中目标对象位置和语义的全局先验。如果能够根据图像的语义信息调整query,就可以捕捉特定场景中物体位置和类别的分布。例如,当高级语义显示图像是一张合影时,我们就知道图像中会有一群人(类别),而且他们更有可能靠近图像中心(定位)。由于检测查询是隐含特征,与 DETR 框架中的具体位置和对象类别没有直接关系,因此很难设计一种机制来更改查询,同时将其保持在对模型有意义的 "查询 "子空间内。同时,作者通过实验观察到,query的凸组合能够达到与原始的query相同的性能表现。为此,作者提出了modulated queries,同时将生成的query限制在static query所构成的凸包中。
Method
Fixed Query Combination
作者首先讨论了fixed query combination,具体包含三种setting,分别为凸组合、非凸组合以及平均组合。首先将n个query分为m组,每组包含\(\frac{n}{m}=r\)个query。对于凸组合,首先 在[-1,1]随机采样r个值,对其softmax作为加权系数对r个query进行组合得到结果。对于非凸组合,其同样要求加权系数和为1,与凸组合的区别在于不要求每个加权系数都为正。
实验结果表明凸组合是除了baseline以外最优的。
Dynamic Query Combinations
本节作者探讨了如何找到一种方法学习query的动态组合以替代加权系数的随机初始化。一种想法是直接将送入decoder的特征过一个mlp得到query,但实验证明这种方式效果不佳。受到动态卷积的启发,作者提出了query modulation,引入了两种query:basic query \(Q^B\in \mathbb{R}^{n\times f}\)以及\(Q^M\in\mathbb{R}^{m\times f}\),之前的组合公式可以表示为:
其中\(W^D\in\mathbb{R}^{m\times r}\)是组合系数矩阵。为了满足query的组合是凸的,要求\(w_{ij}^D\geq0,\sum_{j=1}^rw_{ij}^D=1\)。每r个basic query组合为一个modulated query。系数矩阵\(W^D\)通过将输入特征送入一个小的网络学习得到:
其中\(\mathcal{A}\)是GAP,\(\theta\)是一个MLP,\(\sigma\)是softmax函数。在训练时,\(Q^M\)和\(Q^B\)被同时送入decoder得到对应的预测结果,分别计算对应的匈牙利损失并相加;推理时只使用\(Q^M\)。因此,这种方式