后台回复“GAI”,免费获取最新AI相关行业报告和资料!
作者:Hong Chen等
文章链接:https://arxiv.org/pdf/2409.14993
多模态生成式人工智能在学术界和工业界受到了越来越多的关注。特别是两大主流技术体系:
多模态大语言模型(MLLM),如 GPT-4V,展现了出色的多模态理解能力; 扩散模型,如 Sora,在视觉生成方面表现出色。因此,自然而然地出现了一个问题:是否可能拥有一个既能理解又能生成的统一模型?
为了解答这个问题,本文首先对 MLLM 和扩散模型进行了详细的综述,包括它们的概率建模过程、多模态架构设计,以及它们在图像/视频大语言模型和文本到图像/视频生成中的高级应用。接着,讨论了统一模型中的两个重要问题:
统一模型应采用自回归还是扩散概率建模? 该模型应使用密集架构还是专家混合(MoE)架构来更好地支持生成与理解这两大目标。
还提出了几种构建统一模型的可能策略,并分析了它们的隐空间优缺点。此外,本文总结了现有的大规模多模态数据集,以便在未来更好地进行模型预训练。最后,本文提出了若干具有挑战性的未来研究方向,相信这些方向将有助于多模态生成式人工智能的持续发展。
I. 引言
随着大语言模型和扩散模型的出现,多模态生成式人工智能(AI)最近受到了越来越多的关注。多模态生成式 AI 的两个典型例子是 OpenAI 的 GPT-4V 和 Sora,它们在学术界和工业界都产生了巨大影响。从功能角度比较,GPT-4V 通过生成相关文本使大语言模型能够理解视觉输入,而 Sora 则作为文本到视频的生成模型,基于文本输入生成视觉信号。换句话说,GPT-4V 主要针对多模态理解,而 Sora 则专注于视觉生成。从概率建模的角度来看,GPT-4V 是基于自回归概率建模的多模态大语言模型(MLLM),而 Sora 则是基于扩散去噪建模的多模态视频生成模型。因此,自然而然地出现了一个问题:“是否有可能建立一个既能理解又能生成的统一多模态生成模型?” 如果答案是“是”,那么该模型应该以何种形式存在?它应采用 MLLM 还是扩散模型?此外,为了建模不同模态之间的关系,是采用 早期融合策略(如 Chameleon),还是 直接将预训练的视觉模型与语言模型对齐(如 LLAVA )?为了同时实现生成与理解的目标,i) 我们是否应该采用专家混合(MoE)策略,ii) 还是只使用密集模型?
为了解答这些问题,本文聚焦于视觉/视频与语言模态的问题,深入讨论多模态生成式 AI。本文的整体结构如下图 1 所示。具体而言,首先对现有的 MLLM 工作(第 II 节)和多模态扩散工作(第 III 节)进行了系统性回顾,涵盖了它们的数学基础、模型架构、融合策略、最新进展和应用。然后,基于讨论,提出了对同时实现理解与生成的统一多模态生成式 AI 框架的见解(第 IV 节)。此外,还总结了用于多模态生成式 AI 预训练的视频/视觉-语言数据集(第 V 节)。最后,提出了值得进一步研究的多模态生成式 AI 未来发展方向。
II. MLLM 的理解
多模态大语言模型最近在视觉理解领域占据了主导地位。本节将回顾关于多模态大语言模型的相关文献。在讨论具体的 MLLM 工作之前,首先介绍一些与 LLM、视觉-语言预训练以及视觉分词器相关的基础知识。
A. 基础知识
1) LLM 自回归概率建模:多模态大语言模型的核心组件是大语言模型(LLM),它接收包括用户指令、问题以及视觉信息在内的多模态输入,然后以文本生成的形式输出答案。大语言模型基本上是一个自回归模型,它试图基于之前所有的词来预测下一个词,如公式 (1) 所示。
其中, 表示 LLM 的参数,LLM 通常由多层 transformers 组成。需要注意的是,LLM 只能接收文本token作为输入,因而多模态大语言模型面临的下一个重要问题是如何使 LLM 理解视觉信息。为了解决这个问题,大多数现有的工作尝试通过视觉-语言预训练任务中的视觉编码器(如 CLIP )来对齐 LLM 和视觉编码器。最近,有一些尝试 直接将图像转换为离散的视觉token,使得文本和视觉token可以由自回归的 LLM 一起处理。接下来,介绍关于视觉-语言预训练和视觉分词器的基础知识。
2) 视觉-语言预训练:在下图 2 中提供了不同的视觉-语言预训练范式。BERT 在自然语言处理(NLP)中的成功将“预训练-微调”范式推向主流,并推动了多模态领域中预训练的发展。视觉-语言预训练(VLP)旨在从大规模图像-文本对中学习多模态表示,使得模型能够同时处理视觉和文本数据,以提升在下游任务中的性能,如图文检索和视觉问答。
早期的 VLP 研究者自然采用了类似于 BERT 的架构,使用图文匹配和基于图像的遮掩语言建模来训练模型,从而捕捉视觉和文本数据之间的交互。然而,VLP 模型也面临与 MLLM 类似的挑战:如何使 VLP 模型理解视觉信息。在 Vision Transformer (ViT)出现之前,一些方法依赖于冻结的目标检测器来提取区域特征,如上图 2(a) 所示,但这种方法的计算成本极高——比 BERT-base 类模型高出 50 倍——并且 VLP 模型的性能可能会受到冻结的目标检测器的限制。Pixel-BERT 尝试通过可训练的 ResNet 代替冻结的目标检测器,但其下游性能仅在使用非常重的 ResNeXt-152 时才能与基于目标检测器的 VLP 模型匹敌。ViT 的引入使得 ViLT 能够采用更简单的视觉嵌入方法:对图像块进行线性投影,从而在推理速度上显著提升,同时只带来轻微的性能损失。
在另一条路径上,CLIP 和 ALIGN 分别为每种模态使用独立的 transformer 编码器,这种设计通常被称为“双塔结构”,如前面图 2(b) 所示。它们在大量的噪声网络数据上进行预训练,使用对比损失将图像和文本的嵌入对齐到共享的嵌入空间。尽管这些模型在图像-文本检索上的零样本表现令人印象深刻,但它们缺乏捕捉图像和文本之间更复杂交互的能力,无法胜任如视觉问答这样的任务。
ALBEF 将这两种架构进行了统一。如前面图 2(c) 所示,ALBEF 最初为每种模态使用单独的单模态编码器,并在 BERT 风格的多模态编码器中执行图像和文本之间的交叉注意力融合。同时,通过融合前的对比损失对齐单模态嵌入。该方法带来了强大的单模态和多模态表示,在检索和推理任务中均表现优异。
作为多模态大语言模型(MLLM)的重要基石,BLIP 基于 ALBEF 进行了两项关键改进。从模型角度看,它引入了一个额外的 transformer 解码器,如前面图 2(d) 所示,不仅能够进行图像-文本理解,还能实现图像到文本的生成(图像描述),为具有影响力的 MLLM BLIP-2 铺平了道路。从数据角度看,它提出了一种新的数据集自举方法,称为 Captioning and Filtering (CapFilt)。在将 BLIP 模型训练在噪声图像-文本对后,该模型会为数据集中的图像生成描述并从原始和生成的文本中筛除噪声描述。这一方法为训练更强大的视觉语言预训练(VLP)模型提供了更干净的数据集,并为未来 MLLM 数据集生成提供了有价值的见解。
3) 视觉分词器:一种将图像转换为一系列 token 的简单方法是将每个图像划分为一系列小块,然后通过线性投影将每个小块映射到连续的嵌入中,例如在 Fuyu 中采用的方法。另一方面,受到语言模型将每个词进行离散化分词的启发,一系列工作也尝试将图像转换为离散 token。典型的视觉分词器包括 VQ-VAE , 和 VQGAN , ,其整体框架如图 3 所示。将从 VQ-VAE 开始讨论。基本上,VQ-VAE 类似于一个自动编码器,包含一个编码器 和一个解码器 。给定一张图像 ,VQ-VAE 首先使用编码器 将其编码为低维连续向量 。然后,该低维向量会通过码本 进行离散化。该码本类似于 NLP 中的词嵌入表,其中 类似于词汇量的大小,每个 代表一个视觉原型,类似于词嵌入。通过编码向量 和码本 ,我们可以通过在 中找到 的最近邻来获得图像的离散值:
在得到离散编码 之后,可以使用它通过解码器来重建图像:。VQ-VAE 的训练目标如下所示:
第一个项表示重建的图像应接近输入图像。然而,由于 是通过最近邻获取的,它没有梯度。因此,在第二项中, 应接近编码后的图像 ,其中 表示停止梯度。类似地,为了优化编码器 ,我们需要使 接近 ,如第三项所示。注意,在优化codebook(第二项)时, 采用了指数移动平均更新。在通过该目标进行训练后,我们获得了一种将图像转换为离散token的方法。与 VQ-VAE 相比,VQGAN , 使用了感知损失(GAN perceptual loss)来替换 L2 重建损失,从而帮助学习更丰富的codebook。我们用一个简单的例子来说明token化的过程。如果我们有一个大小为 的输入图像,经过编码器 后,得到大小为 的低维向量 ,其中 且 , 是代码的维度。这意味着我们可以获得 个 维度的向量,并且对于每个向量,我们将找到其在codebook中的最近邻进行离散化,最终获得长度为 的离散序列来表示图像。
备注: 一方面,VQGAN 和 VQ-VAE 可以作为视觉分词器,将图像转换为离散token,使其能够被大语言模型(LLM)用于视觉理解。另一方面,它们可以用于将图像压缩到低维空间,这也是著名的隐空间扩散模型(LDM) 的动机。
B. MLLM架构
将现有的多模态大语言模型(MLLM)架构分为两大类:早期融合架构和对齐架构,如下图4所示。大多数现有工作[4],[6], [7]采用对齐架构,旨在将视觉模型从视觉语言预训练中与预训练的LLM对齐。这类模型依赖视觉语言预训练来理解视觉输入。在获得图像的嵌入后,使用对齐模块(例如投影器 或 Q-Former )将图像嵌入与 LLM 空间对齐。训练对齐模块需要一些文本-图像或文本-视频对作为输入。对齐的典型方法是使 LLM 根据图像嵌入输出图像的标题。
相比之下,如上图4右侧所示,早期融合架构 , 不依赖预训练的视觉模型来获取输入图像的语义。相反,类似于自然语言处理(NLP)中每个单词被映射为一个token,早期融合架构通过视觉分词器将每个视觉输入映射为视觉token。然后,多模态自回归语言模型将接收混合的文本和视觉token,并输出用户期望的答案。
备注:
对齐架构的优点在于它可以利用视觉编码器和LLM的预训练知识。视觉语言预训练使视觉编码器的输出具有语义意义。需要训练的只是对齐模块,这使得该范式更具资源友好性。(有时其他模块也可以进行学习,以提高性能。)然而,它的能力也受限于预训练的视觉编码器和LLM,例如,预训练的CLIP视觉编码器常常在处理多个对象时表现不佳,这使得基于CLIP的MLLM继承了这一局限性。 相比之下,早期融合架构可能具有更高的潜力,因为其所有参数都是从零开始训练的。然而,从零开始训练使得早期融合架构面临两个挑战:(a)如何训练一个强大的视觉分词器,以及(b)需要更多资源来训练多模态自回归模型。首先,由于视觉token化过程涉及压缩和离散化,视觉信息不可避免地会损失。如何训练一个包含丰富视觉信息的分词器仍然是一个具有挑战性的问题。其次,视觉分词器通常是使用图像重建目标进行训练的,这更多是一个像素级任务,而不是语义级任务,相较于只需理解语义token的原始LLM,后续的多模态LLM需要额外具备从像素级信息中学习语义意义的能力。因此,多模态LLM需要更多的数据进行训练。
接下来,考虑到整体架构,介绍最近在图像大语言模型和视频大语言模型方面的进展。
C. 图像大语言模型
许多工作为大语言模型(LLM)赋予了理解图像的能力,例如一些开创性工作Frozen 。我们将遵循多模态大语言模型(MLLM)架构的部分,详细阐述图像LLM的最新进展。
1) 对齐架构图像LLM
该架构将图像输入视为一个附加的扩展。视觉编码器通常是冻结的,对齐模块和LLM基于各种策略进行调整,以对齐多模态内容和指令。
a) 视觉编码器
这是一个从图像中提取关键信息的模块。常见的通用视觉编码器包括ResNet 、CLIP-ViT编码器 和 ImageBind 。ResNet和CLIP是在图像-文本模态上进行预训练的,而ImageBind则将六种模态的嵌入对齐到公共空间,使视觉编码器能够编码更丰富的信息。然而,通用视觉编码器由于其有限的预训练任务而遭受信息损失,一些工作试图为自己学习量身定制的视觉编码器。通用特征并不是为了准确的对象理解而设计的,VCoder 通过引入深度和分割控制输入来提高视觉编码器的准确对象感知。与为LLM量身定制的词token相比,CLIP特征缺乏词汇语义,SPAE 和 V2T Tokenizer 在自编码器内将图像编码为由LLM代码本引导的词汇token,有助于提取语义概念和外观细节。
b) 对齐模块
该模块,也称为投影器、适配器等,旨在缩小图像特征和词汇token之间的差距,并进一步融合这两种模态。LLaVA 采用简单但有效的线性投影将图像特征转换为词token嵌入空间,然后连接图像token和词token。这种对齐仅涉及图像变换,限制了与文本的交互,并且在视觉token数量上不够灵活。Resampler 技术将不同大小的特征映射到固定数量的token。BLIP-2 、MiniGPT-4 和 Qwen-vl 在进行线性投影之前采用 Q-Former 以减少token数量。Q-Former结合了文本语义,并通过可学习的查询建模图像特征与文本输入之间的交互,从而增强对LLM最有用的视觉内容。然而,尽管序列长度更短,这些投影器在局部性保持上受损。Honeybee 提出了一个增强局部性的投影器,包含C-抽象器和D-抽象器,以增强空间理解,同时保持token的灵活性。此外,对齐模块的效率至关重要。TokenPacker 采用粗到细的方案进一步促进效率,同时保持更细致的细节。上述讨论了视觉token的变换,而在大多数工作中,视觉token直接与词token连接,LLM架构没有修改。一些工作采用逐步注入图像内容到LLM架构中以增强对齐。Flamingo 在语言模型(LM)块之间插入门控XATTN-DENSE层。ImageBind-LLM 在每个LLM层中将门控图像特征添加到词token中。LLaMA-Adapter 在适配器中添加视觉投影,并采用零初始化注意力在最后L层中融合视觉适配器和词token。
2) 早期融合架构图像LLM
对齐架构利用了现成的LLM的优势,并需要较低的计算量,但预训练的视觉编码器可能会因有限的预训练任务与图像LLM的实际需求之间的差距而导致信息损失,并受到归纳偏见的影响,例如支持灵活的分辨率。因此,如前面图4所示,另一条研究路线旨在从零开始训练一个多模态LLM,其中图像和文本单词都转换为一系列token。
开创性工作Fuyu 在图像补丁的空间顺序上采用线性投影,并训练一个transformer解码器,以视觉和词token序列作为输入。尽管性能有限,但它揭示了一种新的技术趋势。谷歌跟随这一趋势,其Gemini 从一开始就处理交错的图像和其他模态。Chameleon 训练了一个图像分词器,将512x512的图像编码为来自大小为8192的代码本的1024个离散token,并为两种模态训练了BPE分词器 。最近的Show-o 统一了多模态的理解和生成。它在大约3500万图像数据上训练了一个无查找分词器,维护了大小为8192的代码本,并将256×256分辨率的图像编码为16×16的离散token。早期融合架构需要更多的计算,并且更难收敛,为未来的探索留下了挑战。
3) 图像LLM中的挑战
(a) 其中一个挑战是对细粒度视觉概念的理解。更多的token有助于编码更详细的信息,但可能导致冗余计算。Chat-UniVi 提出了动态视觉token,以在重要细节上分配更多计算。细粒度理解的一个重要部分是对象概念的空间意识。AnyRef 应用RoIAlign编码区域,并设计分割编码器-解码器从图像LLM的token输出中学习分割,这与OMG-LLaVA 类似,后者在投影之前生成以像素和对象为中心的视觉token,并通过OMG-Seg从LLM的输出解码分割token。与分割监督不同,VisionLLM 和Virtron 使用文本监督,例如通过灵活的指令调优进行边界和多边形描述。细粒度建模为LLM提供了一些解释。
(b) 与LLM类似,另一个挑战来自幻觉。幻觉涉及对象、属性和关系方面的错误,表现为判断或描述的错误 。一些工作[54], [55]尝试减少训练数据中的偏见,而一些则通过改善模型特性(如视觉编码器或融合机制)来减轻幻觉。人类反馈在减少幻觉方面也发挥了重要作用。
D. 视频大语言模型
继图像LLM成功之后,研究人员开始探索视频LLM的训练 。通常,视频被视为图像帧的序列(一些视频LLM结合了音频或语音等其他模态),因此视频LLM与图像LLM相比具有更高的计算复杂性。收集高质量视频数据集的挑战进一步复杂化了训练过程,使早期融合架构计算量极大。因此,几乎所有现有的视频LLM都采用对齐架构。
1) 对齐架构视频LLM
视频LLM的架构与图像LLM的对齐架构相似。通过采样固定数量的帧或使用固定的每秒帧数(FPS)率,视频被减少为有限的图像集合。然后,使用视觉编码器提取每个图像的视觉嵌入。这些特征按帧的顺序依次连接,并通过对齐模块与LLM连接。在早期的工作中,VideoChat 利用Q-former结构作为对齐模块,而VideoLLaMA 引入了音频编码器和音频Q-former来处理音频信号。Video-ChatGPT 则采用不同的方法,在使用线性层作为对齐模块之前,沿空间和时间维度平均池化每帧的补丁嵌入。
训练视频LLM的策略也遵循“对齐然后指令调优”的方法。虽然收集了额外的GPT标注或人类标注的视频数据集,但也可以通过将图像视为单帧视频来利用图像数据集。
最近的成功努力集中在通过改进对齐模块和扩大模型及数据集规模来提高性能。例如,VideoLLaMA2 改进了对齐模块,以建模时间和空间维度之间的连接。它还收集了用于图像描述、分类和问答等任务的数据集。LLaVA-NeXT-Video 和LLaVA-OneVision 引入了AnyRes技术 ,该技术作为一种灵活的视觉表示框架,适用于多图像和视频表示。此外,一些视频LLM,如MiniCPM-V 和VILA-1.5 ,也支持多图像和视频输入,展示了在各种基准上的强大表现。
2) 视频大语言模型的挑战与局限性
与图像大语言模型(Image LLMs)相比,视频大语言模型(Video LLMs)面临两个独特的挑战:
细粒度视频理解:这涉及对视频片段及其之间关系的理解。视频 LLM 需要准确捕捉场景的细微差别,以及这些场景在时间上的相互作用。
处理长视频:传统的视频 LLM 在分析长格式内容(如电影)时,由于大语言模型(LLMs)固有的上下文长度限制,面临挑战。这种限制需要开发更高效的处理技术,以便全面理解和参与更长视频叙事。
片段级视频理解
VTimeLLM:该模型将时间视频定位和密集视频字幕任务转化为序列到序列格式。它结合了边界感知训练,利用大规模的视频-文本数据集,增强对事件边界和时间戳的识别能力。在指令调优过程中,它还采用时间推理数据以提高理解能力。
TimeChat:此方法通过 Q-former 将时间戳信息直接注入帧嵌入,并收集更多与片段理解相关的数据集,以改善指令调优。
无训练方法:一些策略不涉及传统训练,而是对单个采样帧进行字幕生成,将每帧的时间戳和字幕通过精心设计的提示输入到 LLM 中,从而使模型能够利用其推理能力更好地理解片段。
长格式视频处理
输入限制:传统的视频 LLM 在最大上下文长度方面面临挑战。例如,BLIP-2 中的 Q-former 将图像编码为 32 个tokens;采样 256 帧则生成 8,000 个tokens,这通常超出了大多数 LLM 的上下文容量。这种情况通常表示以 1 FPS 的采样率,不到五分钟的视频,突显了处理较长格式所需的更高效的表示。
记忆整合机制:MovieChat 引入了一种机制,当达到token限制时合并相似的图像token,从而有效管理大量数据的表示。
更大的上下文长度:LWM 和 LongVA 等模型使用设计为更大上下文长度的 LLM,并结合更高效的注意力机制,以促进长视频输入的处理。
token减少技术:一些方法旨在减少每帧的token数量,平均只用 1 或 2 个token来表示每帧,从而降低整体计算负担。
文本语料库转换:其他方法通过图像字幕生成将长格式视频转换为文本语料库,使 LLM 能作为代理在该文本语料库中搜索特定信息。
当前方法论的局限性
尽管有所进展,几乎所有现有的视频 LLM 都依赖于通过图像编码器对采样帧进行单独编码。这种做法通常更受欢迎,因为:
较低的计算需求:图像编码器的资源消耗低于视频编码器。 更好的对齐:它们与文本数据对齐效果更佳。 简化的统一性:便于与图像 LLM 的整合。
然而,这种采样方法存在重大缺陷。采样过程可能导致采样帧之间信息的完全丧失,这阻碍了模型捕捉连续运动和物体轨迹的能力。这种信息的丧失对理解视频中的动态场景和活动至关重要。
在讨论完视频 LLM 的复杂性和局限性后,我们将转向多模态生成 AI 的另一个关键领域:用于视觉生成的多模态扩散模型。
III. 多模态扩散生成
在本节中,在讨论扩散模型之前,我们首先介绍一些基础知识,包括以前的生成模型,如生成对抗网络(GANs)和变分自编码器(VAEs),然后介绍扩散概率建模,并在下图 5 中展示它们的整体框架。之后,我们将介绍广泛采用的隐空间扩散模型,并讨论一些先进的扩散文本到图像模型和文本到视频模型。
A. 基础知识
生成对抗网络:生成对抗网络(GAN)是最早用于生成视觉内容(如图像和视频)的神经网络架构之一。
GAN 的主要思想基于两个网络:生成器 G 和判别器 D。具体而言,G 试图从噪声 z 中生成视觉内容,而 D 被训练来区分真实的视觉内容 x 和生成的结果G(z)。通常,这两个网络是相互对抗训练的。整个训练过程是一个最小-最大博弈,我们期望生成器能够生成尽可能让判别器难以分辨的结果。这两个网络是相互强化的,因此训练目标如下:
其中 从 中抽样, 通常是正态分布, 是从真实数据分布 中抽样的。生成器和判别器因任务而异,并且通常通过不同的方法得到了改进,以处理多模态数据。例如,在视频生成任务中,TGANs-C 提出了一个新的 GAN 架构,采用 3D 空间-时间卷积,并利用一个判别器来判断视频是否与文本描述匹配,而不仅仅是与真实视频匹配。IRC-GAN 引入了一种基于互信息内省的新方法,利用互信息在语义上具体评估语义一致性,从而将生成的视频与文本内容对齐。
变分自编码器:变分自编码器(VAE)是另一种典型的生成模型。与 GAN 不同,自编码器具有编码器-解码器架构,使用编码器 将视觉内容 表示为隐空间代码 ,并使用解码器 重构数据 。然而,普通的自编码器对隐空间空间没有约束,这使得它很容易过拟合数据集。为了解决这个问题,VAE 对隐空间空间进行了正则化,并从分布 中抽样 ,通常是高斯分布,其中 是编码器-解码器模型的参数。由于分布 是未知的,VAE 利用识别模型 作为变分近似 来近似 并对它们进行联合训练。训练目标是
其中 表示 Kullback-Leibler 散度。 可以使用参数化技巧公式化为可微分估计器。
为了更好地生成视觉内容,基于 VAE 的许多努力, 已经取得了一定进展。Sync-DRAW 引入了一种新的架构,将 VAE 与递归注意机制结合起来,以创建独特的时间依赖帧序列。尽管 VAE 的引入取得了成功,但它们仍然面临一个重大问题,即模型忽略了隐空间空间中的信息,仅依赖强大的解码器来重构数据,这种现象被称为“后验崩溃”。为了解决这个问题,VQ-VAE 利用离散编码来学习先验,并采用向量量化方法防止隐空间变量变得没有信息利用 GAN 和 VAE 的优势。它引入了一个 VAE 模型来捕捉静态信息,例如背景颜色或物体的布局,并利用 GAN 模型根据捕获的信息和文本输入获得动态运动信息。
与 GAN 和 VAE 相比,一类新的生成模型——扩散模型已在许多任务中占据主导地位,例如文本到图像生成或文本到视频生成。
扩散概率建模: 我们将从两个主流视角简要介绍扩散概率建模,即去噪扩散概率模型(DDPM)和随机微分方程(SDE)。扩散过程的核心思想是建模真实数据分布 和随机高斯分布 之间的关系。
DDPM:DDPM 包括前向过程和后向过程。在前向过程中,给定一个真实数据样本 ,它将经过一个马尔可夫过程,样本中会逐渐添加越来越多的随机高斯噪声,如下所示:
其中 是时间步, 通常较大,以便 接近高斯噪声,而 是一个控制噪声调度的参数。相反,为了从随机噪声中生成数据,DDPM 在后向过程中学习以下分布:
其中参数为 的神经网络旨在预测较少噪声的图像 。然后,利用这个去噪网络 ,我们可以逐步去噪从随机噪声 开始,直到得到一个干净的数据样本 ,这可以是图像或视频等。
SDE: SDE 描述了从 到 的轨迹,其形式为以下随机微分方程:
其中 描述了扩散过程, 表示维纳过程的漂移函数。然后,在反向过程中,我们可以使用以下方程进行去噪:
其中 是得分,而模型 将用于预测得分。
从数学上讲,SDE 和 DDPM 是等价的,代表了扩散过程的两种不同视角。在扩散模型训练过程中,通常采用以下目标:
其中 是随机采样的噪声, 是带噪声的图像, 是用于预测噪声的神经网络。直观上,当我们能够预测噪声时,我们可以通过减去噪声来预测更干净的图像,如同在 DDPM 中一样,同时我们也可以在 SDE 中预测得分。 是不同时间步的调度。
备注:GAN、VAE 和扩散模型都是生成模型。与 GAN 相比,扩散模型具有明确的概率建模。此外,扩散模型只需要训练一个去噪网络 。相比之下,GAN 需要同时训练生成器和判别器,这样的过程相对不稳定。同样,基于 VAE 的模型也需要训练编码器和解码器。此外,从数据增强的角度来看,考虑到在训练过程中我们对每个图像去噪 T 次,我们将获得每个图像的 T 个变体。这些增强图像有助于去噪网络更好地建模数据分布 ,从而产生更好的生成结果。
隐空间扩散模型: 如方程 (6) 和 (7) 所示,扩散模型的去噪过程是在每个图像的像素上以迭代方式进行的,这导致了高计算成本,特别是在生成高分辨率图像时。为了解决这个问题,隐空间扩散模型(LDM) 提出在隐空间空间中而不是像素空间中进行扩散过程。图 6 显示了像素级扩散模型与 LDM 之间的框架比较。为了降低计算成本,LDM 利用 VQGAN 的编码器将图像压缩到隐空间空间 ,该空间的维度远低于原始图像。然后,方程 (6) 和 (7) 中的扩散过程将在隐空间空间中进行。此外,方程 (10) 中的训练目标也适用于隐空间代码 而不是图像 ,如下所示:
请注意,去噪网络还有一个额外的输入 ,用于条件生成,例如在文本到图像生成任务中, 可以是文本提示的表示。此外, 还可以是其他条件,如布局–、语义图或图像到图像翻译任务。由于大部分计算,包括训练和迭代推理,都是在低维隐空间空间中进行的,因此 LDM 模型表现出高效率。因此,大多数文本到图像和文本到视频模型采用 LDM 结构。
B. 文本到图像生成
文本到图像扩散模型:如前文所述,扩散模型大致可分为两大类:基于像素的和基于隐空间的。在早期发展阶段,去噪过程通常直接应用于像素空间。例如,GLIDE 是一项开创性的工作,通过文本指导生成照片级真实感图像,使用一个 35 亿参数的扩散模型,该模型使用文本编码器对自然语言描述进行条件化。GLIDE 还探索了在扩散模型中使用 CLIP 指导和无分类器指导,发现无分类器指导能产生更高质量的图像。此外,Imagen 跟随 GLIDE,并为其基于像素的扩散模型采用无分类器指导。这两者之间的关键区别在于,GLIDE 将文本编码器和扩散模型与文本-图像对一起训练,而 Imagen 利用预训练的、固定的大型transformer语言模型,利用其强大的文本理解能力来增强样本的保真度和图像-文本对齐。
然而,直接在像素空间中操作需要大量计算资源,这导致了基于隐空间的扩散模型的出现。这个领域的一个里程碑是 Stable Diffusion ,它引入了隐空间扩散模型的概念,以实现复杂性降低与细节保留之间的近乎最佳平衡。它结合了一个预训练的 VQGAN,将图像从像素空间压缩到语义隐空间空间。与基于像素的扩散方法相比,Stable Diffusion 不仅在多个图像生成任务中取得了竞争性表现,而且显著降低了训练和推理成本。另一个显著的隐空间模型示例是 DALL-E2 ,它结合了 CLIP 模型和扩散模型,以实现零-shot 文本指导的图像生成。DALL-E2 由 CLIP 图像编码器和反转编码器的扩散解码器组成,从而允许显式生成图像表示。这种方法提高了图像多样性,同时保持了照片级真实感和说明文本的相似性。
GLIDE 、Imagen 、Stable Diffusion 和 DALL-E2 都是代表文本到图像生成领域不同技术路径的开创性工作。尽管它们之间存在差异,但在其发展中出现了一些共同趋势。首先,由于在节省计算资源和生成高质量图像方面的优势,基于隐空间的扩散方法越来越普遍。其次,与分类器指导 相比,无分类器指导 在这些工作中被广泛采用,其中在训练期间,以固定概率将类别条件扩散模型中的标签替换为 null 标签。第三,U-Net 传统上作为扩散模型的主干,促进了高质量图像的去噪和逐步生成。
尽管 U-Net 在高分辨率图像生成方面具有优势,但其特定结构(如 ResBlocks 和卷积操作)限制了其可扩展性。相反,Transformers 更适合处理大规模数据和任务,正逐渐成为 U-Net 的有力竞争者。扩散transformer (Diffusion Transformer, DiT) 代表了一类扩散模型,它用transformer主干替代了常用的 U-Net 主干,如下图 7 所示。这种方法得到了实证研究的支持,表明 U-Net 的归纳偏差对扩散模型的性能并不是至关重要的。此外,利用transformer主干使扩散模型能够利用transformer的最佳实践,如架构设计和训练范式,以及其良好的特性,如可扩展性、鲁棒性和效率。具体来说,DiT 遵循隐空间扩散模型 (LDM) 框架的基础,并通过引入综合的 DiT 设计空间来模拟视觉transformer (ViT) 的设计,包括补丁大小、transformer块架构和模型大小。
DiT 的第一层称为 patchify,通过线性嵌入每个补丁将空间输入转换为tokens序列。经过 patchify 步骤后,输入tokens通过一系列transformer块进行处理,这些块包含时间和标签等条件。所提出的transformer设计包括自适应层归一化 (adaLN) 块、交叉注意力块和上下文条件块。在最后一个块之后,transformer解码器将图像tokens转换为输出预测。DiT 提供四种配置,分别是 DiT-S、DiT-B、DiT-L 和 DiT-XL,范围从 0.3 到 118.6 Gflops。基于 U-Net 的扩散模型和基于transformer的扩散模型之间的区别如上面图 7 所示。
DiT 的三个不同transformer块是其核心模块,代表了与多模态信息(包括图像、时间步和条件)交互的不同方式。它们的设计受到标准 ViT 块设计的启发,但加入了一些小而重要的修改。如下图 8 所示,这些块在图像隐空间特征与条件信息的交互方式上存在差异。adaLN 块遵循 GAN 中的自适应归一化层,替换了transformer块中的标准归一化层。该块中的缩放和偏移参数由时间步和条件的嵌入向量之和决定。此块对模型的 Gflops 增加最少。交叉注意力块引入了额外的多头交叉注意力层,作为图像隐空间特征与时间步和条件之间的交互模块。此块对模型的 Gflops 增加最多。上下文条件块以与图像tokens相同的方式处理来自时间步和条件的tokens,将它们沿序列维度连接。此块对模型的 Gflops 增加适中。
在DiT 的发展之后,越来越多的研究探索了扩散transformer的变体,以提高性能。例如,CrossDiT 结合了adaLN-zero DiT块和交叉注意力DiT块。它通过移除标签条件,仅使用时间条件进行缩放和位移控制,简化了adaLN-zero层为adaLN-single层。它将来自T5 的文本嵌入集成到多头交叉注意力层中。另一个显著的变体是MM-DiT ,它整合了adaLN-zero DiT块和上下文条件DiT块。该模型使用来自CLIP的文本嵌入和时间戳来对网络进行条件化,为图像和条件模态采用两个独立的权重集,并在注意力操作中连接图像和条件。实证实验表明,CrossDiT和MM-DiT在验证损失、CLIP评分和FID方面均优于原始的DiT。扩散transformer变体的设计彼此不同,但基本上源自DiT提出的三个核心架构:adaLN-zero块、交叉注意力块和上下文条件块。目前,结合了adaLN-zero块和上下文条件的MM-DiT代表了最先进的架构。它的优势在于在扩散过程中以上下文方式迭代训练文本模态,而不是保持其不变,从而产生更丰富的语义空间。
2)基于扩散模型的可控生成:尽管扩散模型在生成逼真的图像方面取得了成功,但这种文本到图像的技术未能完全满足日益增长和多样化的用户需求,例如细粒度控制或特定定制。例如,仅根据名称和身体描述创建普通个体的肖像超出了当前文本到图像扩散模型的能力。因此,持续的努力正在改进扩散模型,以允许通过超出文本的额外条件实现更精确的控制。与原始基于文本的图像生成相比,可控生成涉及引入额外条件,而不妨碍原始文本条件。从控制机制的角度来看,相关方法可以分为三类:基于模型的方法、基于调优的方法和无训练的方法 ,如下图9所示。基于模型的方法结合额外的模型来编码额外条件,并将其集成到扩散过程中。例如,InstantBooth 使用补丁编码器和概念编码器来编码个性化样本图像,并在U-Net中加入适配层以实现条件交互。这些额外的模型(包括编码器和适配器)是可训练的,而模型的其他组件保持不变。基于调优的方法不需要额外模型,而是对原始扩散模型的某些部分进行微调以适应特定条件。例如,Textual Inversion 对文本编码器进行微调,而Dreambooth 对U-Net进行微调。在这些基于调优的方法中,通常采用参数高效微调(PEFT)技术来替代传统微调,从而减少计算资源。无训练的方法消除了任何训练或微调过程的需要,而是利用U-Net结构的内在能力,如注意力,来控制生成。例如,StyleAligned 通过在扩散过程中使用最小的“注意力共享”,实现了一致的风格生成,其中所有图像与参考图像共享自注意力。
这三种方法各有其优缺点。基于模型的方法引入了额外模型并需要调优过程,通常消耗最多的计算资源。然而,一旦编码器和适配器完全训练好,它们可以轻松适应不同条件。基于调优的方法通过不引入额外模型节省计算资源,但它们限于每次微调适应一个特定条件。无训练的方法不需要任何额外模型或微调时间,但它们仅限于控制有限范围的条件,例如布局或风格。可控生成涉及定制图像的各个方面,例如主题、布局和风格 。其中,主要的控制条件是图像的主题,称为主题驱动生成 、、、。例如,当用户用短语“狗在沙滩上奔跑”来描述图像时,狗可能不是一个任意的狗,而是一只特定的、熟悉的狗。为了实现这一点,提供了狗的样本图像作为额外条件,并为描述分配一个不常见的词,例如“[V]”、“sks”或“S*”,以表示特定主题。一个相关但更专业的领域是基于人驱动的生成 –,它专注于维持一致的人类身份,描绘具有不同表情、姿势和动作的人。与主题驱动生成相比,布局和风格驱动生成则关注图像的整体构成。布局条件 – 控制不同主题和背景的相对位置,而风格条件 、、 则决定图像的艺术风格,例如油画、黑白或线条艺术。此外,正在探索其他新颖条件,如声音、大脑信号和语义图,以控制文本到图像的生成,为影响图像的情绪和感知提供新的微妙方式。
除了处理特定条件之外,许多研究探索了涉及多个条件的复杂控制。例如,生成多个自定义主题执行用户定义的操作尤其具有挑战性,因为模型可能会混淆或忘记指定的条件。因此,多个条件控制涉及的不仅仅是简单地组合各种特定条件;它需要以良好的设计方式促进它们之间的交互。现有的使用多个条件控制生成的方法可以分为以下几类。联合训练方法 、– 依赖多条件编码器和专门的训练策略,同时管理多样条件。持续学习方法 – 结合来自持续学习领域的策略,有效处理逐步出现的条件。权重融合方法 、– 为所有条件分配权重,并将这些权重融合,以确保对所有条件的全面控制。基于注意力的集成方法 、 修改注意力图,以自适应地定位和优先考虑不同条件。指导组合方法 – 将每个条件的独立去噪结果集成以实现统一输出。
C. 文本到视频生成
1) 文本到视频扩散模型
由于扩散模型在文本到图像任务中的成功,许多研究者开始将时间信息引入扩散模型,并利用生成高质量图像的能力来构建文本到视频模型。
利用文本到图像模型的最直观方法是修改自注意力机制,这样可以在不增加任何额外参数的情况下获得文本到视频模型。Text2Video-Zero 是最早的工作之一。Text2Video-Zero 并不是独立随机初始化所有帧的隐空间表示,而是仅对第一帧的隐空间代码 进行采样,然后应用 的 DDIM 向后步骤来获取 。之后,Text2Video-Zero 确定全局场景和相机运动方向,提出了一个变形函数 从 到 获取所有F帧,然后执行 DDPM 向前步骤以获取初始隐空间表示。为了保持不同帧之间的一致性,Text2Video-Zero 提出了跨帧注意力机制,该机制使用第一帧的键和值来生成图像。Latent-Shift 也是另一种代表性方法。它提出了一种新颖的 Temporal-Shift 模块,该模块沿通道维度拆分隐空间表示,并沿时间维度移动拆分的通道,以保持所有帧之间的一致性。这些方法充分利用了强大的预训练文本到图像模型,可以生成比传统 GAN 和 VAE 文本到视频方法更高分辨率和质量的视频。然而,这些方法更多的是从人类的角度提供一种利用时间信息的专家知识,而不是捕捉、训练和理解时间信息。因此,这些方法在生成效率上有很高的优势,但生成的视频在运动平滑性、动态程度和视频一致性方面仍然存在困难。
为了解决这些问题,另一类方法不仅继承了 T2I 模型的架构,还努力引入新模块或修改原始结构以学习时间信息。VDM 是最早将 T2I 模型转移到 T2V 任务的工作之一。VDM 提出了一个 3D U-Net,通过将每个 2D 空间卷积层更改为 3D 卷积来修改扩散架构。之后,对于每个空间注意力块,VDM 插入一个时间注意力块,该块对所有帧执行注意力操作,并使用相对位置嵌入来区分帧的顺序。Make-a-video 提出了一个伪 3D 卷积和注意力层,该层由空间 2D 卷积层和时间 1D 卷积层组成。与 3D 卷积相比,这种方法更高效,同时促进了空间和时间轴之间的信息共享。为了更灵活地应用 T2I 模型的能力,如 LoRA 带来的定制和风格迁移能力,AnimateDiff 保持原始架构,仅在每个预训练层后插入一个运动模块。运动模块由输入投影层、多个时间自注意力层和输出投影层组成。为了避免损害 T2I 模型的原始能力,AnimateDiff 将输出投影层零初始化。
由于基于注意力的架构更适合捕捉长程上下文关系,一些方法采用基于 DiT 的模型生成视频。Latte 使用视频transformer作为主干,采用 VAE 将视频编码为特征,用于提取token。与基于 U-Net 的方法相比,基于 DiT 的方法可以扩展到更大的数据集和参数,因此通常具有更好的性能。然而,这也意味着更高的计算资源消耗。基于 DiT 的方法通常在实现一些出色的行业应用时得到广泛采用。
目前,基于文本到图像模型已经构建了基本的文本到视频模型。然而,仍然存在两个问题。第一个问题在于,这些方法只能通过文本控制视频的生成,通常很难通过文本描述视频的所有方面需求。如何更好地控制视频的生成是一个重要问题。第二个问题在于,受限于模型参数的规模和 GPU 内存,大多数通过这些方法生成的视频范围在 16-24 帧之间,这使得很难满足现实用户对视觉内容的需求。接下来,我们将分析这两个问题,并讨论一些相关工作。
2) 可控生成与扩散模型
对于可控生成,关键挑战在于如何选择合适的条件信息以及如何充分利用这些信息。
一种直观的方法是使用现有的视频,这可以被视为视频编辑。StableVideo 首先引入一个预训练模型来分离前景和背景,并分别对其进行编辑。为了更好地保持主题的一致性,StableVideo 提出了一个帧间传播机制,该机制利用分层表示来保持不同帧之间的信息。Rerender-A-Video 提出了一个新颖的两阶段编辑方法。在第一阶段,Rerender-A-Video 确定参考视频的关键帧,并根据给定的提示对其进行编辑。为了确保有效性,Rerender-A-Video 引入了一个具有层次交叉帧约束的预训练图像扩散模型。第二阶段利用编辑过的关键帧通过时间感知的补丁匹配和帧混合进行整体视频编辑。FateZero 在反演过程中充分利用了注意力图提供的信息。一方面,他们从原始视频中封装了丰富的布局和运动信息。另一方面,通过交叉注意力图,可以推导出新颖的混合掩码。这些掩码指示了影响需要编辑的主题的信息,从而在编辑主题时最小化语义损失。
可以发现,这些方法通常利用参考视频的两个方面。一方面是视频的整体布局信息,包括物体的位置、运动轨迹等。另一方面是需要编辑的主题的属性,经过适当的提取和调整。这也暗示着视频中的所有信息并不在特定情况下都是有效的,例如物体的颜色或形状,这在我们意图编辑时常常会被证明是干扰性的。考虑到这些因素,某些方法最初涉及通过辅助网络预提取条件信息,然后将这些预处理的信息输入生成模型,以期改善视频生成的可控性。
受文本到图像任务中可控生成方法的启发,ControlNet 被引入到文本到视频生成中。它利用从视频每帧提取的信息,如骨架、深度图和光流,生成满足提供文本提示的视频。Control-A-Video 利用 ControlNet 通过不同类型的条件信息控制生成过程。此外,为了提高一致性,Control-A-Video 提出了新颖的基于残差的噪声初始化策略,在扩散过程中引入运动先验。VideoControlNet 提出了一个运动引导的方法,该方法使用辅助模型预测关键帧之间的光流。在生成关键帧后,VideoControlNet 利用运动引导的 B 帧插值模块生成其余帧。与前述方法相比,SparseCtrl 考虑到使用噪声隐空间表示作为传统 ControlNet 输入时可能导致的质量下降。因此,SparseCtrl 提出了一个新颖的稀疏条件编码器,生成稀疏掩码,消除噪声样本输入,仅接受条件信息。其他方法则将条件信息类比为嵌入,并采用注意力机制实现可控生成。Follow-Your-Pose 提出了一个两阶段训练策略。在第一阶段,Follow-Your-Pose 训练一个姿势编码器,将关键点的帧转换为特定的嵌入。第二阶段引入时间自注意力和交叉帧自注意力以保持一致性。在推理过程中,Follow-Your-Pose 混合姿势的嵌入和隐空间表示,通过关键点控制视频生成。
然而,无论是直接利用视频作为控制条件,还是从中提取关键的信息,前述方法都在很大程度上依赖于参考视频的固有结构与所需生成视频之间高度一致。这一限制在可控视频生成中约束了多样性,除非我们拥有一个无限的视频库以及极其强大的视频检索方法,以满足用户的各种奇思妙想。因此,其他工作也探索了使用更简单、更容易获取的控制条件,以对视频的特定方面施加更细致的控制。
一些方法试图通过模拟人们在现实生活中拍摄电影的方式来控制视频,例如控制布局、调整摄像机视角和设置“演员”。与之前的控制方法相比,这些方法的主要优势在于其条件信息的简单性,如一系列边界框、具有方向的视角或物体的图像。同时,它们可以有效地表示视频的一组特定重要属性。这消除了在生成视频之前需要在查找合适的参考视频上投入大量精力的需求。用户可以通过自己的理解获得控制信息,无论是通过拖放的图形用户界面还是其他多种方法。这不仅确保了可控性,还显著增强了视频生成的多样性。
接下来,我们将简要介绍这些方法中的几项工作。LVD 分析用户提供的提示中的隐空间布局信息,通过大语言模型(LLM)将其转换为帧级动态场景布局(DSL)信息,这可以视为一系列边界框。为了使用这些 DSL 信息生成符合所需布局的视频,LVD 引入了一个 DSL 引导的视频生成器。它设计了一个能量函数来评估生成物体与所需边界框之间的重叠程度,并通过最小化能量函数和反向传播的方式影响去噪过程中的物体位置。CameraCtrl 提出了一个新颖的即插即用模块,可以控制文本到视频生成的摄像机轨迹。它训练了一个摄像机编码器,可以输出多尺度摄像机表示,然后利用 U-Net 的时间注意力层来控制视频生成过程。DisenStudio 解决了现实世界中自定义多主体文本到视频生成的挑战,其中每个主体只有少量的参考图像。它提出了一种解耦空间控制的方法,将每个主体与所需的动作关联。此外,DisenStudio 还提出了一种新颖的多主体共现调优和掩膜单主体调优的方法,以保持给定主体的视觉属性,以及一种多主体运动保持调优的方法,以保持时间运动生成能力。Kaleido 通过将不同的控制条件编码为token,集成这些条件信息,从而实现更灵活的多条件可控生成。然而,使用超越文本的控制条件不可避免地会导致多个条件之间的隐空间冲突,导致生成视频的质量下降。这个问题可能成为未来的一项挑战性方向。
长视频生成:扩散模型面临的另一个挑战是生成较长的视频。一些方法利用前面提到的可控生成方法,将整个视频拆分为几个较小的视频块,并以自回归的方式生成它们。通常,它们使用前一块的最终帧作为参考,生成下一块,以确保块之间重叠部分的一致性和平滑性。除了使用额外模块全面控制块之间重叠帧之外,FreeNoise通过对不同块之间重叠帧的隐空间特征进行特定操作来实现长视频的生成。FreeNoise不再为所有帧初始化噪声,而是重新排列噪声序列以实现长距离的相关性,并通过基于窗口的融合应用时间注意力。这类方法的局限性在于,随着视频的延长,它往往会遭遇概念漂移。此外,它通常无法生成新背景或具有高动态程度的视频。
生成较长视频的另一种方法是依赖更大的数据集和模型参数。早期的工作预训练基于 U-Net 的扩散模型,能够生成仅 1 秒或 2 秒的视频。最近,通过扩展用于视频生成的 DiT 架构,一些工作可以生成长达 1 分钟的视频,并且具有高分辨率和平滑度。尽管它们取得了成功,但由于计算限制,生成视频的长度不能任意延长。生成更长视频的一种可能方法是训练一个多模态视频生成模型,该模型可以接收先前视频的最后一帧或最后几帧作为输入,同时也接收文本提示作为输入,以生成下一段视频片段。
IV. 统一框架
到目前为止,我们讨论了多模态大语言模型和多模态扩散模型,其中前者在多模态理解方面表现良好,后者在视觉生成方面展现了强大的能力。那么,自然会产生一个问题:我们能否有一个统一的模型,能够同时在多模态理解和生成方面表现出色?接下来,我们将从以下两个方面讨论这一热门问题:(i) 概率建模方法,(ii) 模型架构。
A. 概率建模:自回归模型还是扩散模型?
多模态大语言模型的成功清楚地展示了自回归建模在多模态理解和文本生成中的巨大威力,因此我们认为自回归方法应被纳入考虑。接下来的问题是我们如何使模型具备视觉生成能力。基于第 II 节和第 III 节中的现有工作,我们提供了可能的方法(见下图 10),其中展示了自回归模型以及联合自回归和扩散模型。接下来,我们将详细阐述它们。
自回归模型:尽管扩散模型在视觉生成中已成为主流,但最近仍有一些尝试以自回归方式生成视觉内容。这些工作首先尝试分别将输入图像和文本映射为离散tokens。具体而言,图像通过视觉编码器(如 VQGAN 或 VQ-VAE)进行离散化。然后,将混合的文本和视觉tokens输入到一个多模态自回归模型中。之后,模型将输出混合的文本和视觉tokens。此外,还使用了一些特殊tokens,如 <soi>
(图像tokens开始)和<eoi>
(图像tokens结束),来指示图像tokens的开始和结束。生成的文本tokens将传达模型如何理解输入的多模态信息,而视觉tokens则将发送到 VQ-VAE 或 VQGAN 的解码器以重建图像。因此,自回归模型可以用于理解和视觉生成。
备注:尽管做出了这些努力,自回归方法仍面临两个重要问题。一是它依赖于视觉编码器的能力,该能力需要将所有视觉信息简洁地压缩。目前,编码器的代码本是通过图像重建目标获得的,包含更多像素级信息而不是语义,使得在没有大量数据来训练多模态自回归模型的情况下,多模态理解变得更加困难。此外,离散tokens不可避免地会丢失一些视觉信息,这可能导致在一些细粒度理解任务或视觉生成任务中失败。另一个问题是,自回归方式基本上意味着因果结构和因果注意力,其中我们使用前面的tokens来预测未来的tokens。然而,这对于图像生成并不太适合,因为给定一幅图像,我们很难选择哪个视觉tokens应该放在开头,哪个视觉tokens应该放在末尾。因此,最近的一个工作尝试使用下一个尺度预测范式来生成图像,其中将低分辨率图像视为前面的tokens来预测高分辨率图像。然而,其在多模态理解和生成中的缩放能力仍未得到验证。
联合自回归和扩散模型:考虑到扩散模型在视觉生成方面的卓越能力,统一多模态理解和生成的一个更自然的方法是将自回归和扩散模型结合起来。在图 10 中,我们展示了两种可能的框架。第一个框架是我们拥有一个经过预训练的扩散模型用于视觉生成和一个多模态大语言模型(LLM)用于多模态理解。然后,我们将这两个部分连接起来,以获得一个统一的模型。关于如何连接这两个部分,许多现有工作 – 直接使用 LLM 作为控制器,而扩散模型作为视觉生成的工具,这是一种在工具学习中的常见范式。
尽管像工具学习这样的工作能够使模型具备视觉生成能力,但在遇到多模态生成条件时,它们容易遭遇生成失败。例如,当我们希望生成“一位特定女孩(用给定图像描述)和一只特定狗(用给定图像描述)在草地上玩耍”时,可用的工具仅为 SOTA 文本到图像模型。它们无法保证生成图像中出现特定的女孩和狗。实际上,还有许多条件不能仅用文本描述,而这种工具学习方法会失败。为了解决这个问题,更高级的方法是训练一个可学习的连接器 –,将扩散模型和多模态 LLM 对齐到同一空间,类似于 MLLM 中对齐模块的训练范式。对齐过程使扩散模型能够接收 LLM 输出的多模态嵌入作为条件,而不是纯文本描述,从而实现多模态生成。然而,这种范式继承了对齐架构的局限性。由于多模态 LLM 和扩散模型是分别预训练的,因此统一模型的性能将受到各自模型的限制。此外,从直观的角度来看,多模态理解和多模态生成不应是独立任务,而是可以共享知识的两个相关任务。例如,在生成一个女孩骑马的图像时,模型显然应该理解“女孩”、“马”和“骑行”等概念。因此,尽管通过连接预训练模型来获得统一的多模态生成和理解模型在资源上是友好的,但其能力受限于独立建模。
第二个可能的模型是一个统一的多模态transformer框架,如图 10 所示,在该框架中,我们不依赖两个预训练模型,而是尝试使用一个同时经过扩散和自回归正则化训练的单一模型。多模态输入处理器首先将多模态数据转换为transformer可以接收的序列。然后,多模态transformer将试图学习多模态知识,以实现理解和生成。扩散正则化用于指导视觉生成,自回归正则化用于指导文本生成。值得注意的是,这是一种类似transformer的模型,但不一定是 LLM。这是因为在使用transformer生成视觉内容时,通常采用全注意力机制。相反,LLM 采用的注意力机制是因果的和单向的。因此,可能需要设计自适应或混合的注意力机制。这种观点在最近的工作 TransFusion 和 Show-o 中得到了验证。TransFusion 和 Show-o 之间的主要区别在于扩散模型,TransFusion 采用了与当前视觉扩散模型类似的连续扩散,而 Show-o 采用了掩蔽生成建模 ,可以视为离散扩散正则化。因此,Show-o 仍依赖于用于图像生成的像素级视觉编码器,但可能会牺牲一些理解能力。此外,这两项工作是首次尝试在单一类似transformer的模型中结合自回归和扩散建模方法。关于模型架构应该是什么样子,仍然存在一些开放问题,例如多模态输入处理器或类似transformer的模型,接下来我们将讨论这些问题。
B. 模型架构
与之前只关注单一任务(即生成或理解)的多模态大语言模型(MLLM)或扩散模型相比,统一模型本身应支持多个目标。在理解方面,模型应具备概念抽象和关联推理的能力。相比之下,在视觉生成方面,除了整体概念及其关系外,像素级细节也至关重要。因此,统一模型的架构设计可能与以前的单一目标模型有所不同。接下来,我们主要讨论多模态输入处理器和多模态transformer的可能架构。
多模态输入处理器:为了处理多模态输入的文本和图像,下图 11 展示了两种可能的输入处理器。文本始终通过文本分词器进行处理。然而,视觉输入存在一些差异。在图 11 的(a)部分,我们展示了大多数现有工作采用的视觉处理器,其中使用单一视觉编码器来处理图像。考虑到视觉tokens应支持像素级视觉生成任务,现有工作 、、 通常采用单像素级(或块级)视觉tokens。像素级tokens给多模态transformer带来了挑战,要求其不仅捕捉图像块之间的关系以进行视觉生成,还需具备视觉抽象推理能力以实现理解。相对而言,图 11 的(b)部分展示了一个可能的替代多模态输入处理器。对于每个图像,我们分别使用语义编码器和像素级编码器以获得语义和像素tokens。为了执行扩散目标,使用视觉像素tokens。而在优化自回归目标时,激活视觉语义tokens;此外,这是一种更灵活的方法,可对语义和像素tokens进行自适应选择,以实现细粒度理解。我们认为这将导致有趣的研究工作。
多模态transformer:在讨论如何处理多模态输入信息后,下一个关键组件是多模态transformer,它捕获模态之间及其内部的复杂关系。如下图 12 所示,左侧是一个密集模型,其中一个统一的transformer同时用于多模态生成和理解。考虑到生成和理解可能共享一些知识,但其目标并不完全相同,因此利用多任务学习中的专家混合模型是一种自然的想法,如图中的(b)所示。图右侧的一些专家共享生成和理解的知识,例如概念及其关系,而一些专家擅长视觉生成的视觉细节,其他专家则擅长推理以实现更好的理解。
在本节中,我们讨论了多模态生成和多模态理解的统一框架,涵盖了概率建模方法和模型架构。讨论的技术也可以相互结合,从而产生更多架构,目前对统一模型设计的尝试仍然较少,我们相信以上讨论将激发未来的许多研究工作。
V. 数据集
在讨论多模态理解和生成模型后,多模态文本-图像和文本-视频数据集对于实现多模态生成 AI 同样重要 。在本节中,我们将回顾用于多模态生成 AI 训练的数据集文献。根据数据类型的不同,我们将数据集分为三类:标题、对话和推理。此外,许多多模态大模型选择收集上述类型的数据进行整合,并构建自己的数据集。因此,我们称这些数据集为集成数据集。
A. 基于标题的数据集
基于标题的数据集旨在提高多模态大语言模型(MLLM)基本的视觉和时间描述能力,并为文本到图像和文本到视频模型提供映射关系。常用的文本到图像数据集包括 SBU Captions 、MSCOCO 、概念性标题(Conceptual Captions,CC-3M) 和 LAION 。这些数据集的规模从 328K 到 50 亿不等。最近提出的 MINT-1T 包含一万亿个文本tokens和 30 亿张图像 ,是现有开源数据集的 10 倍,并且包括 PDF 和 ArXiv 论文等以前未开发的来源。文本到视频数据集包括 WebVid 、InternVid 、HD-VG-130M 、YouCook2 和 TextVR 。基于标题的数据集主要服务于以下两个方面:(i) 为生成模型的训练提供知识,以便根据输入文本嵌入生成图像或视频;(ii) 使用文本-图像数据集将图像模态与多模态大语言模型对齐,以理解视觉输入。
B. 对话数据集
对话数据集旨在增强 MLLM 在询问有关输入图像或视频时的单轮和多轮对话能力。通常,会针对图像和视频的视觉内容提出多样化的问题,包括对象类型、计数对象、对象动作、对象位置、事件时刻、事件持续时间和对象之间的相对位置。通过简单的格式重组,许多视觉问答(VQA)数据集可以直接构建为对话数据集,用于 MLLM 训练。这些数据集包括基本 VQA(VQAv2 、GQA )、基于知识的 VQA(OK-VQA 、AOK-VQA )、基于 OCR 的 VQA(OCR-VQA 、TextVQA )以及视频问答(TGIF-QA 、WebVidQA 和来自 Ego4D 的自我中心 VQA )。这些数据集不仅可以提升 MLLM 在对话中的视觉问答能力,还能帮助模型学习更多的视觉和时间知识。
C. 推理数据集
以上两种类型的数据集主要关注视觉内容本身,通常缺乏深入的推理问题。同时,推理数据集的重点在于增强多模态大语言模型(MLLM)的多样化推理能力,这通常需要通过遵循严格的逻辑进行逐步推理。这些推理类型包括空间推理(如 CLEVR)、阅读理解(VisualMRC)、时间推理(NExT-QA)以及时空推理(CLEVRER)。
D. 集成数据集
由于多模态大语言模型的强泛化能力,其训练数据不仅限于单一任务的标题、对话或推理,而是需要对简单和复杂的视觉模态任务进行综合预训练。因此,许多多模态大模型的研究通常不会使用单一的视觉任务数据集,而是从上述每个类别中选择多个数据集的子集进行整合和调整,形成同时包含图像和视频数据的指令训练数据,以适应不同的视觉模态任务。对于视觉指令微调,LLaVA 是首个利用仅文本的 GPT-4 来扩展现有边界框和标题数据集(如 MSCOCO )到多模态指令跟随数据的方法。此外,Liu 等人提出的 LLaVA-Instruct 基于 CC-3M 数据集的子集,包含 58K 次对话、23K 次详细描述和 77K 次复杂推理。随着视觉指令微调的发展,许多视频大语言模型,如 Video-LLaVA 、VideoChat2 和 VideoLLaMa2 ,也提出了利用文本-图像和文本-视频模态下的标题、对话和推理数据集的组合。
VI. 未来方向
本节从以下几个角度探讨多模态生成 AI 的挑战性和前景广阔的未来方向。
A. 视频生成与理解的统一生成 AI
在第四节中,我们主要讨论了图像生成和理解的统一生成 AI。自然而然,下一步是将此统一模型扩展到视频。在图 10 中介绍的三种架构中,可以通过连接器 以类似于用于图像的方法将 MLLM 和视频扩散模型连接起来。然而,另外两种方法面临重大挑战:由于序列长度增加而导致的计算需求增加,以及学习时空线索的难度。
例如,在自回归模型中,使用 2D 视觉tokens器单独编码各个视频帧未能捕捉到重要的时间运动信息。VideoPoet 使用 3D 视频tokens器 将 17 帧视频(持续 2.125 秒)编码为 1280 个tokens,限制了其生成更长视频的能力。VideoLaViT 通过将视频分解为关键帧和时间运动,引入了一种高效的视频表示,为每种情况训练单独的tokens器,从而显著提高了计算效率。然而,训练成本仍然过高,无法扩展到网络规模的视频数据。
同样,使用单一模型同时训练扩散和自回归正则化也面临这两项挑战,且在同一模型中建模因果注意力和时空注意力的问题尚未得到探索。我们希望未来的研究能在推进视频生成与理解的统一生成 AI 方面投入更多努力。
B. 统一生成与理解基准
尽管在研究统一生成和理解模型方面已经有一些开创性工作 ,但这些任务的评估完全是以非统一的方式分开的。例如,这些研究使用了特定的理解任务基准,如 Flickr30k 和 VQAv2 ,而对于生成任务则依赖于不同的基准,如 MSCOCO 和 GenEval 。与这种分开评估相比,统一基准提供了统一的度量标准和排名的优势,从而更全面地评估模型在两项任务上的表现。然而,设计这样的基准具有挑战性,因为它需要大量的视觉数据以及以各种形式的人类注释,包括标签、排名和自然语言描述。更重要的是,评估应该理想地反映生成和理解之间的相互促进。总之,创建统一基准的挑战主要有三方面:(i)数据集构建:视觉数据应具备代表性、多样性和丰富性,并为多项任务提供高质量的注释;(ii)排名标准:模型的排名应基于理解和生成指标的结合,确保对两种能力的平衡评估;(iii)相互促进的真实数据:基准应包含能够有效展示生成和理解相互增强的数据集或任务。尽管面临这些挑战,开发这样的基准对推动该领域发展至关重要,因此它是未来研究努力的一个有前景的领域。
C. 多模态图生成 AI
图是一种灵活的表示范式,能够建模自然发生的网络实例(如蛋白质和分子结构)以及跨多种模态的实体关系(如多模态知识图)。本节从以下两个角度讨论多模态图生成 AI 的未来方向:
利用多模态信息生成图实例:当前的多模态研究主要集中在具有规则结构的模态,如文本(序列)和图像(网格)。然而,许多现实世界中的实例在各种模态中呈现高度不规则的结构,包括蛋白质 、分子 、场景图 等。理解和生成跨这些模态的图形代表了未来研究的一个有前景的方向。例如, 探索了通过利用大语言模型的领域知识进行文本到图的生成, 通过整合图像、图和文本信息探索了文本到分子图的生成。然而,多模态图生成面临几个挑战:1)理解结构。鉴于图的高度不规则性,将其与其他模态对齐存在重大困难。2)生成结构。虽然主流方法利用自回归方法生成离散序列信息,并使用扩散模型生成连续网格信息,但图结构的复杂性可能需要替代的建模技术进行生成。
利用图关系帮助多模态生成:当前的多模态方法通常假设来自不同模态的数据是独立的,而不同模态之间可能存在强内在关系 。例如,鸟类的词汇、声音和图像之间的关系比与其他物种的关系更为紧密。利用这些多模态关联形成一个有助于理解和生成的图,代表了未来研究的一个有前景的途径。例如, 通过跨模态依赖和几何关系探索结合多种数据模态,以开发能够处理各种数据集的多模态架构,如图像密集型、知识基础和语言密集型模型;而 则通过图捕捉多种模态之间的复杂关系,以增强预训练语言模型在生成任务中的多模态上下文。该领域仍面临若干挑战:1)不同模态的特征空间是异质的,因此将它们对齐到多模态图中的统一空间面临重大挑战。2)不同模态中实例之间的连接可能是异质的,例如黑白猫的声音可能非常相似,但它们的外观差异很大,导致在多模态图中连接的相似性程度各异。3)不同模态之间可能存在显著偏差,例如,由于互联网收集的方便,文本和图像占主导地位,而其他模态(如声音和触觉)则难以收集。
尽管面临这些挑战,多模态图生成 AI 具有重要的隐空间应用。例如,从文本生成分子图可以帮助科学家通过自然语言交互快速创建和编辑具有所需性质的分子化合物,从而加速药物发现过程。此外,利用多模态图使生成 AI 系统能够引用与不同模态相关的实体,从而增强它们进行跨模态关联的能力。我们希望这些讨论能为多模态图生成 AI 的未来研究和开发努力提供一些启发。
D. 轻量级多模态生成AI的未来方向
我们从三个方面讨论轻量级多模态生成AI的未来方向。
i) 多模态生成
(以扩散模型为主导)轻量级技术面临着来自采样步骤、网络架构和任务的挑战。迭代采样过程是扩散模型的一个关键限制,带来了高计算开销,并限制了实时应用。尽管许多工作(如蒸馏 、一致性模型 和流匹配 )致力于几步(例如4步)或单步采样,但通常几步采样会导致显著的质量下降。许多需要高质量的任务(如 )仍然采用多步骤采样。因此,改进几步采样是一个重要且有前景的未来方向。此外,扩散模型的大规模网络架构也加剧了高计算成本的问题。随着模型规模的快速增加,这一问题可能更加严重。以往的方法尝试通过压缩技术(如量化 –、剪枝 、特征缓存 和神经架构搜索 )获得轻量级网络。尽管它们取得了显著成功,但它们的设计大多针对多步采样的设置,无法在几步采样中应用或表现不佳。因此,探索与采样步骤无关的压缩方法是一个重要的未来方向。此外,以往的压缩方法主要集中在基于UNet的模型上。许多文献 表示DiT 可能是更好的架构,因此,为了匹配这一进展,压缩方法需要更加重视基于DiT的架构。最后,以往的压缩方法主要关注类条件或文本到图像生成任务,但很少涉及其他流行且更昂贵的任务,如视频生成。探索这些任务的有效压缩方法应该是有意义的。
ii) 多模态理解(MLLM)
关于轻量级MLLM的研究大量存在,如视觉token压缩和高效结构(如MoE 和Mamba )。然而,传统而强大的压缩方法(如量化和剪枝)在MLLM中的应用仍然相对较少。扩散模型 和LLMs 在量化和剪枝方面获得了成功,因此我们认为探索这些方法在MLLM中的应用是一个有前景的方向。
iii) 统一框架的多模态理解与生成
最近,研究人员 开始探索多模态理解与生成的统一框架,这是一个相当新颖且引人入胜的话题。这些统一模型通常具有大量参数,因此需要进行压缩。根据以往经验,轻量级技术的研究总是滞后于模型本身的发展。为统一理解与生成模型开发有效的轻量级方法可以成为一个新的研究方向。
E. 动态环境中的多模态生成AI
本文讨论的多模态生成模型大多不与动态物理世界互动。未来,多模态生成AI应当像人类一样,能够感知多模态环境,基于感知和自身状态进行推理和规划,采取行动并自我改进。一个相关的话题是多模态具身AI ,其中使用多模态大语言模型作为控制器。然而,现有的具身AI在部署后都是参数固定的,这限制了它们在动态环境中的能力,动态环境可能会发生变化,并可能出现新概念。如果新概念超出了预训练多模态生成模型的分布,现有工作将无法采取正确的行动。因此,未来的工作需要探索自动化的方法来决定何时更新模型参数以及更新模型参数的哪些部分,例如视觉或语言模块,这正如自我导向机器学习 中所指出的。一个可能的方法是将多模态生成AI与在线云连接,当模型的错误率达到某个阈值时,模型将请求更新参数到云端。然后,云将自动收集相应的数据,并决定更新模型参数的哪些部分,然后使用一些高效的技术(如LoRA )将参数传递给模型。此外,在更新参数时,还应考虑一些持续学习 或其他优化问题。
VII. 结论
本文对多模态生成AI进行了全面的回顾。在第二和第三部分中,回顾了多模态大语言模型用于多模态理解和多模态扩散模型用于视觉生成的研究。介绍了相关技术,并讨论了不同框架的优缺点。此外,我们的论文还从概率建模方法和模型架构的角度阐述了一个前沿主题,即统一多模态理解与生成生成模型。最后,我们强调了一些有趣且具有挑战性的未来方向,希望本文能为多模态生成AI的持续进步贡献力量。
参考文献
[1] Multi-Modal Generative AI: Multi-modal LLM, Diffusion and Beyond
致谢
如果您觉得这篇文章对你有帮助或启发,请不吝点赞、在看、转发,让更多人受益。同时,欢迎给个星标⭐,以便第一时间收到我的最新推送。每一个互动都是对我最大的鼓励。让我们携手并进,共同探索未知,见证一个充满希望和伟大的未来!
技术交流
加入「AI生成未来社区」群聊,一起交流讨论,涉及 图像生成、视频生成、3D生成、具身智能等多个不同方向,备注不同方向邀请入群!可添加小助手备注方向加群!
往期推荐