查看原文
其他

【源头活水】多模态智能:表示学习,信息融合和应用

“问渠那得清如许,为有源头活水来”,通过前沿领域知识的学习,从其他研究领域得到启发,对研究问题的本质有更清晰的认识和理解,是自我提高的不竭源泉。为此,我们特别精选论文阅读笔记,开辟“源头活水”专栏,帮助你广泛而深入的阅读科研文献,敬请关注。

作者:知乎—heu御林军

地址:https://www.zhihu.com/people/heuyu-lin-jun-7

来源:Zhang C, Yang Z, He X, et al. Multimodal intelligence: Representation learning, information fusion, and applications[J]. IEEE Journal of Selected Topics in Signal Processing, 2020.
摘要:自2010年以来,深度学习方法已经革新了语音识别,图像识别和自然语言处理。这些任务中的每一项都在其输入信号中涉及一种模式。但是,人工智能领域中的许多应用都涉及多种模式。因此,研究跨多种模式的建模和学习这一更加困难和复杂的问题具有广泛的兴趣。在本文中,我们提供了多模式智能的可用模型和学习方法的技术综述。这篇综述的主要重点是视觉和自然语言模态的结合,这已成为计算机视觉和自然语言处理研究领域的重要课题。这篇综述从三个角度对近期有关多模式深度学习的工作进行了全面分析:学习多模式表示,融合不同级别的多模式信号以及多模式应用。关于多模式表示学习,我们回顾了嵌入的关键概念,该概念将多模式信号统一到单个向量空间中,从而实现了跨模式信号处理。我们还回顾了为一般下游任务构造和学习的许多类型嵌入的属性。关于多峰融合,本文将重点介绍用于特定任务单峰信号表示的集成的特殊体系结构。关于应用程序,涵盖了当前文献中广泛关注的选定领域,包括图像到文本的标题生成,文本到图像的生成以及视觉问答。我们认为,此次审查将有助于相关社区在多模式情报新兴领域中的未来研究。
关键词:多模态,表示,多模态融合,深度学习,嵌入,语音,视觉,自然语言,字幕生成,文本到图像生成,视觉问题解答,视觉推理。

01

介绍
基于深度学习算法的快速发展,近年来机器学习领域已取得进展[1]-[6]。第一个主要里程碑是大幅提高了基于大规模自动语音识别。关于在2010年左右使用完全连接的深度神经网络(DNN)和深度自动编码器的问题[7] -[17]。此后不久,使用深度卷积神经网络(CNN)模型[18]在计算机视觉(CV)方面取得了一系列突破,该模型在2012年左右[19]-[22]用于大规模图像分类和在2014年左右进行大规模物体检测[23]-[25]。所有这些里程碑都已经实现了使用单一输入模态进行模式识别的目的。在自然语言处理(NLP)中,基于递归神经网络(RNN)的语义时隙填充方法[26]实现了对口头语言理解的最新技术。带有注意力机制的RNN编码器-解码器模型[27],也称为序列到序列模型[28],已经以端到端的方式[29],[30]实现了出色的机器翻译性能。对于具有少量训练数据的其他NLP任务,例如问题解答(QA)和机器阅读理解,生成式预训练已取得了最新技术成果[31]-[33]。此方法使用无监督训练或自训练从在大型域外数据集上预训练的语言模型(LM)传递参数,然后在小型域内数据集上进行微调。
尽管在视觉,语音和语言处理方面取得了显着进步,但人工智能领域的许多问题涉及一种以上的输入方式,例如必须根据口语,肢体语言和图画来理解人类交流的智能个人助理系统。语言[34]。因此,广泛研究跨多种模式的建模和训练方法[35]。基于图像处理和语言理解的进步[36],结合图像和文本的任务已引起了极大的关注,包括基于视觉的参考表达理解和短语本地化[37]-[39]以及图像和视频字幕[40]-[45],视觉质量检查(VQA)[46]-[48],文本到图像生成[49]-[51]和视觉语言导航[52]。在这些任务中,自然语言在帮助机器“理解”图像内容方面起着关键作用,其中“理解”意味着捕获语言中嵌入的语义与从图像获得的视觉特征之间的潜在关联。除了文本之外,视觉还可以与语音相结合以执行视听语音识别[53]-[55],说话人识别[56]-[58],说话人区分[59],[60]作为语音分离[61],[62]和增强[63]。
本文提供了用于多模式智能的模型和训练方法的技术综述。我们的主要重点是CV和NLP的结合,这已成为这两个研究领域的重要领域,涵盖了许多不同的任务和技术。为了提供结构化的观点,我们根据三个关键主题组织了本技术审查:表示,融合和应用。
  • 学习输入数据的表示形式是深度学习的核心问题。对于多模式任务,跨不同模式收集并行数据可能是一项困难的任务。利用具有期望属性的预训练表示形式,例如适合零镜头或几次镜头学习的属性,通常是解决此问题的有效方法。审查了有监督的和无监督的基于训练的多模式表示学习方法。
  • 融合不同模式的表示形式是任何多模式任务中的核心问题。与以前的基于阶段中发生融合的阶段对相关工作进行分类的研究不同,我们根据融合过程中使用的实际操作(例如注意机制和双线性合并)对相关工作进行分类,因为很难基于阶段对最新的复杂方法进行分类。
  • 审查了三种类型的应用程序:图像字幕,文本到图像生成和VQA。这些应用程序提供了如何将表示学习和融合应用于特定任务的示例,以及多模式应用程序当前发展的表示形式,尤其是那些将视觉与自然语言集成在一起的应用程序。还讨论了视觉推理方法。
本文的其余部分安排如下。第二节回顾了在发展单一或多种方式的代表性方面的最新进展。第三部分介绍了常用的融合方法,重点关注注意力机制和双线性合并。第四部分介绍了应用程序,包括标题生成,文本到图像生成,VQA和视觉推理,然后是摘要以及我们对潜在未来研究方向的看法。

02

表示
深度学习作为表示学习中的一个特殊领域,专注于使用具有许多隐藏层的人工神经网络(ANN)从特定任务的原始数据中自动发现合适的表示或特征[64]。代表性学习在实践中具有很大的价值,因为更好的代表性通常可以简化后续的学习任务。在过去的十年中,基于文本语言,学习有效而可靠的单一模式表示方法已经变得可行,例如文本[31] – [33],[65] – [72]或图像[19] – [25]。大量数据的可用性和深度学习的发展。尽管多模式表示越来越受到关注,但由于复杂的跨模式交互以及每种模式中训练数据与测试数据之间可能的不匹配,它们仍然是一个具有挑战性的问题。
在本节中,将回顾常用的单模式表示形式,例如文本和图像。这些表示形式通常是学习多模式表示形式的基石。接下来,介绍了用于学习多种形式的联合表示空间的有监督和无监督方法。为了使模型能够处理缺少模态的数据样本,可以解决零击学习问题,以提高所涉及模态之间代表性空间的相似性。最后,受将预训练的LM适应NLP中的下游任务成功的启发,还讨论了利用大型单峰数据集来改善对多峰表示的学习的方法。
A 单峰嵌入
分布式表示是一种向量,用于分配与具有多个元素的概念有关的信息,指示可以分别调整元素以允许在相对低维的空间中有效编码更多概念[68]。可以将此类表示形式与符号表示形式进行比较,例如单热编码,后者使用值为1的元素局部表示某个概念的存在,而其他元素的值为零。在深度学习中,术语“嵌入”通常是指从表示单词或图像类别的单热向量到实数值的分布式表示的映射。
1) 视觉表示:可以从finalCNNlayersinmodels中获取图像嵌入作为输出值,这些模型将图像分为几类,例如AlexNet [19],VGGNet [20],GoogLeNet [22]和ResNet [21]。AlexNet,GoogLeNet和ResNet分别是2012年,2014年和2015年ImageNet大规模视觉识别大赛的图像分类[73],[74]。或者,与语义更直接相关的功能可以用作视觉嵌入,例如由对象检测模型识别的选定区域中的卷积特征和关联的类标签。使用这种方法的模型包括基于区域的CNN(R-CNN)[23],Fast R-CNN [24]和Faster R-CNN [25]。应该注意的是,这些模型只是几个例子,并不涵盖所有流行的CNN结构。
2) 语言表示:文本嵌入可以从神经网络语言模型(NNLM)[69]中获得,该模型通过使用概率链规则将序列分解为单词概率,从而估计文本序列的概率。基于RNN的NNLM,例如长短期记忆(LSTM)或门控循环单元(GRU)LM [75],[76],有助于在预测时使用存储在固定长度循环向量中的所有过去单词的信息当前单词。除NNLM外,连续词袋模型,跳过语法和全局向量(GloV e)是其他常用的词嵌入方法[70],[77]。自2013年以来,已经提出了一系列深度结构化语义模型(DSSM),用于基于伪暹罗网络设置中各种神经网络结构优化语义相似性驱动目标的句子级嵌入学习[65]-[67], [78]-[81]。
最近,为了用少量训练数据完成下游自然语言理解任务,许多研究都集中在通过使用基于大型文本语料库的具有复杂结构的NNLM预测单词概率来学习通用文本嵌入。语言模型的嵌入[31]使用多层双向LSTM的组合嵌入进行正向和反向传播。变压器的预训练[32]和双向编码器表示(BERT)[33]使用变压器模型的解码器和编码器组件来估计当前子字单元的概率。除了单词和子单词级别,还可以在短语,句子和段落级别上学习文本嵌入[28],[82]。
3)单词和图像嵌入的向量算术:众所周知,单词嵌入可以捕获语法和语义规则性。一个著名的例子表明,运算向量(“ King”)-向量(“ Man”)+向量(“ Woman”)产生的向量最接近向量(“ Queen”),其中向量(·)表示...的表示。由RNN LM学习的单词[83]。对于视觉嵌入也观察到了类似的现象。当使用生成对抗网络(GAN)[84]时,已经证明操作向量(“戴眼镜的男人”)-矢量(“男人”)+矢量(“女人”)产生矢量(“戴眼镜的女人” ”)[85],其中vector(·)表示图像的表示。该结果表明,GAN可以捕获将性别概念与戴眼镜概念区分开的图像表示。有关文本和图像表示的这些发现鼓励了对这两种方式的联合表示的更多研究。有关基于GAN的图像生成的其他详细信息,请参见第IV -B节。
4)演讲者表示:尽管与语音相关的研究不是本文的重点,但由于在当今许多下游任务中已广泛使用演讲者表示,因此在这里进行了简短的讨论[86]-[97]。i-vector方法使用因子分析为每个说话者估计一个矢量[98]。可以使用DNN声学模型[99],[100]联合训练特定于说话者的向量。说话人嵌入也可以从DNN倒数第二层的输出中获得,该输出经过训练以在帧级别对训练集说话人进行分类,即d矢量[101]。或者,可以使用统计池化层或自注意层[102]-[104]训练模型以区分说话者的说话者,并且x矢量是此类方法中的第一个。x向量的训练集通常会得到增强,以包括不同的背景噪声和声道等,这有助于使说话者语音特征的概念与其他声音区分开。在实践中,保护隐私是语音产品的重要问题,安全的二进制嵌入可用于估计讲话者的嵌入,而不会暴露讲话者的数据[105],[106]。
B 多峰表示
尽管在视觉或语言的学习表示方法方面已经取得了长足的进步,但从理论上讲,仅使用单峰数据来建模完整的人类概念集还是不够的。例如,“美丽图片”的概念基于视觉表示,因此可能很难使用自然语言或其他非视觉方法来描述此概念。因此,学习联合嵌入以利用多模式数据的互补性来更准确地表示这些概念非常重要。
1)无监督训练方法:多模式数据的联合嵌入可以通过使用多个深层Boltzmann机器流或具有共享层作为共享表示空间的自动编码器的简单流重构原始输入来学习[107]-[109]。可替代地,基于用于单模态的方法的发展,可以通过将用于所涉及的个体模态的预训练的表示空间映射到公共空间来构建共享的表示空间。例如,Fang等。提出了一种深度多模态相似模型(DMSM)[110]作为文本模态DSSM的扩展,以学习文本和图像在统一矢量空间中的嵌入表示。单词和图像嵌入的简单融合是使用加法或串联实现的[109],[111]。文本和视觉嵌入之间的相似性可以通过训练来增加[112]。在最近的研究中,最大化了不同模态的嵌入之间的相关性和相互信息[113],[114]。类似地,词嵌入之间的距离可以根据它们的可视化实例之间的相似性进行修改[115],这些相似性是通过以无监督的方式对抽象场景进行聚类来确定的。
2)有监督的培训方法:有监督的培训可用于改善多模式表示的学习。表示可以分解为两组独立的因素:有监督训练的多模态判别因子和无监督训练的模态内生成因子[119]。判别性因素在所有模态之间共享,对于判别任务很有用,而产生性因素可用于重建缺失的模态。基于详细的文本注释,一些研究人员在考虑自然场景图像或图像区域时,建议从视觉共现(ViCo)中学习单词嵌入[120]。ViCo的概念是对GloV e文本嵌入的补充,因为它可以更准确地表示仅从文本语料库很难获得的视觉概念之间的异同。多个有监督的训练任务已经应用于视觉语言编码器的不同层[121]。根据课程学习的概念确定培训任务的顺序,以逐步提高培训目标的复杂性。
3)零射击学习方法:零镜头学习通常基于与获取与所有可能物体类别训练有关的足够标记图像的难度而应用于与视觉相关的任务。但是,并非所有类型的多模式表示都适合零击学习,因为某些表示可能同时需要来自不同模式的成对数据。在这里,我们将介绍依靠其他语言资源来克服此问题的方法。基于深度学习的零镜头学习始于开发一个不同的预训练嵌入之间的线性映射层[122],[123]。深度视觉语义嵌入模型是使用skip-gram文本嵌入和AlexNet视觉功能构建的。该模型允许通过线性映射层[123]共同训练两种类型的预训练模型。该模型经过了1000个已知类和2000个未知类的大规模测试。当使用相关的自动编码器重构每种模态的表示时,可以为单发和少发图像检索学习更好的表示[124]。最近的工作使用与目标类别相关和不相关的单词标签从预先训练的VGG网络中获得视觉嵌入,作为正面和负面的视觉先验,它们被用作另一种模型的输入,以实现新对象类别的语义图像分割在训练集中看不到的东西[125]。丰富的信息源可用于多种形式,包括从Wikipedia文章中选择的单词以及从多个CNN层中提取的特征[126]。代替使用直接的文本属性输入,可以将由递归模型生成的句子嵌入用作零镜头学习的文本界面,以获得增强的结果[127]。
4)基于变压器的方法:变压器是基于序列的流行编码器-解码器模型,通过将许多前馈层块与多头自注意模型堆叠在一起而形成,其参数在时间上是共享的[128]。与基于RNN的编码器/解码器模型相比[27],这种模型可以基于消除对RNN施加的一阶马尔科夫假设,在长序列上提供出色的性能。BERT是在大型文本语料库上作为蒙版LM预训练的变压器的编码器组件,是下游任务文本嵌入的标准选择。因此,自然而然地将纯文本的BERT泛化以覆盖图像并派生预训练的双峰嵌入。
将单峰BERT扩展到双峰应用的一种直接方法是包括新标记以指示视觉特征输入,例如[129]-[133]中提出的那些。另外,可以通过引入额外的编码器或视觉特征的注意结构来修改变压器模型[134]-[136]。有关修改结构的其他详细信息,请参见第III-B节。此外,最近的NLP研究表明,多任务学习可以提高BERT表示的泛化能力[137]。因此,大多数上述基于双峰BERT的双峰模型都采用多任务训练来提高其在下游任务(例如VQA,图像和视频字幕等)上的性能。

03

融合
融合是多峰研究中的关键研究主题,它将从不同单峰数据源提取的信息集成到单个紧凑的多峰表示中。融合和多模式表示之间有明确的联系。如果方法专注于用于集成特定任务的单峰表示的体系结构,则将其分类为融合类别。可以根据相关过程中发生融合的阶段划分融合方法。因为早期和晚期融合可以抑制在模态间或模态间的相互作用中,最近的研究集中在中间方法上,这些方法允许在深层模型的多层上进行融合。
本节对中间融合进行了回顾,这不仅是因为中间融合更灵活,而且还因为基于使用从预训练的骨干模型得出的单峰特征,各阶段之间的边界不太清晰。考虑了三种主要用于将文本与图像特征融合的方法,即基于简单操作,基于注意力和基于张量的方法。
A 基于简单操作的融合
在深度学习中,可以使用简单的操作(例如级联或加权总和)集成来自不同信息源的矢量化特征,这些操作通常很少或没有关联的参数,因为深度模型的联合训练可以使各层适应高层特征提取的调整进行所需的操作。
  • 串联可用于组合低级输入特征[138]-[140]或预训练模型[140]-[142]提取的高级特征。
  • 对于具有标量权重的加权总和,已经提出了一种迭代方法,该方法要求预训练的矢量表示具有相同数量的元素,且其排列顺序适合于逐元素加法[143]。这可以通过训练一个完全连接的层来进行尺寸控制并为每个模态重新排序来实现。
最近的一项研究[144]将神经体系结构搜索与渐进探索[145]-[147]结合使用,找到了许多融合函数的合适设置。根据融合哪些层以及是否使用串联或加权和作为融合操作来配置每个融合功能。
B 基于注意力的融合
注意机制被广泛用于融合。注意机制通常指的是一组标量权重的向量的加权总和,这些向量由一个小的“注意”模型在每个时间步长动态生成[148],[149]。通常使用多个瞥见(输出头)来生成用于求和的多组动态权重,这些加权可以通过合并从每个瞥见得出的结果来保留其他信息。当将注意力机制应用于图像时,与不同区域相关的图像特征向量被不同地加权以产生关注的图像向量。
1)图像注意:通过结合以先前LSTM隐藏状态为条件的图像注意模型,扩展了用于文本问题处理的LSTM模型,该模型的输入是当前单词嵌入的连接和所涉及的图像特征[150]。最终的LSTM隐藏状态被用作融合的多峰表示,以预测指向和接地VQA的答案。基于RNN的编码器-解码器模型的注意力模型用于为图像特征分配注意力权重以进行图像字幕[151]。此外,对于VQA,将以图像和查询特征向量为条件的注意力模型应用于精确图像区域与答案有关[152]。类似地,已经提出了堆叠式注意力网络(SAN),以使用多层注意力模型来多次查询图像,以逐步推断出答案并模拟多步推理程序[153]。在每一层中,通过将前一个查询向量添加到使用当前注意力模型生成的关注图像向量中,生成精炼查询向量并将其发送到下一层。空间存储网络是一种用于VQA的多跳方法,该方法将单词与第一跳中的图像区域对齐,并根据第二跳中的整个问题分配图像注意力以得出答案[154]。
动态内存网络得到增强,可以使用单独的输入模块来编码问题和图像。这种类型的网络使用基于注意力的GRU来迭代更新情节记忆并检索所需的信息[155]。顾名思义,自下而上和自上而下的注意方法(Up-Down)使用两种视觉注意机制的组合来模拟人类视觉系统[156]。自下而上的注意力机制提出了一组由Faster R-CNN识别的显着图像区域,而自上而下的注意力机制执行了视觉和语言特征的级联,以估计注意力权重,并生成用于图像字幕或VQA的关注图像特征向量。通过计算逐元素乘积,可以再次将照看的图像特征向量与语言特征融合。来自不同模型的互补图像特征,例如ResNet和Faster R-CNN,可用于多种图像注意机制[157]。此外,从图像和文本输入生成出席的文本特征的图像注意力反演可用于文本到图像的生成[51],[158]。
2)图像和文本的对称注意:与上述图像注意机制相反,共同注意机制使用对称注意结构不仅生成出席图像特征矢量,而且生成出席语言矢量[159]。平行共同注意使用联合表示来同时导出图像和语言注意分布。相反,交替共同注意具有级联的结构,该结构首先使用语言特征生成所涉及的图像矢量,然后使用出席图像矢量生成出席语言矢量。
类似于并行共同注意,双重注意网络(DAN)会同时估计图像和语言的注意分布,以得出关注的特征向量[160]。这样的注意力模型以与相关模态有关的特征和记忆向量为条件。与共同注意相比,这是一个关键区别,因为可以在每个推理步骤使用重复的DAN结构来迭代更新存储向量。可以为VQA共享存储向量,或者为图像-文本匹配共享特定于模态的存储向量。堆叠的潜在注意力(SLA)通过将原始关注图像矢量与注意力模型中较早层的值进行级联来改善SAN,以保留来自中间推理阶段的潜在信息[161]。还包括类似双流结构的并行共同注意,以将注意力分配给图像和语言功能,这有助于使用多个SLA层进行迭代推理。双重循环注意力单元使用LSTM模型为文本和图像实现并行的共同注意力结构,以通过使用CNN层的堆栈对图像特征进行卷积获得的表示形式,将注意力权重分配给每个输入位置[162]。为了对模态之间的高阶交互进行建模,可以将两个数据模态之间的高阶相关性计算为两个特征向量的内积,并用于导出两种模态的参与特征向量[163]。
3)注意双峰变压器:如第II-B4节所述,BERT的双峰扩展依赖于不同的标记来指示矢量是单词还是图像片段。注意模型然后将图像与双峰输入序列中的单词融合[129]-[133]。OmniNet在每个解码器块中使用门控多头注意模型,将其他模态的矢量与每个模块中先前层为当前模态生成的矢量融合在一起[136]。LXMERT使用独立的编码器来学习每个模态的内部模态特征,并使用更高级别的交叉模态编码器来使用附加的交叉注意层来学习交叉模态特征[134]。ViLBERT将BERT扩展为包括两个编码器流,以分别处理视觉和文本输入。这些特征然后可以通过平行的共同关注层相互作用[134]。
4)其他吸引机制:门控多式联运单位是一种可以基于门控[164]将注意力权重分配给图像和文本的方法。该方法基于由门控机制动态生成的特定于维度的标量权重,计算视觉和文本特征向量的加权总和。类似地,逐元素乘法可用于融合视觉和文本表示。这些融合的表示然后用于基于深度残差学习为多模态残差网络创建构造块[165]。动态参数预测网络使用动态权重矩阵来转换视觉特征向量,其参数是通过对文本特征向量进行哈希处理而动态生成的[166]。
C 基于双线性池的融合
双线性池化是一种通常用于将视觉特征向量与文本特征向量融合以通过计算其外积来创建联合表示空间的方法,这有利于两个向量中所有元素之间的乘法交互。这种方法也称为二阶合并[167]。与简单的向量组合运算(假设每个向量具有hasnelements)(例如加权总和,逐元素乘法或级联)会产生n维或2n维表示相比,双线性池通过线性化n来生成n2维表示。由外部乘积生成的矩阵转化为向量,这意味着该方法更具表现力。通常使用二维权重矩阵将双线性表示形式线性转换为输出向量,这等效于使用三维张量算子将两个输入特征向量融合在一起。计算外部乘积时,可以将每个特征向量扩展为一个附加值1,以在双线性表示中保留单模式输入特征[168]。但是,基于线性模型的高维度(通常在几十万到几百万个维度之间),双线性合并通常需要分解权重张量,以使相关模型能够正确有效地得到训练。
1)双线性池的因式分解:由于双线性表示与多项式核紧密相关,因此可以使用各种低维近似来获取紧凑的双线性表示[169]。计数草图和卷积可用于近似多项式内核[170],[171],从而导致多峰紧凑双线性池(MCB)[172]。或者,通过在权重张量上施加低秩,多峰低秩双线性池(MLB)将三维权重张量分解为双线性池,将其分解为三个二维权重矩阵[173]。具体而言,视觉和文本特征向量通过两个输入因子矩阵线性投影到低维模态特定因子。然后使用逐元素乘法对这些因子进行融合,然后使用第三矩阵对输出因子进行线性投影。多峰分解双线性池(MFB)通过对每个不重叠的一维窗口内的值求和,用额外的操作来修改MLB以合并元素逐个乘法的结果[174]。可以将多个MFB模型级联以对输入要素之间的高阶交互进行建模,这被称为多模式分解高阶池(MFH)[175]。
MUTAN是基于多模量张量的Tucker分解方法,它使用Tucker分解[176]将原始的三维权重张量算子分解为低维核心张量和MLB使用的三个二维权重矩阵[177]。核心张量模拟了跨模态的交互。可以将MCB视为具有固定对角输入因子矩阵和稀疏固定核心张量的MUTAN,而将MLB视为具有核心张量设置为同一张量的MUTAN。最近,有人提出了基于块的超对角线融合框架BLOCK来执行块项分解[178]以计算双线性池[179]。BLOCK将MUTAN概括为多个MUTAN模型的总和,以提供更丰富的模态之间相互作用的建模。MUTAN核心张量可以布置为超对角张量,类似于块对角矩阵的子矩阵。此外,双线性池化可以推广到两个以上的模态,例如使用外部产品对视频,音频和语言的表示之间的交互进行建模[168],[180]。
2)双线性池和注意力机制:双线性池可以与注意力机制结合。可以将MCB / MLB融合的双峰表示用作注意力模型的输入特征,以得出关注的图像特征向量,然后再通过使用MCB / MLB将其与文本特征向量融合,以形成最终的联合表示[172],[ 173]。MFB / MFH可用于交替共同注意以学习关节表示[174],[175]。双线性注意网络(BAN)使用MLB融合图像和文本以生成表示注意力分布的双线性注意图,然后将其用作权重张量,用于双线性合并以再次融合图像和文本特征[181]。

04

应用领域
本节讨论将视觉和语言相结合的多模式智能的选定应用程序,包括图像字幕,文本到图像生成和VQA。请注意,由于篇幅所限,我们还没有将其他常见的应用程序包括基于文本的图像检索[118]和视觉和语言导航[182]。
  • 图像字幕是一项旨在自动生成图像自然语言描述的任务。它需要对图像的理解水平超出典型的图像识别和对象检测方法所提供的水平。
  • 图像字幕的逆过程是文本到图像的生成,它根据人类提供的描述或关键字来生成图像像素。
  • VQA与图像字幕有关。它通常以图像和关于图像的自由形式,开放式自然语言问题作为输入,然后输出分类结果作为答案。自然语言理解是必要的,因为问题的形式是自由的。其他功能,例如基于知识的推理和常识推理,也很重要,因为问题是开放式的。
  • 视觉推理可以包含在所有上述任务中。但是,这里仅回顾与VQA相关的方法。
本节将介绍详细的任务规范,数据集和每个任务的选定工作。
A 图片字幕
图像字幕是一项需要生成图像文本描述的任务[183]。这是涉及图像和文本的多模式组合的首要任务之一。我们主要回顾基于深度学习的方法。图像字幕任务可以分为几个子任务,从而可以逐步生成字幕[40],[110],[184]。例如,可以训练一个深层的CNN模型来检测图像中的单词,然后可以使用对数线性语言模型将单词组成句子[110]。类似地,可以将图像特征输入对数线性语言模型以生成句子[184]。相反,图像中的对象和句子中的单词的精确匹配会尝试确定图像和句子是否彼此匹配[40]。
类似于用于机器翻译的基于RNN的编码器-解码器方法[27],提出了另一种方法,使用编码器-解码器体系结构以端对端的方式从图像生成字幕[185]-[187]。在这种类型的模型中,通常使用ImageNet [73]进行预训练的CNN将图像编码为连续向量,然后将其输入RNN / LSTM解码器以直接生成字幕。这些类型的方法都使用相同的基本架构,但是在CNN参数的选择以及将图像矢量馈入解码器的方式上略有不同。尽管此方法功能强大且方便,但是编码器/解码器体系结构缺乏捕获图像中的对象与句子中的单词之间的细粒度关系的能力。为了克服这个问题,提出了基于注意力的编码器-解码器模型,并已成为该任务的标准基准[188]。在注意力编码器-解码器模型中,解码器在生成下一个单词之前,首先计算与图像中的对象的匹配分数(注意力),然后考虑加权图像特征以生成下一个令牌。有很多尝试通过合并其他结构来改善注意力模型的研究。例如,Lu等。在每个解码步骤添加了一个门,以确定是否应该使用图像信息生成下一个单词[189]。另外,检测到的单词和图像特征可以被组合为解码器网络[45],[190]的输入。最近,许多研究从图像[156]或文本[191]中引入了额外的结构/知识。具体来说,使用对象检测器来定位图像对象的特征并基于已定位的特征生成标题[156]。就各种评估指标而言,该方法大大改进了先前的最新模型。
可以通过结合外部知识来生成具有丰富信息的图像标题。例如,基于名人数据库[192],开发了CaptionBot应用程序来描述图像的组成部分(例如活动),以及如果可以识别图像中的人,则与每个组成部分相关的人[193]。除了生成图像的事实描述之外,还提出了其他方法来显式控制生成的字幕的样式[194],语义内容[190]和多样性[195]。
B 文本到图像生成
依靠自然语言控制图像生成的文本到图像生成是计算机视觉中的一个基本问题。它被认为是一个难题,因为它至少涉及两项任务:高质量的图像生成和语言理解。生成的图像必须在视觉上逼真并且在语义上与语言描述保持一致。基于深度学习的文本到图像生成可以追溯到使用LSTM进行迭代手写生成[196]。后来,这种迭代图像生成方法得到扩展,以创建深度递归注意作者(DRAW)方法,该方法将基于LSTM的顺序变分自动编码器(V AE)与空间关注机制结合在一起[197]。alignDRAW方法将DRAW修改为使用基于自然语言的描述来合成具有常规内容的图像[198]。注意模型用于计算输入单词和迭代绘制的补丁之间的对齐方式。基于GAN的方法已成为最近的文本到图像生成研究的主要焦点,这可能是因为GAN的鉴别器可以作为评估合成图像的合理标准,而使用其他方法很难实现。以下小节概述了一些基于GAN的方法,包括一些重要问题的基本设置和解决方案,例如生成高质量图像,图像与文本之间的语义一致性以及图像的布局控制等。
1)基于GAN的方法:与V AE相比,conditionalGAN(CGAN)可以合成更引人注目的特定类别的图像,人类甚至可能将其误认为真实图像[199],[200]。GAN模型由基于输入噪声合成候选者的生成器和评估候选者的鉴别器组成。采用对抗训练来训练生成器以捕获真实的数据分布,以便区分器不再能够区分合成数据和真实数据[84]。CGAN通过为生成器和鉴别器生成附加类别标签来扩展标准GAN结构。GAN-INT-CLS方法通过使用自然语言描述的嵌入来替换CGAN中的类别标签,从而促进了视觉上合理的64×64图像的合成[201]。自动评估文本条件图像的质量可能不太直接。为了确定GAN生成图像的可分辨性,经常使用初始分数[202]和Fréchet初始距离[203]指标。多尺度结构相似性[204]用于评估图像的多样性。为了评估生成的图像在语义上是否与输入文本描述一致,R精度[51]和视觉语义相似度[205]是常用的度量标准。
2)生成高质量图像:尽管它们基本上反映了描述的含义,但已发现GAN-INT-CLS生成的图像不包含细粒度的细节或活体对象。这一缺点促使了StackGAN方法的发展[206]。StackGAN通过将两个单独训练的CGAN堆叠在一起,通过草图细化过程将图像合成分解为更易于管理的子问题。firstGAN通过基于文本绘制对象的原始形状和颜色来生成64×64低分辨率图像。然后,通过纠正缺陷并将令人信服的细节添加到第一个GAN生成的低分辨率图像中,训练第二个GAN生成256×256图像。StackGAN ++通过合并一个额外的GAN在上述两个GAN之间生成128×128图像并联合训练所有GAN来改进了这一思想[207]。为了确保生成的图像在语义上与文本精确匹配,提出了注意力GAN(AttnGAN)。这种方法还可以堆叠针对不同图像分辨率的三个GAN [51]。第一个GAN接受句子嵌入训练,接下来的两个GAN接受注意力模型产生的双峰嵌入训练,注意力模型将单词级特征与低分辨率图像融合在一起。结果表明,注意力机制可以帮助GAN集中精力处理与每个阶段绘制的次区域最相关的单词。除了堆叠生成器之外,已经显示出可以使用动态存储模块来生成高分辨率图像[208]。GAN的逐步增长始于训练单层生成器和单层鉴别器以合成4×4图像。然后,此方法将逐渐增加更多层到两个模型,以将图像分辨率提高到1024×1024 [209]。
3)生成语义一致的图像:为了提高相关图像和文本特征之间的语义一致性,有人为AttnGAN提出了DAMSM [51]。分层嵌套的鉴别器GAN(HDGAN)[205]通过利用带有附加对抗约束的分层表示来区分鉴别器中多个图像分辨率的实/假图像对和实/假图像-文本对,从而解决了相同的问题。类似地,文本条件辅助分类器GAN(TAC-GAN)将额外的图像分类任务引入了鉴别器[210],而文本条件语义分类器GAN(Text-SeGAN)通过使用回归任务来估计语义来训练分类器。图像和文本之间的相关性[211]。作为循环一致性的类似物[212],MirrorGAN提出使用额外的图像字幕模块来提高两种模态之间的语义一致性[213]。
4)复杂场景的语义布局控制:尽管成功地为单个对象(例如鸟[214]或花朵[215])生成了逼真的和语义一致的图像,但是最新的文本到图像生成各种方法仍然难以生成包含许多对象和关系的复杂场景,例如Microsoft COCO数据集[216]中的对象。在[217]中的开创性工作中,文本描述和由关键点或边界框指定的对象的位置都用作输入。后来,详细的语义布局(例如场景图)被用来用更直接的对象及其关系描述来代替自然语言句子[218],[219]。另外,在结合语义布局的概念的同时,已经努力保持自然语言输入。Hinz等。在生成器和鉴别器中都包括额外的对象路径,以明确控制对象位置[220]。Hong等。我们采用了两阶段程序,首先使用基于LSTM的框和形状生成器从输入语句自动构造语义布局,然后使用图像生成器和鉴别器合成图像[221]。由于没有明确使用细粒度字/对象级信息,因此此类合成图像没有足够的细节使它们看起来逼真。对象驱动的关注型GAN(Obj-GAN)通过结合对象驱动的关注型图像生成器和按对象区分器[158]对两阶段生成概念进行了改进。在每个生成步骤,生成器都将文本描述用作语义布局,并通过关注与该框内对象最相关的单词来合成边界框内的图像区域。与其他GAN方法相比,Obj-GAN更加健壮和易于解释,可显着提高复杂场景的对象生成质量。
5)其他主题:除布局外,文献中还讨论了其他类型的用于图像生成的细粒度控制。Attribute2Image [222]使用各种属性来生成人脸,例如年龄和性别。这个概念也已经适应了脸部编辑,以去除胡须或改变头发的颜色[223]。文本自适应GAN [224]有助于基于自然语言对鸟和花的输入图像进行语义修改。老挝等。提出通过使用基于循环一致性的双重推理机制来将表示内容和样式的学习作为两个不纠缠的变量来强制进行学习,以实现文本到图像的生成[225]。这些方法的成功表明GAN可以学习一些语义概念,如解缠的表示形式,如第II-A3节所述。Text2Scene是另一种值得注意的方法,该方法无需使用GAN就可以从自然语言中逐步生成合成场景表示[226]。已经显示,通过较小的修改,Text2Scene可以生成类似卡通,语义布局和真实图像的场景。还研究了基于对话的交互作用,以通过逐步改善复杂场景的生成来控制图像合成[227] – [231]。文本到图像的生成也已扩展到多个图像或视频,其中生成的图像之间需要视觉一致性[232]-[234]。
C 视觉问答
1)任务定义:VQA通过询问与图像或视频剪辑中呈现的视觉信息有关的问题,从NLP扩展了基于文本的质量检查。基于图像的VQA通常被认为是视觉图灵测试,要求系统理解任何形式的基于自然语言的问题并以自然方式回答。但是,通常将分类任务简化为以不同的方式集中于不同的核心问题[46],[47],[150],[235],[236]。最初的作品使用模板或使用语法树[235],[237]转换描述性句子来产生问题。以后的研究集中于使用由人类或强大的深度生成模型(如GAN和V AE)编写的自由形式自然语言问题的使用[47],[237]-[239]。与以完整句子形式呈现的开放式问题相反,可能的答案通常以与是/否答案,计数,对象类别和实例等相关的一大类类别(例如3000类别)的形式呈现。专注于核心理解和推理问题,可以简化VQA,将视觉和文字功能分类为与答案相关的类。
或者,可以定义VQA以在多个(例如四个)选择中选择输出,其中每个选择都与以自然语言句子形式呈现的答案相关联[150]。可以根据图像,问题和答案候选项的特征将这种设置实现为分类问题[172]。也有其他类型的VQA任务定义,例如Visual Madlibs数据集,它需要使用“空白填充”系统来回答问题[48]。此外,可视对话可以看作是对基于图像[240],[241]的一系列问题的答案。这种方法通过要求生成更多类似于人的响应并基于对话历史推断上下文来扩展VQA。
2)通用数据集和方法:第一个VQA数据集称为DAQUAR,它使用真实世界的图像以及基于模板和人工注释的问题[235]。COCO-QA比DAQUAR包含更多的QA对,因为它可以将MS COCO数据集中的图像描述转换为问题[237]。这样的问题通常更容易回答,因为它们允许模型更多地依赖于粗糙的图像,而不是逻辑推理。VQA v1和v2是VQA最受欢迎的数据集。这些数据集包括具有真实和抽象场景的开放式问题[47],[242]。自2016年以来,基于这些数据集的VQA挑战赛每年都作为研讨会举行。Visual7W是VQA的Visual Genome数据集的一部分,其中包含多种选择[150]。它包含与用于空间推理的“什么”,“谁”和“如何”以及用于高级常识推理的“位置”,“何时”和“为什么”的概念有关的问题。Visual7W中的第七种问题是“哪些”问题,也称为指向性问题。这些问题的答案选择与图像中对象的边界框相关联。为这些数据集设计的方法通常着重于将图像和问题向量与前面讨论的基于注意力和双线性池的方法融合,包括SAN,共同注意,上向下,MCB,MLB和BAN等。
3)整合外部知识源:由于上述数据集中的大多数VQA问题都集中在不需要任何外部知识的简单计数,颜色和对象检测问题上,因此这些任务的可能扩展是包括需要解决的更困难的问题除了问题所需要的知识或图像中包含的信息之外的知识。VQA的基于知识的推理和基于事实的VQA数据集都包含结构化的知识库,这通常需要额外的步骤来查询知识库,这意味着相应的方法不再以端到端的方式进行训练[243],[244] ]。与结构化知识库相反,外部知识VQA使用自然语言语句形式的外部知识,这些自然语言语句是通过使用从问题中提取的搜索查询来检索Wikipedia文章而收集的。另外,对ArticleNet模型进行了训练,以在检索到的文章中找到答案[245]。
4)折衷语言先验:尽管已经取得了显著成就,但最近的研究指出,常见的VQA基准测试有很强的普遍先验条件(例如,“大多数香蕉是黄色的”和“天空主要是蓝色的”),通常导致VQA模型过度拟合统计偏差和答案分布趋势。这个问题很大程度上避开了理解视觉场景的需求。基于Visual Genome场景图提供的对象,属性和关系,创建了一个名为GQA的新数据集,以通过使用控制推理步骤的功能程序生成问题来减少偏差[246]。生成了VQA v1和VQA v2的新拆分,以为培训和测试集中的每个问题提供不同的答案分布。在具有挑战性的先验条件下(VQA-CP v1和VQA-CP v2),这些拆分称为VQA [247]。已经提出使用对抗训练或其他仅训练结构来处理有偏见的先验的其他方法[248],[249]。
5)附加问题:当前VQA方法遭受的另一个问题是针对问题中语言变化的鲁棒性较低。名为VQA-Rephrasings的数据集通过人工编写的问题改写来修改VQA v2验证集[212]。另外,提出了一种基于循环一致性的方法[250],该方法通过强制原始问题与改写问题之间以及真实答案与基于原始问题与改写问题预测的答案之间的一致性来提高语言的鲁棒性。张等。建议注意机制可能导致VQA模型难以计算对象提议,并提出了一个附加的模型组件作为解决方案[251]。另外,已知当前的VQA方法无法从图像中读取文本。提出了一种通过使用光学字符识别融合从图像中提取的文本来解决此问题的方法[252]。VizWiz是一个面向目标的VQA数据集,由盲人收集,它们可能捕获低质量的图像并用英语口语提问。该数据集包括许多与文本有关的问题[253]。为了学习人类可能比常识知识更可能谈论的稀有概念,主动学习允许将模型选择性地寻找标签以获取更多信息实例,这种主动学习已应用于VQA,以减少数据注释工作[254]-[256]。
D 视觉推理
本节重点研究称为视觉推理的非常有趣的问题,该问题重点在于如何实现准确,明确和表达性的理解与推理。视觉推理与许多基于语言和视觉的双峰任务有关,例如字幕和文本到图像的生成。但是,在本节中,我们主要关注与VQA相关的方法,因为视觉推理在回答复杂问题时特别重要。SAN通常被认为与隐式视觉推理紧密相关,因为SAN的堆叠结构可以视为执行多个推理步骤。提出了基于特征的线性调制,以基于比例因子和从文本特征动态生成的偏差值使用基于特征的仿射变换来迭代地细化视觉特征[257]。多峰关系网络(MuRel)也具有基于双线性池的具有多个MuRel单元的结构,可以迭代使用[258]。
1)基于神经模块网络的方法:神经模块网络(NMN)由共同训练的神经“模块”的集合组成,这些模块组合成一个用于回答问题的深层模型[259]。依赖关系解析器首先帮助将自然语言问题转换为基于规则的固定网络格式,并指定用于回答问题的模块集以及模块之间的连接。接下来,根据目标问题格式组装一个深度模型,以生成答案预测。SHAPES是一个综合数据集,由关于有序形状的简单排列的复杂问题组成,旨在关注问题的构成方面[259]。后来的研究通过使用强化学习对布局候选列表进行重新排序,与模块参数一起训练了模型布局预测器。这种方法称为动态NMN [260]。用于“查找”或“相关”操作的模块使用注意力模型将注意力集中在输入图像中的一个或两个区域上,并使已组装的深度模型的执行类似于运行功能程序[260]。NMN的端到端版本使用RNN问题编码器将输入的问题转换为布局策略,而无需使用解析器[261]。这项工作是基于一个相对较新的数据集,称为构成语言和基本视觉推理诊断(CLEVR)。顾名思义,CLEVR是一个综合诊断数据集,用于以最小的偏差和描述每个问题所需推理类型的详细注释来测试与对象和关系有关的一系列视觉推理能力[262]。NMN的其他实现包括程序生成器和执行引擎方法(PG + EE),该方法在某些操作之间共享通用设计[263];堆栈NMN,它改进了解析器并将问题特征合并到模块中[264];透明设计网络,它重新设计了PG + EE的一些模块,以保持推理程序的透明性[265]。
2)其他类型的端到端推理方法:另一种端到端方法是记忆,注意力和组成(MAC)网络,该网络将问题分解为一系列有人参与的推理步骤,并使用循环MAC信元,可在控制状态和内存隐藏状态之间保持分离。每个隐藏状态都是由基于注意力和门控机制构建的ANN模型生成的[266]。最近,确定性符号程序和概率符号模型都已用作生成程序的执行引擎,以提高透明度和数据效率,从而分别创建了神经符号VQA(NS-VQA)和概率神经符号模型[ 267],[268]。作为NS-VQA的扩展,神经符号概念学习器(NS-CL)使用神经符号推理模块来执行基于场景表示的程序。NS-CL可以以端对端的方式共同训练其程序生成器,推理模块和视觉感知组件,而无需任何组件级别的监督[269]。它的感知模块基于对象的语言描述学习视觉概念,并有助于学习新单词和解析新句子。
我们通过回顾关系网络(RN)来结束本节,该关系网络具有一个简单的结构,该结构使用ANN作为对任何可视和文本特征对之间的关系进行建模的函数。然后,将得到的输出值累加并由另一个ANN进行转换[270]。尽管RN只是在没有任何形式的归纳推理的情况下对关系进行建模,但是它在CLEVR数据集上实现了非常高的VQA准确性。这激发了对相关性与归纳之间联系的重新思考。

05

总结与展望
本文回顾了基于深度学习的多种模式下的建模和机器学习的主题,重点是视觉和自然语言的结合。我们从语言视觉多模态智能领域组织了许多不同的工作,这取决于三个因素:多模态表示,多模态信号的融合以及多模态智能的应用。在“表示”部分中,基于嵌入的关键概念对单模式表示和多模式表示进行了回顾。多模式表示将来自不同模式的相关信号统一到用于一般下游任务的相同向量空间中。对于多峰融合,讨论了特殊的体系结构,例如注意力机制和双线性池。在“应用程序”部分中,展示了三个最受关注的领域:图像标题,文本到图像生成和VQA。还讨论了VQA的一组视觉推理方法。我们的审查涵盖了任务定义,数据集规范,常用方法的开发以及问题和趋势。我们希望本文能促进多模式智能新兴领域的未来研究。
将来,除了上述研究主题外,我们还希望突出以下三个方向。
A 多峰知识学习
近年来,已经建立了与多模式数据集相关的多个知识库,例如MS-Celeb-1M [271],它对图像中一百万名名人的识别进行了基准测试,并将它们链接到Freebase中的相应信息[272]。在这个领域,可以预期在不久的将来从多模式数据中自动获取常识知识。可以从大量的图像和视频数据中学习大量信息,包括实体,动作,属性,概念和关系,从而构建涵盖广泛和结构化常识知识的模型。这样的模型将为与常识推理相关的应用提供巨大价值。但是,实现此目标需要解决的问题包括:
  • 定义常识;
  • 建立多模式数据集并从中高效地学习常识知识;
  • 确定工作以验证新颖算法的能力,同时证明常识的重要性;
  • 更新以前学习的常识知识。
B 多模态情绪智力
先进的情商是人类独有的认知能力。人与人之间的交流涉及丰富的情感和多种形式。要构建高度拟人化的人机交互代理,机器必须理解并产生多模态的情感内容并同情人。该领域的基础研究不仅可以帮助我们理解认知智能的机制,而且对许多实际应用具有巨大的价值。但是,多模式情绪智力的困难包括:
  • 感知和调整不同形式的情感的微妙表达;
  • 确保所有形式的数据的一致性和合理性[273];
  • 获得可能是模态不变的情感的核心表现形式和强度[274]。
C 大型复杂目标导向多模式智能人机交互系统
服务行业的智能化对于人工智能来说既是巨大的机遇,也是巨大的技术挑战。以电子商务为例,该领域面临着与超大规模数据和整个零售链中复杂的人机交互相关的挑战。这些问题需要大规模,复杂且面向任务的多模式智能人机交互技术,才能以个性化和高效的方式为亿万用户提供服务。为此,在推广用于多模式人机交互系统的开源和开放许可框架,构建大规模数据集和算法验证平台以及进行多模式智能基础研究方面存在机遇。这些领域中与技术有关的突破也将促进更广泛的服务行业的智能化。
关于构建能够感知多模式信息并利用不同模式之间的联系来提高其认知能力的智能体的目标,关于多模式智能的研究仍处于起步阶段。但是已经取得了重大进展,并成为人工智能发展的一个非常重要的分支。

06

读后感
这篇论文是一篇关于多模态智能的综述论文。多模态深度学习主要包含三个方面:多模态表征学习,多模态信号融合以及多模态应用,而本文主要关注计算机视觉和自然语言处理的相关融合方法,包括网络结构设计和模态融合方法。本文讲述了三种融合文本和图像的方法:基于简单操作的,基于注意力机制的和基于张量的方法。近年来最主要的多模态融合办法就是基于注意力机制的和基于双线性池化的方法。其中双线性池化的数学有效性方面还可以有很大的提升空间。而基于注意力机制的融合方法尝被应用于文本和图像数据的融合,此方法后续可以考虑迁移到本课题中,应用于信号序列数据与信号的统计图域的图像数据的融合中。

07

参考文献

本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。


“源头活水”历史文章


更多源头活水专栏文章,

请点击文章底部“阅读原文”查看



分享、在看,给个三连击呗!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存