关于人工智能:CBMI-2022-蒸馏细粒度对齐分数以实现高效的图文匹配和检索

39次阅读

共计 7367 个字符,预计需要花费 19 分钟才能阅读完成。

CBMI 2022-《ALADIN》- 蒸馏细粒度对齐分数以实现高效的图文匹配和检索

【写在后面】

在波及视觉和语言的独特了解的工作中,图像 - 文本匹配正在施展主导作用。此工作通常被用作预训练指标,以打造可能独特解决图像和文本的体系结构。尽管如此,它有一个间接的上游应用程序: 跨模态检索,它包含查找与给定查问文本相干的图像,反之亦然。解决此工作在跨模态搜索引擎中至关重要。许多最近的办法为 image-text 匹配问题提出了无效的解决方案,次要是应用最近的大型视觉语言 (VL) Transformer 网络。然而,这些模型通常在计算上很低廉,尤其是在推理时。这阻止了它们在大规模跨模态检索计划中的采纳,在这种计划中,后果应简直立刻提供给用户。在本文中,作者通过提出一个对齐和蒸馏网络 (ALADIN) 来填补有效性和效率之间的差距。ALADIN 首先通过在细粒度的图像和文本上对齐来产生高效的分数。而后,它通过提取从细粒度对齐中取得的相关性得分来学习共享的嵌入空间 - 能够在其中执行无效的 kNN 搜寻。作者在 MS-COCO 上取得了显著的后果,表明本文的办法能够与最先进的 VL Transformer 竞争,同时速度简直快 90 倍。

1. 论文和代码地址

ALADIN: Distilling Fine-grained Alignment Scores for Efficient Image-Text Matching and Retrieval

论文地址:https://arxiv.org/abs/2207.14757

代码地址:未开源

2. Motivation

随着深度学习办法的日益弱小和大规模数据的可用性,多模态解决已成为最有前途的研究课题之一。特地是,大部分的重点放在图像和自然语言句子的联结解决上。通过了解文本和图像之间暗藏的语义分割,许多作品解决了具备挑战性的多模态问题,例如图像字幕或视觉问答。在这些工作中,image-text 匹配具备至关重要的意义: 它包含为每个给定的 (图像,文本) 对输入相关性得分,其中如果图像与文本相干,则得分高,否则得分低。只管此工作通常用作视觉语言预训练指标,但对于跨模态图像文本检索至关重要,它通常由两个子工作组成: 图像检索 (心愿与给定文本相干的图像) 和文本检索,要求更好地形容输出图像的句子。在古代跨模态搜索引擎中,高效无效地解决这些检索工作具备重要的战略意义。

许多最先进的图像 - 文本匹配模型,如 Oscar 或 UNITER,包含具备晚期交融的大型和深度多模态视觉语言 (VL) Transformer,其计算成本很高,尤其是在推理阶段。实际上,在推理过程中,应通过多模态 Transformer 转发来自测试集的所有 (图像,文本) 对,以取得相关性得分。这在大型数据集中显然是不可行的,在大规模检索场景中是不可用的,因为零碎提早应该尽可能小。

为了实现这样的性能指标,文献中的许多办法都将图像和文本嵌入在一个独特的空间中,其中相似性是通过简略的点积来掂量的。这容许引入离线阶段,在该阶段中,所有数据集项都被编码和存储,在该阶段中,仅通过网络转发查问并与所有离线存储的元素进行比拟。只管这些办法十分无效,但它们通常不如应用大型 VL Transformer 进行晚期模态交融的办法无效。

依据这些察看后果,在本文中,作者提出了一种对齐和蒸馏网络模型 (ALADIN),该模型利用大型 VLTransformer 取得的常识来构建无效而无效的图像文本检索模型。特地是,作者采纳了前期交融办法,以便将两个视觉和文本管道放弃拆散,直到最终匹配阶段。第一个指标包含应用简略而无效的对齐头将图像区域与句子单词对齐。而后,通过应用学习到排名的指标从对齐头提取分数来学习常见的视觉文本嵌入空间。在这种状况下,将学习的对齐分数用作 ground truth (老师) 分数。

作者表明,在宽泛应用的 ms-coco 数据集上,对齐分数能够达到与大型联结视觉语言模型 (例如 UNITER 和 OSCAR) 相当的后果,同时效率更高,尤其是在推理过程中。另一方面,用于学习公共空间的蒸馏分数能够击败雷同数据集上以前的公共空间办法,从而为大规模检索开拓了基于度量的索引的路线。

本文的奉献如下:

1)作者应用两个预训练的 VL Transformer 实例作为骨干来提取独自的视觉和文本特色。

2)作者采纳一种简略而无效的对准办法来产生高质量的分数,而不是大型联结 VL Transformer 的可扩展性差的输入。

3)作者通过将问题框架为一个学习到排名的工作,并应用对齐头输入中的分数来提取最终分数,从而创立一个信息丰盛的嵌入空间。

3. 办法

提出的体系结构由两个不同的阶段组成。第一阶段,称为骨干,由预训练的大型视觉语言转换器 VinVL 的层组成,这是对弱小的 OSCAR 模型的扩大。在骨干中,语言和视觉门路不会通过穿插留神机制进行交互,因而能够在推理时独立地提取两种模态中的特色。

相同,第二阶段由两个独自的头组成: 对齐头 匹配头。对齐头用于预训练网络,以细粒度的形式无效地对齐视觉和文本概念,如 TERAN 中所做的那样。不同地,匹配头用于结构信息穿插模态公共空间,该空间可用于无效地将图像和文本示意为固定长度向量,以用于大规模检索。应用来自对齐头的分数作为领导,提取来自匹配头的分数。总体架构如上图所示。

3.1 Vision-Language Backbone

作为特征提取的骨干,作者应用 VinVL 中的预训练层,这是对大规模视觉语言 OSCAR 模型的扩大。作者的指标是为输出中的图像 V 和文本 C 取得适合的矢量示意。特地是,作者在图像文本检索工作上采纳了预训练的模型。作者在输入序列的 CLS token 之上应用了二进制分类头,并对模型进行了训练,以预测输出图像和文本句子是否相干。

在本文的用例中,视觉和文本管道应离开,以便能够在推理时独立 forward 它们。因而,作者应用 VinVL 体系结构的两个实例,在共享权重配置中独立地转发这两个模态,如图上所示。

作者将从对象区域提取的视觉特色及其标签都用作视觉 token,并且两个子序列由 SEP token 分隔。最初,解纠缠的 VinVL 架构的最初一层的输入是两个序列 $V=\left\{v_{\mathrm{cls}}, \boldsymbol{v}_{1}, \boldsymbol{v}_{2}, \ldots, \boldsymbol{v}_{N}\right\}$ 示意图像 V,$\boldsymbol{C}=\left\{\boldsymbol{c}_{\mathrm{cls}}, \boldsymbol{c}_{1}, \boldsymbol{c}_{2}, \ldots, \boldsymbol{c}_{M}\right\}$ 示意文本 C。在两个序列中,第一个元素是 CLS token,用于收集整个图像或文本的代表性信息。

3.2 Alignment Head

对齐头包含类似度矩阵,其计算视觉 token 与文本 token 之间的细粒度相关性。而后将细粒度的相似性合并以取得图像和文本之间的最终全局相关性。特地是,作者应用相似于 TERAN 中应用的配方。具体来说,骨干输入中的特色用于计算视觉文本 token 对齐矩阵 $A \in \mathbb{R}^{n \times m}$,构建如下:

$$
A=a_{i j}^{k l}=\operatorname{cosine}\left(v_{i}, c_{j}\right)=\frac{v_{i}^{T} c_{j}}{\left\|v_{i}\right\|\left\|c_{j}\right\|} \quad i \in g_{k}, j \in g_{l}
$$

其中,$g_{k}$ 是来自第𝑘图像的区域特色的索引汇合,而 $g_{l}$ 是来自第𝑙个句子的单词的索引汇合。此时,图像 k 和字幕 l 之间的类似度 $s_{k l}$ 通过适当的会集函数会集类似度矩阵𝑨沿维度 (𝑖,𝑗) 来计算。

作者应用“最大区域总和”策略,该策略计算以下最终相似性得分:

$$
S^{(\mathrm{a})}=s_{k l}^{(\mathrm{a})}=\sum_{j \in g_{l}} \max _{i \in g_{k}} A_{i j}
$$

用于计算公式中𝑨的点积类似度相似于视觉 token 和文本 token 之间的穿插留神的计算。区别归结为视觉和文本 pipeline 之间的交互,这种交互仅产生在整个构造的最初。这种前期的穿插关注使得序列 V 和 C 可缓存,无需 forward
每当向零碎收回新的查问 (视觉或文本) 时,整个体系结构。仅波及简略的非参数运算的的计算十分高效,能够在 GPU 上轻松实现以取得高推理速度。用于强制此网络为每个 (图像,文本) 对产生适合的相似性的损失函数是 hinge-based triplet ranking loss:

$$
\mathcal{L}_{\text {triplet}}=\sum_{k, l} \max _{l^{\prime}}\left[\alpha+s_{k l^{\prime}}-s_{k l}\right]_{+}+\max _{k^{\prime}}\left[\alpha+s_{k^{\prime} l}-s_{k l}\right]_{+},
$$

其中 $s_{k l}$ 是在图像𝑘和字幕𝑙之间预计的相似性,以及 $[x]_{+} \equiv \max (0, x)$;值𝑘‘,𝑙’是在 mini-batch 中找到的图像和字幕难例的索引,𝛼是定义正负对之间应该放弃的最小距离的 margin。

鉴于对齐头间接连贯到骨干,在此新的对准目标上对骨干进行了微调。

3.3 Matching Head

匹配头部应用从骨干给出的雷同序列𝑽和𝑪,并应用它们来产生用于图像 V 的特色 $\tilde{u} \in \mathbb{R}^{d}$ 和用于字幕 C 的 $\tilde{\boldsymbol{c}} \in \mathbb{R}^{\boldsymbol{d}}$。这些示意被强制搁置在雷同的𝑑维嵌入空间中。在这个空间中,能够应用度量空间办法或倒排文件高效地计算𝑘-nerest-Neighbor 搜寻,以便在给定文本查问的状况下疾速检索图像,反之亦然。具体地说,通过 2 层 Transformer 编码器(TE)forward 𝑽和𝑪:

$$
\bar{V}=\operatorname{TE}(V) ; \quad \bar{C}=\operatorname{TE}(C)
$$

TE 在两个通道之间共享权重,编码整个图像和字幕的最终向量是从 TE 层输入的 CLS token:$\tilde{v}=\bar{V}[0]=\bar{v}_{\mathrm{cls}}$ 和 $\tilde{\boldsymbol{c}}=\overline{\boldsymbol{C}}[0]=\overline{\boldsymbol{c}}_{\mathrm{cls}}$。最终的相关度被简略地计算为来自第𝑘个图像 (M) 的向量 $\tilde{\boldsymbol{v}}_{k}$ 和来自第𝑙个句子的 $\tilde{\boldsymbol{s}}_{l}$ 之间的余弦相似性:$S^{(\mathrm{m})}=s_{k l}^{(\mathrm{m})}=\operatorname{cosine}\left(\tilde{v}_{k}, \tilde{\boldsymbol{s}}_{l}\right)$。

原则上,能够应用 hinge-based triplet ranking loss 来优化公共空间。鉴于对齐头的良好有效性和效率折衷,作者提出应用先前学习的 $S^{(a)}$ 作为老师来学习的散布 $S^{(\mathrm{m})}$。

具体地说,作者把从 $S^{(\mathrm{a})}$ 中提取 $S^{(\mathrm{m})}$ 的散布作为一个学习排序问题。作者应用在 ListNet 办法中开发的数学框架,该框架对给定所有对象的分数的状况下一个对象被排在最后面的概率进行建模。与这个框架不同,这里须要针对两个不同的纠缠散布进行优化:当句子用作查问时,文本 - 图像类似度的散布,以及当将图像用作查问时,图像 - 文本类似度的散布。具体地,在给定文本查问𝑘和图像查问𝑙的状况下,图像𝑖和文本𝑗别离绝对于𝑺(A)成为第一元素的概率是:

$$
P_{S^{(\mathrm{a})}}(i)=\frac{\exp \left(s_{i k}^{(\mathrm{a})}\right)}{\sum_{t=1}^{B} \exp \left(s_{t k}^{(\mathrm{a})}\right)} ; P_{S^{(\mathrm{a})}}(j)=\frac{\exp \left(s_{l j}^{(\mathrm{a})}\right)}{\sum_{t=1}^{B} \exp \left(s_{t j}^{(\mathrm{a})}\right)}
$$

其中𝐵是 batch 大小,因为学习过程仅限于以后 batch 中的图像和句子。因而,在训练期间,只应用查问𝑘检索𝐵个图像,而应用查问𝑙检索𝐵个文本元素。相似地,能够在 $S^{(\mathrm{m})}$ 上定义相似的概率:

$$
P_{S^{(\mathrm{m})}}(i)=\frac{\exp \left(\tau s_{i k}^{(\mathrm{m})}\right)}{\sum_{t=1}^{B} \exp \left(\tau s_{t k}^{(\mathrm{m})}\right)} ; P_{S^{(\mathrm{m})}}(j)=\frac{\exp \left(\tau s_{l j}^{(\mathrm{m})}\right)}{\sum_{t=1}^{B} \exp \left(\tau s_{t j}^{(\mathrm{m})}\right)}
$$

其中𝜏是弥补 $S^{(m)}$ 在 [0,1] 范畴内的温度超参数。试验发现,𝜏=6.0 时在实践中成果很好。对于图像到文本和文本到图像的状况,最终的匹配损失都能够示意为 $P_{S^{(a)}}$ 和 $P_{S^{(m)}}$ 概率之间的穿插熵。

$$
\mathcal{L}_{\text {distill}}=-\sum_{i=1}^{B} P_{s^{(\mathrm{a})}(i)} \log \left(P_{s^{(\mathrm{m})}}(i)\right)-\sum_{j=1}^{B} P_{s^{(\mathrm{a})}(j)} \log \left(P_{s^{(\mathrm{m})}}(j)\right)
$$

须要精确且密集的老师分数能力取得对老师散布 $P_{\boldsymbol{s}^{(\mathrm{a})}}(i)$ 和 $P_{\boldsymbol{s}^{(\mathrm{a})}}(j)$ 的良好预计。这在肯定水平上促使抉择首先钻研一种无效和高效的对准头部,该对准头部能够输入分数作为匹配头部的 ground truth。

3.4 Training

在训练阶段,恪守以下限度:(A)只有在训练对准头时才对骨干进行微调,(B)梯度不会向后流过 $S^{(\mathrm{a})}$ 当训练匹配头时(如上图中通过进行梯度批示所示)。限度(B)是基于分数 $\boldsymbol{S}^{(\mathrm{a})}$ 用作老师分数。因而,不应该批改骨干的权重,因为假如骨干曾经用对齐头进行了训练。思考到这些限度,作者分两步训练网络。首先,通过应用 $\mathcal{L}_{\text {triplet}}$ 更新骨干权重来训练对齐头。而后,解冻了骨干,并通过应用 $\mathcal{L}_{\text {distill}}$ 更新二层 Transformer 编码器的权值来学习匹配头。

4. 试验

上表展现了本文办法在 MS-COCO 1K 上的检索试验后果,在测试时,除了本文的模型之外,所有报告的模型都须要按 $O\left(n^{2} r\right)$ 的程序计算网络 forward 步骤的数量,其中𝑛是图像的数量,𝑟是与每个图像关联的句子数量。

作者应用相似的办法将本文的匹配头创立的公共空间与其余解缠办法进行比拟。后果如上表所示。如上所述,为了比拟,作者还报告了应用 hinge-based triplet loss 间接训练的匹配头。而不须要从对齐头中提取分数。

为了更好地显示本文的模型在计算工夫方面的劣势,在图上中,作者绘制了与其余办法相比本文办法的有效性与效率的关系图。

5. 总结

本文提出了一种高效的视觉 - 文本跨模态检索体系结构。具体来说,作者提出了应用最先进的 VL Transformer 作为骨干,通过独立 forward 视觉和文本管道来理解对齐分数。而后,应用对齐头产生的分数来学习视觉 - 文本公共空间,该公共空间能够容易地产生可索引的定长特色。具体地说,应用学习排序蒸馏指标来解决这个问题,该指标实验性地证实了它比 hinge-based triplet ranking loss 优化公共空间的有效性。在 MS-COCO 上进行的试验证实了该办法的有效性。结果表明,该办法补救了效率和效率之间的差距,使该零碎可能部署在大规模的跨通道检索场景中。

【我的项目举荐】

面向小白的顶会论文外围代码库:https://github.com/xmu-xiaoma666/External-Attention-pytorch

面向小白的 YOLO 指标检测库:https://github.com/iscyy/yoloair

面向小白的顶刊顶会的论文解析:https://github.com/xmu-xiaoma666/FightingCV-Paper-Reading

“点个在看,月薪十万!”
“学会点赞,身价千万!”

【技术交换】

已建设深度学习公众号——FightingCV,关注于最新论文解读、基础知识坚固、学术科研交换,欢送大家关注!!!

请关注 FightingCV 公众号,并后盾回复 ECCV2022 即可取得 ECCV 中稿论文汇总列表。

举荐退出 FightingCV交换群 ,每日会发送论文解析、算法和代码的干货分享,进行学术交流,加群请增加小助手 wx:FightngCV666,备注: 地区 - 学校(公司)- 名称

本文由 mdnice 多平台公布

正文完
 0