VLP: A Survey on Vision-Language Pre-training

2024-02-18 19:50

本文主要是介绍VLP: A Survey on Vision-Language Pre-training,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言
在计算机视觉与自然语言处理预训练模型层出不穷的今天,多模态预训练模型也悄然浮出水面。本篇综述是第一篇关于视觉-语言预训练(Vision-Language Pretraining)的综述,介绍了VLP的最新进展和新领域,包括了图像-文本和视频-文本的预训练。整篇综述从以下5个方面对视觉-语言预训练进行了详细的阐释:

特征提取
模型架构
预训练目标
预训练数据集
下游任务
VLP主要通过对大规模数据的预训练来学习不同模态之间的语义对应关系。例如,在图文预训练中,我们希望模型将文本中的“狗”与图像中的“狗”联系起来。在视频文本预训练中,我们期望模型将文本中的对象/动作映射到视频中的对象/动作。为了实现这一目标,需要巧妙地设计VLP对象和模型体系结构,以允许模型挖掘不同模式之间的关联。

特征提取
图像特征提取
(1)OD-based Region Features (OD-RFs).

目前大部分VLP使用预训练的目标检测模型来提取视觉特征。这里使用最多的目标检测模型是Faster R-CNN。

(2)CNN-based Grid Features (CNN-GFs)

VLP模型通过利用卷积神经网络(CNN)提取视觉特征来获得网格特征。一方面,VLP模型可以直接利用网格特征进行端到端的CNN训练。另一方面,VLP模型也可以首先使用学习到的vision dictionary离散化网格特征,然后将它们送到跨模态模块。

(3) ViT-based Patch Features (ViT-PFs)

ViT将图片压平成序列。这对于Transformer的输入非常友好。

视频特征提取
我们一般把视频视作由M帧组成的图像信息。

VLP模型利用上述图像特征提取方法提取frame的特征。两个最常用的功能是CNN-GFs和VIT-PFs。对于CNN-GFs,VLP模型首先使用在ImageNet上预训练的ResNet和预先训练好的SlowFast来提取每个视频帧的2D和3D视觉特征。这些特征被串联为视觉特征,并通过全连接(FC)层被投影到与token embeddings相同的低维空间。对于ViT-PFs而言,一段视频clip 包含了 帧分别率为 的图像,按照ViT和Timesformer的协议条件来看,输入的视频clip被分割为 的无重叠的spatial-temporal patches,大小为 ,在这里 。

文本特征提取
对于文本特征,以BERT为例,VLP模型首先将输入的句子分割成一系列的子词。然后,在序列的开头和结尾处插入序列开始标记和序列结束标记,以生成输入文本序列。文本输入表示通过将对应的单词嵌入、文本位置嵌入和文本类型嵌入相加来计算。

特征表示
为了充分利用单模态的预训练模型,VLP模型可以将视觉或文本特征发送到Transformer Encoder。具体地说,VLP模型利用具有随机初始化的标准Transformer Encoder来生成视觉或文本表示。此外,VLP模型可以利用预先训练的ViT来编码VIT-PF。VLP模型可以使用预先训练好的文本Transformer来编码文本特征,例如BERT。为简单起见,我们将这些转换器命名为Xformer。

模型架构
模型架构主要从以下两个方面展开

(1)Single-stream vs Dual-stream

(2)Encoder-only vs Encoder-decoder
在这里插入图片描述
VLP的两种结构
Single-stream vs Dual-stream
单流架构是指将文本和视觉特征连接在一起,然后馈送到单个Transformer块中。

双流架构是指文本和视觉特征不是串联在一起而是独立地发送到两个不同的Transformer块中。

单流架构一般来说更加parameter-efficient。双流架构一般采用上图虚线所表示的cross attention进行特征交互。

Encoder-only vs Encoder-decoder
许多VLP模型采用encoder-only的体系结构,其中跨模态表示被直接馈送到输出层以生成最终输出。相比之下,其他VLP模型主张使用encoder-decoder体系结构,其中跨模态表示首先被馈送到decoder,然后被馈送到输出层。

预训练目标
这一部分介绍了我们如何通过使用不同的预训练目标来预训练VLP模型,这对于学习视觉语言的普适表示是至关重要的。我们将预训目标归纳为四类:Completion、Matching、Temporal和Particular。

Completion
Completion是通过利用未masked的元素来重建masked元素以理解模态。包括Masked Language Modeling,Prefix Language Modeling和Masked Vision Modeling。

Masked Language Modeling

掩蔽语言建模(MLM)最早是由Talyeller[1953]在文献( Wilson L Taylor. “Cloze procedure”: A new tool for measuring readability. Journalism quarterly, 30(4):415–433, 1953.)中提出的,由于Bert模型将其作为一种新的预训练任务而被广泛采用。VLP中的MLM类似于BERT中的MLM,但也有所不同。BERT的MLM是利用上下文的可见的词向量预测masked词向量;而VLP中则使用上下文可见的词向量和视觉向量表征去预测masked的视觉或者词向量,小编感觉像是MAE+BERT的融合版。根据经验,和BERT一样,VLP模型以15%的概率随机mask每个文本输入token,并通过80%的时间使用特殊的标记[MASK]来替换被mask的标记,10%的时间使用随机的文本标记和10%的时间使用原始标记来执行masking。

Prefix Language Modeling

前缀语言建模(Prefix Language Model,Prefix LM)是屏蔽语言模型和语言建模(Language Model,简称LM)的统一。前缀模型的提出是为了使模型具有实体生成能力,使得文本诱导的zero-shot具有无需fine-tuning的泛化性。前缀语言建模不同于标准的语言建模,它允许对前缀序列进行双向关注,并且只对剩余的tokens进行自回归因式分解。在Sequence-to-Sequence(Seq2seq)框架下的前缀语言建模不仅可以享受MLM中的双向语境化表示,而且还可以执行类似于语言建模的文本生成。

Masked Vision Modeling

与MLM类似,MVM对视觉(图像或视频)区域或块进行采样,并通常以15%的概率mask其视觉特征。在给定剩余视觉特征和所有文本特征的情况下,VLP模型需要重建mask的视觉特征。被mask的视觉特征被设置为零。由于视觉特征是高维的和连续的,VLP模型针对MVM提出了两种变体。

(1)Masked Features Regression 学习将masked特征的模型输出回归到其原始视觉特征。VLP模型首先将masked特征的模型输出转换为与原始视觉特征相同维度的向量,然后在原始视觉特征与该向量之间进行L2回归。

(2)Masked Feature Classification 学习预测masked特征的object semantic class。VLP模型首先将被屏蔽特征的输出反馈到FC层来预测对象类的得分,然后通过Softmax函数将其转换为预测归一化分布。请注意,没有ground-truth标签。VLP模型的训练方法有两种。一种是VLP模型将对象检测模型中最可能的对象类作为hard label(0或1),假设检测到的对象类是masked特征的ground-truth标签,并应用交叉熵损失来最小化prediction class和pseudo class之间的差距。另一种是VLP模型使用soft label作为监督信号,它是检测器的原始输出(即对象类的分布),并最小化两个分布之间的KL散度。

Matching
Matching是将视觉和语言统一到一个共享的隐层,生成通用的视觉语言表征。包括Vision-Language Matching, Vision-Language Contrastive Learning, Word-Region Alignment。

Vision-Language Matching

视觉语言匹配(VLM)是最常见的预训练模型的目标,以实现视觉和语言的匹配。在单流VLP模型中,他们使用特殊符号[CLS]的表示作为两种模态的融合表示。在双流VLP模型中,它们将特殊视觉标记[CLSV]的视觉表征和特殊文本标记[CLST]的文本表征串联起来,作为两种模式的融合表征。VLP模型将两种模式的融合表示提供给FC层和sigmoid函数,以预测0到1之间的分数,其中0表示视觉和语言不匹配,1表示视觉和语言匹配。在训练过程中,VLP模型在每一步从数据集中抽样正或负对。负对是通过从其他样本中随机选择替换成对样本中的视觉或文本来创建的。

Vision-Language Contrastive Learning

视觉语言对比学习(VLC)从N × N个可能的视觉语言对中预测出匹配的视觉语言对。请注意,在一批训练中有N ~ N个负视觉语言对。VLP模型分别使用特殊视觉标记[CLSV]的视觉表示和特殊文本标记[CLST]的文本表示来表示视觉和语言的聚合表示。VLP模型计算 softmax-normalized 的视觉(图像或视频)到文本的相似性和文本到视觉的相似性,并利用视觉到文本和文本到视觉相似性的交叉熵损失来更新自己。相似度通常用点积来实现。

Word-Region Alignment

单词-区域对齐(WRA)是一种无监督的预训练目标,用于对齐视觉区域(视觉patch)和单词。VLP模型利用最优传输来学习视觉和语言之间的对齐。经验上,VLP模型使用IPOT算法来近似OT距离,因为精确的最小化在计算上是困难的。在求解极小化后,将OT距离作为训练VLP模型的WRA损失。

Temporal
Temporal是通过对中断的输入序列重新排序来学习良好的representation。

Frame Order Modeling

为了更好地模拟视频的时序,VLP模型随机扰乱一些输入帧的顺序,然后预测每一帧的实际位置。在实践中,帧顺序建模(FOM)被建模为一种分类任务。

Particular
Particular types由其他预训练目标组成,例如视觉问题回答和视觉字幕。

VLP模型有时也使用一些下游任务的训练对象,如视觉问答(VQA)和视觉字幕(VC)作为预训练目标。对于VQA,VLP模型采用上述融合表示,应用FC层,并使用转换后的表示来预测预定义答案候选的分类。除了VLP模型作为对预定义答案候选的分类来处理该任务之外,VLP模型还可以直接生成原始文本格式的答案。对于VC,为了使VLP模型具有生成能力来重构输入语句,VLP模型使用自回归解码器来生成相应的图像或视频的文本描述。

预训练数据集

预训练数据集
下游任务
分类任务
视觉问答 Visual Question Answering (VQA).

视觉推理和组合问答 Visual Reasoning and Compositional Question Answering (GQA).

视频语言推理 Video-Language Inference (VLI).

用于视觉推理的自然语言 Natural Language for Visual Reasoning (NLVR).

视觉蕴含 Visual Entailment (VE). 在VE任务中,图像是前提,文本是假设。我们的目标是预测文本是否为“蕴涵图像”。有三个标签:蕴含、中立和矛盾。

视觉常识推理 Visual Commonsense Reasoning (VCR).

Grounding Referring Expressions (GRE). GRE任务是在给定文本引用的情况下定位相关的图像区域。该模型可以输出每个区域的得分,得分最高的区域被用作预测区域。

类别识别 Category Recognition (CR). CR指的是识别产品的类别,这是描述产品的重要属性。

回归任务
视觉语言检索 Vision-Language Retrieval (VLR).

生成任务
视觉字幕 Visual Captioning (VC). VC的目标是为给定的可视(图像或视频)输入生成语义和语法上适当的文本描述。

Novel Object Captioning at Scale (NoCaps). NoCaps扩展了VC任务,以测试模型描述Open Images数据集中新对象的能力,这些对象在训练语料库中是看不到的。

视觉对话 Visual Dialogue (VD). VD的任务形式被赋予一幅图像(或视频)、一段对话历史和一个语言问题,并让模型生成问题的答案。

其他任务
多模态机器翻译 Multi-modal Machine Translation (MMT). MMT是一项翻译和文本生成的双重任务,将文本从一种语言翻译成另一种语言,并使用来自其他形式的附加信息,即图像。

视觉语言导航 Vision-Language Navigation (VLN). VLN是智能体运动的一项基础语言任务,因为它基于语言指令来查看和探索现实世界的动态。

光学字符识别 Optical Character Recognition (OCR).

SOTA VLP模型

SOTA VLP模型
结语
本文是第一篇关于VLP的调研综述。文章从特征提取、模型结构、预训练目标、预训练数据集和下游任务五个方面综述了其最新进展,并对具体的SOTA VLP模型进行了详细的总结。这能够帮助研究人员更好地了解VLP,并启发新的工作来推动这一领域的发展。未来,在现有工作的基础上,VLP可以从以下几个方面进一步发展:

整合声学信息。
知识性学习与认知性。
快速迁移学习。

这篇关于VLP: A Survey on Vision-Language Pre-training的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/722266

相关文章

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

UML- 统一建模语言(Unified Modeling Language)创建项目的序列图及类图

陈科肇 ============= 1.主要模型 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功能,包括用例图。 对象模型:采用对象、属性、操作、关联等概念展示系统的结构和基础,包括类图、对象图、包图。 动态模型:展现系统的内部行为。 包括序列图、活动图、状态图。 因为要创建个人空间项目并不是一个很大的项目,我这里只须关注两种图的创建就可以了,而在开始创建UML图

速通GPT-3:Language Models are Few-Shot Learners全文解读

文章目录 论文实验总览1. 任务设置与测试策略2. 任务类别3. 关键实验结果4. 数据污染与实验局限性5. 总结与贡献 Abstract1. 概括2. 具体分析3. 摘要全文翻译4. 为什么不需要梯度更新或微调⭐ Introduction1. 概括2. 具体分析3. 进一步分析 Approach1. 概括2. 具体分析3. 进一步分析 Results1. 概括2. 具体分析2.1 语言模型

Post-Training有多重要?一文带你了解全部细节

1. 简介 随着LLM学界和工业界日新月异的发展,不仅预训练所用的算力和数据正在疯狂内卷,后训练(post-training)的对齐和微调方法也在不断更新。InstructGPT、WebGPT等较早发布的模型使用标准RLHF方法,其中的数据管理风格和规模似乎已经过时。近来,Meta、谷歌和英伟达等AI巨头纷纷发布开源模型,附带发布详尽的论文或报告,包括Llama 3.1、Nemotron 340

A Comprehensive Survey on Graph Neural Networks笔记

一、摘要-Abstract 1、传统的深度学习模型主要处理欧几里得数据(如图像、文本),而图神经网络的出现和发展是为了有效处理和学习非欧几里得域(即图结构数据)的信息。 2、将GNN划分为四类:recurrent GNNs(RecGNN), convolutional GNNs,(GCN), graph autoencoders(GAE), and spatial–temporal GNNs(S

复盘高质量Vision Pro沉浸式视频的制作流程与工具

在探索虚拟现实(VR)和增强现实(AR)技术的过程中,高质量的沉浸式体验是至关重要的。最近,国外开发者Dreamwieber在其作品中展示了如何使用一系列工具和技术,创造出令人震撼的Vision Pro沉浸式视频。本文将详细复盘Dreamwieber的工作流,希望能为从事相关领域的开发者们提供有价值的参考。 一、步骤和工作流 构建基础原型 目的:快速搭建起一个基本的模型,以便在设备