首个视觉-语言预训练综述来了!

9cfcf1c26abb6f8edbd09229386a3218.png

文 | Feilong Chen等
编 | 陈萍
源 | 机器之心

一文了解视觉 - 语言预训练最新进展和新领域。

让机器做出与人类相似的反应一直是 AI 研究不懈追求的目标。为了让机器具有感知和思考的能力,研究人员进行了一系列相关研究,如人脸识别、阅读理解和人机对话,通过这些任务训练和评估机器在特定方面的智能。一般来讲,领域专家通过手工构建标准数据集,然后在这些数据集上训练和评估相关模型。然而,由于相关技术的限制,训练模型往往需要大量的标注数据,以获得更好、更强大的模型。

基于 Transformer 架构的预训练模型缓解了这个问题。它们首先通过自监督学习进行预训练,从大规模未标记数据中训练模型,从而学习通用表示。它们在下游任务上仅使用少量手动标记的数据进行微调就能取得令人惊讶的效果。自 BERT 被应用于 NLP 任务以来,各种预训练模型在单模态领域快速发展,例如 Vision Transformer (ViT) 和 Wave2Vec。大量工作表明它们有利于下游单模态任务,并避免从头开始训练新模型。

与单模态领域类似,多模态领域也存在高质量标注数据较少的问题。我们不禁会问,上述预训练方法能否应用于多模态任务?研究人员已经对这个问题进行了探索并取得了重大进展。

在本文中,来自中国科学院自动化研究所、中国科学院大学的研究者调查了视觉 - 语言预训练(vision-language pre-training,VLP)最新进展和新领域,包括图像 - 文本预训练和视频 - 文本预训练。VLP 通过对大规模数据的预训练来学习不同模态之间语义对应关系。例如,在图像 - 文本预训练中,研究者期望模型将文本中的狗与图像中的狗外观相关联。在视频 - 文本预训练中,研究者期望模型将文本中的对象 / 动作映射到视频中的对象 / 动作。

00495bc40fbcdb4ce2208c4db6014c97.png

论文链接:
https://arxiv.org/pdf/2202.09061.pdf

为了实现这一目标,研究者需要巧妙地设计 VLP 对象和模型架构,以允许模型挖掘不同模态之间的关联。

为了让读者更好地全面掌握 VLP,该研究首先从特征提取、模型架构、预训练目标、预训练数据集和下游任务五个方面回顾其最近进展。然后,文章详细总结了具体的 VLP 模型。最后,文章讨论了 VLP 的新领域。据了解,这是对 VLP 领域的首次调查。研究者希望这项调查能够为 VLP 领域的未来研究提供启示。

e4725403fe9cb8f1645829fc84570c05.pngVLP 综述ce2338c8b90aba49a43912295b7d5414.png

VLP 五个方面回顾及其最近进展

特征处理方面:论文主要介绍了 VLP 模型如何进行预处理和表示图像、视频和文本以获得对应特征。

为了充分利用单模态预训练模型,VLP 随机初始化标准 transformer 编码器来生成视觉或文本表示。从视觉来讲,VLP 利用预训练视觉 transformer(例如 ViT 和 DeiT)对 ViT-PF 进行编码。从文本来讲,VLP 使用预训练文本 transformer(例如 BERT)对文本特征进行编码。为简单起见,该研究将这些 transformer 命名为 Xformer。

模型架构方面:论文从两个不同的角度介绍 VLP 模型架构:(1)从多模态融合的角度来观察单流与双流架构(2)从整体架构设计来比较编码器以及编码器 - 解码器对比。

单流架构是指将文本和视觉特征组合在一起,然后馈入单个 transformer 块,如下图 1 (a) 所示。单流架构通过合并注意力来融合多模态输入。单流架构的参数效率更高,因为两种模式都使用相同的参数集。

双流架构是指文本和视觉特征没有组合在一起,而是独立馈入到两个不同的 transformer 块,如图 1 (b) 所示。这两个 transformer 块不共享参数。为了获得更高的性能,交叉注意力(如 图 1 (b) 中的虚线所示)用于实现跨模态交互。为了实现更高的效率,视觉 transformer 块和文本 transformer 块之间也可以不采用交叉注意力。

37c74c468933cb62f766967069c854ce.png

许多 VLP 模型只采用编码器架构,不同模态表示直接馈入输出层。相比之下,其他 VLP 模型提倡使用 transformer 编码器 - 解码器架构,不同模态表示首先馈入解码器,然后馈入输出层。

预训练目标方面:论文通过使用不同的预训练目标来预训练 VLP 模型,并将预训练目标总结为四类:完成、匹配、时间和特定类型

完成(completion)指的是利用未掩码部分来重建掩码元素。以掩码语言建模 (MLM) 为例,其最早由 taylor 提出,由于 BERT 将其作为预训练任务而广为人知。VLP 模型中的 MLM 类似于预训练语言模型 (PLM) 中的 MLM,它不仅可以通过其余文本 token 来预测掩码文本 token,还可以通过视觉 token 来预测掩码文本 token。根据经验,遵循 BERT 的 VLP 模型以 15% 的掩码率随机掩码每个文本输入 token,并在 80% 的时间使用特殊 token [MASK]、10% 的时间使用随机文本 token,剩余 10% 的时间使用原始 token 来替换被掩码掉的文本。不过在普林斯顿大学陈丹琦等人的论文《Should You Mask 15% in Masked Language Modeling?》中,作者发现:在有效的预训练方案下,他们可以掩蔽 40-50% 的输入文本,并获得比默认的 15% 更好的下游性能。

在掩码视觉建模 (MVM) 中,与 MLM 一样,MVM 对视觉(图像或视频)区域或 patch 进行采样,并且通常以 15% 的概率掩码其视觉特征。VLP 模型需要在给定剩余的视觉特征和所有文本特征的情况下重建掩码的视觉特征。

视觉 - 语言匹配 (VLM) 是最常用的预训练目标,用于对齐视觉和语言。在单流 VLP 模型中,研究者使用特殊 token [CLS] 表示作为两种模态的融合表示。在双流 VLP 模型中,研究者将特殊视觉 token [CLSV] 视觉表示和特殊文本 token [CLST] 文本表示连接起来,作为两种模态的融合表示。VLP 模型将两种模态的融合表示提供给 FC 层和 sigmoid 函数以预测 0 到 1 之间的分数,其中 0 表示视觉和语言不匹配,1 表示视觉和语言匹配。在训练期间,VLP 模型在每一步从数据集中采样正对或负对。

预训练数据集方面:大多数用于 VLP 的数据集是通过组合跨多模态任务的公共数据集构建而成。这里,一些主流语料库及其详细信息如下表 1 所示。

dc1766a00b47ab2f2e182257c1d813a3.png

下游任务方面:各种各样的任务需要视觉和语言知识融合。本小节论文介绍了此类任务的基本细节和目标,并将其分为五类:分类、回归、检索、生成和其他任务,其中分类、回归和检索任务也称为理解任务。

分类任务中,其包括视觉问答 (VQA)、视觉推理和合成问答 (GQA)、视觉 - 语言推理 (VLI)、自然语言视觉推理 (NLVR)、视觉常识推理 (VCR) 等。在 VQA 中,提供图像或视频视觉输入,它通常被认为是一个分类任务,模型从一个选择池中预测出最合适的答案;在 GQA 中,我们可以将 GQA 视为 VQA 的升级版,旨在推进自然场景视觉推理的研究;在 VLI 中,给定具有对齐字幕的视频剪辑作为前提,并与基于视频内容的自然语言假设配对,模型需要推断该假设是否与给定视频剪辑相矛盾。

回归任务中,多模态情感分析 (MSA) 旨在利用多模态信号(如视觉、语言等)检测视频中的情绪。它是作为一个连续的强度变量来预测话语的情感走向。

检索任务中,视觉 - 语言检索 (VLR) 通过适当的匹配策略来理解视觉(图像或视频)和语言,其包括两个子任务,视觉到文本检索和文本到视觉检索,其中视觉到文本检索是根据视觉从更大的描述池中获取最相关的文本描述,反之亦然。

生成任务中,视觉字幕 (VC) 旨在为给定的视觉(图像或视频)输入生成语义和语法上合适的文本描述。此外,论文还介绍了其他下游任务,例如多模态机器翻译 (MMT)、视觉语言导航 (VLN) 和光学字符识别 (OCR) 等。

99e8fb2edd04fa2f63c7c9955f49f269.pngSOTA VLP 模型099fa2d374a2cbcfe032af3dd8dc8c44.png

图像 - 文本 VLP 模型。VisualBERT 被称为第一个图像 - 文本预训练模型,使用 Faster R-CNN 提取视觉特征,并将视觉特征和文本嵌入连接起来,然后将连接后的特征馈送到单个由 BERT 初始化的 transformer 中。许多 VLP 模型在调整预训练目标和预训练数据集时遵循与 VisualBERT 相似的特征提取和架构。最近,VLMO 利用图像 patch 嵌入和文本词嵌入,将组合嵌入与模态专家一起输入到单个 transformer 中,并取得了令人印象深刻的性能。METER 探索了如何使用单模态预训练模型,并提出一种双流架构模型来处理多模态融合,从而在许多下游任务上实现了 SOTA 性能。

视频 - 文本 VLP 模型。VideoBERT 被称为第一个视频 - 文本预训练模型,其扩展 BERT 模型以同时处理视频和文本。VideoBERT 使用预训练的 ConvNet 和 S3D 来提取视频特征并将它们与文本词嵌入连接起来,并馈送到以 BERT 进行初始化的 transformer。在训练 VideoBERT 时,ConvNet 和 S3D 被冻结,这表明该方法不是端到端的。最近,受 ViT 的启发,Frozen 和 Region-Learner 首先将视频剪辑处理成帧,并根据 ViT 处理每一帧图像的方法获得 patch 嵌入。Frozen 和 Region-Learner 以端到端的方式优化自身并实现 SOTA 性能。

下表 2 总结了更多现有的主流 VLP 模型:

2ae43d433215259800eac36eef69a427.png

未来,在现有工作的基础上,研究者希望 VLP 可以从以下几个方面进一步发展:

  • 结合声学信息,以往的多模态预训练研究大多强调语言和视觉的联合建模,而忽略了隐藏在音频中的信息;

  • 知识学习和认知,尽管现有的 VLP 模型已经取得了显着的性能,但它们本质上是拟合大规模多模态数据集,让 VLP 模型更有知识对于未来的 VLP 很重要;

  • 提示优化,通过设计离散或连续提示并将 MLM 用于特定的下游任务,这些模型可以减少微调大量参数的计算成本,弥合预训练和微调之间的差距。

0e68635898d0f9ddba88c1caaa36dfcc.png后台回复关键词【入群

加入卖萌屋NLP、CV与搜推广与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

193cbc72737cc8ec48387a2cc781b49d.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477524.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1233. 删除子文件夹

1. 题目 你是一位系统管理员,手里有一份文件夹列表 folder,你的任务是要删除该列表中的所有 子文件夹,并以 任意顺序 返回剩下的文件夹。 我们这样定义「子文件夹」: 如果文件夹 folder[i] 位于另一个文件夹 folder[j] 下&…

学术会议 | 欢迎注册参加第21届国际语义网大会ISWC-会议日程发布

ISWC(International Semantic Web Conference)是语义网和知识图谱领域的国际顶级学术会议,2022年10月23-27日,ISWC将通过线上的方式举办,汇聚全世界相关的科研工作者、从业者和领域专家,共同探讨、推进、塑造知识图谱与语义网技术…

Spring Cloud实战小贴士:Zuul统一异常处理(三)【Dalston版】

本篇作为《Spring Cloud微服务实战》一书关于Spring Cloud Zuul网关在Dalston版本对异常处理的补充。没有看过本书的读书也不要紧,可以先阅读我之前的两篇博文:《Spring Cloud实战小贴士:Zuul统一异常处理(一)》和《Sp…

LeetCode 1288. 删除被覆盖区间(lambda排序)

1. 题目 给你一个区间列表&#xff0c;请你删除列表中被其他区间所覆盖的区间。 只有当 c < a 且 b < d 时&#xff0c;我们才认为区间 [a,b) 被区间 [c,d) 覆盖。 在完成所有删除操作后&#xff0c;请你返回列表中剩余区间的数目。 示例&#xff1a; 输入&#xff1…

共同一作,会被认可吗?

文 | 检索宝源 | 科研大匠在我国&#xff0c;论文署名问题长期以来备受争议。尤其是共同第一作者&#xff0c;因没有统一认定标准&#xff0c;又直接影响硕博毕业、求职、考评的结果&#xff0c;而令人心神不宁。共一指的就是共同第一作者&#xff0c;也可以叫做并列第一作者&a…

Spring Cloud构建微服务架构:Hystrix监控数据聚合【Dalston版】

上一篇我们介绍了使用Hystrix Dashboard来展示Hystrix用于熔断的各项度量指标。通过Hystrix Dashboard&#xff0c;我们可以方便的查看服务实例的综合情况&#xff0c;比如&#xff1a;服务调用次数、服务调用延迟等。但是仅通过Hystrix Dashboard我们只能实现对服务当个实例的…

图谱实战 | 丁香园医疗领域图谱的构建与应用

分享嘉宾&#xff1a;付子玉 观澜网络 算法工程师编辑整理&#xff1a;孙佩霞 中国电信研究院出品平台&#xff1a;DataFunTalk导读&#xff1a;丁香园大数据组旨在为用户提供更优质的内容与服务&#xff0c;使用知识/概念图谱、预训练模型挖掘更深层次的用户意图。本文介绍了丁…

LeetCode 722. CPP删除注释(逻辑题)

1. 题目 给一个 C 程序&#xff0c;删除程序中的注释。这个程序source是一个数组&#xff0c;其中source[i]表示第i行源码。 这表示每行源码由\n分隔。 在 C 中有两种注释风格&#xff0c;行内注释和块注释。 字符串// 表示行注释&#xff0c;表示//和其右侧的其余字符应该被…

CVPR 2022 | 天大本科生论文入选!深度学习长尾分类新SOTA

文 | 丰色 发自 凹非寺 源 | 量子位&#xff08;QbitAI&#xff09;本科生搞科研到底能做出什么成绩&#xff1f;最新被CVPR 2022收录的一篇论文中&#xff0c;提供了一种新思路来解决深度学习中长尾分布数据的分类问题&#xff0c;最终实现了新SOTA。论文&#xff1a;https://…

Spring Cloud构建微服务架构:Hystrix监控面板【Dalston版】

在上一篇《服务容错保护&#xff08;hystrix断路器&#xff09;》的介绍中&#xff0c;我们提到断路器是根据一段时间窗内的请求情况来判断并操作断路器的打开和关闭状态的。而这些请求情况的指标信息都是HystrixCommand和HystrixObservableCommand实例在执行过程中记录的重要度…

学术会议 | 欢迎注册参加第11届国际知识图谱联合会议

11th International Joint Conference On Knowledge Graphs(IJCKG 2022)IJCKG(International Joint Conference On Knowledge Graphs)会议之前是国际语义技术联合会议&#xff08;the Joint International Semantic Technology Conference (JIST)&#xff09;&#xff0c;JIST …

LeetCode 396. 旋转函数(数学)

1. 题目 给定一个长度为 n 的整数数组 A 。 假设 Bk 是数组 A 顺时针旋转 k 个位置后的数组&#xff0c;我们定义 A 的“旋转函数” F 为&#xff1a; F(k) 0 * Bk[0] 1 * Bk[1] ... (n-1) * Bk[n-1]。计算F(0), F(1), …, F(n-1)中的最大值。 注意: 可以认为 n 的值小…

敬你一杯调参人生

文 | 不会的选C源 | LA PAUSE乐泊一杯上好的手冲咖啡也是作品&#xff0c;就像算法工程师调参已久的模型&#xff0c;建筑师终于定稿的一份设计&#xff0c;一首制作人编排已久的歌曲。从第一次喝到风味开始喝咖啡的人很多&#xff0c;有的喝速溶&#xff0c;有的追星巴克新品&…

Spring Cloud构建微服务架构:服务容错保护(Hystrix断路器)【Dalston版】

前言 在前两篇《Spring Cloud构建微服务架构&#xff1a;服务容错保护&#xff08;Hystrix服务降级&#xff09;》和《Spring Cloud构建微服务架构&#xff1a;服务容错保护&#xff08;Hystrix依赖隔离&#xff09;》中&#xff0c;我们对Hystrix提供的服务降级和依赖隔离有了…

LeetCode 934. 最短的桥(2次BFS)

1. 题目 在给定的二维二进制数组 A 中&#xff0c;存在两座岛。&#xff08;岛是由四面相连的 1 形成的一个最大组。&#xff09; 现在&#xff0c;我们可以将 0 变为 1&#xff0c;以使两座岛连接起来&#xff0c;变成一座岛。 返回必须翻转的 0 的最小数目。&#xff08;可…

讲习班 | ISWC 2022 知识感知的零样本学习

前言近年来&#xff0c;深度学习技术依托强大的计算资源、复杂的神经网络和大规模的标注数据集在视觉、语言、医学、金融等广泛的研究领域取得了显著的成就。然而&#xff0c;在现实应用场景中&#xff0c;尤其是在开放世界的背景假设下&#xff0c;随时会有一些新的概念/对象出…

谷歌提出 RNN 版 Transformer,或为长文本建模的当前最优解

文 | 小轶今天给大家介绍一篇谷歌的最新工作&#xff0c;解决的是 Transformer 的长文本处理问题。在原生 Transformer 中&#xff0c;attention 的复杂度是输入序列长度的平方级别&#xff0c;因此限制了它处理长文本的能力。简单来说&#xff0c;本文提出的解决方案就是把 Tr…

Spring Cloud构建微服务架构:服务容错保护(Hystrix依赖隔离)【Dalston版】

前言 在上一篇《Spring Cloud构建微服务架构&#xff1a;服务容错保护&#xff08;Hystrix服务降级&#xff09;》中&#xff0c;我们已经体验了如何使用HystrixCommand来为一个依赖资源定义服务降级逻辑。实现方式非常简单&#xff0c;同时对于降级逻辑还能实现一些更加复杂的…

重点领域知识工程课程群虚拟教研室建设启动会暨第一次教学研讨会在线召开...

重点领域知识工程课程群虚拟教研室启动会暨第一次教学研讨会于2022年10月11日晚在线召开。重点领域教学资源建设项目管理办公室相关负责人、中国中文信息学会语言与知识计算专委会主任李涓子、天津大学智能与计算学部主任李克秋出席会议并致辞。天津大学人工智能学院院长胡清华…

LeetCode 556. 下一个更大元素 III

1. 题目 给定一个32位正整数 n&#xff0c;你需要找到最小的32位整数&#xff0c;其与 n 中存在的位数完全相同&#xff0c;并且其值大于n。如果不存在这样的32位整数&#xff0c;则返回-1。 示例 1: 输入: 12 输出: 21示例 2: 输入: 21 输出: -1来源&#xff1a;力扣&#x…