Top-K Visual Tokens Transformer
Abstract
可见光模态和红外模态的人员再识别(VI-ReID)是一个非常重要且具有挑战性的任务。现有的工作主要集中在使用卷积神经网络(CNN)来减少模态差异。然而,CNN提取的特征可能包含无用的与身份无关的信息,这不可避免地降低了特征的区分度。为解决这一问题,本文引入了一个名为Top-K Visual Tokens Transformer(TVTR)的框架,该框架利用了一个top-k视觉令牌选择模块来准确选择前k个具有区分性的视觉补丁,以减少身份无关信息的干扰并学习具有区分性的特征。此外,还开发了一个全局-局部圆形损失函数,用于优化TVTR以实现跨模态正向集中和负向分离特性。在SYSU-MM01和RegDB数据集上的实验结果证明了我们方法的优越性。源代码将会发布。
Introduction
人员再识别(ReID)旨在通过不同摄像头捕获的图像匹配同一人员[1]。大多数现有的人员Re-ID方法专注于识别由可见摄像头捕获的相同行人图像。然而,在光线较差的情况下,可见摄像头无法捕获足够的一个人的信息,这限制了单模态ReID在实际监控中的适用性。为解决这一问题,提出了交叉模态(可见-红外)人员再识别(VI-ReID)任务。VI-ReID任务旨在匹配红外(IR)和可见摄像头捕获的人员图像[2]。一些基于cnn的方法[1]已被提出,用于对齐不同模态下一个人的特征分布。然而,行人图像总是包含一些无用的背景信息,这对行人再识别的性能有害。为了更好地进行跨模态检索,有必要定位出最重要的人员图像区域,并依靠它们来提取VI-ReID的区分性特征。
最近,视觉transformer(ViT)[3, 4]在计算机视觉任务上取得了巨大成功。ViT包含许多自注意力层。在自注意力机制中,每个视觉令牌都与类别令牌相连。注意力链接的强度(注意力分数)可以直观地解释为令牌的重要性度量。这种特性可以应用于定位最重要的图像区域,从而有助于学习区分性特征。有了这些区分性特征,对齐不同模态的特征将更加高效,如图1所示。
![[Illustration of Top-K Visual Tokens Selection.png]][Top-K 视觉标记选择(TVTS)的图示,绿色框代表重要区域,红色框代表包含无用的与身份无关的信息(例如背景信息)的区域]
基于以上动机,本文介绍了一种名为Top-K Visual Tokens Transformer(TVTR)的方法,该方法利用了一个Top-K Visual Tokens Selection module(TVTS)来从每个注意力头部选择前k个重要的视觉补丁(visual patches),以定位重要的图像区域并学习区分性特征。为了进一步处理跨模态和内模态变化,我们设计了一个全局-局部循环(GLC)损失来优化TVTR,其中全局循环损失优化样本之间的距离与分类器,局部循环损失优化一批样本中样本之间的距离。
本文主要贡献如下
- 我们引入了一个名为Top-K Visual Tokens Transformer(TVTR)的框架,该框架利用了Top-K Visual Tokens Selection(TVTS)模块,准确选择前k个重要的视觉补丁,以减少身份无关信息的干扰并学习具有区分性的特征。
- 我们开发了一个全局-局部环形(GLC)损失来优化TVTR,以实现跨模态正向集中和负向分离的属性。
- 我们在SYSU-MM01和RegDB数据集上提供了详细的实验结果,证明了我们方法的优越性。
Methodology
Top-K Visual Tokens Transformer(TVTR)的框架如图2所示。我们首先将输入的可见或红外人员图像切割成一系列重叠的扁平补丁,并使用线性投影将这些补丁映射到D维特征空间中。基本编码器包含12层transformer,由多头自注意力和多层感知器块组成。我们在最后一层之前插入了Top-K Visual Tokens Selection(TVTS)模块。所选的视觉令牌和类别令牌被输入到最后一层进行最终学习。
![[The framework of Top-K Visual Tokens Transformer..png]][TVTR 的框架。Top-K 视觉标记选择可以找到重要的 Visual Patches。全局-局部循坏损失结合了全局和局部度量学习,已实现跨模态的正集中和负分离特性]
Top-K Visual Tokens Selection
在transformer中,每个视觉令牌都与分类令牌相连。注意力链接的强度可以直观地解释为视觉令牌的重要性度量。Top-K Visual Tokens Selection(TVTS)模块整合了每个自注意力层的注意力分数,生成最终的注意力图,引导模型有效准确地选择每个注意力头部的前k个具有区分性的图像补丁进入最后一层,以获得最终特征。假设模型包含M个自注意力头部,并且输入到最后一层的隐藏特征表示为$H{L-1}=[h^0{L-1};h^1{L-1},h^2{L-1},...,h^N_{L-1}]$,其中N是图像补丁的数量,L是层数。则前面层的注意力权重可以表示为:
$$
A_l=[a^0_l,a^1_l.a^2_l,...,a^M_l]\qquad l\in1,2,...,L-1
$$
其中$a^i_l$是第$l$层的第$i$个注意力头的权重,可以写成:
$$
a^i_l=[a^{i_0}_l;a^{i_1}_l,a^{i_2}_l,...,a^{i_N}_l] \qquad i\in0,1,...,M
$$
其中$i_N$是一张图的第 N 个 patch。$i0$是类别 token,注意力权重可以被计算为:
$$
\begin{aligned}
a(Q,K)=softmax(\frac{QK^T}{\sqrt d})\
\end{aligned}
$$
其中$\frac{1}{\sqrt d}$是一个比例因子。
为了使嵌入可识别,我们整合了所有前几层的注意力权重。具体来说,最终的注意力分数可以通过矩阵乘法递归计算如下:
$$
A{final}=\prod\limits^{L-1}_{l=1}Al
$$
$A{final}$的元素表示两个对应patch之间的关联强度。$A{final}$可以作为选择具有区分性区域的指标。然后,我们选择与类令牌相关联的前k个最大值的位置。这些位置被用作TVTR中提取$H{L-1}$中相应令牌的索引。所选令牌与类令牌一起输入到最后一层。最后,我们将类令牌和最后一层的视觉令牌的全局平均池连接在一起,作为一个人的表示。
Global-Local Circle Loss
Circle loss 在各种深度特征学习任务上实现了优越的性能。为了同时处理跨模态和内模态变化,我们提出了一个 Global-Local Circle (GLC) loss,包括两种类型的圆形损失用于跨模态学习,即全局圆形损失和局部圆形损失。全局圆形损失用于优化样本与分类器之间的距离,可以视为全局锚点。局部圆形损失用于优化一个批次中样本之间的距离。结合全局和局部度量学习,可以学习到更好的特征,实现跨模态正集中和负分离的特性。全局圆形损失表示为:
$$L_g=-\log\frac{\exp(\gamma\alpha^i_p(s_p-\Delta_p))}{\exp(\gamma\alpha^i_p(s_p-\Deltap))+\sum^{N-1}{j=1}\exp(\gamma\alpha^j_n(s^j_n-\Delta_n))}$$
其中$s^j_n$是类间相似度得分,可以用$s^j_n=\omega^T_jx/(|\omega_j||x|)$计算得到,$s_p$是类内相似度分数,可以用$s_p=\omega^T_yx/(|\omega_y||x|)$计算得到。$w_j$ 和 $w_y$ 分别是分类器权重中的非目标权重向量和目标权重向量。$L_g$ 类似于 Softmax 或 AMSoftmax 损失,但带有圆形加权因子 ($a^i_p$ 和 $a^jn$)。对于跨模态学习,局部圆形损失结合了基本圆形损失的三个变体,包括红外圆形损失、可见光圆形损失和红外-可见光圆形损失。局部圆形损失可以表示为:
$$\mathcal{L}{1}=\mathcal{L}{ii}+\mathcal{L}{vv}+\mathcal{L}{iv}$$
$\mathcal{L}{ii},\mathcal{L}{vv},\mathcal{L}{iv}$分别是红外圆损失,可见光圆损失和红外-可见光圆损失。红外圆形损失和可见光圆形损失类似于基本的圆形损失,优化单模态样本之间的距离,其表达式为:
$$
\begin{aligned}
\mathcal{L}{vv}=log[1+\sum\limits^{L}{i=1}\exp(\gamma\alpha^jn(s^j{n(vv)}-\Deltan))\sum\limits^{K}{i=1}\exp(-\gamma\alpha^iP(s^i{p(vv)}-\Delta_p))]\
\mathcal{L}{ii}=log[1+\sum\limits^{L}{i=1}\exp(\gamma\alpha^jn(s^j{n(ii)}-\Deltan))\sum\limits^{K}{i=1}\exp(-\gamma\alpha^iP(s^i{p(ii)}-\Delta_p))]
\end{aligned}
$$
其中$s{p(vv)},s{n(vv)}$是可见光模态中正负样本的余弦相似度。同样的,$s{p(ii)},s{n(ii)}$是红外光模态中正负样本的余弦相似度。
红外-可见光圆形损失表示为:
$$
\begin{aligned}
\mathcal{L}{iv}=log[1+\sum\limits^{L}{i=1}\exp(\gamma\alpha^jn(s^j{n(iv)}-\Deltan))\sum\limits^{K}{i=1}\exp(-\gamma\alpha^iP(s^i{p(iv)}-\Deltap))]
\end{aligned}
$$
其中,$s{n(iv)},s_{p(iv)}$是跨模态下正负样本的余弦相似度。$\Delta_p=1-m,\Delta_n=m$控制余弦松弛度。$\alpha^i_p,\alpha^jn$的定义可以从[Yifan Sun, Changmao Cheng, Yuhan Zhang, Chi Zhang, Liang Zheng, Zhongdao Wang, and Yichen Wei, “Circle loss: A unified perspective of pair similarity optimization,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020, pp. 6398–6407.]中找到(?)。
TVTR 的总体损失可以表示为:
$$\mathcal{L}{overall}=\mathcal{L}_l+\mathcal{L}_g$$
讨论
以往的ReID工作通常使用三元组损失和交叉熵损失来优化模型。GLC损失提供了两种度量学习的方式,类似于三元组损失和交叉熵损失的结合,包括优化样本与分类器之间的距离(全局圆形损失)和一批样本之间的距离(局部圆形损失)。通过结合全局和局部损失,模型可以学习到更好的嵌入,用于跨模态检索,减小类内距离,扩大类间距离。
Experiments
Datasets
Implementation Details
我们提出的方法是使用PyTorch深度学习框架实现的。我们采用了在ImageNet数据集上预训练的ViT-Base模型作为transformer的主干。可见光和红外图像在进入网络之前被缩放为3×288×144(C × H × W)。在top-k视觉标记选择中,每个头部中的前16个重要视觉标记被选择到最后一层。采用了带有权重衰减1e-4的SGD优化器。全局-局部圈损失有三个超参数,即γ,∆p和∆n。对于全局圈损失,γ = 30。∆p和∆n都设置为0.5。对于局部圈损失,γ = 20。∆p设置为0.75,∆n设置为0.25。
Comparison Results
我们在SYSU-MM01和RegDB数据集上将我们的方法与最先进的算法进行了比较,结果见表1。我们提出的TVTR框架在性能上明显优于现有的基于CNN的方法,这证明了我们方法的有效性。具体来说,在SYSU-MM01数据集上,我们的TVTR在mAP方面达到了65.30%,在Rank-1方面达到了64.15%(All-Search模式),分别比DG-VAE提高了5.81%和5.69%。与另一种基于transformer的方法CMTR相比,我们的方法在mAP准确度和Rank-1上分别提高了2.72%和2.82%。在RegDB数据集上,我们在可见光到热红外测试模式下实现了79.5%的mAP和84.1%的Rank-1。与CMTR相比,我们的方法在mAP准确度和Rank-1上分别提高了3.5%和5.1%。这些结果证明了我们提出的TVTR框架的持续改进。
Ablation Studies
我们通过在SYSU-MM01上进行消融研究来评估我们提出的TVTR框架中的每个组件。结果如表2所示。
Baseline
基线表示直接通过通用 Lid 和 Lwrt [1] 对 ViT 模型进行训练,用于跨模态 ReID。可以观察到,基线在 mAP 方面达到了 51.26%,在 Rank-1 和 mAP 方面分别比 AGW 提高了 4.16% 和 3.61%。
Effectiveness of Top-K Visual Tokens Selection
如表2所示,通过应用 TVTS 模块选择前 k 个具有区分性的视觉 token,模型的性能从 51.26% 提高到了 55.62% 的 mAP。TVTS 模块直接丢弃了一些无用的 token,并迫使网络从重要的图像部分进行学习。
Effectiveness of Global-Local Circle Loss
GLC 损失有助于模型从局部和全局优化的角度降低特征嵌入级别的类内差异,并扩大类间差异。在 SYSU-MM01 数据集上,性能显著提高了 8.97% 的 Rank-1 和 9.20% 的 mAP。
Evaluation of Hyperparameter K
我们在 SYSU-MM01 数据集上评估了 TVTS 模块中不同 K 值的影响,采用全搜索模式。我们将 K 从 4 变化到 24。如图 3 所示,当 K = 16 时,模型达到了最高的 Rank-1 精度。
Visualization Analysis
我们在图 4 中绘制了来自 SYSU-MM01 数据集中随机选取的 10 个身份的 t-SNE 图。我们观察到,在初始阶段,两种模态的特征是分开的。经过训练后,来自两种模态的每个身份的特征在学习到的嵌入空间中聚集在一起。
Conclusion
我们提出了一种 Top-K Visual Token Transformer (TVTR) 框架,利用 top-k 视觉令牌选择模块准确选择前 k 个具有区分性的视觉补丁,以减少与身份无关信息的干扰。此外,我们开发了一种全局-局部圆形损失来优化样本与分类器之间的距离(全局圆形损失)以及一批样本之间的距离(局部圆形损失)。实验证明了我们方法的有效性,表明基于 Transformer 的模型在 VI-ReID 任务上具有巨大潜力。在未来的工作中,我们将提供视觉示例,展示哪些图像补丁对于识别一个人是重要的,并给出将 TVTS 集成到 ViT 的中间层的结果。