©PaperWeekly 原创 · 作者 | Jason
研究方向 | 计算机视觉
论文标题:
Multimodal Learning with Transformers: A Survey
论文地址:
https://arxiv.org/abs/2206.06488
Transformer 是一种很有前途的神经网络学习器,在各种机器学习任务中取得了巨大的成功。由于最近多模态应用和大数据的流行,基于 Transformer 的多模态学习已成为人工智能研究的热门话题。
本文对面向多模态数据的 Transformer 技术进行了全面调查。本文的主要内容包括:1)多模态学习、Transformer 生态系统和多模态大数据时代的背景;2)从一个几何拓扑视角进行 Vanilla Transformer、Vision Transformer 和 multimodal Transformer 的理论回顾;3)通过两个重要范式,即多模态预训练和特定多模态任务,对多模态 Transformer 应用的回顾;4)对多模态 Transformer 模型和应用所共有的共同挑战和设计的总结,以及 5)对社区的开放问题和潜在研究方向的讨论。
引言
人工智能(AI)的最初灵感是模仿人类的感知,例如看、听、触、嗅。一般来说,模态通常与创建独特通信渠道的特定传感器相关联,例如视觉和语言。我们感官知觉的一个基本机制是能够共同利用多种感知数据模态,以便在动态不受约束的情况下正确地与世界互动,每种模态都作为具有不同统计特性的独特信息源。
例如,一张图像通过数千个像素呈现“大象在水中嬉戏”场景的视觉外观,而相应的文本用一个使用离散单词的句子描述这一时刻。从根本上说,多模态人工智能系统需要对多模态信息源进行摄取、解释和推理,以实现类似人类水平的感知能力。多模态学习(MML)是一种构建 AI 模型的通用方法,该模型可以从多模态数据中提取和关联信息。
本文侧重于使用 Transformers(如上图所示)进行多模态学习,灵感来自于它们在建模不同模态(例如语言、视觉、听觉)和任务(例如语言翻译、图像识别、语音识别)具有较少的特定于模态的架构假设(例如,平移不变性和视觉中的局部网格注意偏置)。具体来说,Transformer 的输入可以包含一个或多个 token 序列,每个序列的属性(例如,模态标签、顺序)可以自然地进行 MML 而无需架构修改。
此外,通过控制 self-attention 的输入模态可以简单地实现学习每个模态的特异性和模态间的相关性。至关重要的是,最近跨不同学科探索 Transformer 架构的研究尝试激增,导致近年来开发了大量新的 MML 方法,以及各个领域的显着和多样化进展。这需要及时回顾和总结代表性方法,以使研究人员能够了解跨相关学科的 MML 领域的图景,更重要的是捕捉当前成就和主要挑战的整体结构化图景。
为了在不同学科之间获得更好的可读性和可访问性,作者分别采用基于应用程序和挑战维度的两层结构化分类法。这有几个好处:(1)具有特定应用专业知识的研究人员可以在连接到其他相关领域之前找到适合自己研究领域的应用。(2)不同领域开发的相似模型设计和架构可以抽象的、公式驱动的视角进行总结,从而可以在共同基础上关联和对比不同应用中形成的各种模型的数学思想,跨越特定领域的限制。
本文是对基于 Transformer 的多模态机器学习状态的第一次全面回顾。本文的主要特点包括:
1. 作者强调 Transformer 的优势在于它们可以以与模态无关的方式工作。因此,它们与各种模态(和模态的组合)兼容。为了支持这一观点,作者第一次从几何拓扑的角度提供了对多模态上下文中 Transformer 的内在特征的理解。作者提出将 self-attention 视为一种图样式建模,它将输入序列(单模态和多模态)建模为全连接图。具体来说,self-attention 将来自任意模态的任意 token 嵌入建模为图节点。
2. 作者尽可能在数学上讨论多模态上下文中 Transformer 的关键组件。
3. 基于 Transformers,跨模态交互(例如融合、对齐)本质上是由 self-attention 及其变体处理的。在本文中,作者从自注意力设计的角度提取了基于 Transformer 的 MML 实践的数学本质和公式。
在回顾了多模态学习、Transformer 生态系统和多模态大数据时代的前景后,本文的主要贡献总结如下:
1. 作者从几何拓扑的角度对 Vanilla Transformer、Vision Transformer 和多模态 Transformer 进行了理论回顾。
2. 作者从两个互补的角度为基于 Transformer 的 MML 提供分类,即基于应用程序和基于挑战。
3. 作者讨论了基于 Transformer 的 MML 当前的瓶颈、存在的问题和潜在的研究方向。
背景
2.1 Multimodal Learning(MML)
MML是近几十年来的一个重要研究领域;早期的多模态应用——视听语音识别在 1980 年代被研究。MML 是人类社会的关键。我们人类生活的世界是一个多模态环境,因此我们的观察和行为都是多模态的。例如,人工智能导航机器人需要多模态传感器来感知现实世界环境,例如相机、激光雷达、雷达、超声波、GNSS、高清地图、里程表。此外,人类行为、情绪、事件、动作和幽默是多模态的,因此各种以人为中心的 MML 任务被广泛研究,包括多模态情感识别、多模态事件表示、理解多模态幽默、面部-基于身体语音的视频人物聚类等。
近年来,随着互联网的发展和各种智能设备的普及,越来越多的多模态数据通过互联网传输,越来越多的多模态应用场景不断涌现。在现代生活中,我们可以看到各种多模态应用,包括商业服务(例如电子商务/商品检索、视觉和语言导航(VLN))、交流(例如唇读、手语翻译)、人机交互、医疗保健 AI、监控 AI 等。
而且,在深度学习时代,深度神经网络极大地推动了 MML 的发展。特别是 Transformers是一个竞争激烈的架构家族,给 MML 带来了新的挑战和机遇。
2.2 Transformers: a Brief History and Milestones
得益于其自注意力机制,Vanilla Transformer受益于自注意力机制,是最初为 NLP 提出的序列特定表示学习的突破性模型,在各种 NLP 上实现了 state-of-the-art 任务。随着 Vanilla Transformer 的巨大成功,许多衍生模型被提出,例如,BERT、BART、GPT、GPT-2、GPT-3、Longformer、Transformer-XL、XLNet。
Transformers 目前在 NLP 领域占据主导地位,这促使研究人员尝试将 Transformers 应用于其他模态,例如视觉领域。在视觉领域的早期尝试中,早期探索的一般流程是“CNN 特征 + 标准 Transformer 编码器”,研究人员通过调整原始图像大小到低分辨率并 reshape 为一维序列来实现 BERT 风格的预训练。
Vision Transformer(ViT)是一项开创性的工作,它通过将 Transformer 的编码器应用于图像来提供端到端的解决方案(参见上图 )。ViT 及其变体都已广泛应用于各种计算机视觉任务,包括 low-level 任务、识别、检测、分割等,并且还可以工作对于监督和自监督视觉学习都很好。此外,一些最近发布的作品为 ViT 提供了进一步的理论理解,例如,它的内部表示鲁棒性、其潜在表示传播的连续行为。
在 Transformer 和 ViT 的巨大成功的推动下,VideoBERT 是一项突破性的工作,是第一个将 Transformer 扩展到多模态任务的工作。VideoBERT 展示了 Transformer 在多模态环境中的巨大潜力。在 VideoBERT 之后,许多基于 Transformer 的多模态预训练模型(例如,ViLBERT、LXMERT、LXMERT、VisualBERT、VL-BERT、UNITER、CBT, Unicoder-VL, B2T2, VLP], 12-in-1, Oscar, Pixel-BERT, ActBERT, ImageBERT, HERO,UniVL)已成为机器学习领域越来越感兴趣的研究课题。
2021 年,提出了 CLIP(如上图所示)。这是一个新的里程碑,它使用多模态预训练将分类转换为检索任务,使预训练模型能够处理零样本识别。因此,CLIP 是一个成功的实践,它充分利用了大规模多模态预训练来实现零样本学习。最近,进一步研究了 CLIP 的思想,例如,基于 CLIP 预训练模型的零样本语义分割、ALIGN、CLIP-TD。
2.3 Multimodal Big Data
在过去的十年中,随着社交媒体和在线零售等互联网应用的快速发展,大量的多模态数据集被提出,例如 Conceptual Captions、COCO、VQA、Visual Genome, SBU Captions, Cooking312K, LAIT, eSNLI-VE, ARCH, Adversarial VQA, OTTQA, MULTIMODALQA(MMQA), VALUE、Fashion IQ、LRS2-BBC、ActivityNet、CNERTA、DVD、VisDial、PhotoChat。最近发布的多模态数据集中出现了一些新趋势:
(1)数据规模较大:最近发布的各种数据集都是百万级的,例如 Product1M、Conceptual 12M、RUC-CAS-WenLan(30M)、HowToVQA69M、HowTo100M、ALT200M、LAION-400M。
(2)更多模态:除了视觉、文本和音频的一般模态之外,还出现了更多不同的模态,例如 PanoA VQA ——第一个 360° 视频的大规模空间和视听问答数据集,YouTube-360(YT-360)(360° 视频), AIST++(一个新的 3D 舞蹈动作和音乐的多模态数据集),Artemis(视觉艺术的情感语言)。MultiBench 提供了一个包含 10 种模态的数据集。
(3)更多场景:除了常见的 Caption 和 QA 数据集外,还研究了更多的应用和场景,例如 CIRR(现实生活中的图像)、Product1M、Bed and Breakfast(BnB)(视觉和语言导航),M3A(金融数据集),X-World(自动驾驶)。
(4)任务难度更大:除了简单的任务之外,还提出了更抽象的多模态任务,例如 MultiMET(用于隐喻理解的多模态数据集)、Hateful Memes(多模态模因中的仇恨言论)。
(5)教学视频越来越流行,例如烹饪视频 YouCookII。将一系列指令与某人执行任务的视频对齐是强大的预训练借口任务的一个示例。
与其他深度神经网络架构类似,Transformer 也需要大量数据。因此,它们的高容量模型和多模态大数据基础共同创造了基于 Transformer 的多模态机器学习的繁荣。例如,大数据为 VLP Transformer 模型带来了零样本学习能力。
Tranformer:几何拓扑视角
3.1 Vanilla Transformer
Vanilla Transformer 具有编码器-解码器结构,是基于 Transformer 的研究领域的起源。它的编码器和解码器都由 Transformer 层/块堆叠。每个块都有两个子层,即一个多头自注意力(MHSA)层和一个位置全连接前馈网络(FFN)。为了帮助梯度的反向传播,MHSA 和 FFN 都使用残差连接,然后是标准化层。因此,假设输入张量为 Z,MHSA 和 FFN 子层的输出可以表示为:
其中 sublayer(·) 是子层自身实现的映射,N(·) 表示归一化,例如 BN(·)、LN(·)。
有一个重要的未解决问题是后归一化与预归一化。原始的 Vanilla Transformer 对每个 MHSA 和 FFN 子层使用后归一化。但是,如果作者从数学角度考虑这一点,预归一化更有意义。这类似于矩阵理论的基本原理,即在投影之前进行归一化。
3.1.1 Input Tokenization
Vanilla Transformer 最初是作为序列到序列模型被提出用于机器翻译的,因此可以直接将词汇序列作为输入。如前所述,原始的 self-attention 可以将任意输入建模为全连接的图,而与模态无关。具体来说,Vanilla 和变体 Transformers 都采用标记化序列,其中每个 token 都可以视为图的一个节点。
输入标记化的主要优点包括:(1)从几何拓扑的角度来看,标记化是一种更通用的方法,通过最小化不同模态引起的约束来实现。(2)标记化是一种更灵活的方法,通过连接/堆栈、加权求和等来组织输入信息。Vanilla Transformer 通过对位置嵌入求和来将时间信息注入到 token 嵌入中。(3)标记化与任务特定的定制标记兼容,例如,[CLASS] token 用于分类,[MASK] 用于掩蔽语言建模(MLM)。(4)此外,标记化可以帮助 Transformer 固有地处理多模态数据,甚至 Vanilla Transformer 也可以通过 concat、加权求和灵活地对多模态输入进行编码,甚至无需任何多模态定制修改。
Vanilla Transformer 使用正弦和余弦函数来产生位置嵌入。迄今为止,已经提出了各种位置嵌入的实现方式。如何理解 Transformers 的位置嵌入是一个悬而未决的问题。可以理解为一种隐含的特征空间坐标偏置,为 Transformer 提供时间或空间信息。此外,位置嵌入可以看作是一种通用的附加信息。
换句话说,从数学的角度来看,可以添加任何附加信息。之前有一个全面的工作讨论了 Transformers 中的位置信息。对于句子结构(顺序)和一般图结构(稀疏、任意和不规则),位置嵌入有助于 Transformer 学习或编码底层结构。从自注意力的数学角度考虑,即缩放的点积注意力,如果缺少位置嵌入信息,注意力对于单词(文本中)或节点(图中)的位置是不变的。
3.1.2 Self-Attention and Multi-Head Self-Attention
Vanilla Transformer 的核心组件是 Self-Attention(SA)操作,也称为“Scaled DotProduct Attention”。假设 是 N 个元素 /token 的输入序列,位置编码的可选预处理是通过逐点求和 或拼接
预处理后,嵌入 Z 将经过三个投影矩阵(
给定一个输入序列,self-attention 允许每个元素关注所有其他元素,因此 self-attention 将输入编码为全连接图。因此,Vanilla Transformer 的编码器可以看作是全连接的 GNN 编码器,Transformer 家族具有全局感知的非局部能力,类似于 NonLocal Network。
在实践中,需要修改 self-attention 来帮助 Transformer 的解码器学习上下文依赖,防止位置注意到后续位置,如:
其中 M 是掩蔽矩阵。例如,在 GPT中,一个上三角掩码可以实现 look-ahead 注意力,其中每个 token 只能查看过去的 token。掩码可用于 Transformer 的编码器和解码器,并且具有灵活的实现方式,例如 0-1 硬掩码、软掩码。在单模态和多模态实践中,特定的掩码都是基于领域知识和先验知识设计的。本质上,MSA 用于向 Transformer 模型注入额外的知识。
在实践中,多个 self-attention 子层可以并行堆叠,它们的级联输出通过投影矩阵 W 融合,形成一个名为 Multi-Head Self-Attention 的结构:
其中每个 head 和 是一个线性投影矩阵。MHSA 的理念是一种整体。MHSA 帮助模型共同关注来自多个表示子空间的信息。
3.1.3 Feed-Forward Network
多头注意力子层的输出将输入到方向前馈网络(FFN),该网络由具有非线性激活的连续线性层组成。例如,一个两层 FFN 可以表示为:
其中 表示两个线性变换的权重和偏置,而 σ(·) 是非线性激活,例如 ReLU(·) [61]、GELU(·) 。在一些 Transformer 文献中,FFN 也被称为多层感知机(MLP)。
3.2 Vision Transformer
Vision Transformer(ViT)为视觉域提供了强大的端到端解决方案,这是一个基于标准 Transformer 编码器的面向图像的网络。它有一个特定于图像的输入 pipeline,其中输入图像必须分成固定大小(例如,16×16、32×32)的 patch。在通过线性嵌入层并添加位置嵌入之后,所有的 patch 序列将由标准的 Transformer 编码器编码。给定图像 ,ViT 需要将 X reshape 为一系列扁平化的 2D patch:,其中(P×P)是 patch 分辨率,。为了执行分类,标准方法是在嵌入式 patch 序列中添加一个额外的可学习嵌入“分类 token”[CLASS]:
其中 表示投影。
3.3 Multimodal Transformers
最近,针对各种多模态任务对大量 Transformer 进行了广泛研究,并显示出在判别和生成任务中与各种模态兼容。
3.3.1 Multimodal Input
Transformer 系列是一种通用架构,可以表述为一种通用图神经网络。具体来说,self-attention 可以通过关注全局(非局部)模式,将每个输入作为一个完全连接的图来处理。因此,通过将每个 token 的嵌入视为图的一个节点,这种内在特征有助于 Transformers 可以在与各种模态兼容的模态无关 pipeline 中工作。
给定来自任意模态的输入,用户只需要执行两个主要步骤,(1)对输入进行标记化,以及(2)在将数据输入到 Transformer 之前选择一个嵌入空间来表示token。在实践中,标记化输入和为 token 选择嵌入对于 Transformer 来说都是至关重要的,但非常灵活,有许多替代方案。例如,给定一张图像,标记化和嵌入的解决方案不是唯一的。用户可以在多个粒度级别选择或设计标记化——粗粒度与细粒度。
例如,使用 ROI(由目标检测器获得)和 CNN 特征作为 token 和 token 嵌入,使用 patch 和线性投影作为 token 和 token 嵌入,或使用图节点(由目标检测器和图生成器获得)和 GNN 特征作为 token 和 token 嵌入。给定一个标记化计划,随后的嵌入方法可以是多种多样的。
例如,对于视频输入,常见的标记化是将视频上的非重叠窗口(下采样)视为 token,然后可以通过各种 3D CNN 提取它们的嵌入,例如 VideoBERT、CBT,UniVL 使用 S3D,ActBERT 使用 ResNet3D。上表总结了 Transformers 多模态输入的一些常见做法,包括 RGB、视频、音频/语音/音乐、文本、图等。
当从几何拓扑的角度考虑时,上表中列出的每个模态都可以看作是一个图。RGB 图像本质上是像素空间中的一个整洁的网格图。视频和音频都是在涉及时间和语义模式的复杂空间上基于剪辑/片段的图。3D 点云是一个图,其中每个坐标都是一个节点。其他抽象模态也可以解释为图,例如源代码、源代码数据流、表、SQL 数据库、文本问题图和电子健康记录(电子病历)。
在 Transformer 的单模态和多模态模型中,各种特殊/自定义 token 在语义上被定义为 token 序列中的占位符,例如,类 token [CLS]、分隔 token [SEP]。上表列出了一些常见的特殊 token。
在实践中,Transformers 允许每个 token 位置包含多个嵌入。对于单模态和多模态 Transformer 模型,这本质上是一种嵌入的早期融合。最常见的融合是多个嵌入的 token 相加,例如,特定 token 嵌入 ⊕ 位置嵌入。与灵活的标记化类似,token 嵌入融合也很灵活,并广泛应用于单模态和多模态 Transformer 应用程序。
token 嵌入融合在多模态 Transformer 应用程序中具有重要作用,因为各种嵌入可以由 token 运算符融合,例如,在 VisualBERT 和 Unicoder-VL 中,分段嵌入是按 token 添加的以指示每个token来自哪种模态(视觉或语言),VLBERT 通过“语言 token 嵌入 ⊕ 全图像视觉特征嵌入”将全局视觉上下文注入语言域,InterBERT 通过“ROI 嵌入 ⊕ 位置嵌入”为 ROI 添加位置信息”,在 ImageBERT 中,融合了五种嵌入“图像嵌入 ⊕ 位置嵌入 ⊕ 语言嵌入 ⊕ 片段嵌入 ⊕ 序列位置嵌入”。
3.3.2 Self-Attention Variants in Multimodal Context
在多模态 Transformer 中,跨模态交互(例如,融合、对齐)本质上是由 self-attention 处理的。因此,在本节中,作者将从自注意设计的角度回顾 Transformers 的主要多模态建模实践,包括(1)早期求和(token-wise,加权),(2)早期连接,(3)分层注意(多流到单流),(4)分层注意(单流到多流),(5)交叉注意,以及(6)交叉注意连接。参见上图。
为简洁起见,作者将陈述和比较两种模态情况下的数学公式。请注意,所有讨论过的 self-attention 及其变体都非常灵活,可以扩展到多种模态案例。具体来说,以下公式与模态、标记化和嵌入无关,因为自注意力模型将任意模态中的任意 token 嵌入作为图的节点。
给定来自两个任意模态的输入 和 , 和 表示它们各自的 token 嵌入。让 表示由多模态交互产生的 token 嵌入(序列)。代表 Transformer 层/块的处理。(上表展示了不同多模态交互/融合的方法)
(1) Early Summation
在实践中,早期求和是一种简单有效的多模态交互,其中来自多个模态的 token 嵌入可以在每个 token 位置进行加权求和,然后由 Transformer 层处理:
其中 ⊕ 是元素求和,α 和 β 是权重。它的主要优点是不会增加计算复杂度。然而,它的主要缺点是由于手动设置权重。求和位置嵌入本质上是早期求和的一种情况。
(2) Early Concatenation
另一个直接的解决方案是早期连接,将来自多个模态的 token 嵌入序列连接起来并输入到 Transformer 层中:
因此,所有的多模态 token 位置都可以作为一个完整的序列来处理,这样每个模态的位置可以通过调节其他模态的上下文来很好地编码。VideoBERT 是第一个多模态 Transformer 作品,其中视频和文本通过早期连接融合,可以很好地编码全局多模态上下文。但是,拼接后的较长序列会增加计算复杂度。早期连接也称为“全注意力”或“CoTransformer”。
(3) Hierarchical Attention(multi-stream to one-stream)
Transformer 层可以分层组合,以实现跨模态交互。一种常见的做法是多模态输入由独立的 Transformer 流编码,它们的输出由另一个 Transformer 连接和融合:
这种分层注意力是后期交互/融合的一种实现,可以被视为早期连接的一种特殊情况。
(4) Hierarchical Attention(one-stream to multi-stream)
InterBERT 是分层注意的另一个良好实践,其中连接的多模态输入由共享的单流 Transformer 编码,然后是两个单独的 Transformer 流。该流程可以表述为:
该方法感知跨模态交互,同时保持单模态表示的独立性。
(5) Cross-Attention
对于双流 Transformer,如果 Q(Query)嵌入以交叉流的方式交换,则也可以感知跨模态交互。这种方法被称为交叉注意,最初是在 VilBERT 中提出的:
Cross-attention 关注每个以另一个为条件的模态,并且不会导致更高的计算复杂度,但是如果考虑每个模态,该方法无法全局执行跨模态注意,因此会丢失整个上下文。
(6) Cross-Attention to Concatenation
两个交叉注意力流可以进一步连接并由另一个 Transformer 处理,以对全局上下文进行建模。这种分层的跨模态交互也被广泛研究,并缓解了交叉注意力的缺点。
应用视角
4.1 Transformers for Multimodal Pretraining
4.1.1 Task-Agnostic Multimodal Pretraining
最近,面向 Transformer 的预训练已被广泛研究,涉及多种模态组合,例如视频-文本、图像-文本 、声学-文本。在现有工作中,正在出现以下主要趋势:
(1)视觉-语言预训练(VLP)是该领域的一个主要研究问题,包括“图像+语言”和“视频+语言”,也称为视觉-语言预训练。已经提出了大量优秀的工作,例如 VideoBERT、ViLBERT、LXMERT、VisualBERT、VL-BERT、UNITER、CBT、Unicoder -VL、B2T2、VLP、12 in 1、Oscar、Pixel-BERT、ActBERT、ImageBERT、HERO,UniVL,SemVLP。
(2)由于自动语音识别(ASR)技术的最新进展,在多模态上下文中,可以通过现成的语音识别工具将语音转换为文本。例如,VideoBERT 和 CBT 通过提取高级语义文本,充分利用语音而不是低级声音作为跨模态监督的来源。
(3)大多数基于 Transformer 的多模态预训练以自监督的方式工作,然而,它过度依赖于对齐良好的多模态样本对/元组。例如,大量图像语言预训练 Transformer 模型是在大规模图像-文本对上进行预训练的,例如 VisualBERT、VL-BERT、ViLBERT 、LXMERT、UNITER 。
一般来说,它们的视觉线索/内容和文本有更高的概率如果与其他视频相比,则彼此对齐。然而,使用跨模态对齐作为跨模态监督对于大规模应用来说成本很高。因此,如何使用弱对齐甚至未配对/未对齐的多模态数据作为预训练语料库仍然没有得到充分研究。最近的一些尝试研究了使用弱对齐的跨模态监督来训练 Transformer 学习跨模态交互。
此外,大多数现有的借口任务可以很好地跨模态转移。例如,文本域中的掩蔽语言建模(MLM)已应用于音频和图像,例如掩蔽声学建模、掩蔽图像区域预测 ,而文本域中的句子排序建模(SOM)和视频域中的帧排序建模(FOM)具有相同的想法。
(4)本质上,在多模态预训练场景中,Transformer 模型基于之前介绍的自注意力变体工作。因此,如果从模型结构的角度考虑,现有的用于多模态预训练的 Transformer 也主要分为三类,即单流、多流、混合流。
(5)对于基于 Transformer 的多模态预训练,关键是驱动 Transformer(encoder w/, w/o decoder)学习跨模态交互。在现有的基于 Transformer 的多模态预训练实践中,跨模态交互是灵活的,可以在预训练 pipeline 中的各个组件/级别内执行。一般来说,基于 Transformer 的多模态预训练 pipeline 具有三个关键组件:标记化、Transformer 表示、监督。不仅对于多模态预训练,而且对于特定的多模态任务,跨模态交互可以在三者的任意组件内执行。
视觉语言预训练(VLP)遵循两个通用 pipeline:两阶段(需要目标检测器,例如 Faster R-CNN)和端到端。两阶段 pipeline 有一个主要优势——对象感知,通过使用有监督的预训练视觉检测器,但是这些都是基于一个强烈的假设,即视觉表示可以被固定。
如何寻找更多本质上具有良好协调的跨模态监督的语料库,例如教学视频,仍然是一个悬而未决的问题。然而,弱对齐的跨模态样本在现实生活中很受欢迎,例如,由于细粒度的类别、复杂的组合和模糊的对应关系,电子商务中出现了大量的弱对齐多模态数据样本。
标记良好/对齐的跨模态数据集在收集和注释方面非常昂贵;如何使用从网络上抓取的弱对齐甚至未对齐的语料库是一个很有前途的问题。最近的一些成功实践使用弱对齐的图像-文本对进行预训练,并在图像分类、图像-文本检索和开放式方面实现了竞争性能和零样本学习能力视觉问答等。由于这些弱监督实践充分利用了大规模的预训练语料库,它们产生了更大的零样本泛化前景。
在基于 Transformer 的多模态预训练中,预训练任务/目标也称为借口任务/目标。迄今为止,已经研究了各种借口任务,例如,掩蔽语言建模(MLM)、掩蔽图像区域预测/分类、掩蔽区域回归(MRR)、视觉-语言匹配(VLM)、图像文本匹配(ITM)、短语-区域对齐(PRA)、单词-区域对齐 ( WRA)、视频字幕匹配(VSM)、掩蔽帧建模(MFM)]、帧顺序建模(FOM)、下一句预测(NSP)、掩蔽句子生成(MSG)[194]、掩蔽组建模(MGM)、前缀语言建模(PrefixLM)、视频条件掩蔽语言模型、文本条件掩蔽帧模型、视觉翻译语言建模(VTLM)和图像条件掩蔽语言建模。
借口任务有多种分类法:
(1)常见的多模态预训练 Transformer 使用良好对齐、弱对齐甚至未对齐的多模态样本对,分别以有监督、弱监督和无监督的方式工作。同时,如果从监督中考虑其借口任务/目标的定义,则可以将借口分类为无监督/自监督(例如,掩蔽语言建模(MLM))和监督(例如,图像文本匹配(ITM))等。如今,自监督的尝试占多数。
(2)考虑到数学公式,一些借口任务是在单一模态上定义的,例如,掩蔽语言建模、掩蔽声学建模、掩蔽区域回归(MRR),而其他借口是在多个模态上定义的,例如,图像条件掩蔽语言建模(IMLM)、图像文本匹配(ITM)、视频字幕匹配(VSM)。因此,从这个数学观点来看,借口任务可以分为两类,即单模态和多模态。
(3)如果考虑他们的动机,借口任务包括掩蔽、描述、匹配、排序等。
上表提供了基于 Transformer 的多模态预训练的常见且具有代表性的借口任务。
最近的一些调查侧重于 VLP,并从领域(图像-文本或视频-文本)、视觉特征提取、语言特征提取、架构(单流或双流)、解码器、借口任务/目标、预训练数据集和下游任务。与这些观点不同,在本文中,作者将从一些新的角度提出了比较。具体来说:(1)Transformer 的核心是 self-attention,因此作者将从 self-attention 或其变体如何以及何时进行跨模态交互的角度来比较现有的多模态预训练 Transformer 模型。
(2)从几何拓扑的角度考虑,self-attention 通过将每个 token 的嵌入作为图的节点,帮助 Transformers 本质上在与各种模态兼容的模态无关 pipeline 中工作,因此要强调现有的 VLP 可以应用于视觉和语言领域之外的其他模态。(3)作者提出处理基于 Transformer 的多模态预训练 pipeline,它具有三个关键组件,从下到上,即标记化、Transformer 表示、客观监督。
尽管最近取得了一些进展,但多模态预训练 Transformer 方法仍然存在一些明显的瓶颈。例如,虽然 BERT 风格的跨模态预训练模型在各种下游视觉语言任务上产生了出色的结果,但它们无法直接应用于生成任务。VideoBERT 和 CBT 都必须为视频字幕训练单独的视频到文本解码器。这是为判别式任务和生成式任务设计的预训练模型之间的显着差距,主要原因是面向判别任务的预训练模型不涉及 Transformer 的解码器。因此,如何设计更统一的模型,既可以用于判别式下游任务,也可以用于生成式下游任务,也是一个有待解决的悬而未决的问题。例如,常见的多模态预训练模型通常在细粒度/实例级任务中表现不佳。
如何提高多模态预训练 Transformers 的性能是一个悬而未决的问题。一些实践表明,多任务训练(通过添加辅助损失)和对抗训练改进了多模态预训练 Transformer 以进一步提高性能。同时,过度复合的预训练目标可能会升级不同损失项之间平衡的挑战,从而使训练优化复杂化。此外,借口任务的难度也值得讨论。一般来说,如果旨在学习更明确的对象概念,将使用更复杂的借口损失。然而,对于借口任务,是否越复杂越好仍然是一个问题。
4.1.2 Task-Specific Multimodal Pretraining
在多模态 Transformer 的实践中,上述与下游任务无关的预训练是可选的,不是必需的,并且下游任务特定的预训练也被广泛研究。主要原因包括:(1)受限于现有技术,设计一套适用于所有下游应用的高度通用的网络架构、借口任务和语料库是极其困难的。(2)各种下游应用之间存在不可忽视的差距,例如任务逻辑、数据形式,难以从预训练转移到下游应用。因此,大量的下游任务仍然需要量身定制的预训练来提高性能。特殊模态有自己独特的领域知识,可用于设计特定的预训练借口。GraphCodeBERT 使用两个结构感知借口任务(即,预测从哪里识别变量,变量之间的数据流边缘预测)来编写源代码。
4.2 Transformers for Specific Multimodal Tasks
最近的工作表明,Transformer 模型可以在经典和新颖的判别应用中编码各种多模态输入,例如 RGB 和光流、文本描述和点云、声学和文本、音频和视觉观察用于视听导航、音频和标签、视频的多模态表示(外观、音频、语音),文本查询和视频,用于视听语音增强的音频和视频,用于视听视频解析的音频和视频,用于视听语音的音频和视频识别,用于引用视频对象分割(RVOS)的视频和文本,源代码和评论和数据流,用于检索的图像和文本。同时,Transformers 还有助于各种多模态生成任务,包括单模态到单模态,多模态到单模态和多模态到多模态。
挑战和设计
5.1 Fusion
一般来说,MML Transformers 主要在三个常规级别融合多种模态的信息:输入(即早期融合)、中间表示(即中间融合)和预测(即晚期融合)。将两种模态的表示直接输入标准注意力模块可以实现中间融合和潜在适应,最终得到最终双模态表示的后期融合。这个想法可以通过 交替或复合与单模态注意力或跨模态的 token 交换来扩展。在 BERT 中,不同的模态早在输入阶段就集成了。它们也被称为单流架构,允许采用 BERT 的优点,因为架构修改最少。
这些单流模型的一个主要区别是使用具有变体掩蔽技术的特定问题模式。通过注意力操作,基于瓶颈 token 的概念引入了一种明显的融合方案。它适用于早期和中期融合,只需选择要融合的层即可。作者注意到,基于简单预测的后期融合在 MML Transformers 中较少采用。考虑到学习更强的多模态上下文表示和计算能力的巨大进步的动机,这是有道理的。为了增强和解释 MML 的融合,探索模态之间的相互作用将是一个有趣的探索方向。
5.2 Alignment
现实世界的数据通常以多种具有内在同步的模态出现(例如,视听对应),这支持了跨模态对齐。最近,基于 Transformers 的对齐导致利用大量网络数据(例如,图像-文本对)进行视觉和语言任务的激增。主要思想是将两种模态映射到一个共同的表示空间中,并在配对样本上进行对比学习。这些 MML 模型通常规模庞大,并且从数百万或数十亿的训练数据中进行优化的成本很高。
因此,后续工作主要利用预训练模型来处理各种下游任务。这些对齐模型的核心是 zero-shot 迁移的能力,特别是通过即时工程进行的图像分类。鉴于图像分类通常被视为单模态学习问题,并且零样本分类仍然是一个未解决的挑战。此外,通过强加区域(语义部分,如对象)级别对齐,这已经扩展到更具挑战性和细粒度的任务(例如,对象检测、视觉问答和实例检索)。然而,这会从显式区域检测中产生更多的计算成本,以及如何在保持区域级学习能力的同时消除这种成本成为主要挑战。
跨模态对齐是许多实际应用程序的关键因素。例如,基于 Transformer 的 MML 模型最近被设计用于多说话者视频中的说话者定位、语音翻译 、文本到语音、文本到视频检索和视觉 grounding。此外,当多个模态分布在任务中并以多任务方式进行训练时,可以以高参数效率实现任务级表示对齐。
5.3 Transferability
可迁移性是基于 Transformer 的多模态学习的主要挑战,涉及如何在不同数据集和应用程序之间迁移模型的问题。数据增强和对抗性扰动策略帮助多模态 Transformers 提高泛化能力。
在实践中,训练数据和实际数据之间的分布差距是显而易见的。例如,监督数据样本(标记良好、对齐)在实际应用中成本很高,因此如何将在良好对齐的交叉模态对/元组上预训练的监督多模态 Transformer 转移到弱对齐的测试上是具有挑战性的。
CLIP 是一个鼓舞人心的解决方案,它通过学习共享的多模态嵌入空间来跨模态传输知识,从而实现模型到下游任务的零样本迁移。CLIP 向社区展示的主要灵感是,通过使用提示模板“A photo of a {label}”,可以将预训练的多模态(图像和文本)知识转移到下游的零样本图像预测中。弥合训练和测试数据集之间的分布差距。
过拟合是迁移的主要障碍。由于建模能力大,多模态 Transformer 在训练期间可能过度拟合数据集偏差。最近的一些实践利用了如何将在无噪声数据集上训练的预言模型转移到真实数据集。
跨任务差距是迁移的另一个主要障碍,因为不同的推理和输入输出工作流程,例如,如何使用多模态数据集来微调语言预训练模型是困难的。在实际应用中,由于缺少模态的问题,多模态预训练的 Transformer 有时需要在推理阶段处理单模态数据。一种解决方案是使用知识蒸馏,例如,在 Transformer 中从多模态注意力提取到单模态注意力,从多个单模态 Transformer 教师提取到共享的 Transformer 编码器。
对于基于 Transformer 的多模态学习的可迁移性,还应考虑跨语言差距,例如从英语到非英语多模态上下文的通用跨语言泛化。
5.4 Efficiency
多模态 Transformer 存在两个主要的效率问题:(1)由于模型参数容量大,它们需要大量数据,因此依赖于大规模的训练数据集。(2)它们受到时间和内存复杂度的限制,这些复杂度与输入序列长度呈二次方增长,这是由自注意引起的。这两个瓶颈是相互依赖的,应该一起考虑。
为了提高多模态 Transformer 的训练和/或推断效率,最近的努力试图找到各种解决方案,以使用更少的训练数据和/或参数。主要思想可归纳如下:
(1)知识蒸馏。将经过训练的大型 Transformer 的知识提取到更小的 Transformer。
(2)简化和压缩模型。移除组件以简化 pipeline。以 VLP Transformer 模型为例,两阶段 pipeline 成本高昂,因为它们需要目标检测器。一种简化是以无卷积方式处理视觉输入,通过在训练期间从输入序列中随机删除一部分视频和音频 token 来降低训练复杂性。DropToken 可以被视为 dropout 或对抗性训练的实现。权重共享也是简化多模态 Transformer 模型的常见做法。
(3)不对称的网络结构。为不同的模态正确分配不同的模型容量和计算量,以节省参数。
(4)提高训练样本的利用率。充分利用训练样本,在更少的样本上训练模型。
(5) 压缩剪枝模型。搜索多模态 Transformer 的最优子结构/子网络。
(6)优化 self-attention 的复杂度。Transformers 花费的时间和显存随着输入序列的长度呈二次方增长。一种可能的解决方案是优化 复杂度。
(7)优化基于 self-attention 的多模态交互/融合的复杂度。
(8)优化其他策略。使用最佳策略来执行常见的基于 Transformer 的多模态交互。鉴于自注意的二次复杂性,使用基于早期连接的多模态交互来同步融合来自多个模态/视图的输入是昂贵的。
5.5 Robustness
在大规模语料库上预训练的多模态 Transformer 实现了各种多模态应用的最新技术,但它们的鲁棒性仍不清楚和研究不足。这至少涉及两个关键挑战,即如何从理论上分析鲁棒性,如何提高鲁棒性。
尽管最近的尝试研究和评估了 Transformer 组件/子层如何促进鲁棒性,但主要瓶颈是社区缺乏分析 Transformer 系列的理论工具。最近,分析鲁棒性的常用做法主要基于实验评估,例如跨数据集评估、基于扰动的评估。因此,需要提出了一些多模态数据集来评估稳健性。
最近的尝试主要使用两种简单的方法来提高多模态 Transformer 模型的鲁棒性:(1)基于增强和对抗性学习的策略(2)细粒度损失函数。
5.6 Universalness
由于多模态学习的任务和模态高度多样化,通用性是多模态 Transformer 模型的一个重要问题。最近的大量尝试研究如何使用尽可能统一的 pipeline 来处理各种模态和多模态任务。理想情况下,统一的多模态 Transformer 可以兼容各种数据(例如,对齐和未对齐、单模态和多模态)和任务(例如,有监督和无监督、单模态和多模态、判别和生成),同时具有 few-shot 甚至 zero-shot 泛化能力。因此,目前针对多模态 Transformer 的通用性目标的解决方案是初步探索。目前面向统一的尝试主要有:
(1)统一单模态和多模态输入/任务的 pipeline。
(2)统一多模态理解和生成的 pipeline。
总结
本文的重点是使用 Transformers 进行多模态机器学习。作者通过在多模态环境中介绍 Transformer 设计和训练来回顾了多模态 Transformer 的发展。作者总结了这个新兴和令人兴奋的领域的主要挑战和解决方案。此外,作者讨论了未解决的问题和潜在的研究方向。
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
投稿通道:
• 投稿邮箱:[email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
·