微软亚研提出VL-BERT:通用的视觉-语言预训练模型-阿里云开发者社区

开发者社区> 超努力的写代码> 正文

微软亚研提出VL-BERT:通用的视觉-语言预训练模型

简介: 来自中科大、微软亚研院的研究者们提出了一种新型的通用视觉-语言预训练模型(Visual-Linguistic BERT,简称 VL-BERT),该模型采用简单而强大的 Transformer 模型作为主干网络,并将其输入扩展为同时包含视觉与语言输入的多模态形式,适用于绝大多数视觉-语言下游任务。
+关注继续查看

为了让 VL-BERT 模型利用更为通用的特征表示,作者在大规模图片描述生成数据集 ConceptualCaptions 中进行 VL-BERT 的预训练,实验证明此预训练过程可以显著提高下游的视觉-语言任务的效果,包含视觉常识推理、视觉问答与引用表达式理解等。值得一提的是,在视觉常识推理排行榜中,VL-BERT 取得了当前单模型的最好效果。

微信图片_20211201214433.jpg


论文地址:https://arxiv.org/abs/1908.08530


适用于下游任务的通用特征表示预训练是深度网络成功的标志之一。在计算机视觉领域,深度网络在 ImageNet 数据集进行图像分类的预训练过程,被发现可广泛提高多种图像识别任务的效果。在自然语言处理领域中,Transformer 模型在大规模语料库中使用语言模型进行预训练的过程,也被证明可广泛提高多种自然语言处理任务的效果。


但对于计算机视觉和自然语言处理领域交叉的任务,例如图像标题生成、视觉问答、视觉常识推理等,缺少这种预训练的通用多模态特征表示。
一般来说,之前的视觉-语言模型分别使用计算机视觉或自然语言处理领域中的预训练模型进行初始化,但如果目标任务数据量不足,模型容易过拟合从而损失性能。并且对于不同的视觉-语言任务,其网络架构一般是经过特殊设计的,由此很难通过视觉-语言联合预训练的过程帮助下游任务。


由此,在本文中,作者提出了一种可广泛应用于视觉-语言任务的预训练通用特征表示,称为 Visual-LinguisitcBERT,简称 VL-BERT,其架构如下图所示:

微信图片_20211201214428.jpg


VL-BERT 的主干网络使用 TransformerAttention 模块,并将视觉与语言嵌入特征作为输入,其中输入的每个元素是来自句子中的单词、或图像中的感兴趣区域(Region of Interests,简称 RoIs)。在模型训练的过程中,每个元素均可以根据其内容、位置、类别等信息自适应地聚合来自所有其他元素的信息。在堆叠多层 TransformerAttention 模块后,其特征表示即具有更为丰富的聚合与对齐视觉和语言线索的能力。


为了更好地建模通用的视觉-语言表示,作者在大规模视觉-语言语料库中对 VL-BERT 进行了预训练。采用的预训练数据集为图像标题生成数据集,Conceptual Captions,其中包含了大约 330 万个图像标题对。
VL-BERT 的预训练主要采用三个任务:a) 屏蔽语言模型(Masked Language Modeling),即随机屏蔽掉语句中的一些词,并预测当前位置的词是什么;b) 屏蔽 RoI 分类(MaskedRoIClassification),即随机屏蔽掉视觉输入中的一些 RoIs,并预测此空间位置对应 RoI 的所属类别;c) 图像标题关联预测(Sentence-Image Relationship Prediction),即预测图像与标题是否属于同一对。


在预训练结束后,使用微调来进行下游任务的训练。本文中主要在三个视觉-语言下游任务中进行微调,即视觉常识推理(VisualCommonsenseReasoning)、视觉问答(VisualQuestionAnswering)与引用表达式理解(ReferringExpressionComprehension),下面将分别介绍。


视觉常识推理任务即给定图片与相关问题,机器不仅需要回答问题,还需要提供理由来证明答案的正确性。此任务(Q->AR)被分解为两个子任务,即视觉问答(Q->A,给定图片与问题,输出正确答案),以及视觉推理(QA->R,给定图片、问题与答案,输出正确的理由)。
下面以视觉问答子任务为例,此任务的输入为问题、答案与图像的 RoIs,并预测此答案是否为正确答案。除此之外,作者发现微调时增加与预训练类似的 RoI 分类损失也会进一步提升性能,如下:

微信图片_20211201214425.jpg


视觉问答任务即给定图片,回答与图片输入相关的问题。由此模型的输入即为问题与图像,基本元素为单词或 RoI,最终对答案进行预测,如下:


image.gif


引用表达式理解任务是使用给定的引用表达式来定位图像中的相关对象,由此输入为查询(引用表达式)与图片中的 RoIs,并预测哪个 RoI 为查询输入的引用,如下:

image.gif


下面将介绍论文中的一些主要实验结果:


a)在视觉常识推理(Visual Commonsense Reasoning)任务中,与当前最好方法的结果比较如下:

微信图片_20211201214423.jpg


b)在视觉问答(Visual Question Answering)任务中,与当前最好方法的结果比较如下:

微信图片_20211201214420.jpg


c)在引用表达式理解(Referring Expression Comprehension)任务中,与当前最好方法的结果比较如下:

微信图片_20211201214417.jpg


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10084 0
使用NAT网关轻松为单台云服务器设置多个公网IP
在应用中,有时会遇到用户询问如何使单台云服务器具备多个公网IP的问题。 具体如何操作呢,有了NAT网关这个也不是难题。
26793 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10883 0
使用SSH远程登录阿里云ECS服务器
远程连接服务器以及配置环境
2511 0
windows server 2008阿里云ECS服务器安全设置
最近我们Sinesafe安全公司在为客户使用阿里云ecs服务器做安全的过程中,发现服务器基础安全性都没有做。为了为站长们提供更加有效的安全基础解决方案,我们Sinesafe将对阿里云服务器win2008 系统进行基础安全部署实战过程! 比较重要的几部分 1.
9161 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
7496 0
阿里云服务器ECS登录用户名是什么?系统不同默认账号也不同
阿里云服务器Windows系统默认用户名administrator,Linux镜像服务器用户名root
4506 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
7365 0
1946
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载