Contents
Introduction
- In this paper, we propose the structure information modeling transformer (SIM-Trans) that introduces the object structure information into vision transformer for boosting the discriminative feature learning to contain both the appearance and structure information.
- 同时作者也指出了在 FGVC 任务上,ViT 相比 CNN 的优势:“the stacked convolution and pooling operations bring both the expansion of the receptive field and the degradation of spatial discrimination. Large continuous image areas are focused on and discriminative details are generally overlooked, which are essential for distinguishing subtle difference in fine-grained visual categorization.”
Approach
Multi-level Feature Boosting
- 由于输入图像分块时的 non-overlapping splitting 会导致 incomplete neighboring information,因此作者采用 sliding window splitting method (He, Shuting, et al.) 对输入图像进行分块,patch 数量
N
N
N 为
其中 H , W H,W H,W 为图像高宽, S S S 为 window’s sliding step, P P P 为 patch size - 最后 3 个 transformer layers 的 [CLS] token 输出 concat 后得到 image representation,送入 FC 分类头得到最终的预测结果
Structure Information Learning
- 作者提出 structure information learning (SIL) module,它将 N N N 个 patch 建模为 N N N 个结点的图,使用 GCN 将物体空间上下文信息引入 ViT
- (1) 图的结点特征. 首先,作者利用不同 patch token 和 [CLS] token 之间的 attention weight 定位物体位置。假设为
H
H
H 头自注意力层,则 total attention weights 为
其中 A t t h c l s Att_h^{cls} Atthcls 为 h h h-th head 中各个 patch token 和 [CLS] token 的 attention weights. 因此 A ∈ R N A\in\R^{N} A∈RN 就代表了 N N N 个 patch token 与 [CLS] token 的相关程度,相关程度越高,则该 patch 内含有物体的可能性就越高。其中 attention weight 最大的 patch 为 reference patch,最终使用的 GCN 输出特征即为 reference patch 对应的结点特征. 受 Zhou, Mohan, et al. 启发,作者使用 patch 到 reference patch 的极坐标作为 patch 的结点特征 X X X
其中, ( x 0 , y 0 ) (x_0,y_0) (x0,y0) 为 reference patch 在 N H × N W N_H\times N_W NH×NW 的分块图像上的坐标, ( x , y ) (x,y) (x,y) 为 patch 在分块图像上的坐标, arctan 2 ( ⋅ ) \arctan2(\cdot) arctan2(⋅) 返回 ( − π , π ] (−π, π] (−π,π] 范围内的极坐标角度信息 - (2) 图的边权. 可以计算出 total attention weights 的均值
A
ˉ
\bar A
Aˉ,然后过滤掉 attention weight 小于均值的背景 patch,新的 total attention weights
A
n
e
w
A^{new}
Anew 为
A i n e w = { A i if A i > A ˉ 0 otherwise A_{i}^{n e w}=\left\{\begin{array}{cc} A_{i} & \text { if } A_{i}>\bar{A} \\ 0 & \text { otherwise } \end{array}\right. Ainew={Ai0 if Ai>Aˉ otherwise 图的边权为
A d j = A n e w ( A n e w ) T ∈ R N × N Adj=A^{new}(A^{new})^T\in\R^{N\times N} Adj=Anew(Anew)T∈RN×N由于最终使用的 GCN 输出特征即为 reference patch 对应的结点特征,因此在特征聚合时实际上只用到了 attention weight 超过均值的 patch 结点特征 - (3) GCN. The structure features
S
S
S are obtained by two-layer graph convolution
其中 σ \sigma σ 为激活函数。reference patch node 的输出特征即为 object structure feature,它被直接加在 [CLS] token 的输出特征上. Through the end-to-end training, the composition of the object can be modeled and the significant image patch can be highlighted, which improves the model’s classification performance.
Contrastive Loss
- 作者还进一步引入了对比学习提高模型的表征能力,在最后一层的 [CLS] token 上用了对比学习
其中, ( z i , z j + ) (z_i,z_j^+) (zi,zj+) 为属于同一类别的正样本对, ( z i , z j − ) (z_i,z_j^-) (zi,zj−) 为负样本对, Γ y i = y j , i ≠ j \Gamma_{y_i=y_j, i \neq j} Γyi=yj,i=j 为正样本对个数, s i m ( ⋅ ) sim(\cdot) sim(⋅) 为余弦相似度, N N N 为 batch size, I n d i c a t o r i , j Indicator_{i,j} Indicatori,j 用于难负样本挖掘,负责过滤掉相似度比正样本对平均相似度低 α \alpha α 的负样本,作者在实验中设置 α = 0.3 \alpha=0.3 α=0.3
Experiments
CUB-200-2011
iNaturalist 2017
Ablation Study