摘要
我们提出了可组合扩散(CoDi),这是一种新的生成模型,能够从任何输入模式组合生成任何输出模式组合,如语言、图像、视频或音频。与现有的生成式人工智能系统不同,CoDi可以并行生成多种模式,其输入不限于文本或图像等模式的子集。尽管缺乏许多模式组合的训练数据集,但我们建议在输入和输出空间中对齐模式。这使得CoDi可以自由地对任何输入组合进行条件处理,并生成任何一组模态,即使它们不存在于训练数据中。CoDi采用了一种新颖的可组合生成策略,该策略通过在扩散过程中桥接对齐来构建共享的多模态空间,从而能够同步生成相互交织的模态,例如暂时对齐的视频和音频。高度可定制和灵活,CoDi实现了强大的联合模态生成质量,并且优于或与单模态合成的单模态最新技术相当。包含演示和代码的项目页面位于https://codi-gen.github.io/
引言
近年来出现了强大的跨模态模型,可以从另一种模态生成一种模态,例如文本到文本[6,37],文本到图像[13,19,22,41,44],或文本到音频[23,33]。然而,这些模型在多种模式共存和交互的实际应用中受到限制。虽然可以在多步骤生成设置中将特定于模态的生成模型链接在一起,但每个步骤的生成能力仍然是有限的,并且串行的多步骤过程可能是繁琐和缓慢的。此外,当以后处理方式拼接在一起时,独立生成的单模流将不一致和对齐(例如,同步的视频和音频)。人们热切期待开发一种全面而通用的模型,这种模型可以从任何输入条件中生成任何模式组合,因为它可以更准确地捕捉世界和人类理解的多模式本质,无缝地整合来自广泛来源的信息,并使人与人工智能交互(例如,通过同时生成连贯的视频、音频和文本描述)具有很强的沉浸感。
为了实现这一目标,我们提出了可组合扩散(Composable Diffusion),即CoDi,这是第一个能够同时处理和生成任意模态组合的模型,如图1所示。由于输入和输出模态的组合数量呈指数级增长,训练一个模型以接受任意混合输入模态并灵活地生成任意混合输出需要大量的计算和数据。此外,许多模式组的对齐训练数据很少,甚至不存在,这使得用所有可能的输入输出组合进行训练是不可行的。为了应对这一挑战,我们建议在输入条件(第3.2节)和生成扩散步骤(第3.4节)中调整多种模式。此外,我们提出了一种用于对比学习的“桥接对齐”策略(第3.2节),使我们能够有效地用线性数量的训练目标对指数数量的输入输出组合进行建模。
构建具有任意对任意生成能力和卓越生成质量的模型需要对各种数据资源进行全面的模型设计和培训。因此,我们以一种整合的方式构建CoDi。首先,我们为每个模态(如文本、图像、视频和音频)训练一个潜在扩散模型(LDM)。这些模型可以并行独立地进行训练,使用广泛可用的特定于模态的训练数据(即,以一种或多种模态作为输入,以一种模态作为输出的数据)确保卓越的单模态生成质量。对于有条件的跨模态生成,例如使用音频+语言提示生成图像,输入模态被投影到共享特征空间中(第3.2节),输出LDM关注输入特征的组合。这种多模态条件作用机制使扩散模型能够在没有直接训练的情况下对任何模态或模态组合进行条件作用。
训练的第二阶段使模型能够处理多对多生成策略,该策略涉及同时生成输出模式的任意组合。据我们所知,CoDi是第一个具有这种能力的人工智能模型。这是通过在每个扩散器中添加交叉注意模块和环境编码器V来实现的,以将不同ldm的潜在变量投影到共享的潜在空间中(第3.4节)。接下来,我们冻结LDM的参数,只训练交叉注意参数和V。由于不同模态的环境编码器是对齐的,因此LDM可以通过V插值表示的输出来交叉参与任何一组共生成模态。这使得CoDi能够无缝地生成任何一组模态,而无需对所有可能的生成组合进行训练。这将训练目标的数量从指数减少到线性。
我们展示了CoDi的任意对任意生成能力,包括单对单模态生成、多条件生成以及多模态联合生成的新能力。例如,根据文本输入提示生成同步的视频和音频;或者根据提示图像和音频生成视频。我们还使用8个多模态数据集对CoDi进行了定量评估。CoDi在各种场景中表现出卓越的生成质量,其合成质量与单对单模态SOTA相当,甚至更好,例如,音频生成和音频字幕。
注:
- 不同模态的环境编码器对齐方式
- 多次训练方式及冻结训练。
- 对比学习的“桥接对齐”是为了解决什么?有没有更好的方法。(线性数量的训练目标对指数数量的输入输出组合进行建模)
相关工作
扩散模型(DMs)通过去噪和恢复原始数据来学习数据的分布。深度扩散过程(Deep Diffusion Process, DDP)[45]采用一系列可逆扩散步骤来模拟图像概率分布。它使用可逆编码器将输入图像映射到潜在空间,并使用解码器将潜在变量映射到输出图像。去噪扩散概率模型(Denoising diffusion probistic model, DDPM)[20]采用扩散过程级联的方式,逐渐增加概率密度函数模型的复杂度。在每一步中,模型将噪声添加到输入图像并利用自回归模型估计相应的噪声水平。这允许模型捕获相邻像素之间的依赖关系并生成高质量的图像。基于分数的生成模型(SOG)[46]使用分数函数来模拟扩散过程。[40]以文本提示的CLIP表示为条件生成高保真图像。潜扩散模型(Latent diffusion model, LDM)[41]使用VAE将输入编码到潜空间,降低建模维数,提高效率。其动机是图像压缩可以通过扩散模型和自编码器分离为语义空间和感知空间。通过结合时间建模模块和级联模型架构,视频扩散模型建立在图像扩散器上,生成时间一致的固有帧[14,19,21,44]。扩散模型也被应用于其他领域,例如从文本和视觉提示生成音频[23,33]。
近年来,多模态建模得到了快速发展,研究人员努力使用单一模型构建多模态的统一表示,以实现更全面的跨模态理解。视觉转换器[11]具有多种模型架构和训练技术,已应用于各种下游任务,如视觉问答和图像字幕。多模态编码器在视觉语言[1,8,57]、视频音频[47]和视频语音语言[55,56]领域也被证明是成功的。对来自不同模态的数据进行对齐是一个活跃的研究领域[12,38],在跨模态检索和建立统一的多模态表示方面具有广阔的应用前景[33,35,41]。
方法
LDM(latent diffusion model)
扩散模型(DM)代表一类生成模型,通过模拟信息随时间的扩散来学习数据分布p(x)。在训练过程中,随机噪声被迭代地添加到x中,同时模型学习对样本去噪。对于推理,该模型对从简单分布(如高斯分布)中采样的数据点进行去噪。潜扩散模型(Latent diffusion models, LDM)[41]学习潜变量(latent)z对应于x的分布,通过降低数据维数显著降低计算成本。
在LDM中,首先训练一个自编码器来重构x,即:,其中E和D分别表示编码器和解码器。潜伏变量z = E(x)基于方差表β1,… βT迭代地扩散到时间步长t上。即
denoising training objective can be expressed as:
In data generation, the denoising process can be realized through reparameterized Gaussian sampling:
条件作用机制的实现方式是首先将y特征化为C(y),然后通过交叉注意将C(y)上的UNet εθ条件实现,如[41]所述。与以往的作品不同,我们的模型可以对文本、图像、视频和音频的任何形式的组合作为条件。
可组合多模态条件作用
- 难点:模型能够以输入/提示模式的任何组合为条件
- 解决方式:来自任何模式的输入投影到同一空间,对齐嵌入的简单加权插值
为了使我们的模型能够以输入/提示模式的任何组合为条件,我们对齐文本、图像、视频和音频的提示编码器(分别用Ct、Ci、Cv和Ca表示),以将来自任何模式的输入投影到同一空间。然后,通过插值每个模态m的表示,可以方便地实现多模态条件:对于m∈xt, xi, xv, xa, C(xt, xi, xv, xa) =∑m αmC(m),∑m αm = 1。通过对齐嵌入的简单加权插值,我们使使用单条件(即只有一个输入)训练的模型能够执行零样本多条件(即具有多个输入)。该过程如图2 (a)(2)所示。
- 难点:如何优化多模态提示编码器,计算量O(n2),对齐良好的配对数据集是有限的或不可用的
- 桥接对齐,对比学习方法。
以组合方式同时优化所有四个提示编码器的计算量很大,需要O(n2)对。此外,对于某些双模态,对齐良好的配对数据集是有限的或不可用的,例如图像-音频对。为了解决这一挑战,我们提出了一种简单有效的技术,称为“桥接对齐”,以有效地对齐条件编码器。如图2 (a)(1)所示,我们选择文本模态作为“桥接”模态,因为它在配对数据中无处不在,例如文本-图像、文本-视频和文本-音频对。我们从一个预训练的文本-图像配对编码器开始,即CLIP[38]。然后,我们使用对比学习在音频-文本和视频-文本配对数据集上训练音频和视频提示编码器,并冻结文本和图像编码器的权重。
通过这种方式,所有四种模态在特征空间中对齐。如5.2节所示,CoDi可以有效地利用和组合任何模式组合中存在的互补信息,以产生更准确和全面的输出。高生成质量不受提示模式数量的影响。正如我们将在后续章节中讨论的那样,我们继续应用桥接对齐来对齐具有不同模态的ldm的潜在空间,以实现联合多模态生成。
可组合扩散
训练端到端的任意对任意模型需要对各种数据资源进行广泛的学习。模型还需要维护所有合成流的生成质量。为了应对这些挑战,CoDi被设计成可组合和集成的,允许独立构建特定于单个模态的模型,然后再顺利集成。具体来说,我们从独立训练图像、视频、音频和文本ldm开始。然后,这些扩散模型通过一种名为“潜在对齐”的新机制,有效地学习跨模态参与联合多模态生成(第3.4节)。
图像扩散模型。图像LDM遵循与Stable Diffusion 1.5[41]相同的结构,初始化权值相同。重用权值将在大规模高质量图像数据集上训练的稳定扩散算法的知识和出色的生成保真度转移到CoDi中。
视频扩散模型。为了对视频的时间属性进行建模,同时保持视觉生成质量,我们通过使用时间模块扩展图像扩散器来构建视频扩散器。具体来说,我们在残差块之前插入伪时间注意[13]。然而,我们认为伪时间注意力只能使视频帧通过将像素(高度、宽度维度)扁平化到批处理维度来全局地关注彼此,从而导致局部像素之间缺乏跨帧交互。我们认为这会导致视频生成中常见的时间不一致问题,即对象的位置、形状、颜色等在生成的帧中可能不一致。为了解决这一问题,我们提出了适应潜移方法[2],该方法根据时间注意力对潜特征进行时空移动。我们将视频按隐藏维度分成k = 8个块,对于每个chunki = 0到7,我们将时间维度向前移动i个位置。进一步的细节将在附录中提供。
音频扩散模型。为了在联合生成中实现灵活的跨模态注意,音频扩散器被设计为具有与视觉扩散器相似的架构,其中mel谱图可以自然地视为具有1通道的图像。我们使用VAE编码器将音频的melspectrum编码为压缩的潜在空间。在音频合成中,VAE解码器将潜在变量映射到梅尔谱图,声码器从梅尔谱图生成音频样本。我们使用了[33]中的音频VAE和[27]中的声码器。
文本扩散模型。文本LDM的VAE为OPTIMUS[29],其编码器和解码器分别为[9]和GPT-2[39]。对于去噪UNet,与图像扩散中的UNet不同,残差块中的2D卷积被替换为1D卷积[53]。
潜在对齐的联合多模态生成
最后一步是在联合生成中使用扩散流之间的交叉注意,即同时生成两个或多个模态。这是通过向UNet εθ添加跨模态注意子层来实现的(图2 (b)(2))。具体来说,另一模态b交叉关注的模态a的扩散模型,让模态mA和mB在扩散步骤t的潜在变量分别表示为zA t和zB t。提议的“潜在对齐”技术是这样的:一个特定于模态的环境编码器VB首先将zB t投影到不同模态的共享潜在空间中。然后,在模态A的UNet的每一层中,有一个交叉注意子层参与到vb (zB t)中。对于模态A的扩散模型,Eq.(1)中的训练目标变为
A+B联合生成的训练目标是LA Cross+LB Cross。不同模式的V(·)被训练为与对比学习相一致。由于在扩散过程第3.1节中,任何时间步长的zA t和zB t都可以用闭合形式采样,因此可以方便地与LCross一起训练对比学习。V的目的是通过对线性数量的联合生成任务进行训练来实现任何模态组合的生成(以多项式形式)。例如,如果我们独立地训练了模态A、B和B、C的联合生成,那么我们可以获得VA(zA t)、VB(zB t)和VC(zC t)对齐。因此,CoDi可以无缝地实现模态A和模态C的联合生成,而无需任何额外的训练。此外,这样的设计自动地使得能够同时联合生成模态A、B和C。具体而言,A的UNet可以与VB(zB t)和VC(zC t)的插值交叉参与,尽管CoDi还没有用这样的任务进行训练。
如图6所示,如图2(b)(3)所示,我们在训练联合生成中遵循与“桥接对齐”类似的设计:(1)我们首先在文本-图像配对数据上训练图像和文本扩散器及其环境编码器V中的交叉注意力权重。(2) 我们冻结文本扩散器的权重,并在文本-音频配对数据上训练环境编码器和音频扩散器的交叉注意力权重。(3) 最后,我们冻结了音频扩散器及其环境编码器,并在音频-视频配对数据上训练视频模态的联合生成。尽管CoDi仅在三个成对的联合生成任务(即文本+音频、文本+图像和视频+音频)上进行训练,但它能够同时生成训练中看不到的各种模态组合,例如图5中的联合图像-文本-音频生成。
实验
训练目标和数据集
我们在表1中列出了CoDi的训练任务,包括单模态合成、联合多模态生成和对比学习以对齐提示编码器。表1提供了数据集、任务、样本数量和领域的概述。数据集来自以下领域:图像+文本(如带标题的图像)、音频+文本(例如带描述的音频)、音频+video(如带声音的视频)和视频+text(如带描述的视频)。正如人们可能已经注意到的,语言模态出现在大多数数据集和领域中。这呼应了使用文本作为桥接模态的想法,以便能够推断和生成新的看不见的组合,如第3.2节和第3.4节中提到的由文本桥接的音频和图像。由于空间限制,有关训练数据集和的更多详细信息,请参阅附录C,模型架构详细信息请参阅附录A.1,训练详细信息请参见附录B。
图像+文本。我们使用了最近开发的大规模图像字幕数据集Laion400M[42]。这种图像-文本配对数据允许我们与任务一起训练文本→图像、图像→文本,以及图像和文本的联合生成。对于联合生成任务,我们建议用文本→图像+文本进行训练,其中提示文本是截断的图像标题,输出文本是原始标题。由于条件信息是不完整的,文本和图像扩散器将需要学会通过联合生成过程相互关注。
音频+文本。我们通过从Freesound网站上抓取500K音频样本以及标签和描述,策划了一个新的数据集Freesound 500K。我们还将AudioSet[42]与来自YouTube视频的200万个人类标记的10秒声音片段一起使用,将AudioCaps[24]与来自AudioSet数据集的46K个有声文本对一起使用。为了训练的目的,音频样本被剪辑成10秒的片段。配对的音频+文本数据使我们能够训练文本→音频、音频→文本、文本→音频+文本生成和音频-文本对比学习。类似于图像+文本联合生成,在文本→音频+文本中,文本提示是截断的文本,输出是原始文本。
视频。我们使用以下多样化和高质量的视频数据集来训练视频生成和视频提示编码器。WebVid[4],一个大规模的网络视频数据集以及描述;HD-Villa-100M[54],具有至少720P的高分辨率YouTube视频。我们使用WebVid执行文本→视频和视频文本对比学习任务。我们使用HD-Villa-100M进行图像→视频生成,其中中间帧是输入图像。
视听。网络视频是一种自然排列的音频视频数据资源。然而,许多现有的数据集,例如ACAV100M[28],主要以人类语音的视频为特征,而不是自然声音。因此,我们利用面向声音的数据集AudioSet和SoundNet[3]进行音频-视频联合生成。对于图像→音频+视频,我们使用目标视频的中间帧作为输入提示图像。我们还使用中间帧作为提示输入来训练模型以生成音频,即图像→音频。
评价指标
在本节中,我们将评估不同设置下的模型生成质量,包括单模态生成、多条件生成和多输出联合生成。我们提供评估数据集的定量基准测试和定性可视化演示。
单模态生成结果
我们首先在图3中展示了示例演示,其中我们展示了各种单模态到单模态的生成。然后,我们评估了文本、图像、视频和音频的单模态生成的合成质量。CoDi在音频字幕和音频生成方面实现了SOTA,如表6和表4所示。值得注意的是,CoDi,一种基于扩散的模型,在使用基于自回归变换器的SOTA的图像字幕方面首次表现出可比的性能(表5)。CoDi是第一个基于扩散模型的视频字幕,表7。在图像和视频生成方面,CoDi的表现与最先进的技术不相上下(表2和表3)。这为我们提供了多条件和多输出发电的有力起点,这将在第5.2节和第5.3节中介绍。
多条件生成结果
对于定量评估,我们关注图像合成输出的多个输入,因为这种情况的评估度量(FID)不需要特定的模态输入,如文本。我们测试了几种输入组合,包括文本+图像、文本+音频、图像+音频、文本+视频,以及三种输入文本+音频+图像。我们在AudioCaps的验证集上进行了测试[24],因为所有四种模态都存在于该数据集中。提示图像输入是视频的中间帧。如表8所示,在给定各种输入模态组的情况下,CoDi实现了高图像生成质量。我们还测试了几种以视频作为输出的输入组合,包括文本、文本+音频、图像+图像以及文本+音频+图像。我们还对MSRVT[24]进行了测试,因为所有四种模态都存在于该数据集中。类似地,提示图像输入是视频的中间帧。如表9所示,在给定各种输入模态组的情况下,CoDi实现了高的视频和真值文本相似性。同样,我们的模型不需要在多条件生成上进行训练,如文本+音频或文本+图像。通过第3.2节中提出的桥接对准和可组合的多模式条件,我们在单个条件下训练的模型可以在多个条件下进行零样本推断。
多输出联合生成结果
对于联合多模式生成,我们首先演示了高质量的多模式输出联合生成演示,如图5所示。对于定量评估,没有现有的评估指标,因为我们是第一个可以同时生成所有4种模式的模型。因此,我们提出了以下度量SIM,通过嵌入的余弦相似性来量化两个生成模态之间的一致性和一致性
其中A、B是生成的模态,CA和CB是将A和B投影到同一空间的对齐编码器。我们使用第3.2节中描述的提示编码器。该度量旨在使用对比学习的提示编码器来计算两种模态的嵌入的余弦相似性。因此,度量越高,生成的模态就越一致和相似。为了证明联合生成的有效性,假设提示模式为P,我们比较了A和B单独生成与联合生成的SIM(A,B),i.e., {P → A, P → B} vs. {P →A + B}.基准是AudioCaps的验证集[24]。我们测试以下设置,音频→图像+文本,图像→音频+文本,以及文本→视频+音频,图像→视频+声音。音频→视频+文本,音频→文本+视频+图像,文本→视频+图像+音频,其中图像提示为视频剪辑的中间帧。如表10所示,联合生成(相似性显示在“/”的右侧)始终优于独立生成(位于“/”左侧)。
结论
在本文中,我们提出了可组合扩散(CoDi),这是一种多模式生成的开创性模型,能够处理并同时生成文本、图像、视频和音频中的模态。我们的方法能够从各种输入模式的组合中协同产生跨越各种模式的高质量和连贯的输出。通过广泛的实验,我们展示了CoDi在从广泛的输入中灵活生成单个或多个模态方面的卓越能力。我们的工作标志着朝着更具吸引力和整体性的人机交互迈出了重要一步,为未来的生成人工智能研究奠定了坚实的基础。限制和更广泛的影响。有关限制和更广泛的影响讨论,请参见附录D。
模型架构
模型训练
提示编码器训练
如第3.2节所述,我们使用桥接对齐来执行所有提示编码器之间的对比学习。我们使用Adam[26]优化器,学习率1e-4,权重衰减1e-4。
扩散模型训练
我们使用表1和表11中详细说明的训练目标和超参数来训练扩散模型。对于视频LDM,我们采用了更具体的培训课程。我们采用关于帧分辨率和帧每秒(FPS)的课程学习。首先,在256帧分辨率的WebVid数据集上训练扩散器,训练目标是基于文本的视频生成。训练剪辑是从具有4 FPS的2秒视频块中采样的。其次,在HDVILLA和ACAV数据集上进一步训练模型,分辨率为512帧,帧速率为8FPS,训练目标是图像条件视频生成(图像是剪辑的随机采样帧)。每个训练剪辑包含从具有8FPS的2秒视频块中采样的16个帧。
联合生成训练
如第3.2节所述,我们通过对齐环境编码器来训练联合生成,并仅在扩散模型中优化交叉注意力层。我们使用Adam优化器,学习率为1e-5,权重衰减为1e-4。
D. 限制和更广泛的影响
虽然本文主要关注CoDi的技术进步和潜在应用,但我们也考虑了此类技术的开发和部署可能产生的潜在负面社会影响。这些影响可能包括:
深度伪造和误报。作为生成人工智能模型常见问题的一部分,CoDi生成逼真和同步的多模式输出的能力也引发了人们对deepfakes(深度伪造)的创建和传播的担忧。恶意行为者可以利用这项技术创建极具说服力的虚假内容,如伪造的视频或音频片段,这些内容可用于错误信息、欺诈或其他有害目的。
偏见和刻板印象。如果用于CoDi的训练数据有偏见或包含刻板印象,则生成的多模式输出也可能反映这些情况。