DAB-DETR: D YNAMIC A NCHOR B OXES ARE B ETTER Q UERIES FOR DETR
Anonymous authors
Paper under double-blind review
A BSTRACT
We present in this paper a novel query formulation using dynamic anchor boxes for DETR (DEtection TRansformer) and offer a deeper understanding of the role of queries in DETR.
This new formulation directly uses box coordinates as queries in Transformer decoders and dynamically updates them layer-by-layer.
Using box coordinates not only helps using explicit positional priors to improve the queryto-feature similarity and eliminate the slow training convergence issue in DETR, but also allows us to modulate the positional attention map using the box width and height information.
Such a design makes it clear that queries in DETR can be implemented as performing soft ROI pooling layer-by-layer in a cascade manner.
As a result, it leads to the best performance on MS-COCO benchmark among the
DETR-like detection models under the same setting, e.g., AP 45.7% using R as backbone trained in 50 epochs.
We also conducted extensive experiments to confirm our analysis and verify the effectiveness of our methods.
We will release the code after blind review.
I NTRODUCTION
[Figure]
Object detection is a fundamental task in computer vision of wide applications.
Most classical detectors are based on convolutional architectures which have made remarkable progress in the last decade (Ren et al., 2017; Girshick, 2015;
Redmon et al., 2016; Bochkovskiy et al., 2020;
Ge et al., 2021).
Recently, Carion et al.
(2020) proposed a Transformer-based end-to-end detector named
DETR (DEtection TRansformer), which eliminates the need for hand-designed components, e.g., anchors, and shows promising performance compared with modern anchor-based detectors such as
Faster RCNN (Ren et al., 2017).
In contrast to anchor-based detectors, DETR models object detection as a set prediction problem and uses 100 learnable queries to probe and pool features from images, which makes predictions without the need of using non-maximum suppression.
However, due to its ineffective design and use of queries, DETR suffers from significantly slow training convergence, usually requiring 500 epochs to achieve a good performance.
To address this issue, many follow-up works attempted to improve the design of DETR queries for both faster training convergence and better performance (Zhu et al., 2021;
Gao et al., 2021;
Meng et al., 2021; Wang et al., 2021).
Despite all the progress, the role of the learned queries in DETR is still not fully understood or utilized.
While most previous attempts make each query in DETR more explicitly associated with one specific spatial position rather than multiple positions , the technical solutions are largely different.
For example, Conditional DETR learns a conditional spatial query by adapting a query based on its content feature for better matching with image features (Meng et al., 2021).
Efficient DETR introduces a dense prediction module to select top-K object queries (Yao et al., 2021) and Anchor DETR formulates queries as 2D anchor points (Wang et al., 2021), both associating each query with a specific spatial position.
Similarly, Deformable DETR directly treats 2D reference points as queries and performs deformable cross-attention operation at each reference points (Zhu et al., 2021).
But all the above works only leverage 2D positions as anchor points without considering of the object scales.
Motivated by these studies, we take a closer look at the cross-attention module in Transformer decoder and propose to use anchor boxes, i.e. 4D box coordinates ( x, y, w, h ) , as queries in DETR and update them layer-by-layer.
This new query formulation introduce better spatial priors for the cross-attention module by considering both the position and size of each anchor box, which also leads to a much simpler implementation and a deeper understanding of the role of queries in DETR.
The key insight behind this formulation is that each query in DETR is formed by two parts: a content part (decoder self-attention output) and a positional part (e.g. learnable queries in DETR) 1 .
The cross-attention weights are computed by comparing a query with a set of keys which consists of two parts as a content part (encoded image feature) and a positional part (positional embedding).
Thus, queries in Transformer decoder can be interpreted as pooling features from a feature map based on the query-to-feature similarity measure, which considers both the content and positional information.
While the content similarity is for pooling semantically related features, the positional similarity is to provide a positional constraint for pooling features around the query position.
This attention computing mechanism motivates us to formulate queries as anchor boxes as illustrated in
Fig.
1 (c), allowing us to use the center position ( x, y ) of an anchor box to pool features around the center and use the anchor box size ( w, h ) to modulate the cross-attention map, adapting it to anchor box size.
In addition, because of the use of coordinates as queries, anchor boxes can be updated dynamically layer-by-layer.
In this way, queries in DETR can be implemented as performing soft
ROI pooling layer-by-layer in a cascade way.
We provide a better positional prior for pooling features by using anchor box size to modulate the cross-attention.
Because the cross-attention can pool features from the whole feature map, it is crucial to provide a proper positional prior for each query to let the cross-attention module focus on a local region corresponding to a target object.
It can also facilitate to speed up the training convergence of DETR.
Most prior works improve DETR by associating each query with a specific location, but they assume an isotropic Gaussian positional prior of a fixed size, which is inappropriate for objects of different scales.
With the size information ( w, h ) available in each query anchor box, we can modulate the Gaussian positional prior as an oval shape.
More specifically, we divide the width and height from the cross-attention weight (before softmax) for its x part and y part separately, which helps the Gaussian prior to better match with objects of different scales.
To further improve the positional prior, we also introduce a temperature parameter to tune the flatness of positional attention, which has been overlooked in all prior works.
In summary, our proposed DAB-DETR ( D ynamic A nchor B ox DETR ) presents a novel query formulation by directly learning anchors as queries.
This formulation offers a deeper understanding of the role of queries, allowing us to use anchor size to modulate the positional cross-attention map in Transformer decoders and perform dynamic anchor update layer-by-layer.
Our results demonstrate that DAB-DETR attains the best performance among DETR-like architectures under the same setting on the COCO object detection benchmark.
The proposed method can achieve 45 .
7% AP when using a single ResNet-50 (He et al., 2016) model as backbone for training 50 epochs.
We also conducted extensive experiments to confirm our analysis and verify the effectiveness of our methods.
R ELATED W ORK
Most classical detectors are anchor-based, using either anchor boxes (Ren et al., 2017; Girshick, 2015; Sun et al., 2021) or anchor points (Tian et al., 2019;
Zhou et al., 2019).
In contrast,
DETR (Carion et al., 2020) is a fully anchor-free detector using a set of learnable vectors as queries.
Many follow-up works attempted to solve the slow convergence of DETR from different perspectives.
Sun et al.
(2020) pointed out that the cause of slow training of DETR is due to the crossattention in decoders and hence proposed an encoder-only model.
Gao et al.
(2021) instead introduced a Gaussian prior to regulate the cross-attention.
Despite their improved performance, they did not give a proper explanation of the slow training and the roles of queries in DETR.
Another direction to improve DETR, which is more relevant to our work, is towards a deeper understanding of the role of queries in DETR.
As the learnable queries in DETR are used to provide positional constrains for feature pooling, most related works attempted to make each query in DETR more explicitly related to a specific spatial position rather than multiple position modes in the vanilla
DETR.
For example, Deformable DETR (Zhu et al., 2021) directly treats 2D reference points as queries and predicts deformable sampling points for each reference point to perform deformable cross-attention operation.
Conditional DETR (Meng et al., 2021) decouples the attention formulation and generates positional queries based on reference coordinates.
Efficient DETR (Yao et al., 2021) introduces a dense prediction module to select top-K positions as object queries.
Although these works connect queries with positional information, they do not have an explicit formulation to use anchors.
Different from the hypothesis in prior works that the learnable query vectors contain box coordinate information, our approach is based on a new perspective that all information contained in queries are box coordinates.
That is, anchor boxes are better queries for DETR .
A concurrent work Anchor
DETR (Wang et al., 2021) also suggests learning anchor points directly, while it ignores the anchor width and height information as in other prior works.
Besides DETR, Sun et al.
(2021) proposed a sparse detector by learning boxes directly, which shares a similar anchor formulation with us, but it discards the Transformer structure and leverages hard ROI align for feature extraction.
Tablesummarizes the key differences between related works and our proposed DAB-DETR.
We compare our model with related works on five dimensions: if the model directly learns anchors, if the model predicts reference coordinates (in its intermediate stage) , if the model updates the reference anchors layer-by-layer, if the model uses the standard dense cross-attention, if the attention is modulated to better match with objects of different scales. and if the model updates the learned queries layer-bylayer. A more detailed comparison of DETR-like models is available in Sec. B of Appendix.
We recommend this section for readers who have confusions about the table.
W HY A P OSITIONAL P RIOR COULD S PEEDUP T RAINING ?
Much work has been done to accelerate the training convergence speed of DETR, while lacking a unified understanding of why their methods work.
Sun et al.
(2020) showed that the cross-attention module is mainly responsible for the slow convergence, but they simply removed the decoders for faster training.
We follow their analysis to find which sub-module in the cross-attention affects the performance.
Comparing the self-attention module in encoders with the cross-attention module in decoders, we find the key difference between their inputs comes from the queries, as shown in Fig. As the decoder embeddings are updated by linearly combining the image features, they are in the same space as the image features. Hence the root cause is likely due to the learnable queries.
Models
LearnAnchors? ReferenceAnchors DynamicAnchors StandardAttention Size-ModulatedAttention UpdateLearnedQueries?
DETR
No
No ✓ DeformableDETR
No 4D ✓ ✓ ConditionalDETR
No 2D ✓ AnchorDETR 2D 2D ✓ SparseRCNN 4D 4D ✓ DAB-DETR 4D 4D ✓ ✓ ✓ ✓
[Figure]
Two possible reasons in cross-attention account for the model’s slow training convergence: 1) it is hard to learn the queries due to the optimization challenge, and 2) the positional information in the learned queries is not encoded in the same way as the sinusoidal positional encoding used for image features.
To see if it is the first reason, we reuse the well-learned queries from DETR (keep them fixed) and only train the other modules.
The training curves in Fig. 3(a) show that the fixed queries only slightly improve the convergence in very early epochs, e.g. the first 25 epochs.
Hence the query learning (or optimization) is likely not the key concern. [Figure]
Then we turn to the second possibility and try to find out if the learned queries have some undesirable properties.
As the learned queries are used to filter objects in certain regions, we visualize a few positional attention maps between the learned queries and the positional embeddings of image features in Fig. 4(a).
Each query can be regarded as a positional prior to let decoders focus on a region of interest.
Although they serve as a positional constraint, they also carry undesirable properties: multiple modes and nearly uniform attention weights.
For example, the two attention maps at the top of Fig. 4(a) have two or more concentration centers, making it hard to locate objects when multiple objects exist in an image.
The bottom maps of Fig. 4(a) focus on areas that are either too large or too small, and hence cannot inject useful positional information into the procedure of feature extraction.
We conjecture that the multiple mode property of queries in DETR is likely the root cause for its slow training and we believe introducing explicit positional priors to constrain queries on a local region is desirable for training. To verify this assumption, we replace the query formulation in DETR with dynamic anchor boxes, which can enforce each query to focus on a specific area, and name this model DETR+DAB.
The training curves in Fig. 3(b) show that DETR+DAB leads to a much better performance compared with DETR, in terms of both detection AP and training/testing loss.
Note that the only difference between DETR and DETR+DAB is the formulation of queries and no other techniques like 300 queries or focal loss are introduced.
It shows that after addressing the multi-mode issue of DETR queries, we can achieve both a faster training convergence and a higher detection accuracy.
Some previous work also has similar analysis and confirmed this.
For example, SMCA (Gao et al., 2021) speeds up the training by applying pre-defined Gaussian maps around reference points.
Conditional DETR (Meng et al., 2021) uses explicit positional embedding as positional queries for training, yielding attention maps similar to Gaussian kernels as shown in Fig. 4(b).
Although explicit positional priors lead to good performance in training, they ignore the scale information of an object.
In contrast, our proposed DAB-DETR explicitly takes into account the object scale information to adaptively adjust attention weights, as shown in Fig. 4(c).
[Figure]
DAB-DETR 4. O VERVIEW
Following DETR (Carion et al., 2020), our model is an end-to-end object detector which includes a CNN backbone, Transformer (Vaswani et al., 2017) encoders and decoders, and prediction heads for boxes and labels.
We mainly improve the decoder part, as shown in Fig.
Given an image, we extract image spatial features using a CNN backbone followed with Transformer encoders to refine the CNN features.
Then dual queries, including positional queries (anchor boxes)
[Figure]
and content queries (decoder embeddings), are fed into the decoder to probe the objects which correspond to the anchors and have similar patterns with the content queries.
The dual queries are updated layer-by-layer to get close to the target ground-truth objects gradually.
The outputs of the final decoder layer are used to predict the objects with labels and boxes by prediction heads, and then a bipartite graph matching is conducted to calculate loss as in DETR.
To illustrate the generality of our dynamic anchor boxes, we also design a stronger DABDeformable-DETR, which is available in Appendix.
4. L EARNING A NCHOR B OXES D IRECTLY
As discussed in Sec.
1 regarding the role of queries in DETR, we propose to directly learn query boxes or say anchor boxes and derive positional queries from these anchors.
There are two attention modules in each decoder layer, including a self-attention module and a cross-attention module, which are used for query updating and feature probing respectively.
Each module needs queries, keys, and values to perform attention-based value aggregation, yet the inputs of these triplets differ.
We denote A q = ( x q , y q , w q , h q ) as the q -th anchor, x q , y q , w q , h q ∈ R , and C q ∈ R D and P q ∈ R D as its corresponding content query and positional query, where D is the dimension of decoder embeddings and positional queries.
Given an anchor A q , its positional query P q is generated by:
[Equation]
where PE means positional encoding to generate sinusoidal embeddings from float numbers and the parameters of MLP are shared across all layers.
As A q is a quaternion, we overload the PE operator here:
[Equation]
The notion Cat means concatenation function.
In our implementations, the positional encoding function PE maps a float to a vector with D/ 2 dimensions as: PE: R → R D/ 2 .
Hence the function
MLP projects a 2 D dimensional vector into D dimensions:
MLP: R 2 D
→ R D .
The MLP module has two submodules, each of which is composed of a linear layer and a ReLU activation, and the feature reduction is conducted at the first linear layer.
In the self-attention module, all three of queries, keys, and values have the same content items, while the queries and keys contain extra position items:
[Equation]
Inspired by Conditional DETR (Meng et al., 2021), we concatenate the position and content information together as queries and keys in the cross-attention module, so that we can decouple the content and position contributions to the query-to-feature similarity computed as the dot product between a query and a key.
To rescale the positional embeddings, we leverage the conditional spatial query (Meng et al., 2021) as well.
More specifically, we learn a MLP ( csq ) :
R D → R D to obtain a scale vector conditional on the content information and use it perform element-wise multiplication with the positional embeddings:
[Equation]
where F x,y ∈ R D is the image feature at position ( x, y ) and · is an element-wise multiplication.
Both the positional embeddings in queries and keys are generated based on 2D coordinates, making it more consistent to compare the positional similarity, as in previous works (Meng et al., 2021;
Wang et al., 2021).
4. A NCHOR U PDATE
Using coordinates as queries for learning makes it possible to update them layer-by-layer.
In contrast, for queries of high dimensional embeddings, such as in DETR (Carion et al., 2020) and Conditional DETR (Meng et al., 2021), it is hard to perform layer-by-layer query refinement, because it is unclear how to convert an updated anchor back to a high-dimensional query embedding.
Following the previous practice (Zhu et al., 2021; Wang et al., 2021), we update anchors in each layer after predicting relative positions (∆ x, ∆ y, ∆ w, ∆ h ) by a prediction head, as shown in Fig.
Note that all prediction heads in different layers share the same parameters
H=1, W= H=1, W= H=3, W= lated by width and height.
Temperature= Temperature= Temperature=
Traditional positional attention maps are used as a Gaussian-like prior, as shown in Fig.
6 left.
But the prior is simply assumed isotropic and fixed size for all objects, leaving their scale information (width and height) ignored.
To improve the positional prior, we propose to inject the scale information into the attention maps.
The query-to-key similarity in the original positional attention map is computed as the sum of dot products of two coordinate encodings:
[Equation]
where 1 / √ D is used to rescale the value as suggested in Vaswani et al.
We modulate the positional attention maps (before softmax) by dividing the relative anchor width and height from its x part and y part separately to smooth the Gaussian prior to better match with objects of different scales: ModulateAttn
[Equation]
where w q and h q are the width and height of the anchor A q , and w q, ref and h q, ref are the reference width and height that are calculated by:
[Equation]
This modulated positional attention helps us extract features of objects with different widths and heights, and the visualizations of modulated attentions are shown in Fig.
[Table]
M
DAB-DETR-DC5-R 44 .65 .47 .
44 M
DAB-DETR-DC5-R 50 ∗ 45.
44 M
DETR-R 43 .
60 M
Faster RCNN-FPN-R 44 .
60 M
Anchor DETR-R 43 .
.61 .−
58 M
Conditional DETR-R 42 .
63 M
DAB-DETR-R 43 .63 .
63 M
DAB-DETR-R 101 ∗ 44.
63 M
DETR-DC5-R 44 .
60 M
{+TSP-RCNN-R ✓ 46 .
+}
−
{+SMCA-R✓ 
+}
50 M
Anchor DETR-R
.61 .−
58 M
Conditional DETR-DC5-R 45 .
[Table]
4. T EMPERATURE T URNING
For position encoding, we use the sinusoidal function (Vaswani et al., 2017), which is defined as:
[Equation]
where T is a hand-design temperature, and the superscript 2 i and 2 i + 1 denote the indices in the encoded vectors.
The temperature T in Eq.
(8) influences the size of positional priors, as shown in Fig.
A larger T results in a more flattened attention map, and vice versa.
Note that the temperature T is hard-coded in (Vaswani et al., 2017) as 10000 for nature language processing, in which the values of x are integers representing each word’s position in a sentence.
However, in
DETR, the values of x are floats between 0 and 1 representing bounding box coordinates.
Hence a different temperature is highly desired for vision tasks.
In this work, we empirically choose T =in our models.
E XPERIMENTS 5. I MPLEMENTATION D ETAILS
We describe the default settings of our model as below.
More training details are available in Appendix.
Architecture.
Our model is almost the same as DETR which includes a CNN backbone, multiple
Transformer (Vaswani et al., 2017) encoders and decoders, and two prediction heads for boxes and labels.
We use ImageNet-pretrained ResNet (He et al., 2016) as our backbones, and 6 Transformer encoders and 6 Transformer decoders in our implementations.
We follow previous works to report
[Table]
results over four backbones:
ResNet-50, ResNet-101, and their 16×-resolution extensions ResNet50-DC5 and ResNet-101-DC5.
As we need to predict boxes and labels in each decoder layer,
the
MLP networks for box and label predictions share the same parameters across different decoder layers.
As inspired by Anchor DETR, we also leverage multiple pattern embeddings to perform multiple predictions at one position and the number of patterns is set as 3 which is the same as
Anchor DETR.
We also leverage PReLU (He et al., 2015) as our activations.
Dataset.
We conduct the experiments on the COCO (Lin et al., 2014) object detection dataset.
All models are trained on the train2017 split and evaluated on the val2017 split.
5. M AIN R ESULTS
Table 2 shows our main results on the COCO 2017 validation set.
We compare our proposed DABDETR with DETR (Carion et al., 2020), Faster RCNN (Ren et al., 2017), Anchor DETR (Wang et al., 2021), SMCA (Gao et al., 2021), Deformable DETR (Zhu et al., 2021), TSP (Sun et al., 2020), and
Conditional DETR (Meng et al., 2021).
We showed two variations of our model: standard models and models marked with superscript ∗ that have 3 pattern embeddings (Wang et al., 2021).
Our standard models outperform Conditional DETR with a large margin.
We notice that our model introduce a slight increase of GFLOPs.
GFLOPs may differ depending on the calculation scripts and we use the results reported by the authors in Table 2.
Actually, we find in our tests that the
GFLOPs of our standatd models are nearly the same as the corresponding Conditional DETR models based on our GFLOPs calculation scripts, hence our model still has advantages over previous work under the same settings.
When using pattern embeddings, our DAB-DETR with ∗ outperforms previous DETR-like methods on all four backbones with a large margin, even better than multiscale architectures.
It verifies the correctness of our analysis and the effectiveness of our design.
5. A BLATIONS
Table 3 shows the effectiveness of each component in our model.
We find that all modules we proposed contribute remarkably to our final results.
The anchor box formulation improves the performance from 44 . 0% AP to 45 .
0% AP compared with anchor point formulation (compare Row 3 and Row 4) and anchor update introduces 1 . 7% AP improvement (compare Row 1 and Row 2), which demonstrates the effectiveness of dynamic anchor box design.
After removing modulated attention and temperature tuning, the model performance drops to 45 .
0% (compare Row 1 and Row 3) and 44 .
4% (compare Row 1 and Row 5), respectively.
Hence fine-grained tuning of positional attentions is of great importance for improving the detection performance as well.
C ONCLUSION
We have presented in this paper a novel query formulation using dynamic anchor boxes for DETR and offer a deeper understanding of the role of queries in DETR.
Using anchor boxes as queries lead to several advantages, including a better positional prior with temperature tuning, size-modulated attention to account for objects of different scales, and iterative anchor update for improving anchor estimate gradually.
Such a design makes it clear that queries in DETR can be implemented as performing soft ROI pooling layer-by-layer in a cascade manner.
Extensive experiments were conducted and effectively confirmed our analysis and verified our algorithm design.
E THICS S TATEMENT
Object detection is a fundamental task in computer vision with wide applications.
Hence any improvement of this field will yield lots of impacts.
To visually perceive and interact with the environment, autonomous vehicles highly depend on this technique and will benefit from any of its improvement.
It has also led to advances in medical imaging, word recognition, instance segmentation on natural images, and so on.
Therefore a failure in this model could affect many tasks.
Our study provides a deeper understanding of the roles of queries in DETR and improves the interpretability of this important submodule in the end-to-end Transformer-based detection framework.
As our model relies on deep neural networks, it can be attacked by adversarial examples.
Similarly, as it relies on training data, it may produce biased results induced from training samples.
These are common problems in deep learning and our community is working together to improve them.
Finally, it is worth noting that detection models, especially face or human detection models, might pose a threat to people’s privacy and security if used by someone up to no good.
R EPRODUCIBILITY S TATEMENT
We confirm the reproducibility of the results.
All materials that are needed to reproduce our results will be released after blind review. We will open source the code as well
Appendix for DAB-DETR A M ORE T RAINING D ETAILS
Following Deformable DETR and Conditional DETR, we use 300 anchors as queries.
We selectpredicted boxes and labels with the largest classification logits for evaluation as well.
We also use focal loss (Lin et al., 2020) with α = 0 .
25 , γ = 2 for classification.
The same loss terms are used in bipartite matching and final loss calculating, but with different coefficients.
Classification loss with coefficient 2 . 0 is used in pipartite matching but 1 . 0 in the final loss.
L1 loss with coefficient 5 .
and
GIOU loss (Rezatofighi et al., 2019) with coefficient 2 . 0 are consistent in both the matching and the final loss calculation procedures.
All models are trained on 16 GPUs with 1 image per GPU and
AdamW (Loshchilov & Hutter, 2018) is used for training with weight decay 10 − 4 .
The learning rates for backbone and other modules are set to 10 − 5 and 10 − 4 respectively.
We train our models for 50 epochs and drop the learning rate by 0 .
1 after 40 epochs.
All models are trained on Nvidia
A100 GPU.
We search hyperparameters with batch size 64 and all results in our paper are reported with batch size 16.
For better reproducing our results, we provide the memory needed and batch size/GPU in Table 4.
B C OMPARISON OF DETR- LIKE MODELS
In this section, we provide a more detailed comparison of DETR-like models, including DETR (Carion et al., 2020), Conditional DETR (Meng et al., 2021), Anchor DETR (Wang et al., 2021), Deformable DETR (Zhu et al., 2021), our proposed DAB-DETR, and DAB-Deformable-DETR.
Their model designs are illustrated in Fig.
We will discuss the difference between previous models and our models.
Anchor DETR (Wang et al., 2021) 2 improves DETR by introducing 2D anchor points, which are updated layer by layer.
It shares a similar motivation with our work.
But it leaves the object scale information unconsidered and thus cannot modulate the cross-attention to make it adapt to objects of different scales.
Moreover, the positional queries in its framework are of high dimension and passed to the self-attention modules in all layers without any adaptation.
See the brown colored part in Fig.
8 (d) for details.
This design might be sub-optimal as the self-attention modules cannot leverage the refined anchor points in different layers.
Deformable DETR (Zhu et al., 2021) introduces 4D anchor boxes and updates them layer by layer, which is called iterative bounding box refinement in its paper.
Its algorithm is mainly developed based on deformable attention, which requires reference points to sample attention points and meanwhile utilizes box width and height to modulate attention areas.
However, as iterative bounding box refinement is closely coupled with the special design of deformable attention, it is nontrivial to apply it to general Transformer decoder-based DETR models.
This is probably the reason why few work after Deformable DETR adopts this idea.
Moreover, the position queries in Deformable DETR are passed to both the self-attention modules and the cross-attention modules in all layers without any
[Table]
adaptation.
See the brown colored part in Fig.
8 (e) for details.
As the result, both its self-attention modules and cross-attention modules cannot fully leverage the refined anchor in
To verify our analysis, we develop a variant of Deformable-DETR by formulating its queries as dynamic anchor boxes as in DAB-DETR.
We call this variant as DAB-Deformable-DETR, which is illustrated in Fig.
8 (f).
Under exactly the same setting using R50 as backbone, DAB-DeformableDETR improves Deformable-DETR by 0.5 AP (46.3 to 46.8) on COCO.
See Table 5 for the performance comparison and Sec.
C for more implementation details.
Dynamic DETR (Dai et al., 2021) 3 is another interesting improvement of DETR.
It also leverages anchor boxes to pool features, but it uses ROI pooling for feature extraction, which makes it less general to DETR-like models compared with our dynamic anchor boxes.
Moreover, compared with cross-attention in Transformer decoders, which performs global feature pooling in a soft manner (based on attention map), the ROI pooling operation only performs local feature pooling within a
ROI window.
In our opinion, the ROI pooling operation can help faster convergence as it enforces each query to associate with a specific spatial position.
But it may lead to sub-optimal result due to its ignorance of global context outside a ROI window.
C DAB-D EFORMABLE -DETR
To further demonstrate the effectiveness of our dynamic anchor boxes, we develop DABDeformable-DETR by adding our dynamic anchor boxes design to Deformable DETR (Zhu et al., 2021) 4 .
The difference between Deformable DETR and DAB-Deformable-DETR is shown in Fig.
8 (e) and (f).
The results of Deformable DETR and DAB-Deformable-DETR are shown in Table 5.
With no more than 10 lines of code modified, our DAB-Deformable-DETR (row 4) results in a significant performance improvement (+0.5 AP) compared with the original Deformable DETR (row 3).
All other settings except the query formulation are exactly the same in this experiment.
We also compare the speed of convergence in Fig.
It shows that our proposed dynamic anchor boxes speed up the training as well (left in Fig. 9).
We believe one of the reasons for better performance is the update of learned queries.
We plot the change of total loss, which is the sum-up of losses of all decoder layers, during training in the middle figure of Fig. 9.
Interestingly, it shows that the total loss of DAB-Deformable-DETR is larger than Deformable DETR.
However, the loss of the final layer of DAB-Deformable-DETR is lower than that in Deformable DETR (right in Fig.
9), which is a good indicator of the better performance of DAB-Deformable-DETR as the inference result only takes from the last layer.
[Figure]
DAB-DETR (c) directly uses dynamically updated anchor boxes to provide both a reference query point ( x, y ) and a reference anchor size ( w, h ) to improve the cross-attention computation.
DAB-Deformable-DETR (f) uses dynamically updated anchor boxes to formulate its queries as well.
D A NCHORS V ISUALIZATION
We visualize the learned anchor boxes in Fig.
When learning anchor points as queries, the learned points are distributed evenly around the image, while the centers seem to distribute randomly when learning anchor boxes directly.
This might be because the centers are coupled with anchor sizes.
The right-most figure shows the visualization of the learned anchor boxes.
We only show a partial set for the visualization clarity.
Most boxes are of medium size and no particular pattern is found in the distribution of boxes.
E R ESULTS WITH D IFFERENT T EMPERATURES
Table 6 shows the results of models using different temperatures in the positional encoding function.
As larger temperature generates more flattened attention maps, it leads to better performances for larger objects.
For example, the model with T = 2 and the model with T = 10000 have similar AP results, but the former has better performances on AP S and AP M , while the latter works better on
AP L , which also validates the role of positional priors in DETR.
F M ORE V ISUALIZATION R ESULTS
We present more visualization results of iterative box update in Fig.
The initial anchors, anchors updated by the → → → → → [Table] [Table]
G R ESULTS WITH LESS D ECODER L AYERS
Table 7 shows the results of models with different decoder layers.
All models are trained under our standard ResNet-50-DC setting except the number of decoder layers. H F IXED x, y R ESULTS IN B ETTER P ERFORMANCE
We provide in this section an interesting experiment. As we all know, all box coordinates x, y, h, w are learned from data. When we fix x, y of the anchor boxes with the random initialization, the model’s performance increases consistently. The comparison of standard DAB-DETR and DABDETR with fixed x, y coordinates are shown in Table 8.
Note that we only fix x, y at the first layer to prevent them from learning information from data.
But x, y will be updated in other layers.
We conjecture that the randomly initialized and fixed x, y coordinates can help avoid overfitting, which may account for this phenomenon.
I C OMPARISON OF B OX U PDATE
To further demonstrate the effectiveness of our dynamic anchor box design, we plot the layer-bylayer update result of boxes of DAB-DETR and Conditional DETR in Fig. All DETR-like models have a stacked layers structure. Hence the outputs of each layer can be viewed as a refining procedure. However, due to the high-dimensional queries that are shared across all layers, the update of queries between layers is not stable.
As shaded in yellow in Fig.
12 (b), some boxes predicted in latter layers are worse than their previous layers. J A NALYSIS OF F AILURE C ASES Fig. 13 presents some samples where our model does not predict well.
We find our model may have some troubles when facing dense objects, very small objects, or very large objects in an image. To improve the performance of our model, we will introduce a multi-scale technique into our model to improve the detection performance on small and large objects.
[Figure]
[Figure] [Table]
[Table]
K C OMPARISON OF R UNTIME
We compare the runtime of DETR, Conditional DETR, and our proposed DAB-DETR in Table 9.
Their runtime speeds are reported on a single Nvidia A100 GPU.
Our DAB-DETR has a similar inference speed but better performance compared with Conditional DETR, which is our direct competitor.