ONE-PEACE【Exploring One General Representation Model Toward Unlimited Modalities】论文中文翻译

1. 摘要

       在这项工作中,我们探索了一种可扩展的方法来建立一个面向无限模态的一般表示模型。我们发布了ONE-PEACE,这是一个具有4B参数的高度可扩展模型,它可以无缝地对齐并集成跨视觉、音频和语言的模态表征。“ONE-PEACE”的体系结构包括modality adapters(模态适配器)、shared self-attention layers(共享的自注意层)和modality FFNs(模态前馈网络)。这种设计允许通过添加adapters和FFNs来轻松扩展新模态,同时也通过shared self-attention layers实现多模态融合。为了预训练ONE-PEACE,我们开发了两个模态未知的预训练任务,跨模态对齐对比和模态内去噪对比,它们对齐不同模态的语义空间,同时捕获模态中的细粒度细节。通过可伸缩友好的架构和预训练任务,ONE-PEACE有潜力扩展到无限的模态。在不使用任何视觉或语言预训练模型进行初始化的情况下,ONE-PEACE在广泛的单模态和多模态任务上取得了领先的结果,包括图像分类(ImageNet)、语义分割(ADE20K)、音频文本检索(AudioCaps、Clotho)、音频分类(ESC-50、FSD50K、VGGSbound)、音频问答(AVQA)、图像文本检索(MSCOCO,Flickr30K)和视觉接地(RefCOCO/+/g)

2. Introduction

       Representation models(表示模型)在计算机视觉、语音处理、自然语言处理等领域受到了广泛的关注。它从大量的数据中学习,在广泛的下游任务中显示出很强的泛化能力。此外,大规模语言模型(llm)的爆炸性增长引发了对Representation models日益增长的需求。直到最近,Representation models已经显示了它们在让llm理解、感知和与其他模态(如视觉)进行交互方面的基本作用。

       由于不同模态的不同特点,以往的研究主要集中在构建具有个体架构和预训练任务的单模态表示模型上。尽管单模态表示模型取得了良好的效果,但在有效利用图像-文本对和音频-文本对等多模态数据方面存在困难,这使得将其扩展到多模态任务具有挑战性。随着统一架构和高效预训练任务的发展,最近的工作在视觉语言学习和音频语言学习方面取得了很好的成果。然而,关于开发可应用于视觉、音频和语言模态的一般模型的研究仍然很少。利用Multiway Transformer来处理图像和文本模态,并使用一个统一的masked预测任务来进行预训练。Masked预测任务需要一个预先训练好的CLIP模型来离散图像数据,这限制了对音频等其他模态的可扩展性。Data2vec提出了一种通用的预训练方法,可以应用于视觉、音频和语言模态,而不需要第三方模型(例如CLIP),但它并没有将该方法扩展到多模态数据中。

       在本文中,我们探索了一种可扩展的方法来建立一个面向无限模态的一般表示模型。我们主张这个一般的表示模型应该满足以下条件:1。模型体系结构必须足够灵活,以适应各种模态并支持多模态交互。 2.预训练任务不仅应该提取每个模态中的信息,而且还应该确保跨模态的对齐。 3.预任务应该是一般的和直接的,允许它们应用于不同的模态。

       在这些动机的驱动下,我们提出了ONE-PEACE,一个具有4B参数可以无缝地对齐并集成跨视觉、音频和语言模态表征。ONE-PEACE的架构包括多个modality adapters(模态适配器)和一个modality fusion encoder(模态融合编码器)。每个模态都配备了一个adapter,用于将原始输入转换为特征序列。该modality fusion encoder对具有transformer体系结构的特征序列进行操作。每个transformer block包含一个shared self-attention layer(共享的自注意层)和multiple modality Feed Forward(多模态前馈网络)。self-attention layer通过注意力机制使多模态特征之间能够相互作用,而模态FFNs则促进了模态内的信息的提取。因为体系结构的明确分工,扩展新的模态只需要加入adapters 和FFNs。

       为了预训练ONE-PEACE,我们设计了两个与模态无关的预训练任务。第一个是cross-modal contrastive learning(跨模态对比学习),它包含了视觉语言对比学习和音频语言对比学习,有效地对齐了视觉、音频和语言模态的语义空间。第二个是 intra-modal denoising contrastive Learning(模态内去噪对比学习),它可以看作是掩码预测和对比学习的组合,我们对细粒度掩码特征和可见特征进行对比损失,如image patches、language tokens或音频波形特征。这些任务协同工作,以增强模型的微调性能,同时也保持跨模态检索能力。此外,它们对所有模态都是通用的,这就避免了对特定模态设计的需要。通过可伸缩友好的模型架构和预训练任务,ONE-PEACE有潜力扩展到无限模态。

       我们在不同模态的不同任务上进行了全面的实验,包括视觉、音频、视觉语言和音频语言任务。在不使用任何视觉或语言预训练模型进行初始化,ONEPEACE在单模态和多模态任务上取得了领先结果,包括图像分类(89.8%的accuracy on ImageNet)、语义分割(63.0% mIoU on ADE20K),音频文本检索(远远超过以前的SOTAs on AudioCaps和Clotho)、音频分类(91.8%zero-shot accuracy on ESC-50、69.7% accuracy on FSD50K、59.6% accuracy on VGGSound)、音频问答(86.2% accuracy on AVQA)、图像文本检索(84.1% I2T R@1on MSCOCO and 97.6% I2T R@1 on Flickr30K)以及visual grounding(89.26%/83.23%/89.27% scores on RefCOCO/+/g test sets)

3. Related Work

3.1 Vision-Language Pretraining

       近年来视觉语言预训练快速发展。早期的方法严重依赖于目标探测器提取的区域特征,这是耗资耗时的。随着Vision Transformer的普及,许多作品使用Transformer来联合学习视觉语言数据,并在下游任务中表现出优越的性能。为了促进视觉和语言模态之间的一致性,研究人员提出了各种有效的预训练任务。其中,对比学习是被许多作品广泛采用的最具代表性的一种方法。也出现了一些探索统一框架来处理视觉语言任务的作品。Ofa采用 encoder-decoder模型将所有视觉语言任务转换为生成任务。 Coca使用对比学习和文本生成作为预训练目标,因此可以被应用于图像-文本检索和视觉-语言生成任务。BEiT采用Multiway Transformer去处理视觉语言数据,并通过CLIP将图像离散化成image tokens,用于与text tokens的联合学习。

3.2 Audio-Language Pretraining

       目前在音频语言预训练方面进行了大量的研究。这些工作的一类集中于语音-文本联合预训练,例如一些研究提出训练一个统一的语音和文本编码器,它利用大量未标记的语音和文本的掩码预测任务和成对的语音-文本数据来学习对齐。也有一些工作提出在encoder-decoder框架下对语音和文本进行联合预训练,可以很好地应用于语音识别和合成等生成任务。另一类是将跨模态对比学习引入音频语言预训练。Clap分别使用CNN14和BERT来提取音频和文本信息,并对环境声音数据进行对比学习。[76]进一步介绍了更多的环境声音数据,并接受了HTSAT和RoBERTa的培训。它在音频下游任务,如音频分类和音频-文本检索中实现了最先进的结果。

3.3 Vision-Audio-Language Pretraining

      最近,研究人员已经开始探索视觉、音频和语言模态的联合学习。VATT采用了一个统一的transformer模型,通过跨模态对比学习来联合学习视频、文本和音频。 i-code和Vatlm利用外部模型(例如VQ-VAE和AV-HuBERT)来离散视频和音频数据,并使用masked预测目标来训练模型。Data2vec提出了一种不依赖于外部模型的一般自监督学习方法,它成功地将该方法应用于视觉、语言和音频模态,但还没有扩展到多模态数据。与以前的作品相比,ONE-PEACE具有一个灵活的架构,兼容多种模态。此外,ONE-PEACE的预训练任务在没有外部模型的情况下普遍适用,因此,ONE-PEACE可以很容易地扩展到各种模态。

4.Method

4.1 Architecture

     ONE-PEACE的模型架构由三个modality adapters(模态适配器)和一个modality fusion encoder(模态融合编码器)组成。整个体系结构如下图所示。

4.1.1 modality adapters

        我们设计了modality adapters,将不同的原始信号转换为统一的特征。注意这些adapters之间不相互作用,这使我们可以灵活地选择合适的网络,如transformer、CNNs、RNNs等。我们为ONE-PEACE设计了三个轻量级的modality adapters:

Vision Adapter (V-Adapter):

       给定一个图像,我们使用一个hierarchical MLP(hMLP)stem,通过逐步增加patch大小到16×16来细化图像。在不同的patches之间没有交互作用。然后将图像补丁展平成一个序列,并预先添加一个视觉类嵌入。通过将绝对位置嵌入添加到图像嵌入中,图像表示为

其中M为图像补丁总数

Audio Adapter (A-Adapter):

        给定一个音频,我们将样本率设置为16 kHz,并将原始音频波形归一化为零均值和单位方差。然后用卷积特征提取器对归一化后的波形进行处理,得到音频嵌入。我们没有使用绝对的位置嵌入,而是使用了一个卷积层来提取相对的位置信息,并将其添加到音频嵌入中。通过前置音频类嵌入,我们得到了音频表示

其中N表示音频表示的长度

Language Adapter (L-Adapter):

        给定一个文本,我们首先应用字节对编码(BPE)将其转换为一个子单词序列。在句子的开头和结尾插入了两个特殊的标记[CLS]和[EOS],以表示它的开始和结束。然后利用嵌入层将子词序列嵌入到文本嵌入中。将文本嵌入与绝对位置嵌入相加后,得到文本表示

其中K表示文本序列长度

4.1.2 Modality Fusion Encoder

       根据之前的工作,模态融合编码器是基于transformer架构的。我们在每个transformer block中建立了一个共享的自注意层和三个模态前馈网络(FFNs)。共享的自注意层通过注意机制使不同模态之间的相互作用成为可能。三个模态FFNs(V-FFN、A-FFN和L-FFN)可以在各自的模态中进一步提取信息。为了稳定训练和提高模型的性能,我们做了以下改进:

Sub-LayerNorm:

       我们在每个transformer block中加入Sub-LayerNorm(子层规范),以提高训练的稳定性。具体来说,我们在每个自注意层和FFN层的输入投影和输出投影之前插入层归一化。在我们的初步实验中,我们发现与Pre-Layernorm相比,Sub-LayerNorm可以获得更好的性能。

GeGLU Activation Function:

       为了进一步提高性能,我们用GeGLU激活函数替代FFN中的激活函数。FFN的中间维数设置为嵌入维数的4倍,这与PaLM的实践相一致。

Relative Position Bias (RPB):

       对于位置信息,我们引入了文本和音频的一维相对位置偏差,以及图像的二维相对位置偏差。在预训练阶段,不同的自注意层的相对位置偏差是共享的。在微调阶段,我们解耦每个自注意层的相对位置偏差,并让它们继承预训练的相对偏差的权重。

LayerScale:

       我们使用LayerScale来动态调整每个残差块的输出。具体来说,在添加残差之前,我们将每一层(如自注意层和FFN)的输出乘以一个可学习的对角矩阵,其值将初始化为1e−6。在我们的初步实验中,LayerScale有助于稳定训练并提高性能。

       这种“共享-分离”的架构使ONE-PEACE能够分解成不同的分支来处理各种模态的任务。例如,视觉适配器、自注意层和视觉FFN可以组合到视觉分支(V-Branch)中来处理视觉任务。同样,我们将其他分支命名为音频分支(A-Branch)、语言分支(L-Branch)、视觉音频分支 (VA-Branch)、视觉语言分支(AL-Branch)和视觉音频语言分支(VAL-Branch)。

4.2 Tasks

      ONE-PEACE的预训练任务包括跨模态对比学习和模态内去噪对比学习。跨模态对比学习使模型具有跨模态检索能力,而模态内去噪对比学习使模型在下游任务中实现了优越的微调性能。图2展示了预训练任务的说明。

Cross-Modal Contrastive Learning

       跨模态对比学习是一种广泛使用的预训练任务,它可以有效地对齐不同模态的语义空间。该方法的关键思想是最大限度地提高不同模式下相关样本对的相似性,同时最小化不相关样本对的相似性。给定任意模式(如图像-文本对或音频-文本对)的样本对(S 1、S2),我们使用ONE-PEACE的对应分支提取它们的特征。特殊标记(如视觉类标记或语言类标记)的输出被视为全局表示。然后进行线性投影和归一化,我们得到了最终的表示形式s1和s2。损失函数如下图所示:

      其中N为batch size,i、j为批内的索引,σ为可学习的temperature parameter(初始化为0.07)。根据之前的工作,通过收集所有GPU设备的negative特征来计算跨模态对比损失。我们将跨模态对比学习应用于图像-文本对和音频-文本对,分别用LCL−VL和LCL−AL表示。

Intra-Modal Denoising Contrastive Learning

       跨模态对比学习主要关注于不同模态之间的对齐特征。然而,它缺乏对模态中细粒度细节的学习,导致下游任务的性能不佳。为了解决这个问题,我们进一步引入了模态内去噪对比学习来训练ONE-PEACE。模态内去噪对比学习可以看作是masked预测和对比学习的结合,其中我们在细粒度masked特征和可见特征之间执行对比损失,如图像补丁、文本令牌或音频波形特征。

       给定一个任意模态的样本,我们首先通过相应的模态适配器将其编码为一个嵌入序列。然后,我们在序列中随机掩码一些单元(如文本标记或图像补丁)。之后,我们只将未掩码的单元输入到模态融合编码器中,以降低计算成本并节省内存。编码的未掩码特征与可学习的掩码令牌连接,并输入一个轻量级的transformer decoder中,从而生成masked特征。我们还使用ONE-PEACE模型将原始输入样本编码为目标特征,而不需要掩码。最后,我们对masked特征和目标特征进行对比损失,损失函数如下所示:

       其中,ˆhij为masked单元的表示,hij为目标单元的表示,sg(·)为停止梯度操作。Nˆ是一个样本中masked单元的数量,N是一个样本中所有单元的数量。τ是一个恒温值,我们将它设为0.4。这种损失不仅鼓励masked单元接近positive units,而且也远离negative units。因此,每个单元都获得了一个独特的语义,这使模型能够更好地转移到下游任务中。

       我们将模态内去噪对比学习应用于5种类型的数据:图像、音频、文本、图像-文本对和音频-文本对。对于图像,我们随机掩码75%的补丁,用于这类数据的损失函数用LDCL−V表示。对于音频,我们对所有时间步长中的p = 0.11进行采样,作为开始索引,并掩码随后的5个时间步长,损失函数用LDCL−A表示。对于文本,我们随机掩码文本序列的15%的令牌,损失函数用LDCL−L表示。对于图像-文本对,我们随机掩码68.75%的图像补丁和40%的文本标记。未掩码的补丁和标记连接在一起并编码为掩码特征。原始的图像补丁和文本标记也被连接在一起,并被编码为目标特征。然后,我们分别对图像补丁和文本标记进行对比损失,这两个损失的平均值用LDCL−VL表示。对于音频-文本对,我们随机掩码45%的音频波形时间步长和40%的文本标记。损失与上面的损失相似,我们用LDCL−AL来表示。

4.3 Training

      ONE-PEACE的整体预训练过程分为两个阶段:视觉-语言预训练阶段和音频-语言预训练阶段。在视觉-语言预训练阶段,该模型对图像-文本对进行训练,并且只更新与视觉和语言模态相关的参数。对于每个图像-文本对,我们不仅利用它们来计算LCL−VL和LDCL−VL,而且还分别使用图像和文本来计算LDCL−V和LDCL−L。本阶段的损失函数如下图所示:

       在音频-语言预训练阶段,模型对音频-文本对进行训练,我们只更新A-Adapter、A-FFNs和其他与音频相关的参数。其余的参数包括自注意层都被完全冻结了。尽管没有对图像-音频对进行训练,但视觉和音频之间的语义空间仍然通过语言来对齐。音频语言预训练阶段的损失函数如下所示

 5. TrainingPretraining Details

5.1 Pretraining Datasets

       ONE-PEACE的预训练数据集分为图像-文本对和音频-文本对两部分。对于图像-文本对,我们使用LAION-2B,一个通过web爬取获得的数据集。对于音频-文本对,我们收集了大量的开源环境声音数据集。为了确保可再现性,所有的预训练数据集都是公开可用的。

附录A1:

       对于图像取-文本对,我们使用LAION-2B,这是一个通过网络爬获得的数据集,可能包含一些噪声对。为了提高数据质量,我们采用了几个预处理步骤,包括去除长宽比大于3.5的图像,去除最短边小于128的图像,以及去除CLIP评分小于0.3的图像。我们还删除了包含非英语或表情符号的文本,以及长度小于3或大于512的文本。在这些步骤之后,我们保留了大约15亿对图像-文本对。

      对于音频-文本对,我们主要使用由[76]处理的环境声音数据集。具体来说,对于一些只包含标签的数据集,[76]使用一个预训练过的语言模型T5来将这些标签重写为标题。我们还对数据进行了简单的清理,其中包括删除文本长度小于3或大于512的样本,以及包含非英语或表情符号的文本。最终,我们获得了大约240万对音频-文本对,总持续时间约为8000个小时。表14为ONE-PEACE所使用的环境声音数据集。

5.2 Pretraining Settings

       ONE-PEACE是一个具有4B参数的超大模型。我们在表1中列出了详细的超参数。在预训练期间,我们引入了一个轻量级的transformer decoder来从可见单元中恢复masked单元。该decoder类似于模态融合编码器,其每个块还由一个共享的自注意层和三个模态FFNs组成。它有2层,hidden size768,intermediate size 2048,12个注意头。除了A-adapter的音频特征提取器外,ONE-PEACE的模型权值在开始时被随机初始化,为此我们使用WavLM的特征提取器的权值进行初始化。我们发现,加入WavLM的特征提取器可以显著提高模型的性能。

附录A2:

       如第3.3节所述,ONE-PEACE的预训练分为两个阶段:视觉-语言预训练和音频-语言预训练。

       对于视觉-语言预训练,我们对200K步进行了预训练,batch size为32768。我们使用AdamW 优化器与(β1,β2)=(0.9,0.98)和ℇ=1e-8,峰值学习速率被设置为5e−4,带有3000步的线性warmup和一个余弦衰减scheduler。图像分辨率被设置为256×256。最大文本序列长度被设置为70。对于调节,我们使用0.05的权重衰减并禁用dropout。我们采用了具有0.4速率的下降路径。

       对于音频-语言预训练,我们让与视觉和语言相关的模型参数(如自我注意层)冻结,只更新与音频相关的参数,如A-adapter和A-FFN。在这一阶段,我们对ONE-PEACE预训练10个epoch,batch size为3072。峰值学习速率设置为2e−4,1个epoch进行一次linear warmup和余弦衰减scheduler。最大音频持续时间设置为15秒。对于持续时间小于1秒的音频,我们首先重复输入,然后将其截断为1秒。其他超参数与视觉语言预训练相同。

5.3 Training Acceleration.

       我们引入了几种模型加速和内存优化技术来加速训练。首先,我们使用在像素库3中实现的memory-efficient attention(记忆高效注意)技术来提高训练速度。其次,我们使用gradient checkpointing(梯度检查点)技术来保存内存,这允许我们用更大的batch size来训练模型。此外,我们用Flash Attention library4中实现的Fused LayerNorm代替layer normalization,并利用nvFuser5来融合dropout, LayerScale,stochastic depth和residual summing这些操作,这可以带来额外的速度改进。为了提高训练速度,防止梯度溢出问题,我们采用Bfloat16精度来训练ONE-PEACE。

6. experiments

6.1Results on Vision Tasks

       我们将“ONE-PEACE”转移到各种主流视觉基准中,包括图像分类、语义分割、目标检测、实例分割和视频动作识别。

附录B.1:

      描述了不同视觉任务的实现细节,包括图像分类、语义分割、目标检测和视频动作识别。表15列出了所有详细的超参数。

图像分类:我们提供了在ImageNet-1k 上的微调结果。在最近对计算机视觉自监督学习的研究后,我们使用了除了类标记之外所有图像标记的全局池化,以及附加一个具有线性层的层规范以进行分类。为了进一步释放ONE-PEACE的潜力,我们对ImageNet-21k 进行了中间微调。我们将label smoothing设置为0.3,并且不使用随机擦除、混合和cutmix 数据增强。对于对ImageNet-1k的微调,我们使用EMA作为模型参数,并将EMA的衰减率设置为0.9998。对于ImageNet-21k上的中间微调,我们不使用EMA。我们还使用了零冗余优化器,并将该阶段设置为1。

语义分割:我们提供了对ADE20k的微调结果。我们使用mask2former作为分割头。我们首先在数据集上进行80k步的中间微调。学习率设置为2e-5,其余超参数与表15中所示的ADE20K相同。然后,我们在ADE20K上对模型进行了微调。这两个实验都使用了余弦学习率衰减调度器。

目标检测:我们提供了使用ViTDet 对COCO的微调结果。我们使用大规模的抖动数据增强和50个epoch的调整。我们使用线性学习速率衰减调度器,并分别在44和48个epoch时衰减学习速率。

视频动作识别:为了进行视频动作识别,我们遵循AIM冻结了预训练模型的参数,并在每个transformer层中添加了temporal MLP adapters。我们在kinetics 400数据集上进行了实验。由于无效的视频链接,K400数据集有许多不同的版本,我们使用了在学术界发布的版本。我们使用余弦学习衰减调度器,并设置主干学习率乘数为0.1。

未完待续~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值