《Seeing Out of tHe bOx: End-to-End Pre-training for Vision-Language Representation Learning》—论文笔记
这篇论文是2021年在CVPR Oral上发表的研究成果,其中提出了一种名为SOHO的新穎视觉-語言预训练模型。该模型基于端到end的学习架构,在处理海量图像与文本文本配對數據时成功地學習了跨模态的空间语義關聯
Breaking Away from Conventional Thinking: Comprehensive End-to-End Pre-training for Cross-Domain Representation
GitHub - researchmm/soho: [CVPR'21 Oral] Walking Beyond the Box: Preliminary Training for Vision-Language Representation Learning
VLPT模型(视觉语言联合表征预训练模型)是一种专门针对学习与具体任务无关但具有重要语义意义的图像内容以及自然语言开发的重要工具,在经过视觉-语言数据集系统性学习后对其基础架构进行适度优化即可实现快速适应下游应用(如VQA和图像描述生成)。为何要采用VLPT模型进行预训练而非传统的方式分别利用文本预训练与图像预训练方法提取各自特征?这是因为从视觉语言领域的需求来看希望所获得的图像与文字表征能够在语义层面上实现高度对应性因此近年来(2019年)起研究者们开始关注并提出了一种名为VLPT的新方法它通过系统性地学习大规模易获取的视觉-语言配对样本实现了更优的跨模态表征效果
而end-to-end model就是通过对传统的多步骤或多模块方法实现单一模型的方式进行任务处理,在此过程中显著减少了累积误差以及工程复杂度的产生;然而该方法对模型可解释性的提升却相对有限
SOHO模型

SOHO模型本质上而言就是,在针对输入文本(a),采用一种名为"text embedding"的技术获取其文字特性;而对于每张输入图片(b),本文设计了一种可训练且依赖于卷积神经网络(CNN)(e)的技术用于提取视觉表征。为了使这些视觉特征能够统一地反映语义信息, 研究者在此基础上提出了一种称为"visual dictionary"的概念, 并将其应用于图象编码器以实现更有效的表示。最后阶段,则采用了多层Transformer(g),它们是经过三个预训练任务联合优化而形成的多模态融合体系(c).
文中对输入问题的处理流程采用了谷歌2018年提出的BERT模型(如BERT模型所示),用于生成文本嵌入特征W。
Trainable Visual Encoder

当前主流的方法是通过自上而下的注意力机制来提取物体的视觉特征(BUTD论文所提出的方法),并已在另一篇博客中进行了详细笔记(另一篇博客也有详细的笔记内容)。然而本文作者的观点是该方法存在三个主要缺陷:一是未能考虑边界框之外背景信息的重要性;例如,在图中所示的情景中(例如,在图中所示的情景中),BUTD模型将这些人物视为在船上,并未注意到船周围的其他物体之间的相互关系;二是该方法导致模型对图像的理解仅基于预先定义好的类别信息(即:在初始状态下缺乏某一类别的先验知识),因此当缺少某类别的初始信息时(即:在初始状态下缺乏某一类别的先验知识),模型将永远无法识别这一类别;三是该方法容易受到检测器质量低下、存在噪声干扰以及过度采样的影响(即:容易受到检测器质量低下、存在噪声干扰以及过度采样的影响)。

针对上述问题, 本文作者希望从图片中提取全部的视觉特征, 因而转向了以往的方法, 并采用卷积神经网络(CNN)来获取所有类型的视觉信息, 将整幅图像作为输入内容, 最后通过视觉特征编码器生成一个完整的图像级视觉描述向量

然而,在跨模态学习中使用这些方法可能会遇到挑战。尽管视觉编码器捕获的视觉特征V在多样性及密度上均显著高于文本特征W,在跨模态理解任务中直接进行这种简单的结合可能会导致性能下降。
Visual Dictionary
本文阐述了一个视觉词典体系的概念,并通过将相近的视觉信息聚类到同一图像特征类别里来进行标记分类。



Pre-training Pipeline

最后专门涉及跨模态Transformer的部分开始于文章中采用了多个层级的Transformer架构来整合提取了视觉与语言的各种特征进行深度学习模型构建
为了掌握视觉-语言任务的通用表示方法,在大规模数据集上采用了自监督的方法进行预训练;这一预训练过程不仅依赖于现有的Masked Language Modeling(MLM)和Image-Text Matching(ITM),还基于虚拟视觉语义标签的生成提出了一个新的框架Masked Visual Modeling(MVM)。
在跨模态Transformer架构中, 是通过将视觉词典的编码器输出与词汇嵌入连接起来, 构建为跨模态学习任务的输入序列. 随后将其传递给多层Transformer模块, 从而生成融合了视觉与语言特征的联合表示.

该预训练语言模型(MLM)基于BERT设计,在处理文本数据时会通过随机mask操作生成部分不可见词项,并旨在让模型推断这些被遮蔽词项的具体内容。本文中将MLM的作用描述为促进其构建语言token序列与视觉空间特征之间的映射关系。其预训练目标即是在已知其他token信息及视觉特征f(V)的前提下,通过最小化对数似然损失函数来优化预测能力。

本文遵循视觉词典构建的框架提出了MVM预训练模型方法。该模型具有相似性与MLM架构,在每张图像中随机遮盖部分区域后,并结合相邻区域的图像特征以及全部的语言标记信息进行分析。随后通过最小化对数似然的方法实现对被遮盖区域的预测。

为了提升跨模态匹配的效果,在预训练过程中采用了图像与文本结合的任务,并通过在联合特征空间中使用二元分类器来判断输入的图像与文本是否存在匹配关系。对应的损失函数如上式所示。

该预训练模型SOHO的整体训练目标旨在最小化上述三个损失函数,并且作者在文章中将这三个损失函数分配了相同的权重
Experiment
作者在MSCOCO和Visual Genome两个数据集上进行SOHO模型的微调,并随后将该模型用于四个下游任务。

本节仅对VQA任务的性能进行对比分析。具体而言,在所使用的主要数据集为VQA2.0版本的前提下,我们对三种不同的方法进行了系统性评估。其中LXMERT模型采用了与本文相同的预训练数据集和视觉编码器架构,在这一前提下展示了良好的基准效果。此外,UNITER模型通过引入额外的训练数据提升了性能表现。然而,在仅使用少量训练数据的情况下,本文所提出的方法依然取得了更好的效果。

该图摘自一篇题为《深度视觉问答系统研究进展》的综述文献中,并列展示了其他类型的VQA架构模型
其他
经测试,作者开源的代码能够顺利运行。在进行视觉-语言预训练模型的构建时,采用了两个公开可用的数据集:MSCOCO数据集和Visual Genome数据集。为了节省时间成本,在此省时方案中,并未进行自建模型的预训练工作,而是直接采用了作者已提供现成的预训练模型。
随后,在对预设好的模型进行应用时,在该下游任务中即完成了其迁移学习过程。针对构建该下游任务的VQA模型而言,在其基础架构后附加两个全连接层即可完成结构搭建,并将其视为一个多分类目标识别问题来处理。其中最后一层输出对应3192个可能的答案的概率分布。实验采用NVIDIA TITAN Xp单卡配置,并持续进行了约二十轮的迭代,在每一轮迭代所需时间约为五小时的情况下完成了整个学习过程

两个测试例子
VQA Challenge官网测试结果:

整体准确率数值比作者在文中报告的数值低了大约几个百分点左右,在分析原因时可能的原因之一是使用单卡并未采用分布式训练策略所导致的精度下降
参考文献
Huang et al.'s research team presented their work titled "Viewing Beyond the Container" at the IEEE/CVF Conference on Computer Vision and Pattern Recognition in 2021, focusing on fully supervised pre-training for VL representation learning.
Devlin J et al. introduced the Bert model as a pre-trained tool for the multilayered analysis of deep bidirectional transformers toward language understanding.
[3] 包希港,周春来,肖克晶,覃飙.视觉问答研究综述[J].软件学报,2021,32(08):2522-2544.DOI:10.13328/j.cnki.jos.006215.
