VILA-U 是一个融合了视频、图像和语言理解与生成的统一基础模型。传统的视觉语言模型(VLMs)通常为视觉内容的理解与生成使用独立的模块,这可能导致不一致性和复杂性的增加。相比之下,VILA-U 采用单一的自回归下一个标记预测框架来处理这两个任务,从而无需使用像扩散模型这样的额外组件。这种方法不仅简化了模型架构,还在视觉语言理解与生成方面取得了接近最新技术水平的性能。VILA-U 的成功归因于两个主要因素:统一的视觉塔在预训练期间将离散的视觉标记与文本输入对齐,增强了视觉感知能力;此外,自回归图像生成能够在高质量数据集的支持下,达到与扩散模型相当的生成质量。这使得 VILA-U 能够在一个完全基于标记的自回归框架中实现与更复杂模型相当的表现。
近年来,大型语言模型(LLMs)在各种语言任务中展现出了卓越的能力。它们的优势特性,如指令跟随、零样本泛化和小样本上下文学习,促使研究人员将其与视觉模型结合,构建用于多模态任务的视觉语言模型(VLMs)。许多研究工作[15, 51, 45]已经投入到这一领域,并在视觉语言理解基准测试中取得了显著的性能。在这些研究中,视觉输入通过一个如 CLIP [58] 的视觉基础模型投射到 LLMs 的语义空间中,通过包含文本-图像对齐训练目标来连接两种模态。
除了视觉理解之外,将视觉和语言模态结合的另一个重要研究方向是视觉生成。文本引导的图像生成有两种流行的方法。一种方法使用扩散模型 [60],这是一种在各种生成任务中非常强大的工具。另一种方法通过向量量化(VQ)将视觉内容转换为离散的标记,然后利用自回归 Transformer 进行高质量和多样化的生成[21, 73, 33]。随着视觉理解和生成的快速进步,一个新兴趋势是将这些技术统一到一个单一的多模态框架中。 有两种主要方法可以实现这种统一。许多 VLMs [31, 41, 64, 63] 保持理解导向的框架,并将生成任务卸载到外部扩散模型上。这种分离的方式增加了基础设施设计的复杂性。现有的大规模基础模型训练管道和部署系统已经针对基于下一个标记预测的语言建模进行了高度优化。为支持扩散模型而设计一个全新的堆栈将会带来巨大的工程成本。为避免此类成本,设计一个用于图像理解和生成的单一端到端自回归框架是更为理想的。在 VLMs [48, 75] 中,已经有趋势采用 VQ 编码器将视觉输入转换为离散标记,并以与语言数据相同的下一个标记预测方式处理它们。然而,在 VLMs 中用 VQ 标记替代连续标记通常会导致下游视觉感知任务的性能显著下降。其他一些工作[52, 65]不得不进行各种架构修改,并从头开始进行多模态训练,这非常耗费计算资源。
在这项工作中,我们提出了 VILA-U,这是一种端到端的自回归框架,具有统一的下一个标记预测目标,适用于视觉和文本输入,能够在视觉语言理解和生成任务中取得竞争性的性能,而无需像扩散模型这样的外部组件。我们确定了两个关键原则,可以有效且高效地统一视觉和语言模态。(1)现有的端到端自回归 VLMs 无法在视觉理解性能上达到竞争力,因为离散 VQ 标记仅在图像重建损失上训练,未与文本输入对齐。因此,在 VQ 视觉塔预训练期间引入文本对齐对于增强感知能力至关重要。(2)如果在足够大规模的高质量数据集上进行训练,自回归图像生成可以达到与扩散模型相似的生成质量。基于这些见解,VILA-U 采用了一个统一的基础视觉塔,通过向量量化将视觉输入转换为离散标记,并使用对比学习将这些标记与文本输入对齐。VILA-U 的多模态训练利用了一个统一的下一个标记预测目标,针对视觉和文本标记在一个小规模的高质量图像-文本数据集上进行训练。
我们在常见的视觉语言任务上对 VILA-U 进行了评估,包括图像-语言理解、视频-语言理解、图像生成和视频生成。VILA-U 显著缩小了端到端自回归模型与连续标记 VLMs 在视觉理解性能上的差距,同时引入了具备竞争力的原生视觉生成能力。
大规模语言模型 (LLMs)。基于预训练大规模Transformer的大规模语言模型 (LLMs) [68] 彻底革新了自然语言处理领域。LLMs 具有巨大的模型规模和预训练数据语料库,在各种语言任务中取得了显著的性能。像LLaMA [67]、Mixtral [29] 和Vicuna [13] 等开源LLMs 的发展进一步推动了研究如何将LLMs 应用于复杂的语言任务。除了出色的零样本通用性外,LLMs 通常还在自定义数据集上进行微调,以在特定任务上获得更好的表现。指令微调 (Instruction tuning) [55, 14, 56] 也是提升LLMs 应用效果的关键步骤。在本工作中,我们采用了LLaMA-2-7B [67] 作为基础LLM。
视觉语言模型 (VLMs)。结合计算机视觉和自然语言处理技术,催生了视觉语言模型 (VLMs),特别是在LLMs 时代。研究人员在VLMs 中使用视觉基础模型,如CLIP [58]、BLIP [38] 和CoCa [74] 提取视觉特征,并将其与文本对齐,再将它们输入LLM,从而实现文本与视觉内容之间的跨模态理解。在这一进展的基础上,许多VLMs [3, 36, 51, 45] 被设计并在大量视觉-语言数据上进行训练,在视觉理解和推理任务上取得了显著性能。VLMs 分为两类:(1) 类BLIP的VLMs [4, 3, 39, 37, 16, 26] 使用交叉注意力机制融合语言和视觉信息,并可选地使用感知器 (perceiver) [28] 下采样视觉标记。(2) 类LLaVA的VLMs [50, 20, 11, 1, 80, 72, 5, 2, 12, 49, 45, 79] 将视觉输入转换为标记(patches),通过ViTs 进行处理,ViTs的输出经过MLP层后对齐至语言空间。在本工作中,我们旨在开发一个具备与先前工作相当的视觉理解能力,同时具备视觉生成能力的新型VLM。
统一视觉语言模型。已经有众多研究致力于开发能够同时生成文本和视觉内容(包括图像和视频)的统一视觉语言模型。生成视觉内容的两种主流方法是:(1) 许多工作 [64, 63, 31, 30, 41] 将VLMs 与扩散模型(如Stable Diffusion [60])结合,以实现高质量的图像生成。(2) 其他工作 [48, 75, 52, 65, 70] 采用基于VQGAN的视觉编码器,将视觉输入转换为离散标记,并使LLMs 学会预测这些标记。在本工作中,我们基于自回归的下一个标记预测方法来设计框架,以便有效高效地让我们的VLM 学习生成视觉内容。 3. 方法
本工作提出了一个多模态框架,旨在高效地统一视觉和语言模态。实现这种统一的关键组件包括一个统一的基础视觉塔,它将视觉输入转换为与文本对齐的离散标记,以及一个统一的多模态生成训练过程。图1展示了我们框架中的主要多模态训练和推理流程概览。
为了支持多样化的视觉理解和生成任务,我们首先构建了一个统一的基础视觉塔,以提供适当的视觉特征。我们在视觉塔的训练中引入了文本-图像对比损失和基于VQ的图像重建损失,从而增强了视觉塔的文本对齐和离散标记化能力。如图2所示,从图像中提取的特征主要通过残差量化进行离散化。接着,在一条路径中,离散化的视觉特征被输入解码器以重建图像,并计算重建损失;在另一条路径中,我们计算离散视觉特征与文本编码器提供的文本特征之间的图像-文本对比损失。通过这种训练过程,视觉塔学习如何提取适用于我们视觉语言模型(VLM)的理解和生成的离散特征。 统一训练方案。对比损失和重建损失的简单组合不能很好地收敛,这是因为对齐任务和重建任务分别需要高层语义特征和低层外观特征。直接从头训练整个视觉塔以同时实现这两个目标可能会产生冲突的目标。在实践中,我们观察到,在同时训练图像重建和对比损失的情况下,经过几个epoch的训练后,在ImageNet [17]上的零样本图像分类Top-1准确率仅为5%。为了解决这个问题,我们尝试了不同的训练方案,发现以下方案最有效:我们首先让模型具备图像-文本对齐能力,然后在保持对齐能力的同时学习重建能力。我们使用CLIP模型的预训练权重来初始化视觉编码器和文本编码器,以确保良好的图像-文本对齐。接下来,我们冻结文本编码器,并保持所有视觉组件可训练,使用对比损失和重建损失。这种训练方法收敛速度快,性能强劲。预训练的CLIP权重包含了已经学习的高层先验知识,这些知识从头开始学习非常困难且计算开销巨大。通过使用这些权重初始化,视觉编码器能够更快、更稳妥地绑定低层和高层特征。通过这个训练方案,我们可以有效训练出一个具备良好文本对齐和图像重建能力的视觉塔。我们使用加权和来组合文本-图像对比损失和基于VQ的图像重建损失:
讨论:失败的训练方案。我们尝试了许多训练方案,发现都没有我们的最终方法有效。我们列出了四个替代方案,并讨论了它们与最终方案相比的不足之处:(1) 仅加载CLIP预训练权重到文本编码器;(2) 加载预训练的RQ-VAE权重到视觉编码器和解码器,同时从头训练其他部分;(3) 冻结视觉编码器;(4) 使文本编码器可训练。
方案1和2失败的原因是视觉编码器没有加载CLIP预训练权重。通常,从头训练一个CLIP模型需要大量GPU天数和大的全局批量(例如,32k)。然而,基于VQ的重建训练需要相对较小的全局批量(例如,512)以保持稳定的改进。使用如此小的批量训练一个从头开始的文本对齐视觉塔将会非常耗时且资源密集。方案3失败的原因是冻结视觉编码器会阻止它学习重建所需的低层特征,这种情况下,重建的负担完全落在视觉解码器上,但仅使用语义特征是不可能很好地重建图像的。方案4失败的原因是在初始训练阶段,量化的特征是混乱的,对比损失扰乱了文本编码器的权重,减缓了整个训练过程。
相比之下,我们的最终训练方案利用了视觉编码器的预训练CLIP权重,使其保持已学习的语义特征,而不是从头开始学习。这使得我们能够在保持视觉编码器可训练的同时,使用较小的批量训练,促进在训练过程中学习用于重建的低层特征。
残差矢量量化。我们的视觉特征是离散量化的,因此它们的表示能力很大程度上取决于我们量化器中使用的码本大小。由于我们希望它们包含高层和低层特征,因此在矢量特征空间中需要更多的容量,这就需要更大的码本大小来保证下游任务的良好性能。然而,过多的每个图像的码本会导致LLM在视觉生成过程中生成过多的标记,导致延迟增加。因此,为了增加矢量特征容量,同时保持合理的标记数量,我们采用了基于RQ-VAE [33] 的残差矢量量化方法来将矢量zzz 离散化为DDD 个离散码:
直观上,在每个深度上我们选择一个码来减少量化误差。与标准矢量量化方法相比,我们使用DDD 个码来量化一个矢量,允许更精细的近似和更大的特征空间。在多模态训练和推理过程中,LLM 只需要预测码嵌入,不同深度的码由深度 Transformer 依次生成,初始输入是码嵌入,正如我们将在3.2节中介绍的。因此,通过这种残差量化,我们能够增强视觉塔的表示能力,同时几乎不增加延迟。
图1展示了我们统一的多模态预训练过程概览。我们的视觉塔编码器按顺序处理视觉输入,生成1D标记序列。该序列然后与文本标记连接,形成一个多模态序列。为了区分模态并支持视觉内容生成,我们在图像标记的开始和结束处插入特殊标记:<image_start> 和 <image_end>,在视频标记的开始和结束处插入 <video_start> 和 <video_end>。视频标记是多帧图像标记的直接拼接。 预训练数据形式。在统一的预训练数据中,我们利用文本和视觉标记之间的不同连接形式,以促进理解和生成。我们使用[图像,文本]、[文本,图像] 和 [文本,视频] 的形式,并仅在每对的后一个模态上添加监督损失,以避免无条件内容生成并促进模态对齐。我们还使用了交错文本和图像的连接形式来增强理解,并仅对文本施加监督损失。值得注意的是,我们在预训练期间出于效率原因排除了[视频,文本]的形式,因为我们发现,在监督微调期间结合该形式可以有效地提高视频理解能力。 训练目标。由于视觉标记和文本标记都是离散的,我们可以使用通用语言建模的下一个标记预测目标来训练LLM。然而,由于视觉标记采用了残差量化,文本和视觉标记的训练目标略有不同。对于文本标记,负对数似然损失计算如下:
本节中,我们将介绍全面的实验,以评估我们方法在各种视觉理解和生成任务中的性能。首先,我们描述实验设置,包括模型架构、训练数据集和评估基准。随后,我们评估了统一基础视觉塔的性能,并与其他流行的视觉语言模型(VLMs)在各种视觉理解和生成基准上进行比较。最后,我们展示了一些定性结果。
在我们的实验中,我们采用了LLaMA-2-7B [66] 作为基础语言模型。对于视觉塔,我们选择了SigLIP-Large-patch16-256 / SigLIP-SO400M-patch14-384 [77] 作为视觉编码器架构,并采用了来自RQ-VAE [33] 的残差量化器、深度Transformer和解码器架构。量化器码本大小为16384。所有图像和视频的分辨率调整为256×256 / 384×384,每张图像或每帧视频被转换为16×16×4 / 27×27×16的码,残差深度D=4 / D=16。我们在COYO-700M [6] 上训练视觉塔,并在ImageNet [18] 上对零样本分类和重建性能进行评估。对于视觉理解,我们使用了来自ShareGPT4V [10] 的1M [图像,文本] 数据和来自MMC4 [81] 的6M交错文本和图像数据。对于视觉生成,我们使用了来自我们内部数据集的15M高质量[文本,图像] 数据和来自OpenVid [54] 数据集的1M [文本,视频] 数据。视觉生成使用了Classifier-free guidance [25],CFG值为3。
为了检验视觉理解能力,我们在广泛采用的基于图像的零样本视觉语言基准上评估了模型,包括VQA-v2 [24],GQA [27],TextVQA [62],POPE [42],MME [23],SEED [34],MM-Vet [76],以及基于视频的视觉语言基准,包括ActivityNet [7],MSVD [8],MSRVTT [71],TGIF [43]。 为了评估视觉生成能力,我们使用了MJHQ-30K [35] 和GenAI-Bench [46] 作为基准。前者通过生成图像与30K高质量图像之间的FID来反映图像生成的整体能力。后者是一个具有挑战性的图像-文本生成基准,反映了视觉生成模型的综合生成能力。该基准分为两类提示:基本技能(包括文本输入中的属性、场景和关系理解)和高级技能(包括计数、区分、比较和逻辑关系理解)。
我们在表1中展示了用于衡量统一基础视觉塔的重建和文本对齐能力的常用指标:重建FID(rFID)和ImageNet上零样本图像分类的Top-1准确率。我们的模型在重建结果上显著优于VQ-GAN。当使用相同的码形状时,我们的rFID略低于RQ-VAE。这是预期的,因为训练过程中引入的对比损失旨在增强图像理解,导致重建质量下降。对于文本对齐能力,我们的统一视觉塔在256 / 384分辨率下分别达到了73.3 / 78.0的Top-1准确率。这表明了我们统一视觉塔出色的文本对齐能力。然而,值得注意的是,视觉塔的rFID和Top-1准确率仅作为中间指标,并不直接线性关联于我们整个多模态框架的最终性能。接下来部分中展示的视觉理解和生成任务的性能更加重要。
视觉理解任务。表2和表3总结了我们的方法与其他领先的VLM在图像-语言和视频-语言基准上的对比。与CLIP等基础模型生成的连续视觉标记相比,基于VQGAN的离散视觉标记与文本的对齐度较低,从而损害了VLM在视觉理解任务中的表现。通过我们的统一基础视觉塔,即使使用离散视觉标记,我们的模型在性能上也接近领先的VLM。 视觉生成任务。如表4所示,VILA-U在视觉生成方面优于其他自回归方法,并且在一些基于扩散的方法中具有可比的性能。该结果表明我们的方法在视觉生成方面的可行性。表5总结了我们的方法和其他视觉生成方法在GenAI-Bench上的定量结果。尽管我们的方法逊色于在数十亿级别图像-文本对上训练的基于扩散的视觉生成方法,但在高级提示上,我们的方法与SD v2.1 [61] 和SD-XL [57] 的表现相当,甚至仅用量级较少的数据进行训练。这进一步表明,VILA-U通过我们的统一训练框架可以有效、高效地学习视觉和文本模态之间的相关性。
视觉理解。为了验证VILA-U在综合视觉理解任务中的有效性,我们在多个理解和推理任务中应用了该模型,部分示例如图3和图4所示。从结果中可以看到,VILA-U在各种任务(包括视觉描述和视觉问答)中的多样性。此外,我们的模型继承了一些来自VILA [45] 的重要能力,包括多图像理解和上下文学习,如图5和图6所示。
视觉生成。我们在图7中展示了一些使用VILA-U生成视觉内容的示例。可以看到,即使使用相对较小的数据集进行训练,我们的模型可以同时用于图像生成和视频生成。在给定的示例中,我们的方法能够根据用户输入生成好看的图像和连续的视频。
我们提出了VILA-U,这是一种新颖且统一的视觉语言模型,将视频、图像和语言的理解与生成任务整合到一个自回归的下一个标记预测框架中。与大多数利用额外组件(如扩散模型)来统一视觉生成和理解的视觉语言模型(VLMs)相比,我们的方法不仅更加简洁,而且还证明了自回归方法可以在性能上与当前最先进的VLMs相媲美。我们取得成功的原因在于:首先,我们的统一基础视觉塔在预训练期间将离散的视觉特征与文本对齐;其次,我们使用了一个适用于视觉理解和生成训练的高质量数据集。我们相信,VILA-U可以作为多样化视觉语言任务的通用框架。