FightingCV

V1

2022/10/17阅读:18主题:默认主题

MM2022|兼具低级和高级表征,百度提出利用显式高级语义增强视频文本检索

MM2022|兼具低级和高级表征,百度提出利用显式高级语义增强视频文本检索

【写在前面】

视频文本检索 (VTR) 对于多模态理解是一项有吸引力但具有挑战性的任务,其目的是在给定查询 (视频) 的情况下搜索相关视频 (文本)。现有方法通常使用完全不同种类的视觉-文本信息来对准视频和文本,同时缺乏对驻留在两种形态中的同质高级语义信息的认识。为了填补这一空白,在本工作中,作者提出了一种新的视觉-语言对齐模型HISE,该模型通过结合显式的高级语义来改进跨模态表示。首先,作者探讨了显式高层语义的层次性,并将其分解为离散语义和整体语义两个层次。具体地说,对于视觉分支,作者利用现成的语义实体预测器来生成离散的高级语义。同时,使用经过训练的视频字幕模型来输出整体高级语义。在文本模态方面,作者将文本分为事件、动作和实体三个部分。特别是,事件对应于整体的高级语义,动作和实体都代表离散的动作和实体。然后,不同的图推理技术用来促进整体和离散高级语义之间的交互。大量实验表明,该方法在MSR-VTT、MSVD和DiDeMo三个基准数据集上,借助显式的高级语义,取得了优于最新方法的性能。

1. 论文和代码地址

Boosting Video-Text Retrieval with Explicit High-Level Semantics

论文地址:https://arxiv.org/abs/2208.04215[1]

代码地址:未开源

2. Motivation

随着网络视频的成倍增长,视频文本检索成为人们感知世界的一种新兴需求。它指的是当给定查询文本(视频)时搜索视频(文本),这在视觉和语言理解中起着基础性的作用。虽然这一领域已经取得了显著的进展,但由于原始输入的多模式数据存在于不同的空间中,因此精确匹配视频和文本仍然是一个挑战。

视频-文本对齐的主要挑战是如何缩小来自两种模态的不同表示之间的差距。为了解决这个问题,以前的解决方案可以分为两种:一种是基于单分支表示结构的研究思路。这些方法通常使用独立的形态来表示视频,即外观并利用单个编码器来表示它,而忽略了视频实际上由多个组成形态构成。与这些方法不同的是,一些基于多专家的研究通过引入更多的补充线索来增强视频表示,如运动、音频和语音,并取得稳定的改进。

尽管取得了令人鼓舞的成就,但大多数现有方法都受到依赖异构信息来对齐视频和文本的限制。但是如何利用同质线索 (即显式高级语义 (EHS)) 来执行跨模态对齐仍然没有探索。相比之下,在认知科学中,研究解释说,人类可以通过提取高级描述来识别世界,这些描述已在几种视觉语言理解任务中被证明是有效的。因此,如何利用EHS来提高VTR值得探讨。

为了填补这一空白,作者迈出了利用同质知识来改善VTR任务的一步,这是通过将EHS信息注入到跨模态表示学习中来实现的。首先,作者探索EHS的层次属性,并将其进一步分为两个层次: 离散语义整体语义。具体而言,前者侧重于挖掘局部和详细语义,这些语义由单独的实体或短语表示。同时,后者用一个完整的 descriB-InfoNCEg 句子来表示,目的是提取更多的全局信息和连续信息。如上图所示,从视频中提取的两种类型的 EHS 与从文本中提取的 EHS 完全一致,这有利于缩小模态差距。

在这项工作中,为了弥合视频和文本之间的语义差异,作者提出了一种用于VTR应用的高级语义辅助 (HiSE) 视觉语言嵌入模型,该模型将EHS注入到跨模态表示学习中。为了实现这一目标,作者首先精心设计了不同的结构,分别收集视频和文本的分层EHS信息。至于视觉模态,作者使用两个独立的组件来生成离散和整体的EHS。具体来说,为了从视频中提取离散EHS,作者利用现成的语义实体预测器来检测所有采样帧的语义实体。实体根据其置信度得分进行过滤,并将其保留部分视为离散EHS。同时,作者采用视频字幕模型为给定视频生成描述信息句子。输出被视为包含更多连贯信息的视觉整体EHS。

另一方面,为了从文本中提取分层EHS,作者利用语义角色解析器将其分解为角色图,该角色图包括三种节点: 事件,动作和实体。事件是指整个句子,它由更多的上下文信息组成,被视为文本整体EHS。此外,动作由动词表示,实体由名词和名词短语表示。考虑到动作和实体仅描述局部文本信息,作者将其命名为文本离散EHS。

除了EHS习得之外,如何组织和整合它们在跨模态表示学习中也起着重要作用。对于视频部分,给定视频离散EHS,作者将其文本嵌入与图卷积运算结合使用,以获得紧凑向量,称为视频离散高级语义 (VDS) 表示。对于视频整体EHS表示,作者使用另一个句子级文本编码器对其进行处理,该编码器输出视频整体高级语义 (VHS) 表示。相比之下,对于文本分支,作者统一使用相应的文本嵌入来通过紧凑向量来表示离散EHS和整体EHS。然后,基于角色图结构,作者应用多图推理来促进两个层次的输出嵌入之间的交互。最后,通过使用它们的凸组合,将生成的EHS表示与特定于模态的编码器的原始输出融合。通过将EHS知识集成到跨模态表示框架中,可以显着提高双向VTR性能。总的来说,我们的主要贡献在于三个方面:

1)提出了一种基于高级语义(HiSE)的视觉语言嵌入框架。这是第一个将显式高层语义集成到视频文本检索中的工作,它利用统一的抽象信息来加强两种模态之间的语义关系。

2)将高层语义分解为离散语义和整体语义两个层次,分别负责捕获局部和全局信息。此外,作者设计了详细的体系结构来表示和捆绑它们,以改善跨模态表示。

3)在基准数据集上进行的大量实验不仅证明了本文的方法优于目前最先进的 VTR 方法,而且证明了该方法的可解释性。

3. 方法

3.1 Video and Text Encoder

3.1.1 Video Encoder

为了获得视频表示,首先从视频片段中提取帧,然后使用视频编码器把它们变成一系列的特征,然后通过一个特性聚合器将它们融合。为了实现这一点,作者采用预训练的 CLIP 作为视频编码器,它利用基于4亿个图像文本对的预先训练的 ViT骨干。具体来说,将图像分割成不重叠的patch,然后使用线性投影将它们投射成1D token。将输出矢量作为 ViT 的输入,利用transformer结构对图像patch之间的交互进行建模。在 CLIP 之后,采用来自[ class ] token的输出作为图像表示。因此,给定视频帧的输入序列 ,生成的视频特征表示为 。然后,为了进一步捕获帧之间的时间信息,使用另一个Transformer编码器 ,将位置嵌入到一个全局视频表示中。形式上,全局视频表示由 计算,其中 表示视频编码器。

3.1.2 Text Encoder

对于标题编码,作者直接使用 CLIP 中的文本编码器来提取文本表示。基于CLIP,作者使用来自Transformer最顶层的[ EOS ] token的激活作为标题的全局表示。给定标题 ,根据 计算全局文本表示,其中 表示文本编码器。

3.1.3 Modality-specific Memory Banks Building

为了进一步加强这两种模态在对比学习中的负相互作用,作者提出话利用两个特定于模态的动态记忆库 来存储额外的视频和文本表示。特别是,作者遵循 MoCo ,通过根据相应的模态特定编码器的动量更新它们的权重来获得动量视频编码器和文本编码器,其结构分别与 完全相同。因此,来自最新的训练迭代的视频或文本样本被反馈到动量编码器。

3.2 Textual High-level Semantics Encoding

在这一部分中,作者描述了文本高级语义编码(TSE)模块的详细结构(参见上图a)。视频字幕句是基于层次语义结构自然构建的,可以通过动作和实体之间的关系来描述发生(见上图a)。这种层次结构有利于实现对视频字幕的全面理解。考虑到这些关系可以通过图结构来表达,作者利用图卷积对文本进行显式的高层语义编码。处理流水线包括三个步骤: 1)初始化语义角色图节点; 2)图生成; 3)图推理。

Initializing semantic role graph node

首先,将图节点划分为三类: 事件节点、动作节点和实体节点。具体来说,通过使用预训练的 CLIP 文本编码器初始化出现节点表示,该编码器与3.1.2中的编码器共享相同的体系结构(不共享权重)。为了初始化动作节点和实体节点,作者使用 CLIP 文本编码器的标记器对它们进行分割并映射到标记嵌入,然后通过均值轮询操作聚合标记嵌入向量来表示短语级内容(实体)。最后,初始化的事件/动作/实体节点分别用 表示。

Role graph building

给定一个视频描述 S,将其作为语义角色图中的出现节点。然后,利用现成的语义角色分析器从 S 中提取名词短语和动词以及它们的语义关系。在角色图中,名词短语和动词分别作为动作节点和实体节点。

Graph Reasoning

为了有效地利用图中包含的关系信息的多重角色,作者采用关系图卷积网络(R-GCN)对节点间图中的交互进行建模。具体地,给定初始化节点 和角色图 ,通过带有残差连接的单层图卷积,计算出节点的嵌入特征:

其中 表示 r 关系下的语义角色矩阵,R 是关系角色的个数。 表示关系 r 下的可学习权矩阵。 是一个 ReLU 函数。为了区分它们,将 的和向量分别称为文本整体高层语义(THS)表示和离散高层语义(TDS)表示。最后,通过均值轮询融合 THS 和 TDS 表示,生成向量 ,即文本高级语义(TS)表示,同时对三类节点的整体和离散语义进行编码。

3.3 Visual High-level Semantics Encoding

在本节中,作者将详细介绍视觉高级语义编码(VSE)模块的细节。它由两个并行的子模块组成,分别将离散的和整体的高层语义编码成视频表示。

3.3.1 Visual Discrete Semantics Encoding

视频由连续的帧序列组成,每帧序列由多个主题和背景对象组成。从局部信息获取的角度来看,这些实体可以表达大多数信息语义。受这些观察结果的启发,将这些实体视为视频的离散语义,并提出将其纳入视频表示学习。

给定采样的视频帧 ,对于每个采样的帧 ,作者采用自下而上的注意工具箱来提取视觉实体。具体而言,视觉实体 包括概念表征 、外观表征 和位置表征 三个属性。首先,概念属性由对象名 及其修饰属性 组成,与文本高层语义完全同构。因此,生成如下的概念表示 :

其中 MLP (·)表示全连接层。

然后,作者引入两个额外的信息作为概念表征的补充,即外观表征和位置表征。在外观表示方面,采用全连接层将ROI特征投影到关节空间中,得到外观表示 。类似地,另一个全连接层用于基于实体 的空间坐标产生位置表示 。然后,给出了类似于 TSE 模块的三种嵌入方式 ,并利用图卷积运算对视频进行高层语义编码,包括三个步骤: 1)初始化语义关系图节点; 2)图形生成; 3)图形推理。

3.3.2 Visual Holistic Semantics Encoding

与 VDS 编码不同,提取视觉整体语义需要更全面、更广泛的视频理解。因此,视频字幕的研究目标与这一目标是一致的。它是指自动生成视频的自然语言描述,与 VTR 任务紧密相关。受此启发,作者尝试将视频字幕模型中恢复的先验知识转换为视觉整体语义编码。作者直接采用现成的视频字幕生成视频的自然语言描述。给定一个输出字幕句 ,作者还使用3.1.2节中描述的 CLIP 文本编码器对其进行编码。生成的特征向量 称为视觉整体语义(VHS)表示。最后,通过均值池聚合 VDS 表示和 VHS 表示,得到最终的可视化高层语义(VS)表示

3.4 Cross-Modal Representations Fusion

考虑到原始的视频文本表示和高级语义表示,作者使用一个简单的凸组合操作来聚合它们作为最终的跨模态表示,这可以被定义为:

其中 α 是一个平衡两种表示的调优参数。而 分别表示融合的视频和文本表示。

3.5 Training and Inference

对于训练目标,作者使用hubness感知对比度损失(HAL)来对齐视频和文本: 给定视频表示 和文本表示 ,损失函数 可以表示为:

其中 是margin参数; 是温度参数; N 表示mini-batch的样本数量; ,其中 cos (· ,·)表示计算余弦距离的相似函数。

为了增强跨模态学习,使用了两种类型的 HAL 损失。首先,它被施加在mini-batch数据上。其次,对mini-batch的anchor样本和来自特定模态记忆库的项目进行分析。在形式上,本文的 HiSE 模型的最终目标定义为:

其中平衡参数设置为

为了推理,作者使用融合表示 之间的余弦距离来测量跨模态相关性。

4.实验

上表展示了本文方法在MSRVTT和MSVD数据集上和SOTA方法的性能对比。

上表展示了本文方法消融实验的结果。

上图展示了本文方法的高级语义的可视化结果。

上图展示了本文方法的定性可视化结果。

5. 总结

对视频和文本的模糊理解阻碍了机器建立准确的跨模态关联的能力。在这项工作中,作者提出了一个显式的高层语义(HiSE)辅助视觉语言嵌入模型来改进视频文本检索。具体来说,作者研究了如何从文本和视频中挖掘显性高层语义,并将其融入到跨模态表征学习中。这样做可以从原始数据中分离出可解释的信息,这些原始数据为传统的视觉语言对齐框架提供了补充知识。在三个基准数据集上进行的实验验证了本文的方法比最先进的解决方案获得了更好的性能。

【项目推荐】

面向小白的顶会论文核心代码库:https://github.com/xmu-xiaoma666/External-Attention-pytorch[2]

面向小白的YOLO目标检测库:https://github.com/iscyy/yoloair[3]

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

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

【技术交流】

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

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

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

参考资料

[1]

https://arxiv.org/abs/2208.04215: https://arxiv.org/abs/2208.04215

[2]

https://github.com/xmu-xiaoma666/External-Attention-pytorch: https://github.com/xmu-xiaoma666/External-Attention-pytorch

[3]

https://github.com/iscyy/yoloair: https://github.com/iscyy/yoloair

[4]

https://github.com/xmu-xiaoma666/FightingCV-Paper-Reading: https://github.com/xmu-xiaoma666/FightingCV-Paper-Reading

分类:

人工智能

标签:

人工智能

作者介绍

FightingCV
V1

公众号 FightingCV