论文链接:https://arxiv.org/abs/2307.10802
代码链接:https://github.com/invictus717/MetaTransformer
项目主页:https://kxgong.github.io/meta_transformer/
【注】:根据实验结果来看,每次输入一种数据源进行处理,不是多模态同时处理。
整体图:
摘要:多模态学习旨在构建一个能处理来自多个模态相关信息的模型。尽管多模态领域已经有个多年的发展,但由于各个模态本质间的代沟,目前仍然面临设计一个能处理不同模态的统一网络的挑战,这些模态包括自然语言,2D图像,3D点云,音频,视频,时间序列,表格数据等。
本文提出了一个名为Meta-Transformer的框架,其利用冻结的编码器a frozen encoder进行多模态感知而不需要任何成对的多模态训练数据。在Meta-Transformer中,来自各个模态的原始输入数据被映射到a shared token space,让一个带有frozen parameters的解码器提取输入数据的高级语义特征。Meta-Transformer由3部分组成: a unified data tokenizer, a modality-shared encoder, task-spacific heads,是第一个用于执行具有不成对数据的12个模态的统一学习框架。
在不同benchmarks上的实验揭示Meta-Transformer能处理大量的任务,包括基础感知(text, image, point cloud, audio, video),实际应用(X-Ray, infrared, hyperspectral, IMU),和数据挖掘(graph, tabular, time-seris)。Meta Transformer预示着用Transformer开发统一的多模态智能的前景。
1. Intruduction
【多源知识介绍以及本文动机】人类大脑被认为是神经网络模型的灵感来源,它同时处理来自各种感官输入的信息,例如视觉、听觉和触觉信号。此外,来自一个源的知识可以很好地帮助对另一个源的知识的理解。然而,在深度学习中,由于模态差距很大,设计一个能够处理各种数据格式的统一网络是一项艰巨的任务。
【每种模态的特点,现有多模态统一框架介绍】每种数据模态都呈现独特的数据模式,这使得很难将在一种模态上训练的模型适应于另一种模态。 例如,图像由于密集的像素而表现出高度的信息冗余,而自然语言则不然 。 另一方面,点云在 3D 空间中分布稀疏,这使得它们更容易受到噪声的影响并且难以表示。 音频频谱图由跨频域的波组合组成,是时变且非平稳的数据模式。 视频数据包含一系列图像帧,这使其具有捕获空间信息和时间动态的独特能力。图数据将实体表示为图中的节点,将关系表示为图中的边,对实体之间复杂的多对多关系进行建模。由于各种数据模态固有的显着差异,通常的做法是利用不同的网络架构对每种模态进行单独编码。 例如,Point Transformer利用向量级位置注意力从 3D 坐标中提取结构信息,但它无法对图像、自然语言段落或音频频谱图切片进行编码。 因此,设计一个能够利用模态共享参数空间modality-share parameter space来编码多种数据模态的统一框架仍然是一个重大挑战。 最近,VLMO、OFA和 BEiT-3等统一框架的发展,通过对成对数据进行大规模多模态预训练,提高了网络多模态理解的能力,但他们更关注视觉和语言,并且无法跨模态共享整个编码器。
【由Transformer引出动机】Vaswani 等人于2017年提出Transformer 架构和注意力机制用于自然语言处理(NLP),其已经在在深度学习领域取得了显着的进步。 这些进步有助于增强不同模式的感知,例如 2D 视觉(包括 ViT和 Swin Transformer)、3D 视觉(例如 Point Transformer和 Point-ViT)和音频信号处理( AST)等。这些工作展示了基于 Transformer 的架构的多功能性,启发研究人员探索是否有可能开发能够统一多种模态的基础模型,最终在所有模态上实现人类水平的感知理解。
【本文做法】本文探索了transformer架构处理12种模态的潜能,包括(图像、自然语言、点云、音频频谱图、视频、红外、高光谱、X 射线、 IMU、表格、图表和时间序列数据),如图1所示。我们讨论了transformer用于每种模型的学习过程并将其统一到一个框架中。接下来,我们提出了一个统一的框架Meta-Transformer用于多模态学习,其是第一个使用同一组参数同时对来自十几种模态的数据进行编码的框架,可以采用更具凝聚力的方法进行多模态学习(如表 1 所示)。Meta-Transformer包括3个简单但有效的元素:
- a modality-specialist for data-to-sequence tokenization
- a modality-shared encoder for extracting representations across modalities
- task-specific heads for downstream tasks
具体地,Meta-Transformer先将多模态数据转换为贡献一个公共折叠空间的token sequences;然后,a modality-shared encoder with frozen parammeters提取表达,其仅更新下游任务头和轻量级tokenizers的参数来进一步适应各个任务。 最后,可以通过这个简单的框架有效地学习特定任务和通用模态表示。
【实验情况】本文在12种模态的各种benchmarks上进行了大量实验,通过专门利用 LAION-2B数据集的图像进行预训练,Meta-Transformer 在处理来自多种模式的数据方面表现出了卓越的性能,在不同的多模式学习任务中始终取得优于最先进方法的结果。
【本文贡献】
- 对于多模态研究,我们提出了一种新颖的框架,Meta-Transformer,它使统一编码器能够使用同一组参数同时从多种模态中提取表示;
- 对于多模态网络设计,我们全面检查了transformer成分的功能,例如embeddings、tokenization和encoders在处理各种模态时的功能。 Meta-Transformer 提供了宝贵的见解,并在开发能够统一所有模态的模态不可知框架方面激发了有希望的新方向;
- 在实验上,Meta-Transformer 在 12 种模态的各种数据集上取得了出色的性能,这验证了 Meta-Transformer 在统一多模态学习方面的进一步潜力。
2. Related Work
2.1 Single-Modality Perception
各种神经网络的发展促进了机器智能的感知。
MLP用于模式识别。最初,SVM和MLP被应用于文本,图像,点元和视频分类。这些创新工作证明了将人工智能引入模式识别的可行性。
循环&卷积神经网。Hopfield网络是循环网络的原始形式,LSTM和GRU进一步探索了RNN在序列建模的优势并应用于NLP任务中,其也被广泛地用于音频分析。同时,包括LeNet, AlexNet, VGG, GoogleNet, ResNet等CNN在图像识别中的成功很大程度地激发了其在其他领域地应用,比如文本分类,点云理解,语音分类。
Transformer。最近,Transformer架构已被应用于各种任务中,例如NLP中的文本理解和生成,图像中的分类、检测和分割,点云理解和音频识别。
然而,与 CNN 和 RNN 的应用类似,这些网络根据模态的不同属性进行修改。 模态不可知的学习modality-agnostic learning没有通用的架构。 更重要的是,来自不同模态的信息可以互补,设计一个可以对来自不同模态的数据进行编码并通过共享参数空间桥接这些复杂表示的框架非常重要。
2.2 Transformed-based Multimodal Perception
Transformer用于感知问题的优势在于全局感受野和相似性建模,这显着促进了多模态感知的发展。 MCAN提出了视觉和语言之间的深度模块化共同注意网络,通过简洁地最大化交叉注意来执行跨模态对齐,然后利用交叉注意力机制来桥接不同的模式。随着 pretrain finetune 范式的成功,更多的工作开始关注如何有效地对齐抽取自各模态的表达。 VL-BERT开创了使用 MLM 范式实现通用视觉语言理解的模态对齐表示。 然后 Oscar描述了视觉和纹理内容中的对象语义。 Vinvl 、Simvlm、VLMO、ALBEF和 Florence等框架进一步探索了跨视觉语言模态的联合表示在语义一致性方面的优势。
多模态模型还用于few-shot学习、序列到序列学习、对比学习。 BEiT-v3提出将图像作为外语,采用更细粒度的跨模态掩模和重建过程,共享部分参数。 MoMo进一步探索了训练策略和目标函数,同时对图像和文本使用相同的编码器。
尽管取得了这些进步,但由于模式之间的差异,设计统一的多模式网络仍然存在重大障碍。 此外,该领域的大多数研究都集中在视觉和语言任务上,可能不会直接解决 3D 点云理解、音频识别或其他模式等挑战。 Flamingo 模型代表了一种强大的few-shot学习器,但其向点云的可迁移性有限,并且利用一种模态的先验知识使其他模态受益仍然是一个挑战。 另一方面,现有的多模式方法尽管花费了昂贵的培训成本,但在更多模式上的可扩展性有限。 解决这些差异取决于使用同一组参数桥接不同的模式,类似于桥梁如何连接多个河岸。
3. Meta-Transformer
在本节中,我们将详细描述所提出的框架 Meta-Transformer。Meta-Transformer 统一了处理来自不同模态的数据的多个pipelines,并通过共享编码器实现文本、图像、点云、音频和其他 8 种模态的编码。 为了实现这一目标,Meta-Transformer由a modality-specialist for data-to-sequence tokenization,a modality-shared encoder for extracting representations across modalities,task-specific heads for downstream tasks组成。
3.1 Preliminary
3.2 Data-to-Sequence Tokenization
我们提出了一种新颖的meta-tokenization scheme,旨在将各种模式的数据转换为token embeddings,所有的token embeddings都在一个共享的流形空间内。 然后,考虑到模态的实际特点,将该方法应用于tokenization,如图 3 所示。我们以文本、图像、点云和音频为例。
3.3 Unified Encoder
将原始输入转换为a token embedding sapce后,我们利用具有冻结参数的a unifired transformer encoder对来自不同模态的token embeddings进行编码。
预训练。 我们利用 ViT作为主干网络,并通过对比学习在 LAION-2B 数据集上对其进行预训练,这增强了generic token encoding的能力。 预训练后,我们冻结主干网络的参数。 此外,为了文本理解,我们利用 CLIP的预训练文本标记器将句子分割为子词并将子词转换为词嵌入。
模态不可知的学习。 按照常见做法,我们将a learnable token 添加到the sequence of token embeddings中,并且 token的最终隐藏状态 () 作为输入序列的summary representation,通常用于执行识别任务。为了强化位置信息,我们将position embeddings合并到token embeddings中。 回想一下,我们将输入数据标记为一维嵌入,因此,我们选择标准的learnable 1D position embeddings。 此外,我们没有观察到在图像识别中使用更复杂的 2D 感知位置嵌入可以带来显着的性能提升。 我们简单地通过逐元素加法操作融合位置嵌入和内容嵌入,然后将生成的嵌入序列输入编码器。
深度为 L 的 Transformer 编码器包含多个堆叠的多头自注意力 (MSA) 层和 MLP 块。input token embeddings首先被送到 MSA 层,然后是 MLP 块。 然后第(ℓ−1)个MLP块的输出作为第ℓ个MSA层的输入。 在每层之前附加层归一化(LN),并在每层之后应用残差连接。 MLP 包含两个线性 FC 层以及一个 GELU 非线性激活层。 transformer的公式为:
其中 E_x 表示来自提出的tokenizer的token embeddings,n表示tokens的数量。 我们使用位置嵌入E_{pos}来增强patch embeddings和learnable embedding。
3.4 Task-Specific Heads
获得learning representations后,我们将representations提供给特定于任务的头h,它主要由 MLP 组成,并且因模式和任务而异。 Meta-Transformer的学习目标可以概括为:
其中,分别定义了tokenizer, backbone, heads的函数。
4. Experiments
在本节中,我们对 12 种模式中的每一种进行实验。 我们展示了 Meta-Transformer 在多模式感知方面的潜力。 我们的实验设计总结如表 2 所示。
网络设置:遵循ViT的默认设置。 Meta-Transformer-B16F 表示带有base-scale encoder的Meta-Transformer,包含 12 个transformer blocks和 12 个注意力头,图像块大小为 16。对于base-scale encoder,嵌入维度为 768,输出维度为 MLP 为 3,072。 “F”和“T”分别表示编码器的参数被冻结和进一步调整。
在图像理解上的实验结果:
在时间序列预测的实验结果:
在其他问题的实验结果:略。
5. Limitation
Meta-Transformer的相关讨论如下:
复杂度:Meta-Transformer 需要 O(n2 × D) 计算来处理token embeddings [E1, · · ·, En]。 内存成本高、计算负担重,难以扩展。
方法:与 TimeSformer和 Graphormer中的Axial Attention mechanism相比,Meta-Transformer 缺乏时间和结构意识。这种限制可能会影响 Meta-Transformer 在时间和结构建模发挥关键作用的任务中的整体性能,例如视频理解、视觉跟踪或社交网络预测。
应用:Meta-Transformer主要发挥其在多模态感知方面的优势。它的跨模式生成能力仍然未知。 未来我们将致力于这方面的工作。