基于BERT的多模学习——VL-BERT篇

前言

BERT的出现让NLP发展实现了一个大飞跃,甚至有大佬说NLP已经没有可以做的啦,后面就是拼机器拼money了。但是,我认为任何领域的进步之后都会有更苛刻的要求,科研没有尽头,需求也永远无法满足。而多模态,要求机器拥有多维度的感知能力,就是一个更强的挑战。 关于这个话题也逐渐成为另外一个新热点。从19年到现在的论文数量就可见一斑。

所以,为了迎上发展的势头,在继videoBERT之后又调研了一番image和BERT结合的工作。下文将介绍MSRA出品的VL-BERT,通过这个模型来一览现阶段 image+BERT 的研究现状吧。

后台回复【VL-BERT】下载论文原文~~

模型介绍

VL-BERT模型以transformer为骨干,将BERT的输入扩展为文本+图像。那么问题来了,怎样将两者花式融合呢?让我们揣测一下作者的炼丹思路:

  1. 图片和文本没法直接对齐,暴力输入整张图

于是就有了图中用红色虚线框起来的部分,直接将图像、文本、segment和position embeding加和输入。这样做MLM任务是没问题了,但怎样确定模型能准确提取图像信息呢?

  1. 提取图像中的重要部分,增加无文本的图像输入

由于整张图片的粒度远大于文本token,一次性输入整张图片显然不利于图像和文本信息的交互。所以使用了目标检测工具对图片进行分块,提取图像中感兴趣的核心部分RoI(region-of-interest),加上[IMG]标识,输入到模型中(图中浅绿色实线框起来的部分)。 为了不失掉全局信息,在[END]对应的位置又加上了整张图像。另外,我们假设图片的不同区域是没有顺序可言的,即position embedding是一样的。

类比文本输入,模型实际上接受的是文本token(subword)对应的word embedding,所以我们会对所有图像输入(不管是整张图片还是局部RoIs)使用pre-trained R-CNN提取2048维的visual feature embedding输入到模型中。

自监督学习任务(pretrain)

结合上文介绍的模型结构,再强调一下两个预训练任务:

  1. Masked Language Model with visual Clues

根据文本+图像信息预测文本token,升级版的MLM 唯一不同的是被mask的word除了根据没被mask的文本来预测还可以根据视觉的信息来辅助。比如上图中的例子,被mask后的word sequence是kitten drinking from [MASK],如果没有图片给我们的视觉信息是无法预测出被mask的词是bottle。

  1. Masked RoI Classification with LinguisticClues

根据文本+图像信息预测RoIs的类别,针对图像的“MLM”。 以下图为例,首先对图片使用目标检测工具提取RoIs并获得所属类别,然后随机mask局部区域(树叶部分)。需要注意的是,由于模型会接收整张图片的输入,为了避免信息泄露,整张图片对应的部分也要mask。最后,模型根据文本信息和被mask的图片信息预测mask区域所属类别。

下游任务(finetune)

模型通过接收<text, image>输入,通过自监督任务学习到general跨模态表示后,可以很自然的应用很多跨模态的任务中。延续原始BERT的设定,[CLS]最后输出的feature可以预测文本和图片的关系(sentence-image-relation),被mask的text token或者RoI的输出用来做word-level或者RoI-level的预测。

下面来看看不同的下游任务是怎么实现的叭~

  1. 视觉常识推理(VCR)

给定一张图片中的多个RoIs和问题(Q),需要选出答案(A)并解释为什么(R)。VCR任务超越目标检测(object detection),是需要结合认知层面的复杂推理任务。下图展示了数据中的两个例子[1],确实很难很复杂????。

整体任务{Q->AR}可以拆解成两个子任务 {Q->A}(根据问题Q预测答案A){QA->R}(根据QA推理原因R)。而这两个子任务都是选择题,模型只需要从候选答案中挑选认为最正确的选项就好。如下图文本输入由两部分组成Question(已知信息)和Answer(候选答案),图像输入为人工标注的RoIs。针对{Q->A}任务,已知的文本信息为问题Q的文本描述。对{QA->R}任务,已知的文本信息为问题Q加上一个任务预测的答案A。两个任务都根据最后一层[CLS]的输出预测该候选答案(A/R)是否正确。

有一个不合理的地方是,正常人的思维模式是先有一个靠谱的理论依据R得出正确答案A。但是上面模型的逻辑是先有正确答案,再去找合理的原因。因果颠倒。

最终结果,不管是对比task-specific模型R2C还是其他多模态模型,VL-BERT都有非常明显的优势的。

  1. 视觉问答 (VQA)

文章follow了一个专门针对VQA任务设计的模型BUTD实验设定,把VQA任务转化为一个有3k+候选答案的多分类问题,根据被masked Answer token最后一层的输出预测。

相比special design的网络结构(BUTD),VL-BERT在准确率上提升了5%,和其他多模态pretrain model效果相当。

  1. Referenceing Expression Comprehension(visual grounding)

这个任务呢,是根据一句自然语言的描述,定位图片中的具体区域,即判断这句描述讲的是图片的哪个位置。 因为我们已经对图片划分出了RoIs,所以只需要将每个RoIs最后的输出,接一个Regin classification(二分类),判断Query是否是描述这个区域即可。

分析

VL-BERT模型以transformer为骨干,将BERT扩展可以同时接受文本和图片型输入,学习跨模态的表示,在三个下游任务上远超task specific的SOTA模型,并取得和其他pretrain模型comparable或者略胜一筹的结果。

其主要的优势在于 文本和图片的深度交互。对比同期工作LXMERT[2],对text和image输入分别使用single-modal Transformer,然后再接一个cross-modal Transformer,VL-BERT使用一个single cross-modal Transformer,让文本和图片信息能更早更多的交互。

但是这个工作我认为还是有一个需要打问号,或者进一步深入研究的地方。

文章使用的两个自监督任务都是由MLM衍生而来,没有判断文本和图片是否一致(Sentence-Image Relation Prediction)的这个典型任务。

文章在对比实验分析中,提到加入Sentence-Image Relation Prediction任务进行预训练会导致下游任务效果下降,原因分析是由于数据质量问题,sentence-image对应信号噪声较大。 但是直觉上文本和图片的对应关系是一个很强的学习跨模态表示的信号,并且在ViBERT[3]和LXMERT上该任务是有正向收益的。

如果优化数据质量,减少sentence-imgage对应信号的噪声,是否可以优化VL-BERT的效果?

如果仍然是负收益,是否是另外两个自监督任务已经涵盖了sentence-image对应信息,增加这个任务唯一的作用就是带来了数据的噪声?

这三个自监督任务是否存在冲突或者矛盾的地方?其关系是什么?值得进一步的研究和探索。

关注【夕小瑶的卖萌屋】后台回复【VL-BERT】下载带笔记的论文原文~~

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

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

相关文章

从程序员到阿里技术总监之路

第一步&#xff1a;高级研发工程师开始 掌握技术基础 技术语言基础和高级知识&#xff0c;常用算法、常用工具、框架原理、代码运行周期、内存回收机制等等&#xff0c;类似这些基础知识。 第二步&#xff1a;技术主管 需要掌握一定的项目管理常识&#xff0c;掌握一定的架构…

咨询笔记:麦肯锡7步成诗

麦肯锡7步成诗&#xff0c;用于咨询中的关键因素分析。有不少版本&#xff0c;细节各有不同 这个是自己整理的&#xff1a;

活用这23种图表,让你的数据分析胜人一筹 | 推荐收藏

活用这23种图表&#xff0c;让你的数据分析胜人一筹 | 推荐收藏 https://www.jianshu.com/p/de73789504cf?utm_campaignharuki&utm_contentnote&utm_mediumreader_share&utm_sourceweixin

架构师的主要职责是什么?

进阶成为架构师是大多数java程序员们的梦想&#xff0c;架构师从广义上可分为软件架构师、系统架构师&#xff0c;软件架构师是程序员最容易突破、最可能进阶的一条职业发展路径&#xff0c;我这次主要分享软件架构师的相关知识点。 一&#xff1a;架构师的定义 架构师&#…

ELECTRA模型精讲

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

企业咨询:常用分析和咨询方法列表

SWOT分析法&#xff1a;一个综合的方法&#xff0c;可以分析、评估并提出决策建议&#xff0c;需要结合内部因素分析、外部因素分析、综合评价&#xff0c;和辅助决策等一系列方法才能完成鱼骨图分析法&#xff1a;层次分析法的图形展示5M因素分析法&#xff1a;分析法&#xf…

深度学习最全优化方法总结比较(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)

深度学习最全优化方法总结比较&#xff08;SGD&#xff0c;Adagrad&#xff0c;Adadelta&#xff0c;Adam&#xff0c;Adamax&#xff0c;Nadam&#xff09;ycszenSemantic Segmentation / changqianyu.me​关注他1,520 人赞同了该文章前言 &#xff08;标题不能再中二了&#…

基于ubuntu18.04LTS SERVER版的基础系统安装过程

文章目录一、概述二、安装过程&#xff08;一&#xff09;基础安装&#xff08;二&#xff09;初步设置&#xff08;三&#xff09;网络通信和基础软件安装三、成果一、概述 为了构建基于ubuntu 18.04的各种应用&#xff0c;搭建一个最小化的基础版本&#xff0c;实现基本的网…

常用分词算法总结(字典、统计、神经网络)

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

阿里架构师进阶23期精讲:Redis、Kafka、Dubbo、Docker等

史上最全Redis面试49题&#xff08;含答案&#xff09;:哨兵复制事务集群持久化等 高并发架构系列&#xff1a;Redis缓存和MySQL数据一致性方案详解 Redis的高可用详解&#xff1a;Redis哨兵、复制、集群的设计原理&#xff0c;以及区别 高并发架构系列&#xff1a;Redis为…

论文浅尝 | 变分知识图谱推理:在KG中引入变分推理框架

本文转载自公众号&#xff1a;机器之心。推理知识图谱中缺失的连接已经吸引了研究界的广泛关注。在本论文中&#xff0c;加州大学圣塔芭芭拉分校的王威廉等研究者在知识图谱推理中引入了变分推理框架&#xff0c;并将路径搜索和路径推理紧密结合从而进行联合推理&#xff0c;这…

机器学习中的最优化算法总结

https://zhuanlan.zhihu.com/p/42689565 机器学习中的最优化算法总结对于几乎所有机器学习算法&#xff0c;无论是有监督学习、无监督学习&#xff0c;还是强化学习&#xff0c;最后一般都归结为求解最优化问题。因此&#xff0c;最优化方法在机器学习算法的推导与实现中占据中…

以jieba为首的主流分词工具总结

工具篇 下面列了几个较为主流的分词工具&#xff08;排名不分先后&#xff0c;大家自行试用&#xff09;&#xff0c;相关的paper请在订阅号「夕小瑶的卖萌屋」后台回复【中文分词】领取。 1 Jieba 说到分词工具第一个想到的肯定是家喻户晓的“结巴”中文分词&#xff0c;主…

mikechen详谈架构师成长之3大步骤

本文作者&#xff1a;陈睿|mikechen&#xff0c;优知学院创始人 这是架构师系列的第二篇文章 前文谈到架构师核心技能架构设计的重要性&#xff0c;如果你对架构师这个职位从技能的角度有比较清晰的认识&#xff0c;本篇文章将为你继续揭示架构师这个职位的成长周期。 在国内…

翻译:A DSL in 5 Languages(五种语言的DSL)

文章目录五种语言的DSL问题实例搜索准则RUBY策略例子优势python战略例子优势弱点PHP战略C#java总结英文原文见&#xff1a; https://blog.csdn.net/matlab2000/article/details/6006676五种语言的DSL 我们为客户提供5种编程语言的客户库&#xff1a;Ruby、Python、PHP、Cype和…

论文浅尝 | 二维卷积知识图谱嵌入

链接&#xff1a;https://arxiv.org/pdf/1707.01476.pdf本文主要关注 KG Link prediction 问题&#xff0c;提出了一种多层卷积神经网络模型 ConvE&#xff0c;主要优点就是参数利用率高&#xff08;相同表现下参数是 DistMult 的8分之一&#xff0c;R-GCN 的 17 分之一&#x…

如何成为架构师?3条有效的实战经验

“ 希望你看完这一篇&#xff0c;能充分认知和了解架构师&#xff0c;认知对了&#xff0c;事就好办了。 01 架构师的准确定义 架构师的职责应该是立足于技术和业务之间的中间角色或者平衡点&#xff0c; 在针对业务深刻理解的基础上&#xff0c;针对业务中存在诸多变数&am…

ArchSummit2016干货分享+美团:即时物流调度平台实践+一点资讯:兴趣引擎-深度融合搜索和推荐+阿里-智能问答系统的实践

** 2015年7月 ** 加入滴滴打车3个半月&#xff0c;感觉遇到和解决的技术问题超过之前1年的。写在这里给大家分享。 滴滴这边负责所有策略算法设计的是“策略组”&#xff0c;大概有20几个员工。由于滴滴的业务线越来越多&#xff08;出租车&#xff0c;专车&#xff0c;快车&…

Windows10 virtualbox安装alpine+docker

文章目录概述试验环境和配置安装Alpine在Alpine安装Docker&#xff08;含Docker Compose&#xff09;概述 为了搭建小型计算系统和个人知识库&#xff0c;使用Alpine linuxDocker搭建运行容器。 试验环境和配置 使用Virtualbox安装Alpine linux&#xff0c;主机为Windows10A…

论文浅尝 | 使用变分推理做KBQA

Yuyu Zhang, Hanjun Dai, Zornitsa Kozareva, Alexander J.Smola, and Le Song: Variational Reasoning for Question Answering with KnowledgeGraph. AAAI 2018链接&#xff1a;https://arxiv.org/abs/1709.04071本文提出了一个可端到端训练的 KBQA 框架&#xff0c;可以在模…