TPAMI 2024 | 全新框架!深度学习可解释度量学习!

TPAMI 2024 | 全新框架!深度学习可解释度量学习!

DIML: Deep Interpretable Metric Learning via Structural Matching

题目:DIML: 通过结构匹配的深度可解释度量学习

作者:Wenliang Zhao, Yongming Rao, Jie Zhou , and Jiwen Lu
源码:https://github.com/wl-zhao/DIML


在这里插入图片描述

摘要

在本文中,我们提出了一种新的框架,名为DIML,以实现更可解释的深度度量学习。与传统的深度度量学习方法仅给出两张图像之间的全局相似性不同,DIML通过多个局部部分相似性的加权和来计算整体相似性,使人类更容易理解模型区分两张图像的机制。具体而言,我们提出了一种结构匹配策略,通过计算两张图像的特征图之间的最优匹配流,显式地对齐空间embedding。我们还设计了一种多尺度匹配策略,它考虑了全局和局部相似性,并可以显著降低图像检索应用中的计算成本。为了处理某些复杂场景中的视角变化,我们提出使用交叉相关性作为最优传输的边际分布,利用语义信息定位图像中的重要区域。我们的框架是模型不可知的,可以应用于现成的骨干网络和度量学习方法。为了将我们的DIML扩展到更高级的架构,如视觉Transformer(ViTs),我们进一步提出了截断的注意力展开和部分相似性,以克服ViTs中缺乏局部性的问题。我们在深度度量学习的三个主要基准测试CUB200-2011、Cars196和Stanford Online Products上评估了我们的方法,并取得了比流行的度量学习方法更好的结果和更好的可解释性。

关键字

  • 距离度量学习
  • 可解释AI
  • 视觉识别

I. 引言

视觉相似性在包括图像检索[52]、人物识别[9]和图像聚类[49]在内的一系列视觉任务中扮演着重要的角色。最近在视觉相似性学习方面的进展主要是由深度度量学习(DML)推动的,它利用深度神经网络学习一个embedding空间,其中embedding相似性在这个空间中可以有意义地反映样本之间的语义相似性。尽管在学习方法上取得了显著进展,但具有更好可解释性的深度度量学习方法尚未引起社区的广泛关注。理解深度度量学习模型的基本匹配机制对于为许多风险视觉应用(如监控[53]和访问控制[36])开发可靠的智能系统至关重要。

为了提高深度视觉模型的透明度,最近通过解释现有模型[2]、[6]、[50]、[82]或修改模型以获得更好的可解释性[76]、[77]做出了许多努力。例如,视觉归因方法利用相关性或梯度来找到对最终预测贡献高的重要区域。[76]和[77]提出分别通过添加部分约束和树结构来构建可解释的CNN模型。然而,这些方法仅设计用于解释深度模型输出的产生过程,并未考虑样本之间的交互。尽管它们在图像分类[6]、[82]、视觉问答[50]和图像生成[2]方面取得了有希望的结果,但它们不能解释视觉相似性是如何构成的。因此,如何提高深度度量学习方法的可解释性仍然是一个尚未在先前工作中得到充分探讨的开放问题。

在本文中,我们提出了深度可解释度量学习(DIML)框架,作为朝着更透明embedding学习迈出的第一步。与大多数现有的深度度量学习方法通过直接比较特征向量来匹配图像不同,我们提出利用图像的空间结构在匹配过程中提高可解释性,如图1所示。更具体地说,我们通过使用最优传输理论计算特征图之间的最优匹配流来度量两张图像的相似性,使得相似性可以分解为几个部分相似性,这些相似性对整体相似性有不同的贡献。我们的框架由三个关键组成部分构成:1)结构相似性(SS)。与大多数现有的深度度量学习方法通过比较特征向量来匹配图像不同,我们提出了一种新的相似性/距离度量方法,通过基于最优匹配流的特征图中相应部分的相似性来测量;2)空间交叉相关性(CC)。为了处理图像检索问题中的视角变化,我们提出使用空间交叉相关性作为初始边际分布来计算最优传输计划;3)多尺度匹配(MM)。我们还设计了一种多尺度匹配策略,以更好地整合现有的度量学习方法,并使我们能够适应性地调整大规模搜索问题中的额外计算成本。由于我们的方法对模型不可知,并且我们的贡献与先前的深度度量学习方法在架构[25]、目标函数[27]、[52]和采样策略[68]、[81]上是正交的,我们的方法可以应用于现成的骨干网络和度量学习方法,甚至无需训练。

在这里插入图片描述

除了CNN之外,视觉Transformer[17]是另一种显示出巨大潜力的架构,它们在图像分类[56]和下游任务[34]、[65]上都表现出色。因此,视觉Transformer能否在深度度量学习上比CNN表现得更好,以及DIML是否仍然可以在不训练的情况下提高视觉Transformer的性能,这是一个值得探讨的问题。由于为CNN设计的交叉相关性(CC)严重依赖于CNN的平移等变性和空间局部性,我们发现CC不再适用于视觉Transformer。然而,我们展示了通过一些简单的修改,DIML的通用框架仍然有助于解释和改进视觉Transformer在深度度量学习上的性能。具体而言,我们利用视觉Transformer中的多头自注意力机制来设计一种截断的注意力展开方法(TAR),以生成结构匹配的边际分布。此外,我们提出了部分结构相似性,以基于部分最优传输克服某些特定数据集(如SOP[40])中较大的视角变化。我们扩展的DIML可以应用于包括各向同性和层次结构的视觉Transformer,如DeiT[56]和Swin[34],在不需要额外训练的情况下提升性能。

我们在深度度量学习的三个主要基准测试,包括CUB200-2011[61]、Cars196[28]和Stanford Online Products (SOP)[40]上进行了实验,证明了DIML的有效性。我们展示了我们的方法能够在不重新训练模型的情况下,实现更可解释的度量学习,并显著提高各种度量学习方法的性能。此外,我们的实验表明DIML既模型不可知又方法不可知。DIML可以应用于包括CNN(例如,ResNet[23])和视觉Transformer(例如,DeiT[56]和Swin[34])在内的多种主流架构。我们还测试了多种深度度量学习方法,包括Margin[68]、Multisimilarity[66]、Proxy Anchor[27]等,并发现DIML可以持续提升这些方法训练的模型的性能。

本文是我们会议论文[80]的扩展版本。我们做出了几个新的贡献:1)我们将最近流行视觉Transformer(ViTs)引入深度度量学习,并展示了ViTs可以比广泛使用的ResNet骨干网络实现更好的检索性能。2)我们确定了将DIML应用于ViTs的主要困难在于ViTs的局部性较差,这使得空间交叉相关性(CC)操作效果不佳。为此,我们设计了一种新的方法,利用ViTs中的自注意力来计算结构匹配的初始边际分布。我们的新方法可以应用于包括DeiT[56]和Swin[34]在内的各向同性和层次结构视觉Transformer。3)由于交叉相关性不再适用于ViT骨干网络,我们改进了结构匹配,通过部分最优传输减少背景特征的影响。我们还增加了更多的结果、分析和模型的可视化。.

在这里插入图片描述

III. 方法

在本节中,我们详细描述了所提出的深度可解释度量学习(DIML)的关键组成部分。首先,我们简要总结了深度度量学习的基本符号和基本原理。其次,我们描述了结构匹配方法以发展出更可解释的距离度量。第三,我们描述了如何将DIML扩展到视觉Transformer(Vision Transformer)骨干网络。最后,我们展示了如何将所提出的DIML方法应用于各种深度度量学习的客观函数和采样策略,并描述了实现细节。

A. 预备知识:深度度量学习

深度度量学习旨在找到一个由深度神经网络参数化的距离度量,将输入图像特征对映射到一个反映两个图像语义相似性的实数距离。具体来说,给定一组图像集 X = { x k } k = 1 N X = \{x_k\}_{k=1}^N X={xk}k=1N和相应的标签集 Y = { y k } k = 1 N Y = \{y_k\}_{k=1}^N Y={yk}k=1N,深度度量学习引入了深度神经网络 f : X → Φ ⊂ R C f: X \rightarrow \Phi \subset \mathbb{R}^C f:XΦRC,将图像映射到特征 ϕ k = f ( x k ) \phi_k = f(x_k) ϕk=f(xk),其中输入图像的语义模式被提取。当前主流的深度度量学习方法旨在学习马氏距离度量 d ( ⋅ , ⋅ ) d(\cdot, \cdot) d(,),可以表示为:

d ( x k , x l ) = ∥ M f ( x k ) − M f ( x l ) ∥ 2 2 = ∥ g ( ϕ k ) − g ( ϕ l ) ∥ 2 2 , d(x_k, x_l) = \|Mf(x_k) - Mf(x_l)\|_2^2 = \|g(\phi_k) - g(\phi_l)\|_2^2, d(xk,xl)=Mf(xk)Mf(xl)22=g(ϕk)g(ϕl)22,

其中 g ( ϕ k ) = M ϕ k : = ψ k ∈ Ψ g(\phi_k) = M\phi_k := \psi_k \in \Psi g(ϕk)=Mϕk:=ψkΨ是从特征空间 Φ \Phi Φ到embedding空间 Ψ ⊂ R D \Psi \subset \mathbb{R}^D ΨRD的参数化线性投影。按照ResNet[23]和Inception[54]等主干网络的配置, f f f可以分解为 f = GAP ∘ f 1 f = \text{GAP} \circ f_1 f=GAPf1,其中 f 1 f_1 f1提取特征图 ω k = f 1 ( x k ) ∈ R H × W × C \omega_k = f_1(x_k) \in \mathbb{R}^{H \times W \times C} ωk=f1(xk)RH×W×C,GAP是全局平均池化。GAP操作将特征图抽象为向量,以便快速进行相似性计算。

B. 通过最优传输的结构匹配

为了利用图像中的空间结构实现更可解释的深度度量学习,我们设计了一种新的结构匹配方案,基于最优传输理论[60]来计算特征相似性。

我们的核心算法采用了最优传输理论,该理论旨在寻找两个分布之间的最小成本传输计划。给定源分布 μ s \mu_s μs和目标分布 μ t \mu_t μt,分别定义在概率空间 U U U V V V上,可以通过最小化两个分布之间的Wasserstein距离来获得最小成本传输计划:

π ∗ = arg ⁡ min ⁡ π ∈ Π ( μ s , μ t ) ∫ U × V c ( u , v ) d π ( u , v ) , \pi^* = \arg\min_{\pi \in \Pi(\mu_s, \mu_t)} \int_{U \times V} c(u, v) d\pi(u, v), π=argπΠ(μs,μt)minU×Vc(u,v)dπ(u,v),

其中 π ∗ \pi^* π是最优传输计划, Π ( μ s , μ t ) \Pi(\mu_s, \mu_t) Π(μs,μt)是具有边际 μ s \mu_s μs μ t \mu_t μt的联合概率分布, c : U × V → R + c: U \times V \rightarrow \mathbb{R}^+ c:U×VR+是传输成本函数。

不同于上述通用公式,这里我们只需要考虑图像特征图的离散分布匹配。考虑通过主干(例如,ResNet50[23])获得的两个特征图 ω s , ω t ∈ R H × W × C \omega_s, \omega_t \in \mathbb{R}^{H \times W \times C} ωs,ωtRH×W×C。我们首先使用投影层 g g g将特征图中的每个元素分别映射到维度为 D D D的embedding空间:

z s i = g ( ω s i ) ∈ R D , z t j = g ( ω t j ) ∈ R D . z_{s_i} = g(\omega_{s_i}) \in \mathbb{R}^D, \quad z_{t_j} = g(\omega_{t_j}) \in \mathbb{R}^D. zsi=g(ωsi)RD,ztj=g(ωtj)RD.

i i i j j j传输一个单位质量的成本为:

C i , j = c ( i , j ) : = d ( z s i , z t j ) , C_{i,j} = c(i, j) := d(z_{s_i}, z_{t_j}), Ci,j=c(i,j):=d(zsi,ztj),

其中我们使用两个向量之间的距离度量 d ( ⋅ , ⋅ ) d(\cdot, \cdot) d(,)(例如,欧几里得距离或余弦距离)作为传输成本函数 c c c。在这种情况下,两个离散分布 μ s \mu_s μs μ t \mu_t μt之间的传输计划 π \pi π也变得离散。给定两个相应的离散分布,原始的最优传输问题等同于:

T ∗ = arg ⁡ min ⁡ T ≥ 0 tr ( C T ) , subject to  T 1 = μ s , T T 1 = μ t . T^* = \arg\min_{T \geq 0} \text{tr}(C^T), \quad \text{subject to } T\mathbf{1} = \mu_s, T^T\mathbf{1} = \mu_t. T=argT0mintr(CT),subject to T1=μs,TT1=μt.

T ∗ T^* T 是这两个分布之间的最优匹配流,也可以视为两个图像的结构匹配计划。 T i , j ∗ T^*_{i,j} Ti,j 是为了达到整体最小成本而需要从 i i i 移动到 j j j 的质量量,这代表了在两个图像中位置对 ( i , j ) (i, j) (i,j) 对整体匹配的贡献。通过这种方式,我们能够将视觉相似性分解为部分相似性及其对整体相似性的贡献,从而使得我们能够解释和分析深度模型是如何区分两个图像的。

为了高效地解决上述问题(4)中的优化问题,我们采用了引入熵正则化的Sinkhorn散度算法[13],以实现快速训练和推理。修改后的优化问题变为:

T ∗ = arg ⁡ min ⁡ T ≥ 0 { tr ( C T T ) + λ tr ( T ( log ⁡ ( T ) − 1 T ) ) } , T^* = \arg\min_{T \geq 0} \left\{ \text{tr}(C^T T) + \lambda \text{tr}\left( T(\log(T) - \mathbf{1}^T) \right) \right\}, T=argT0min{tr(CTT)+λtr(T(log(T)1T))},

受限条件 T 1 = μ s , T T 1 = μ t T\mathbf{1} = \mu_s, T^T\mathbf{1} = \mu_t T1=μs,TT1=μt

在这里, λ \lambda λ 是一个非负的正则化参数。通过添加熵正则化项,问题(5)变成了一个凸问题,可以使用Sinkhorn-Knopp算法[51]求解。从初始矩阵 K = exp ⁡ ( − C / λ ) K = \exp(-C/\lambda) K=exp(C/λ) 开始,通过迭代投影到边际约束上直到收敛:

a ← μ s / K b , b ← μ t / K T a . a \leftarrow \mu_s / K b, \quad b \leftarrow \mu_t / K^T a. aμs/Kb,bμt/KTa.

收敛后,我们可以得到最优传输计划:

T ∗ = diag ( a ) K diag ( b ) . T^* = \text{diag}(a) K \text{diag}(b). T=diag(a)Kdiag(b).

上述迭代算法是完全可微分的,可以很容易地通过自动微分库如PyTorch[41]实现,并且可以直接应用于任何深度度量学习流程中的匹配过程。

讨论:提出的结构匹配方案与EMD度量学习[78]和Wassersteinembedding学习[19]等相关工作密切相关。然而,与我们的方法不同,它们通常专注于为集合输入学习更好的embedding,这可以通过Wasserstein距离度量学习框架自然解决。这里我们的主要贡献不是匹配算法本身,而是引入结构匹配,以学习更具可解释性的视觉相似性。

C. 深度可解释度量学习

在第III-B节中,我们已经展示了如何使用最优传输计算两个分布之间的距离。本节中,我们将描述如何在度量学习中执行结构匹配。具体来说,我们的方法由三个组成部分构成:1) 我们使用最优传输来计算两个图像的结构相似性(SS);2) 我们提出计算空间交叉相关性(CC)来初始化(1)中的边际分布;3) 我们提出多尺度匹配(MM)来改善度量并降低计算成本。

结构相似性 (SS)

给定边际分布 μ s \mu_s μs μ t \mu_t μt(稍后将详细讨论),以及成本矩阵 C C C,我们可以通过解决(4)来获得最优传输 T ∗ T^* T。一旦我们有了 T ∗ T^* T,我们可以定义两个特征图 z s , z t ∈ R H W × D z_s, z_t \in \mathbb{R}^{HW \times D} zs,ztRHW×D的结构相似性如下:

s struct ( z s , z t ) = ∑ 1 ≤ i , j ≤ H W s ( z s i , z t j ) T i , j ∗ , s_{\text{struct}}(z_s, z_t) = \sum_{1 \leq i,j \leq HW} s(z_{s_i}, z_{t_j}) T^*_{i,j}, sstruct(zs,zt)=1i,jHWs(zsi,ztj)Ti,j,

其中 s ( ⋅ , ⋅ ) s(\cdot, \cdot) s(,)是计算两个向量之间相似度的函数。我们结构相似性使我们能够研究整体相似性的构成,因此我们可以轻松地分解相似性并理解两幅图像中不同位置之间的相似性如何贡献于整体相似性。类似地,给定任何距离函数 d ( ⋅ , ⋅ ) d(\cdot, \cdot) d(,),我们也可以得到我们结构距离:

d struct ( z s , z t ) = ∑ 1 ≤ i , j ≤ H W d ( z s i , z t j ) T i , j ∗ . d_{\text{struct}}(z_s, z_t) = \sum_{1 \leq i,j \leq HW} d(z_{s_i}, z_{t_j}) T^*_{i,j}. dstruct(zs,zt)=1i,jHWd(zsi,ztj)Ti,j.

交叉相关性 (CC)

另一个重要部分是边际分布 μ s \mu_s μs μ t \mu_t μt的定义。一个简单的解决方案是使用均匀分布初始化它们,即:

μ s i = μ t i = 1 H W , ∀ 1 ≤ i ≤ H W , \mu_{s_i} = \mu_{t_i} = \frac{1}{HW}, \quad \forall 1 \leq i \leq HW, μsi=μti=HW1,∀1iHW,

这表明每个位置的相似性对整体相似性具有相同的权重。在结构匹配算法中,边际分布应该表征每个空间位置的重要性。简单地使用均匀分布意味着我们希望以同等重要性匹配所有特征,这在某些情况下是不理想的。例如,一些图像包含的背景信息可能对匹配不太有用,因此我们希望对背景施加较低的权重。另一个常见情况是,当我们希望匹配具有不同视图的两幅图像时(例如,第一幅图像包含整个对象,而第二幅图像只包含部分对象),我们同样只需要关注第一幅图像的某个部分,并将其余部分视为背景。为了找到与相似性最相关的区域,我们提出使用两幅图像之间的交叉相关性作为匹配算法的边际分布。具体来说,我们首先对 z s z_s zs z t z_t zt进行全局平均池化,得到全局特征 z ˉ s \bar{z}_s zˉs z ˉ t \bar{z}_t zˉt。然后,我们将一幅图像的全局特征在另一幅图像的特征图上滑动,并在每个空间位置计算点相关性。形式上,交叉相关性计算如下:

α s i = ⟨ z ˉ s , z t i ⟩ ∥ z ˉ s ∥ ∥ z t i ∥ , α t i = ⟨ z ˉ t , z s i ⟩ ∥ z ˉ t ∥ ∥ z s i ∥ , \alpha_{s_i} = \frac{\langle \bar{z}_s, z_{t_i} \rangle}{\|\bar{z}_s\| \|z_{t_i}\|}, \quad \alpha_{t_i} = \frac{\langle \bar{z}_t, z_{s_i} \rangle}{\|\bar{z}_t\| \|z_{s_i}\|}, αsi=zˉs∥∥ztizˉs,zti,αti=zˉt∥∥zsizˉt,zsi,

其中 ⟨ ⋅ , ⋅ ⟩ \langle \cdot, \cdot \rangle ,表示点积, α k i ∈ [ − 1 , 1 ] \alpha_{k_i} \in [-1, 1] αki[1,1]。获得交叉相关性后,我们可以使用 α k i \alpha_{k_i} αki来反映 z k i z_{k_i} zki在匹配问题中的重要性。为了进一步减少低相关区域的影响,我们丢弃 α k i \alpha_{k_i} αki的负值,并将其归一化以获得最终的边际分布:

γ k i = max ⁡ ( 0 , α k i ) , μ k i = γ k i ∑ i ′ γ k i ′ , ∀ 1 ≤ i ≤ H W , k ∈ { s , t } . \gamma_{k_i} = \max(0, \alpha_{k_i}), \quad \mu_{k_i} = \frac{\gamma_{k_i}}{\sum_{i'} \gamma_{k_{i'}}}, \quad \forall 1 \leq i \leq HW, k \in \{s, t\}. γki=max(0,αki),μki=iγkiγki,∀1iHW,k{s,t}.

一旦我们有了边际分布 μ ( k ) \mu^{(k)} μ(k),我们就可以应用第III-B节中的结构匹配算法来计算两幅图像之间的相似性。第IV-C节中的实验结果将展示交叉相关性是DIML提高性能的一个不可或缺的组成部分。

多尺度匹配 (MM)

尽管DIML能够捕捉到两幅图像的结构相似性,并且可以提供易于被人理解的结果,它需要更多的计算量(O( H 2 W 2 H^2 W^2 H2W2))来解决最优传输问题。在图像检索应用中,通常有大量的图像在图库中。给定一幅图像作为锚点,计算锚点与图库中所有图像之间的结构相似性是低效的。为了降低计算成本,我们提出了一种多尺度匹配方法用于图像检索。设 z a ∈ R H × W × D z_a \in \mathbb{R}^{H \times W \times D} zaRH×W×D是锚点图像的特征图, z k ∈ R H × W × D , k = 1 , . . . , N z_k \in \mathbb{R}^{H \times W \times D}, k = 1, ..., N zkRH×W×D,k=1,...,N是图库中所有图像的特征图。在第一尺度(1×1),我们使用全局平均池化计算全局特征 z ˉ a , z ˉ k ∈ R D \bar{z}_a, \bar{z}_k \in \mathbb{R}^D zˉa,zˉkRD,并像传统的DML方法一样计算 z ˉ a \bar{z}_a zˉa与每个 z ˉ k \bar{z}_k zˉk之间的余弦相似性。然后我们可以定义一个截断数 K K K,并选择相似性得分最高的图像,记下它们的索引为 I K I_K IK,以便进一步使用我们的方法增强相似性。在第二尺度( H × W H \times W H×W),我们计算锚点 z a z_a za与每个 z k , k ∈ I K z_k, k \in I_K zk,kIK之间的结构相似性。由于 K K K是固定的,DIML的额外计算成本可以得到控制。通过多尺度匹配,我们可以过滤掉明显不相似的样本(1×1尺度,余弦相似性),并专注于困难的样本( H × W H \times W H×W尺度,结构相似性)。两尺度的相似性结合也能同时捕获语义和空间信息,这也有助于提高检索精度。第IV-C节中的实验结果将表明,一个小的 K K K值就能带来显著的性能提升。

D. 将DIML扩展至视觉Transformer

Transformer

Transformer(Transformers),最初为自然语言处理任务设计,自从视觉Transformer(Vision Transformers, ViTs)问世以来,因其在包括图像识别和下游任务在内的多种计算机视觉任务中的卓越性能而受到计算机视觉界的极大关注[17], [34], [56], [65]。在视觉Transformer中,输入图像被划分为多个小块(patches),并通过全连接层将它们映射为token。这些token通过Transformer层的堆叠处理,其中每层执行以下操作:

X ← MHSA ( LayerNorm ( X ) ) + X X \leftarrow \text{MHSA}(\text{LayerNorm}(X)) + X XMHSA(LayerNorm(X))+X

X ← FFN ( LayerNorm ( X ) ) + X X \leftarrow \text{FFN}(\text{LayerNorm}(X)) + X XFFN(LayerNorm(X))+X

具体来说,多头自注意力(MHSA)机制被用来捕获长期依赖并执行空间混合,而通道混合则通过前馈网络(FFN),一个简单的两层MLP来实现。在空间混合和通道混合中都使用了残差连接。在我们的实验中,我们也发现视觉Transformer可以在深度度量学习中实现更好的性能。然而,DIML是否能够进一步提高检索精度和可解释性尚不清楚。视觉Transformer与CNNs的主要区别在于空间交互的建模方式。CNNs利用卷积操作从局部窗口聚合特征,而视觉Transformer通过自注意力捕获长期交互。因此,视觉Transformer通常缺乏局部性,因为它们没有平移等变性的先验知识。结果,为最优传输设计的空间交叉相关性(CC)不再适用于视觉Transformer。为此,我们需要研究如何为视觉Transformer主干设计替代的交叉相关性方法。

截断注意力展开

自注意力机制鼓励视觉Transformer自动关注信息丰富的token。这一特性使得通过注意力图(attention maps)解释视觉Transformer成为可能。注意力展开(AR)方法旨在通过跨层聚合注意力图来实现Transformer的可视化:

A ^ l = I + ∑ h A l h , l = 1 , 2 , . . . , L \hat{A}_l = I + \sum_h A^h_l, \quad l = 1, 2, ..., L A^l=I+hAlh,l=1,2,...,L

μ AR = A ^ 1 A ^ 2 . . . A ^ L \mu_{\text{AR}} = \hat{A}_1 \hat{A}_2 ... \hat{A}_L μAR=A^1A^2...A^L

其中 A l h A^h_l Alh是第 l l l层中第 h h h个头的注意力权重, A ^ l \hat{A}_l A^l是考虑残差连接的归一化注意力。注意力展开可以定位视觉Transformer在输入图像中的焦点。然而,由于缺乏局部性的MHSA机制,不同Transformer块之间的空间结构变化很大。由于我们的结构匹配是在特征图(例如,最后一层的输出)上执行的,输入图像上的注意力不是很有帮助。为了获得有意义的注意力图,我们提出了截断注意力展开:

μ TAR = A ^ l 0 A ^ l 0 + 1 . . . A ^ L \mu_{\text{TAR}} = \hat{A}_{l_0} \hat{A}_{l_0+1} ... \hat{A}_L μTAR=A^l0A^l0+1...A^L

其中 l 0 l_0 l0是一个超参数,用于控制注意力展开计算的起始层,并可以通过实验确定。如果 l 0 l_0 l0太小, μ TAR \mu_{\text{TAR}} μTAR将接近 μ AR \mu_{\text{AR}} μAR,倾向于反映输入图像上的注意力而不是特征图。如果 l 0 l_0 l0太大,展开结果将变得不够准确,因为只考虑了 L − l 0 + 1 L - l_0 + 1 Ll0+1层。适当的 l 0 l_0 l0可以帮助我们获得更准确的注意力展开,直接用作我们结构匹配流水线中的边际分布。在我们的实验中,我们发现 l 0 = 8 l_0 = 8 l0=8在大多数情况下对于标准的12层视觉Transformer来说已经足够产生最佳结果。我们还将提供有关 l 0 l_0 l0如何影响性能的详细分析。

除了注意力展开外,还有另一种称为LRP(逐层相关性传播)的方法,该方法最近已被适配到视觉Transformer中[7]。LRP假定每层所有神经元的相关性之和是一个常数,并且可以通过使用深度泰勒分解(DTD)框架[37]从预测反向传播相关性到输入图像来计算。LRP可以按照以下方式计算:

A ~ l = I + ∑ h ∇ A l h ⊙ R l , l = 1 , 2 , . . . , L , \tilde{A}_l = I + \sum_h \nabla A^h_l \odot R^l, \quad l = 1, 2, ..., L, A~l=I+hAlhRl,l=1,2,...,L,

μ LRP = A ^ 1 A ^ 2 . . . A ^ L , \mu_{\text{LRP}} = \hat{A}_1 \hat{A}_2 ... \hat{A}_L, μLRP=A^1A^2...A^L,

其中 R l R^l Rl表示来自第 l l l层的相关性分数(详情请参考[7]), ∇ A l h \nabla A^h_l Alh是注意力矩阵的梯度。与截断的注意力展开类似,我们也尝试了LRP的截断版本(以下简称为TLRP),在特定层 l 0 l_0 l0终止传播:

μ TLRP = A ~ l 0 A ~ l 0 + 1 . . . A ~ L , \mu_{\text{TLRP}} = \tilde{A}_{l_0} \tilde{A}_{l_0+1} ... \tilde{A}_L, μTLRP=A~l0A~l0+1...A~L,

然而,TLRP需要注意力图的梯度,因此需要额外的反向传播,引入了额外的内存和计算成本。在我们的实验中,我们发现TLRP通常可以和TAR(截断注意力展开)达到类似的性能,但TAR更高效。因此,我们选择TAR作为获取边际分布的默认方法。

部分结构相似性

尽管我们可以通过截断注意力展开为视觉Transformer的两个特征图之间的结构匹配提供良好的边际分布,但如何处理两个视图不同的图像仍然是一个问题。对于CNNs,这个问题通过交叉相关性解决,因为它可以自动丢弃背景。为了实现视觉Transformer主干的相同功能,我们提出了基于部分最优传输的部分结构相似性。使用类似于(4)的公式,部分最优传输问题可以写成:

T ∗ = arg min tr ( C T ) , subject to  T 1 ≤ μ s , T T 1 ≤ μ t , 1 T T 1 = s T^* = \text{arg min} \quad \text{tr}(C^T), \quad \text{subject to } T \mathbf{1} \leq \mu_s, T^T \mathbf{1} \leq \mu_t, \mathbf{1}^T T \mathbf{1} = s T=arg mintr(CT),subject to T1μs,TT1μt,1TT1=s

其中 0 ≤ s ≤ 1 0 \leq s \leq 1 0s1表示要传输的总质量的比例。在两个图像的结构匹配的背景下, s s s可以用来控制前景区域的比例。通过引入表示背景的虚拟点,部分最优传输可以转换为标准最优传输并轻松解决[5]。具体来说,我们将虚拟点的质量设置为 μ s HW + 1 = μ t HW + 1 = 1 − s \mu_{s_{\text{HW}+1}} = \mu_{t_{\text{HW}+1}} = 1 - s μsHW+1=μtHW+1=1s,并扩展代价矩阵 C C C以获得 C C C

C = [ C ξ 1 T ξ 1 2 ξ + A ] C = \begin{bmatrix} C & \xi \mathbf{1}^T \\ \xi \mathbf{1} & 2\xi + A \end{bmatrix} C=[Cξ1ξ1T2ξ+A]

其中 A > max ⁡ ( C i j ) A > \max(C_{ij}) A>max(Cij) ξ \xi ξ是一个有界标量。然后我们将上述Sinkhorn散度算法[13]应用于扩展的边际分布和代价矩阵。最终结果是(19)的解。在我们的实验中,我们将分析部分结构相似性的效果以及传输分数 s s s的效果。

讨论

尽管DIML在CNN和视觉Transformer上的详细实现略有不同,它们都位于同一个总体框架之内,该框架计算两个输入样本的特征图之间的结构相似性。唯一的区别在于如何初始化最优传输的边际分布,以及如何处理两个具有不同视图的图像。对于CNN,我们使用交叉相关性同时解决这两个问题。对于视觉Transformer,我们提出了截断注意力展开和部分结构相似性来相应地解决上述两个问题。尽管具体实现的细节不同,它们都针对相同的目标,我们相信我们的DIML对于不同的主干网络仍然是一个通用框架。

E. 实现

DIML的一个主要优点是,我们可以将DIML应用于任何预训练模型,在不需要训练的情况下提高性能。此外,我们也可以将DIML整合到训练目标中。在本节中,我们将描述如何在这两种场景中使用DIML。

测试

给定一个预训练模型,我们首先计算图像对的特征图(在全局池化层之前)。然后,我们可以使用第III-C节中描述的算法来计算结构相似性。然而,在实践中,特征图可能有时很大。因此,我们可以使用ROI Align来池化特征图,使其大小减小,从而以相对较低的计算成本计算结构相似性。在实现中,我们发现使用较小的特征图可以在成本和性能之间取得良好的折衷。

训练

我们也可以将DIML和现有的度量学习方法结合起来,以促进训练。例如,使用Margin loss作为例子,来展示如何将DIML整合到训练目标中。Margin loss定义为:

L margin ( k , l ) = σ + ( − 1 ) [ y k = y l ] ( D k , l − β ) + L_{\text{margin}}(k, l) = \sigma + (-1)^{[ y_k = y_l ]} (D_{k,l} - \beta)_+ Lmargin(k,l)=σ+(1)[yk=yl](Dk,lβ)+

其中 σ \sigma σ β \beta β是可学习的参数, D k , l D_{k,l} Dk,l用于测量图像 k k k l l l之间的距离:

D k , l = 1 2 [ d struct ( z k , z l ) + d ( z ˉ k , z ˉ l ) ] D_{k,l} = \frac{1}{2} [ d_{\text{struct}}(z_k, z_l) + d(\bar{z}_k, \bar{z}_l) ] Dk,l=21[dstruct(zk,zl)+d(zˉk,zˉl)]

值得注意的是,当将DIML应用于训练期间的基于代理的方法时存在轻微的差异。以ProxyNCA为例,原始目标是:

L proxy = − 1 B ∑ k ∈ B log ⁡ exp ⁡ ( − d ( ψ k , η y k ) ) ∑ c ∈ C ∖ { y k } exp ⁡ ( − d ( ψ k , η c ) ) L_{\text{proxy}} = -\frac{1}{B} \sum_{k \in B} \log \frac{\exp(-d(\psi_k, \eta_{y_k}))}{\sum_{c \in C \setminus \{y_k\}} \exp(-d(\psi_k, \eta_c))} Lproxy=B1kBlogcC{yk}exp(d(ψk,ηc))exp(d(ψk,ηyk))

其中 d d d是欧几里得距离, η c ∈ R D \eta_c \in \mathbb{R}^D ηcRD是第 c c c类的代理。使用DIML时,我们需要使用尺寸为 R H × W × D \mathbb{R}^{H \times W \times D} RH×W×D的代理,记为 { ρ c , c ∈ C } \{ \rho_c, c \in C \} {ρc,cC}。然后,我们可以将 d ( ψ k , η c ) d(\psi_k, \eta_c) d(ψk,ηc)替换为:

d ( ψ k , η c ) ← 1 2 [ d ( ψ k , η c ) + d struct ( z k , ρ c ) ] d(\psi_k, \eta_c) \leftarrow \frac{1}{2} [ d(\psi_k, \eta_c) + d_{\text{struct}}(z_k, \rho_c) ] d(ψk,ηc)21[d(ψk,ηc)+dstruct(zk,ρc)]

其中 η c = GAP ( ρ c ) \eta_c = \text{GAP}(\rho_c) ηc=GAP(ρc)。因此,我们的DIML可以广泛应用于各种深度度量学习方法。

IV. 实验

为了评估我们提出的DIML的性能,我们在图像检索研究领域中广泛使用的三个数据集上进行了实验:CUB200-2011、Cars196和Stanford Online Products (SOP)。

A. 实验设置

数据集

我们采用零样本图像检索设置评估我们的方法,其中训练集和测试集包含没有交集的图像类别。遵循之前作品[39]、[48]中的训练/测试集划分:

  • CUB200-2011[61]:包含200种鸟类的11,788张图像。前100类(5,864张图像)用于训练,其余100类(5,924张图像)用于测试。
  • Cars196[28]:包含196类汽车的16,185张图像。前98类(8,054张图像)用于训练,剩余98类(8,131张图像)用于测试。
  • SOP[40]:包含从eBay.com爬取的22,634个在线产品的120,053张图像。前11,318类(59,551张图像)用于训练,其余11,316类(60,502张图像)用于测试。SOP数据集中的图像在视点、配置和照明方面变化很大,这对深度度量学习方法的评估更具挑战性。

公平的评估协议

尽管有许多先前的度量学习方法,但由于不同方法之间的不公平比较,[39]指出随时间的改进并不显著。因此,我们尽力通过在相同的评估协议下实现所有方法来提供公平的结果。对于所有基线方法,我们使用在ImageNet[29]上预训练的ResNet-50[23]作为主干网络。在训练期间冻结BatchNorm层,并将最后一个线性层的输出通道修改为固定embedding维度D。我们使用embedding大小D = 128,并在大多数实验中遵循[48]中的其他实现设置,除非另有说明。

评估指标

大多数先前的工作使用Recall@K、归一化互信息(NMI)和F1分数作为准确性指标。然而,正如[39]所指出的,NMI和F1分数有时可能会给出embedding空间的错误图像。为此,我们采用了[39]中使用的评估指标:Precision at 1 (P@1)、R-Precision (RP)和Mean Average Precision at R (MAP@R)。

  • P@1:也称为度量学习中的Recall@1。给定一个样本 x q x_q xq和特征编码器 ϕ ( ⋅ ) \phi(\cdot) ϕ(),计算 x q x_q xq的最近邻居集合的精度:
    N k q = arg ⁡ min ⁡ N ⊂ X test , ∣ N ∣ = k ∑ x f ∈ N d ( ϕ ( x q ) , ϕ ( x f ) ) N_k^q = \arg \min_{N \subset X_{\text{test}}, |N| = k} \sum_{x_f \in N} d(\phi(x_q), \phi(x_f)) Nkq=argNXtest,N=kminxfNd(ϕ(xq),ϕ(xf))
    然后P@k可以测量为:
    P @ k = 1 ∣ X test ∣ ∑ x q ∈ X test 1 k ∑ x i ∈ N k q [ 1 , y i = y q ] P@k = \frac{1}{|X_{\text{test}}|} \sum_{x_q \in X_{\text{test}}} \frac{1}{k} \sum_{x_i \in N_k^q} [1, y_i = y_q] P@k=Xtest1xqXtestk1xiNkq[1,yi=yq]

  • R-precision:在[39]中定义。具体来说,对于每个样本 x q x_q xq,设R为与 x q x_q xq相同类别的图像数量,R-precision简单地定义为P@R。

  • MAP@R:与平均精度(MAP)类似,但将最近邻居的数量限制为R。因此,它用R-precision替换MAP计算中的精度:

    M A P @ R = 1 R ∑ i = 1 R P ( i ) MAP@R = \frac{1}{R} \sum_{i=1}^R P(i) MAP@R=R1i=1RP(i)
    其中
    P ( i ) = [ P @ i , 如果第i个检索是正确的 ; 0 , 否则 ] P(i) = [P@i, \text{如果第i个检索是正确的}; 0, \text{否则}] P(i)=[P@i,如果第i个检索是正确的;0,否则]
    从上述定义中,我们可以看到MAP@R是一个聚合指标,它考虑了Recall@K中的不同K值。因此,我们认为MAP@R是一个更通用的指标,可以反映度量学习方法的性能。我们还将展示MAP@R的结果通常与Recall@K一致。

实现

同样值得注意的是,我们提出的DIML不需要任何培训。因此,我们的目的是证明我们的方法可以提高性能给定任何训练模型作为基准。因此,我们在广泛的损失函数(边缘[68]、弧面[15]等)上进行了实验。以及采样方法(距离[68]、N-Pair [52]等)证明了该方法的有效性和泛化能力。对于大多数的基线方法,我们遵循来自[48]的实现。

B. 主要结果

DIML for CNNs

我们首先通过将DIML应用于广泛的度量学习方法来评估我们的方法。我们使用前文提到的评估指标来衡量性能:精确度@1(P@1)、R-精确度(RP)和R平均精度(MAP@R),结果如表I所示。在所有实验中,我们将截断数K设置为100,特征图大小G设置为4。我们观察到我们的方法可以在所有三个基准数据集上提高所有模型的性能,无需额外训练。特别是在Cars196数据集上,我们展示了在配备了我们的DIML后,所有方法的性能都得到了显著提升。我们还在补充材料中使用Recall@K(K = 1, 2, 4, 8)作为评估指标比较了性能,发现我们的DIML也可以在Recall@K上提高基线方法的性能。

在这里插入图片描述

DIML在视觉Transformer上的应用

我们将DIML扩展到两个代表性的视觉Transformer:DeiT [56]和Swin [34]。DeiT [56]是一个各向同性视觉Transformer,由12个标准Transformer层组成,整个网络中使用恒定分辨率(14×14)。Swin [34]是一个分层视觉Transformer,包含4个具有不同分辨率(56×56, 28×28, 14×14, 7×7)的阶段,其中自注意力在移动的7×7局部窗口中执行,以减少计算成本。注意,SwinTransformer的最后一个阶段的自注意力可以被视为全局自注意力,因为特征图的大小与窗口大小相同。因此,我们为标准自注意力架构设计的扩展DIML(见第III-D节)自然适合DeiT和Swin架构。具体来说,我们使用最后一层的输出来执行结构匹配。默认情况下,使用截断注意力展开(TAR)设置边际分布,仅在SOP数据集上使用部分最优传输。对于DeiT主干,我们将截断注意力展开的起始层设置为l0 = 8;对于Swin主干,我们使用最后阶段的第一层作为起始层。由于SOP数据集中存在较大的视图变化,我们仅在SOP数据集上使用部分结构相似性。我们在CUB200-2011、Cars196和SOP数据集上使用我们扩展的DIML对视觉Transformer主干进行实验,结果如表II所示,其中所有基线模型均使用Margin [68]损失训练。我们展示了我们的DIML可以在不进行额外训练的情况下提高DeiT [56]和Swin [34]在所有三个数据集上的性能。具体来说,DIML可以在CUB200-2011和Cars196上将DeiT-S的性能提高34%。这些结果清楚地表明,我们的DIML也可以作为增强具有视觉Transformer主干的深度度量学习模型的强大工具,无需额外训练。

在这里插入图片描述

C. 消融研究与分析

在本节中,我们将在各种设置中评估DIML,并提供详细的实验和可视化分析。

1) 对CNN的DIML分析:特征图大小的影响

我们对特征图大小 G G G 进行了消融研究。在实验中,我们使用ResNet50 [23] 作为主干网络,池化层前的特征图大小为 7 × 7 7 \times 7 7×7。因此,我们需要将特征图池化到更小的尺寸 G × G G \times G G×G 以减少计算复杂性。具体来说,我们让 G ≤ 7 G \leq 7 G7 并评估 G = 1 , 2 , 4 , 7 G = 1, 2, 4, 7 G=1,2,4,7 的情况。结果如表IV所示,我们观察到我们的方法在一般情况下具有更大的 G G G 时表现更好。我们还发现 G = 4 G = 4 G=4 是在性能和计算复杂性之间取得良好折衷的方案。

不同组件的影响

DIML由三个组件组成:结构相似性(SS)、交叉相关(CC)和多尺度匹配(MM)。我们将分析每一个的影响,如表III所示。我们首先采用结构相似性代替标准余弦相似性(我们在公式 ( 10 ) (10) (10) 中对 μ s \mu_s μs μ t \mu_t μt 使用均匀分布)。我们发现SS可以在除SOP之外的所有数据集上提高性能(如下划线突出所示)。这主要是因为SS算法旨在将源图像的每个部分与目标图像匹配。然而,SOP数据集中的视图变化很大,这阻碍了SS的应用。其次,我们展示了多尺度匹配可以利用语义信息并提高所有三个数据集的性能。最后,我们用通过交叉相关计算的分布替换均匀分布。我们发现以这种方式获得的边际分布有助于探索图像的重要区域,并可以进一步提高性能。

在这里插入图片描述

截断数的影响

为了展示截断数 K K K 如何影响我们的DIML,我们在Margin [68] 和Multi-Similarity [66] 上测试了从0到500的不同 K K K 值(图3)。注意, K = 0 K = 0 K=0 意味着没有使用结构相似性,这与基线相同。我们发现即使是很小的 K K K 也可以在性能上带来显著的改进(尤其是对于 P @ 1 P@1 P@1 指标)。一般来说,检索精度随着 K K K 的增加而增长,并在 K K K 达到100之前饱和。这一现象表明,用一个固定且相对较小的 K K K,我们就可以享受显著的性能提升,而额外的计算成本和训练成本保持不变。

在这里插入图片描述
在这里插入图片描述

训练的影响

除了默认设置,我们使用DIML在任何预训练模型上进行测试外,我们还可以将结构相似性纳入训练目标(见第III-E节的详细信息)。在表IV中,我们比较了三种情况下的性能:(1)不使用DIML测试或训练(与基线相同)(2)仅使用DIML测试(2)使用DIML测试和训练。结果列在表IV中。我们发现在大多数情况下,使用DIML测试预训练模型已经可以显著提高基线。此外,有时在训练阶段应用DIML也是有用的。

在这里插入图片描述

embedding大小的影响

我们提出的DIML在不同的embedding大小下也具有鲁棒性。除了表I中的 D = 128 D = 128 D=128 的结果外,我们还对Margin [68]、Multi-Similarity [66] 和Proxy Anchor [27] 进行了 D = 64 / 512 D = 64/512 D=64/512 的实验,结果总结在表V中。我们展示了我们的方法可以一致地提高这三种方法的性能,无论embedding大小 D D D 如何变化。

在这里插入图片描述

2) 对视觉Transformer的DIML分析:CC、TLRP和TAR之间的比较

我们首先研究了生成最优传输边际分布的不同方法。具体来说,我们考虑了三种方法,包括交叉相关(CC,最初为CNN设计)、截断层级相关传播(TLRP)和截断注意力展开(TAR)。对于TLRP和TAR,我们测试了三个不同的起始层: l 0 = 1 , 8 , 12 l_0 = 1, 8, 12 l0=1,8,12。我们在表VI中总结了我们的结果,报告了在CUB200-2011 [61]、Cars196 [28]和SOP [40]上的 P @ 1 P@1 P@1、RP和MAP@R。首先,我们观察到DIML-CC的表现比基线方法差,表明交叉相关不再适合Transformer主干。其次,我们展示了起始层 l 0 l_0 l0 是TLRP和TAR的重要超参数。从第一层或最后一层计算注意力都不如从中间层(例如, l 0 = 8 l_0 = 8 l0=8 )效果好。第三,我们发现截断注意力展开通常可以取得与截断层级相关传播相似或更好的性能。然而,截断层级相关传播需要额外的反向传播来获得注意力矩阵的梯度,从而引入额外的计算成本。相比之下,截断注意力展开只需要在前向过程中存储注意力矩阵。值得注意的是,由于截断注意力展开可以以无梯度模式运行,它也需要更少的内存。因此,由于其效率和有效性,我们更倾向于使用截断注意力展开。

在这里插入图片描述

起始层 l 0 l_0 l0 的消融研究

从我们之前的讨论和表VI的结果中,我们已经展示了起始层 l 0 l_0 l0 对TAR和TLRP都很重要。现在我们提供对起始层 l 0 l_0 l0 的更详细分析。我们使用DeiT-S [56] 主干网络在不同起始层 l 0 l_0 l0 从1到12的范围进行实验。基线模型使用Margin [68] 准则训练,我们报告了相对于基线的改进随着 l 0 l_0 l0 增加的变化情况如图5所示。首先,我们展示了我们的DIML可以一致地提高不同 l 0 l_0 l0 的基线模型在所有三个指标 P @ 1 P@1 P@1、RP和MAP@R 中的性能。其次,我们观察到当 l 0 l_0 l0 变大时,CUB-200上的性能首先增加然后减少,最佳性能在 l 0 ≈ 8 l_0 \approx 8 l08 时达到。对于Cars196, P @ 1 P@1 P@1 也表现出类似的模式,而RP和MAP@R在 l 0 ≥ 8 l_0 \geq 8 l08 后趋于饱和。总之,我们得出结论 l 0 = 8 l_0 = 8 l0=8 是大多数情况下的好选择,我们将 l 0 = 8 l_0 = 8 l0=8 作为起始层的默认值。

在这里插入图片描述

不同准则下的DIML比较

为了进一步证明我们DIML的普遍性,我们使用DeiT-S [56] 和 Swin-T [34] 使用两种不同的准则:Margin [68] 和 MultiSimilarity [66]。我们在CUB200-2011 [61] 和 Cars196 [28] 上测试了基线模型和我们的方法,结果总结在表VII中。我们展示了我们的扩展DIML不依赖于模型训练的准则。值得注意的是,DIML可以提高使用这两种类型准则训练的DeiT-S在 P @ 1 P@1 P@1 上超过5%的性能。这些结果清楚地表明,我们的方法可以应用于不同的预训练深度度量学习模型,以一致地提高性能。

在这里插入图片描述

部分结构相似性的影响

为了处理像SOP [40]这样的数据集中的较大视图变化,我们提出了基于部分最优传输的部分结构相似性,因为原始的交叉相关对视觉Transformer无效,如表VI所示。如表VIII所示,我们使用不同的主干网络,包括DeiT [56] 和 Swin [34],在SOP数据集上分析了部分结构相似性(PSS)的有效性。由于PSS是专门针对大视图变化设计的,我们只在SOP [40] 数据集上进行实验。对于每个主干,我们比较了基线模型、不带PSS的DIML和带PSS的DIML的性能。我们的结果表明,DIML可以一致地提高带或不带PSS的基线模型的性能。当使用PSS时,相对于基线的改进可以进一步扩大。例如,PSS可以将DeiT-S + DIML的 P @ 1 P@1 P@1 从78.14提高到78.65。这些结果清楚地表明,部分结构相似性对我们在SOP数据集上的DIML是有帮助的。

在这里插入图片描述

传输分数 s s s 的影响

在部分结构相似性中, s s s 是一个重要的超参数,它控制要传输的质量比例。我们在SOP数据集 [40] 上使用DeiT-S [56] 和 Swin-T [34] 进行实验,验证了传输分数 s s s 的影响,结果总结在表IX中。我们测试了四个不同的 s s s 值:0.2, 0.5, 0.8, 1.0,其中 s = 1.0 s = 1.0 s=1.0 等同于标准结构相似性,因为所有质量都被传输。我们的结果表明 s = 0.8 s = 0.8 s=0.8 对于DeiT-S和Swin-T都能获得最佳结果,而 𝑠 过小或过大都会降低性能。因此,我们在实现中保持 s=0.8。

在这里插入图片描述

用户研究

为了通过人类评估来评估我们的方法,我们测试了三种不同的度量学习可解释方法,包括1) 使用交叉相关(DIMLCNN-CC)的CNN的DIML;2) 使用交叉相关(DIMLViT-CC)的ViT的DIML;3) 使用截断注意力展开(DIML-ViT-TAR)的ViT的DIML。我们从CUB200-2011 [61] 的测试集中随机选择了20个样本,并向用户提供了三种方法的可视化以及原始图像对(请参考补充材料中的示例)。注意,为了公平比较,不同可解释方法的结果是随机打乱的,以形成选择。我们收集了169名志愿者的结果,并计算了每种方法被选为最佳方法的频率,如表X所示。我们发现DIML-ViT-TAR在大多数情况下都优于其他方法,这进一步验证了所提出方法的有效性。

在这里插入图片描述

D. 可视化

可视化DIML在CNN上的应用

为了更好地理解我们的方法是如何工作的,我们在图6中提供了CUB200- 2011 [61]的一些可视化信息,其中每对图像都来自同一类别。首先,我们使用热图展示了通过交叉相关性计算得到的边际分布 μ s \mu_s μs μ t \mu_t μt,发现这些分布能够聚焦于图像中的一些具有区分性的部分,例如头、脚等。接着,我们展示了最优传输流 T i , j ∗ T^*_{i,j} Ti,j和相似性 S i , j = s ( z s i , z t j ) S_{i,j} = s(z_{s_i}, z_{t_j}) Si,j=s(zsi,ztj)对于一些空间位置对(i, j)的情况。由于 T ∗ T^* T中所有值的总和等于1且每个 T i , j ∗ T^*_{i,j} Ti,j相对较小,我们使用一个缩放后的版本 T ^ i , j ∗ = G 4 T i , j ∗ \hat{T}^*_{i,j} = G^4 T^*_{i,j} T^i,j=G4Ti,j,以便一个均匀传输流得到 T ^ i , j ∗ = 1 , ∀ i , j \hat{T}^*_{i,j} = 1, \forall i, j T^i,j=1,i,j。我们用红色(或蓝色)箭头表示对最终结构相似性贡献较大(或较小)的位置对(i, j)。箭头旁边的公式表示为 T ^ i , j ∗ × S i j \hat{T}^*_{i,j} \times S_{ij} T^i,j×Sij。观察到我们的方法可以匹配相似部分,并为这些部分分配较高的 T i , j ∗ T^*_{i,j} Ti,j值,同时对那些对于判断两幅图像相似性不太有用的部分分配较低的 T i , j ∗ T^*_{i,j} Ti,j值。最后,我们展示了通过使用最优传输矩阵 T ∗ T^* T重新加权相似性矩阵 S S S后,我们提出的结构相似性(用粗体表示)比标准余弦相似性(用浅体表示)有显著提高。

在这里插入图片描述

可视化DIML在视觉Transformer上的应用

为了更好地理解我们为视觉Transformer设计的DIML的工作原理,我们在图7提供了一些可视化结果。对于每对图像,我们首先应用DIML获得最优传输计划 T ∗ T^* T,然后找到使得 T i , j ∗ T^*_{i,j} Ti,j最大的索引对(i, j)。接着我们对源图像中第i个token和目标图像中第j个token应用注意力展开(当 l 0 = 0 l_0 = 0 l0=0时),以将显著性传播到输入空间并得到热图。对于成对相似性,我们依然使用形式为 [ G 4 T i , j ∗ ] × [ S i , j ] [G^4 T^*_{i,j}] \times [S_{i,j}] [G4Ti,j]×[Si,j],其中对于DeiT主干, G = 14 G = 14 G=14。可视化结果表明,我们为视觉Transformer设计的DIML能够将整体相似性分解为多个部分相似性,从而提高可解释性并增强正样本对的相似度。有趣的是,我们发现视觉Transformer能够比CNN更准确地定位重要区域(例如头部),这可能是因为注意力机制比CNN的交叉相关性更强大。可视化清楚地展示了DIML是一个通用框架,可以提高CNN和视觉Transformer的可解释性。

在这里插入图片描述

V. 结论

在本文中,我们提出了一种深度可解释度量学习(DIML)方法,旨在实现更透明的embedding学习。我们提出了一种结构匹配策略,通过计算两个图像的特征图之间的最优匹配流来显式地对齐空间embedding。我们的框架适用于包括卷积神经网络(CNNs)和视觉Transformer(vision Transformers)在内的多种视觉主干网络。我们在包括CUB200-2011、Cars196和斯坦福在线产品(Stanford Online Products)在内的三个主要深度度量学习基准上评估了我们的方法,并取得了显著的性能提升,同时具有更好的可解释性。我们的方法使深度模型能够以更符合人类理解的方式学习度量,这可以用来检查和理解任何两个样本之间的视觉相似性,或者应用于任何深度度量学习方法,通过多尺度匹配策略在可控成本下提高图像检索性能。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3281609.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C++笔试强训10

文章目录 一、选择题1-5题6-10题 二、编程题题目一题目二 一、选择题 1-5题 前面做过很多次了,记住就好,不在赘述,选C。 内联函数经常使用的场景包括: 小型函数:当函数体非常小,只包含几条语句时&#xf…

【C++】模板的特化

文章目录 概念函数模板特化类模板特化全特化偏特化 概念 通常情况下,使用模板可以实现一些与类型无关的代码,但是有一些类型需要特殊处理,否则可能会得到一些错误的结果。 比如,在比较两个数的大小时,如果传入两个变量…

手动上电电路(电路收藏)

SW1按下 V1栅极对地 V1通 Vout给Mcu工作 GPIO2 高电平 V2通 SW1松开 V1栅极依然通过V2对地 维持V1通 Vout。再次按下SW1 GPIO1 对地 使Mcu收到中断 将GPIO2 输出低电平 V2关 松开SW1 V1栅极悬空 V1断开 Vout被截断

产品思维之什么是好的设计?

点击下方“JavaEdge”,选择“设为星标” 第一时间关注技术干货! 免责声明~ 任何文章不要过度深思! 万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案…

原生微信小程序wxml2canvas生成海报并包保存至本地

Wxml2Canvas是什么? Wxml2Canvas 是一个用于微信小程序开发的工具库,主要用途是将小程序页面的内容绘制成图片,以便生成海报或保存分享图片到相册等功能。具体用途包括: ①海报生成功能:允许开发者将当前页面的特定部…

【机器学习】决策边界的基本概念以及如何在逻辑回归中找到决策边界

引言 在机器学习中,决策边界是分类算法用来区分不同类别数据点的线、面或超平面。这些边界通常是模型的预测规则,用于将特征空间中的点分配到不同的类别。决策边界可以是线性的,也可以是非线性的,取决于数据的分布和所使用的分类算…

鸿蒙 HarmonyOS NEXT端云一体化开发-云数据库篇

一、概述 云数据库是一款基于对象模型的数据库,采用存储区、对象类型和对象三级结构。 数据模型 存储区 存储区是一个独立的数据存储区域,多个数据存储区之间相互独立,每个存储区拥有完全相同的对象类型定义 --类似于关系型数据库中的da…

ECMA6Script学习笔记(五)

【摘要】 本文是对自己学习ES6的学习笔记回顾,后面是概要: 本文介绍了ES6中的对象创建和拷贝方法。对象创建方面,ES6通过class关键字支持了面向对象的语法糖,包括属性设置、getter和setter方法、构造器、静态方法以及私有属性的定义。同时,展…

专业做护眼灯的有哪些品牌?五款市面主流护眼灯专业测评

专业做护眼灯的有哪些品牌?市面上出现的品牌毫不夸张的说,真的算得上是琳琅满目,而且每一个品牌都在说自己的产品才是最值得的,这种情况下来,很多人一时之间根本就不知道要选择哪一款比较好。而且还有一些还会买到低劣…

vue基础知识总结(2)--- axios的使用

一.下载Vue3: 选择自己想要下载的项目文件夹,cmd回车打开命令栏,执行 : cnpm init vuelatest 然后等待一会就可以创建一个项目,并更改项目名: √ 请输入项目名称: ... vue-project 之后按照…

华为仓颉语言测试申请

1. 申请网址 HarmonyOS NEXT仓颉语言开发者预览版 Beta招募- 华为开发者联盟 点击立即报名登录华为账号 勾选选项 , 点击同意 按要求填写信息即可 2. 申请通过后官方会通过邮件的方式发送相关下载途径 , 根据文档进行下载即可 package Cangmain(): Int64 {println("你…

AI技术修复奥运珍贵历史影像,《永不失色的她》再现百年奥运女性光彩

Greatness of HER ! AI致敬 , 了不起的「她」。 7月25日,在国际奥委会和各方力量的支持下,阿里云以AI技术修复奥运珍贵历史影像,让百年奥运女性的伟大光彩被看见,并在巴黎推出《永不失色的她》全球首映礼。 国际奥委会…

Graph Contrastive Learning via Interventional View Generation

发表于:WWW24 推荐指数: #paper/⭐⭐ 框架与动机: 整体框架 动机: 如上四个: b.HLCL 生成随机增强视图,并分别用高通过滤器和低通过滤器过滤 c.生成同配异配视图,都用低通过滤器 d.生成同配视图异配视图,同配视图用低通过滤器,异配视图用高通过滤器 通过图d,我们可以得出:d&g…

基于Material studio拉伸-断裂过程的Perl脚本

在材料科学的研究中,拉伸-断裂过程一直是科学家们探索的焦点。这一过程涉及复杂的力学行为和材料内部微观结构的变化,对于理解材料的性能至关重要。然而,传统的实验方法不仅耗时耗力,而且难以捕捉到微观尺度上的所有细节。 为了满…

网站如何实现HTTPS访问

要实现网站通过HTTPS协议访问,主要依赖于为网站部署SSL/TLS证书。 SSL(Secure Sockets Layer)是用于在互联网上加密数据传输的安全协议。部署了SSL证书之后,网站就可以通过HTTPS(超文本传输安全协议)来提供…

C# Unity 面向对象补全计划 之 初识继承方法与多态

本文仅作学习笔记与交流,不作任何商业用途,作者能力有限,如有不足还请斧正 本系列旨在通过补全学习之后,给出任意类图都能实现并做到逻辑上严丝合缝 1.继承方法 C# & Unity 面向对象补全计划 之 继承(字段与属性&…

Java真人版猫爪老鼠活动报名平台系统

🐾“真人版猫爪老鼠活动报名平台系统”——趣味追逐,等你来战!🐭 🐱【萌宠变主角,现实版趣味游戏】 厌倦了电子屏幕的虚拟游戏?来试试“真人版猫爪老鼠活动”吧!在这个平台上&…

PHP进阶-CentOS7部署LNMP服务架构的项目

在开发和部署Web应用时,LNMP(Linux、Nginx、MySQL、PHP)的组合是非常常见的。这篇博客将介绍如何通过一个简单的脚本,在CentOS 7上部署LNMP,并将PHP项目自动部署到服务器上。这不仅可以节省大量的时间,还能…

一个接口未做超时处理,引发数据库hang了

前言 在代码开发过程中,你是否会经常遇到以下问题? 数据库连接被瞬间占用,出现性能瓶颈 系统资源被大量占用,出现锁等待或性能下降 事务日志大量增长 上述这些状况的出现可能是未提交事务引发的。该类事务开启后,…

什么是五力分析?5分钟带你了解它在企业财务经营中的应用与价值!

如今,随着全球化进程的不断加速,市场环境复杂多变,市场竞争日益激烈,财务经营已经成为了企业应对复杂市场环境、保持自身竞争力的关键。体系化的五力分析平台能够为企业提供一套全面的解决方案,帮助企业在盈利能力、偿…