《Consensus-Aware Visual-Semantic Embedding for Image-Text Matching》中文校对版

文章汉化系列目录



2020 ECCV (European Conference on Computer Vision) 是计算机视觉领域的顶级国际会议之一,与 CVPR (Computer Vision and Pattern Recognition) 和 ICCV (International Conference on Computer Vision) 并称为计算机视觉领域的三大顶级会议。ECCV 的论文接受率通常较低,具有很高的学术影响力和研究水平。

摘要

 图文匹配在连接视觉与语言方面起着核心作用。现有的大多数方法仅依赖图文实例对来学习其表示,从而利用其匹配关系并进行相应的对齐。这类方法仅利用了实例对数据中的表面关联,而未考虑任何外部的常识知识,这可能限制其推理图文之间高级关系的能力。在本文中,我们提出了一种共识感知的视觉-语义嵌入(Consensus-aware Visual-Semantic Embedding,CVSE)模型,将共识信息,即两种模态共享的常识知识,引入到图文匹配中。具体来说,通过计算图像字幕语料库中语义概念的统计共现关系并部署构建的概念相关图来生成共识感知概念(CAC)表示来利用共识信息。随后,CVSE在利用的共识以及两种模态的实例级表示的基础上学习图文之间的关联和对齐。在两个公共数据集上进行的大量实验验证了所利用的共识对构建更有意义的视觉-语义嵌入的显著贡献,并且在双向图文检索任务上性能优于最新方法。本文的代码可在以下网址获取:https://github.com/BruceW91/CVSE

关键词

图文匹配、视觉-语义嵌入、共识

引言

 视觉和语言理解在人类感知现实世界中起着基础性作用,近年来由于深度学习的迅速发展而取得了巨大的进步。为了深入研究多模态数据的理解,本文聚焦于解决图文匹配问题【26】,这为一系列下游应用提供了支持,如视觉问答【2, 27】、视觉定位【4, 34, 47】、视觉描述【40, 41, 48】以及场景图生成【5】。具体而言,其目标是检索与给定图像(文本)查询最相关的文本(图像)。尽管取得了令人振奋的进展,该任务由于图像与文本之间的语义差异性而仍面临挑战,这种差异分别存在于异质表示空间中。

 为了解决这一问题,目前的主流解决方案是将图像和文本投射到统一的联合嵌入空间中。如图1(a)所示,大量方法【10, 20, 29, 42】采用深度神经网络提取图像和文本的全局表示,并基于这些表示测量其相似性。然而,这些方法未能探索图像对象与句子片段之间的关系,导致匹配精度有限。另一类工作【17, 22】进行片段级匹配并聚合其相似性以测量其相关性,如图1(b)所示。虽然可以表征复杂的跨模态相关性并实现令人满意的双向图文检索结果,这些现有方法仅依赖图文实例对来进行跨模态检索,我们在本文中将其称为实例级对齐。
 对于人类而言,除了图文实例对之外,我们具备利用以基础语义概念及其关联表达的常识知识来表示和对齐图像与文本的能力。例如,考虑句子“一个人在冲浪板上骑着海浪”及其语义相关的图像,如图1(c)所示。当“冲浪板”出现时,“海浪”一词在图像和文本中都会有很高的出现概率。因此,“冲浪板”和“海浪”的共现以及其他共现的概念构成了我们称之为共识的常识知识。然而,这种共识信息尚未在图文匹配任务中被研究和利用。在本文中,受到人类这种认知能力的启发,我们提出将共识信息纳入图文匹配的视觉-语义嵌入学习中。具体而言,我们不仅挖掘图文实例对之间的跨模态关系,还利用来自大规模外部知识的共识信息来表示和对齐两种模态,以便进一步进行图文相似性推理。
在这里插入图片描述

图1. 我们提出的共识感知视觉-语义嵌入(CVSE)方法与现有基于实例级对齐方法的概念比较。(a) 基于图像和文本全局表示的实例级对齐;(b) 利用复杂的片段级图文匹配的实例级对齐;(c) 我们提出的CVSE方法。

 在本文中,我们提出了一种用于图文匹配的共识感知的视觉-语义嵌入(CVSE)架构,如图1(c)所示。具体而言,我们首先通过计算来自图像字幕语料库的语义概念之间的统计共现关系并构建概念相关图来进行共识利用,以学习共识感知概念(CAC)表示。之后,基于所学习的CAC表示,图像和文本都可以在共识级别上进行表示。最后,共识感知的表示学习将实例级和共识级的表示结合起来,从而实现跨模态对齐。公共数据集上的实验结果表明,所提出的CVSE模型能够学习具有区分性的图文匹配表示,从而提升双向图像和句子检索的性能。我们的贡献体现在以下三个方面。

  • 我们首次尝试在图文匹配中利用共识信息。不同于现有基于实例级对齐的方法,我们的模型利用一个外部语料库来学习共识感知的概念表示,以表达常识知识,从而进一步加强图像和文本之间的语义关系。

  • 我们提出了一种新颖的共识感知视觉-语义嵌入(CVSE)模型,该模型在共识级别上统一了两种模态的表示。共识感知的概念表示通过图卷积网络学习,该网络捕捉语义概念之间的关系,以实现更具区分性的嵌入学习。

  • 在两个基准数据集上的广泛实验结果表明,我们的方法不仅在传统的图文检索任务上优于最新方法,还表现出优越的跨领域迁移泛化能力。

2 相关工作

2.1 基于知识的深度学习

 越来越多的研究关注将外部知识引入以改进数据驱动的神经网络。例如,知识表示已被用于图像分类【30】和对象识别【7】。在视觉-语言理解领域,这种方法已在多个上下文中得到探索,包括视觉问答(VQA)【43】和场景图生成【12】。与之相比,我们的CVSE利用共识知识生成同质的高级跨模态表示,从而实现视觉-语义对齐。

2.2 图文匹配

 近年来,针对图文匹配问题提出了大量研究。这些研究大多采用双分支深度架构来获取全局【10,20,25,26,29,42】或局部【16,17,22】表示,并在联合语义空间中对齐两种模态。Mao等人【29】采用卷积神经网络(CNN)和循环神经网络(RNN)来表示图像和文本,并通过使用双向三元组排名损失来学习联合的视觉-语义嵌入空间。在片段级对齐方面,Karpathy等人【17】通过累积所有区域-单词对的局部相似性来测量全局跨模态相似性。此外,还引入了几种基于注意力的方法【15, 22, 31, 38】来捕获更细粒度的跨模态交互。总的来说,这些方法主要遵循在实例级建模表面统计关联,但缺乏结构化的常识知识,削弱了它们在多模态数据推理和推断方面的能力。
 与之前的研究不同,我们的CVSE将常识知识纳入共识感知表示,从而提取图像和文本之间共享的高级语义。与我们方法最相关的现有工作是【37】,其通过使用图像场景图作为外部知识来扩展视觉概念。不同于【37】,我们的CVSE能够利用所学习的共识感知概念表示,在共识级别上统一表示和对齐两种模态。这样做可以通过解开图像和文本的高级语义来测量跨模态相似性,从而进一步提高其可解释性。

3 共识感知的视觉-语义嵌入

 在本节中,我们详细说明用于图文匹配的共识感知视觉-语义嵌入(CVSE)架构(见图2)。不同于基于实例级表示的方法,我们首先介绍了一种新颖的共识利用模块,该模块利用常识知识来捕捉概念之间的语义关联。接下来,我们展示如何使用共识利用模块来生成共识级别的表示,并将其与实例级表示相结合以表示两种模态。最后,我们介绍了对齐目标和推理方法。
在这里插入图片描述

图2. 提出的用于图文匹配的CVSE模型。以两种模态的片段级特征为输入,它不仅采用双自注意机制生成实例级表示 v I v^I vI t I t^I tI,还利用共识利用模块来学习共识级别表示。

3.1 利用共识知识增强概念表示

 如前所述,捕捉概念之间的内在关联(在人类推理中作为常识知识)可以提供高级语义,从而实现更准确的图文匹配。为此,我们构建了一个共识利用(CE)模块(见图2),该模块采用图卷积来传播基于保持概念相互依赖的相关图的语义关联,从而在概念表示学习中注入更多的常识知识。它涉及三个关键步骤:(1)概念实例化,(2)概念相关图构建,以及(3)共识感知概念表示学习。具体细节将在下文中介绍。

概念实例化。我们依赖于自然句子的图像字幕语料库来利用常识知识,这些知识表现为语义概念及其关联。具体来说,语料库中的所有词都可以作为语义概念的候选项。由于词汇表的规模庞大且存在一些无意义的词,我们遵循【9, 14】的方法从词汇表中移除出现频率较低的词。特别是,我们选择概念词汇表中出现频率最高的 q q q个词,这些词大致被分类为三种类型,即对象、动作和属性。有关更详细的划分原则,我们请读者参考【13】。此外,根据整个数据集中相同类型概念的统计频率,我们将对象、动作和属性类型的概念比例限制为 ( 7 : 2 : 1 ) (7:2:1) (7:2:1)。之后,我们采用GloVe【32】技术来实例化这些选定的概念,表示为 Y Y Y

概念相关图构建。在实例化的概念基础上,检查它们的共现关系以构建相关图,从而利用常识知识。具体来说,我们构建了一个条件概率矩阵 P P P来建模不同概念之间的关联,其中元素 P i j P_{ij} Pij表示在概念 C j C_j Cj出现时概念 C i C_i Ci的出现概率:

P i j = E i j N i (1) P_{ij} = \frac{E_{ij}}{N_i} \tag{1} Pij=NiEij(1)

 其中, E ∈ R q × q E \in \mathbb{R}^{q \times q} ERq×q是概念共现矩阵, E i j E_{ij} Eij表示 C i C_i Ci C j C_j Cj的共现次数, N i N_i Ni C i C_i Ci在语料库中的出现次数。值得注意的是, P P P是一个非对称矩阵,这使我们能够捕捉各种概念之间合理的相互依赖关系,而不是简单的共现频率。

 虽然矩阵 P P P能够捕捉概念间的内在关联,但它存在一些不足之处。首先,它是通过图像字幕语料库中语义概念共现关系的统计得出的,这可能与实际场景中的数据分布偏离,从而影响其泛化能力。其次,概念之间共现频率的统计模式容易受到长尾分布的影响,导致相关图产生偏差。为缓解上述问题,我们设计了一种称为置信缩放(CS)函数的新缩放函数,用于重新缩放矩阵 P P P

B i j = f C S ( P i j ) = s P i j − u − s − u , (2) B_{ij} = f_{CS}(P_{ij}) = s^{P_{ij} - u} - s ^{- u}, \tag{2} Bij=fCS(Pij)=sPijusu,(2)

 其中, s s s u u u是预定义的参数,用于确定重新缩放矩阵 P P P中元素的放大/缩小率。之后,为了进一步防止相关矩阵过拟合训练数据并提高其泛化能力,我们遵循【6】的方法对重新缩放的矩阵 B B B应用二值化操作:

G i j = { 0 , if  B i j < ϵ , 1 , if  B i j ≥ ϵ , (3) G_{ij} = \begin{cases} 0, & \text{if } B_{ij} < \epsilon, \\ 1, & \text{if } B_{ij} \geq \epsilon, \end{cases} \tag{3} Gij={ 0,1,if Bij<ϵ,if Bijϵ,(3)

 其中 G G G是二值化的矩阵 B B B ϵ \epsilon ϵ表示用于过滤噪声边的阈值参数。这种缩放策略不仅有助于我们关注概念之间更可靠的共现关系,还帮助抑制长尾数据中包含的噪声。

共识感知概念表示。图卷积网络(GCN)【3, 19】是一种多层神经网络,在图上运行,并通过基于节点邻域的信息传播来更新其嵌入表示。与在欧几里得结构上实现的传统卷积操作不同,GCN可以在图结构数据上学习映射函数。在本节中,我们使用多层堆叠的GCN层来学习概念表示(称为CGCN模块),引入概念之间的高阶邻域信息以建模其相互依赖关系。形式化地说,给定实例化的概念表示 Y Y Y和概念相关图 G G G,第 l l l层的嵌入特征计算为:

H ( l + 1 ) = ρ ( A ~ H ( l ) W ( l ) ) (4) H^{(l+1)} = \rho(\tilde{A}H^{(l)}W^{(l)}) \tag{4} H(l+

### 关于分布式系统中的共识算法及其调用实现 #### 分布式系统的容错与一致性 在分布式系统中,为了保证高可用性和数据的一致性,通常采用某种形式的共识算法。例如,在 DAOS 中,通过 **分层容错域(Hierarchical Fault Domains)** 和强一致性算法实现了数据和元数据的可靠复制[^1]。这种设计使得即使某些节点发生故障,整个系统仍然能够正常运行并保持数据一致。 #### Consensus Algorithm Implementation Raft 是一种常用的共识协议,广泛应用于 etcd 等分布式系统中。以下是 Raft 协议的核心逻辑: - 当 Follower 接收到来自 Leader 的心跳消息时,它会重置自身的选举计时器,并更新已提交索引 `committed index`[^3]。 - 随后,Follower 向 Leader 发送响应消息 `MsgHeartbeatResp` 表明其状态同步成功。 下面是 Raft 心跳处理的一个简化代码示例: ```go func stepFollower(r *raft, m pb.Message) { switch m.Type { case pb.MsgHeartbeat: r.electionElapsed = 0 // Reset election timer r.lead = m.From // Update the current leader ID r.handleHeartbeat(m) // Process heartbeat message } } func (r *raft) handleHeartbeat(m pb.Message) { r.raftLog.commitTo(m.Commit) // Commit log entries up to commit index r.send(pb.Message{ To: m.From, Type: pb.MsgHeartbeatResp, Context: m.Context, }) // Send response back to leader } ``` 此代码片段展示了如何在一个典型的 Raft 实现中管理心跳通信以及日志提交过程。 #### 工具支持 对于实际操作层面,etcd 提供了一系列工具帮助管理员完成集群部署、备份恢复等工作[^4]。这些工具不仅简化了运维流程,还间接保障了基于 Raft 的共识机制得以稳定执行。值得注意的是,由于性能需求较高,官方文档强烈推荐使用 SSD 来满足磁盘 I/O 要求。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值