MuKEA:基于视觉问答(VQA)的多模态知识抽取与积累

论文下载:https://arxiv.org/abs/2203.09138
github代码:https://github.com/AndersonStra/MuKEA

一、研究背景

结合外部知识的VQA任务( Knowledge based VQA)需要AI能够利用到超出输入图像、问题之外的额外知识。近年来,尽管一些KB-VQA的方法取得了一定成果,但离像人类一样利用知识的能力仍相去甚远。

外部知识能够辅助AI进行知识推理,从而得到更为准确的答案。何在跨模态场景中有效的表征和利用知识是KB-VQA的核心问题。当前许多方法的问题在于只利用了文本相关的的知识库,例如ConceptNet和DBpedia,而对于视觉知识、高阶谓词表达的知识利用较少。这导致在一些研究在利用结构化知识图谱/半结构化知识库的方法中,尽管数据是高质量的知识,也有大规模的人工标注,但其中的信息被限制在定义好的,能被自然语言或一阶谓词(first-order predicate)的所描述的三元组中,因此这些知识库很难表征高阶谓词high-orderd predicate)和多模态知识。


例如在图中,通过外部的知识图谱(a)能够得到摩托车的结构信息(first-order predicate),但当问题问到“摩托车是什么牌子”,这类需要结合图片中摩托车图标,才能回答出KAWASAKI的知识(high-orderd predicate),利用结构化知识图谱就会出错。再例如,通过视觉场景(b),人类能够判断场景的地点在伦敦,而通过知识图谱很难判断。如何抽取和积累这些多模态知识,并且同时发挥到传统知识图谱知识推理的优点,是很重要的

现有的模型框架大都基于一个“retrive and read” 的流程:

  • 首先,在知识库中搜寻与question实体相关的facts,然后直接在知识图谱上进行推理;
  • 或者是将知识图谱含有隐式知识的embedding与图像和问题的embedding进行fusion后再分类出一个answer,这样的流程依赖图像识别的object label准确度,又通过label在知识库中检索相关实体,不可避免地会导致级联误差传播。
  • 还有基于隐式知识的端到端的模型,但这样的方法往往只捕获到image-question-answer的共现关系(co-occurence),而非更高级的知识。

作者主要的工作有:

  1. 提出了一个end-to-end的多模态知识表征学习框架:用三元组的形式将不可表达的多模态知识建模,再利用现有的知识库提供补充的知识
  2. 探索了域内(in-domain)和域外(out-domain)知识积累的预训练-微调策略,能够自动进行知识积累和答案预测,摆脱了“retrive and read”的模式,从而避免了误差级联传播
  3. 在两个经典的KB-VQA数据集:OK-VQA, KRVQA上超越了当前SOTA

二、模型框架


输入图像 III ,问题 qqq,抽取三元组形式(h,r,t)(h,r,t)(hrt)的多模态知识,头实体(h)(h)(h)为基于问题关注的图片内容,rrr为其和问题的隐式关系,尾实体(t)(t)(t)为答案,端到端地进行知识推理。

图像和问题编码

预训练的Vision-Language模型能够对不同模态的模态间(intra-model)和跨模态(cross-model)隐式关系很好地建模,所以使用了预训练模型对图像和问题进行编码。

对于图像 III,用预训练模型 FasterR−CNNFaster R-CNNFasterRCNN 进行目标检测,得到预选的objects,每张图检测 K=36K=36K=36 个,每个 object 由视觉特征向量 fff(维度df=2048df=2048df=2048)和空间特征向量 bbb(维度db=4db=4db=4)表示

对于问题 qqq 用预训练的 WordPieceWordPieceWordPiece 对其token化,得到 DDD 个token

然后将fffbbbtokentokentoken 一同送入预训练的Vison-Language模型LXMERTLXMERTLXMERT,得到所有检测目标(objects)的 image embedding V (Kxdv,dv=768),和问题的 token embedding Q(Dxdv)

头实体抽取

头实体定义为: 与question最相关的object。首先通过余弦点积计算每个object embedding与每个token embedding 的相似度,得到相似度矩阵 AAA,其中W1W1W1W2W2W2 为可学习权重

然后选出与问题最相关的objects。首先对 AAA 中的每一行做maxpoolin,得到object对整个问题的相似度。

值得注意的是,由于 LXMERTLXMERTLXMERT 预训练模型对图像中 objects 之间的隐式关系很好地进行了建模,所以所选出来的object embedding是蕴含了视觉上下文语义的,这对VQA任务来说是很好的线索。

然后基于 av−qa^{v-q}avq 使用hard attetion而不是soft attention选出头实体。Hard attention为多模态表征提供了更为稳定和可解释的视觉内容,并且更有助于通过实体链接来结合现有的知识图谱。

这里使用了 Gumbel−softmaxGumbel-softmaxGumbelsoftmax,得到one-hot的类别分布,每个object的attetion权重计算如下,其中 gig_igi是从 Gumbel(0,1)Gumbel(0,1)Gumbel(0,1)分布中独立同分布(i.i.d)采样的:

最后每个object 的表征 viv_ivi 结合attention 权重 αiα_iαi 经过前馈网络后得到头实体的表征 hhh

关系抽取

不同于一般的,关系描述为first-order predicate的知识图谱,文章定义的多模态知识三元组中的关系是一种复杂的隐式关系(implicit relation),对应了观察到的视觉特征和问题特征之间的关系。
由于LXMERTLXMERTLXMERT通过分层的transfomer捕获了vision 和question的隐式关系,于是将最后一层的CLS token取出,再经过FFN,作为关系的表征 rrr

尾实体抽取

将查询得到的answer作为尾实体。

  • 训练阶段,用ground truth 的answer训练尾实体的表征 ttt
  • 推理阶段,将KB-VQA任务定义为多模态知识图谱补全问题,全局地在我们的神经多模态知识库中预测尾实体作为answer

训练方法

由于三元组的每个部分都包含了不同模态的、复杂语义的信息,文章首先用知识库中的answer维护了一个随机初始化的查找表(look-up table),查找表中包含了groud truth 的answer以及错误的answer作为负样本,其次定义了三个 losslossloss 来弥合异质性语义间隙:

  1. TripleTransE,作为知识结构性保持约束,对正样本和负样本的loss,具体结构为triple loss
  2. Triple consistency,transE的问题在于,一旦正样本对的距离比负样本对之间的距离小 γγγ(margin)时,模型会停止训练。为了让三元组embedding更好地拟合严格的知识图谱拓扑关系,定义了MSE形式的loss:
  3. Sematic consistency,训练模型选出查找表 TTT 中的ground truth answer,采用 cross entropy

    最后三种loss相加进行训练

知识积累与预测

文章通过两个步骤来逐步地进行知识积累

  1. 在VQA2.0数据集上进行预训练,积累基础视觉领域的知识
  2. 在下游KB-VQA任务数据上进行微调,积累更复杂的特定领域的多模态知识

推理阶段,将answer prediction视作是多模态知识图谱补全任务:输入image与question,得到二者的embedding,将两者相加得到隐式的answer向量 ttt,再在查找表 TTT中搜索与之距离最相近的尾实体向量,对应的尾实体便是推理出的answer。

三、实验

数据集:

  • OK-VQA:包含14000个问题,涵盖了10种知识类别。所有问题都是人工标注的,所以没有固定的问题模板或知识库,这正需要探索广泛的开放的知识资源。
  • KRVQA,KRVQA是迄今为止最大的基于知识的VQA数据集。 它能够评估进行模型基于外部知识的多步推理能力。为了进行公平比较,用top-1准确度进行评估

OK-VQA:


模型超过了在外部知识库上进行 “retrive and read” 的方法,作者推测是MuKEA避免了误差的级联传播;也超过了隐式知识预训练的SOTA模型,例如KM4,作者推测是MuKEA捕获到了多模态的高阶谓词的知识。

KRVQA:

实验分为俩部分,需要结合外部知识的问题(KB-related)和不需要外部知识的(KB-not-related)。有趣的是,在 KB-not-related 的实验结果上,MuKEA仍然超出了其他模型的表现,作者分析这类视觉主导的问题也需要桥接起 low-level 的视觉内容 和 high-level 的语义内容,才会获得更好的结果。

MuKEA: Multimodal Knowledge Extraction and Accumulation for Knowledge-based VQA 论文阅读 From CVPR 2022相关推荐

  1. ABSA-《Aspect-Category-Opinion-Sentiment Quadruple Extraction with Implicit Aspects and Opinions》论文阅读

    ** ABSA-<Aspect-Category-Opinion-Sentiment Quadruple Extraction with Implicit Aspects and Opinion ...

  2. 【论文阅读】WWW 2022:Cross-modal Ambiguity Learning for Multimodal Fake News Detection

    Cross-modal Ambiguity Learning for Multimodal Fake News Detection 论文来源:WWW 2022 论文链接:https://dl.acm. ...

  3. 【论文翻译】CN-DBpedia: A Never-Ending Chinese Knowledge Extraction System

    [论文翻译]CN-DBpedia: A Never-Ending Chinese Knowledge Extraction System 摘要 1 引言 2 系统架构 3 降低人力成本 3.1 跨语言 ...

  4. [论文解读]Explaining Knowledge Distillation by Quantifying the Knowledge

    Explaining Knowledge Distillation by Quantifying the Knowledge 简介 论文标题 Explaining Knowledge Distilla ...

  5. Explaining Knowledge Distillation by Quantifying the Knowledge

    Explaining Knowledge Distillation by Quantifying the Knowledge 本文核心idea是利用熵衡量feature中蕴含的knowledge,并将 ...

  6. 《Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs》论文阅读笔记

    <Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs>论文阅读笔记 主要挑战贡献: KG上的推理挑战主要 ...

  7. [论文阅读笔记17]A Survey on Knowledge Graph-Based Recommender Systems

    一,题目 TKDE 2020 A Survey on Knowledge Graph-Based Recommender Systems 综述:基于知识图谱的推荐系统 In IEEE Transact ...

  8. 论文阅读:Knowledge Distillation: A Survey 知识蒸馏综述(2021)

    论文阅读:Knowledge Distillation: A Survey 知识蒸馏综述2021 目录 摘要 Introduction Background 知识 基于响应的知识 基于特征的知识 基于 ...

  9. 论文阅读:Can Generative Pre-trained Language Models Serve As Knowledge Bases for Closed-book QA

    论文阅读:Can Generative Pre-trained Language Models Serve As Knowledge Bases for Closed-book QA 来源:ACL 2 ...

  10. 论文阅读:Question Answering Over Temporal Knowledge Graphs

    论文阅读:Question Answering Over Temporal Knowledge Graphs 我们首先在我们的新数据集上应用大型预训练的基于 LM 的 QA 方法. 然后,我们将时间和 ...

最新文章

  1. 世园会开幕式上的机器人_【在国际智能制造大会暨智能机器人大会开幕式上的致辞】世界智能机器人大会...
  2. mxnet insightface特征提取
  3. 【Android 安装包优化】Tint 着色器 ( 简介 | 布局文件中的 Tint 着色器基本用法 | 代码中使用 Tint 着色器添加颜色效果 )
  4. Dosbox汇编环境下debug常用调试命令(二)
  5. Git SSH Key 生成并添加到github/gitee步骤
  6. W3C DOM操作之创建新节点
  7. 读取数据库名及表与表中的字段
  8. OpenGL学习笔记:模型变换、视图变换、投影变换 、视口变换、操作矩阵堆栈
  9. jmeter 通过ant集成到jenkins
  10. 获取本地ip地址 C#
  11. HTTP Keep-Alive详解[转]
  12. Delphi之TStrings和TStringLists类[转]
  13. Web在线3D编辑器-全场景编辑全新功能升级
  14. 免费下载收费音乐教程,亲测有效
  15. 敏捷经验教训, 开发总结!
  16. 收图啦!CDEC 2019 北京站 高颜值亮相~~~
  17. 服务器appcrash的问题怎么修复,Win7系统出现APPCRASH错误的修复方法
  18. CnSeu社工库免费查询_ip代理-golang测试纯真ip库与免费版ipip.net库比较
  19. 种植业适宜性评价算法
  20. ES地理范围查询第一讲:Java操作地理位置信息(geo_point)

热门文章

  1. 基于ARM64架构飞腾2000CPU的浪潮CE3000F机器安装银河麒麟系统和Docker
  2. “跨综服”——跨境电商综合服务合规化走向台前
  3. axio并发请求示例
  4. 大数据智能学院的硕士论文怎么写_大数据智能营销笔记本怎么样
  5. 网络视频ts格式文件下载及将其合成单一视频文件
  6. V神站台--黑马BZZ究竟如何?和FIL 有什么区别?
  7. Slat撒盐加密原理
  8. 一种简单的电荷泵驱动NMOS管电路
  9. 【汽车总线技术】CAN FD与CAN网络共存的解决方案
  10. 论文引用内容计算重复率吗?