xGen-MM (BLIP-3): A Family of Open Large Multimodal Models
GitHub - salesforce/LAVIS at xgen-mm | 2408.08872 (arxiv.org)
Abstract
This report introduces xGen-MM (also known as BLIP-3), a framework for developing Large Multimodal Models (LMMs). The framework comprises meticulously curated datasets, a training recipe, model architectures, and a resulting suite of LMMs. xGen-MM, short for xGen-MultiModal, expands the Salesforce xGen initiative on foundation AI models. Our models undergo rigorous evaluation across a range of tasks, including both single and multi-image benchmarks. Our pre-trained base model exhibits strong in-context learning capabilities and the instruction-tuned model demonstrates competitive performance among open-source LMMs with similar model sizes. In addition, we introduce a safety-tuned model with DPO, aiming to mitigate harmful behaviors such as hallucinations and improve safety. We open-source our models, curated large-scale datasets, and our fine-tuning codebase to facilitate further advancements in LMM research.
本报告介绍了xGen-MM(亦称BLIP-3),这是一个用于开发大型多模态模型(LMMs)的框架。该框架精心整合了数据集、训练方案、模型架构,并据此构建了一系列LMMs。xGen-MM是xGen-MultiModal的简称,它扩展了Salesforce在基础AI模型方面的xGen计划。
模型在各种任务中均经过严格评估,包括单图像和多图像基准测试。
预训练基础模型展现了强大的上下文学习能力,而经过指令调优的模型则在具有相似模型大小的开源LMMs中表现出色。
引入了具有DPO功能的安全调优模型,旨在减少幻觉等有害行为,提高安全性。我们已将模型、精心整理的大规模数据集以及我们的微调代码库开源,以促进LMM研究的进一步发展。
Figure 1: We introduce xGen-MM (BLIP-3), a framework (b) for developing Large Multimodal Models (LMMs). Our framework improves upon BLIP-2 (a) [1] by (1) increasing the richness, scale, and diversity of training data, (2) replacing the Q-Former layers with a more scalable vision token sampler, and (3) simplifying the training process via the unification of the training objectives to a single loss at every training stage. The resulting suite of LMMs can perform various visual language tasks and achieve competitive performance across benchmarks.
Introduction
大型多模态模型(LMMs)凭借其潜在的应用和新兴能力,吸引了广泛关注。近期在专有模型[2-5]和开源LMMs方面的进展凸显了这一领域的快速发展和日益增长的兴趣。
然而,尽管取得了这些进展,但在开放权重、训练方案和整理后的数据集访问方面,开源模型与专有模型之间仍存在差距。这些限制阻碍了开源社区复制、理解和改进LMMs的能力。
最近的研究表明,大规模、高质量的数据对于训练健壮的LMMs至关重要。BLIP-2[1]是探索LMMs的先驱工作之一,当时它利用合成数据取得了令人瞩目的成果(图1(a))。然而 ,与当今更现代的LMMs相比,BLIP-2所用数据在规模、质量和多样性方面均不足以达到具有竞争力的性能。此外 ,BLIP-2采用了复杂的Q-Former[1]架构来桥接视觉和语言模态,并结合了一系列复杂的训练目标(ITM、ITC和ITG损失),这些都给更大规模的训练带来了障碍。而且,BLIP-2仅支持单图像输入,而交错的多模态数据格式是多模态数据最自然的形式[13]。
为了应对这些挑战,本文提出了xGen-MM(BLIP-3)(图1(b)),这是一个旨在通过利用多模态交错数据集、整理后的字幕数据集以及其他公开可用数据集的集合来扩大LMM训练规模的新框架。
xGen-MM是xGen-MultiModal的简称,进一步扩展了我们之前在文本xGen[18]、代码生成codeGen[19, 20]、函数调用APIGen[21]等方面的生成式AI计划和相应的基础模型。
在xGen-MM(BLIP-3)中,如图2所示,通过用更具可扩展性的视觉标记采样器(具体来说是感知器重采样器[22])替换Q-Former[1],并简化训练目标以仅关注多模态上下文中文本标记的自回归损失,来简化模型架构。
主要重点是数据集整理和训练数据扩展。最近,BLIP-3团队推出了两个大规模、高质量的数据集:MINT-1T[12],一个万亿级标记规模的交错数据集;以及BLIP3-KALE,一个知识增强的高质量密集字幕数据集。
本文介绍了另外两个专门的数据集:BLIP3-OCR-200M,一个具有密集OCR注释的大规模数据集;以及BLIP3-GROUNDING-50M,一个大规模的视觉定位数据集。
除了这些数据集之外,本文还致力于将本工作中开发的系列模型(包括基础模型、指令调优模型和DPO模型)开源。
随着模型的发布,还提供了代码,以便在自定义数据集上轻松微调我们的基础模型。
通过将这些资源公开,旨在使LMM的研究和开发更容易被社区接受,并鼓励研究人员和从业者使用我们的模型和数据集来理解和进一步探索LMMs的潜力和新兴能力。
Model
Architecture Overview
如图2所示,xGen-MM(BLIP-3)框架采用了一种架构,该架构由ViT[44, 45]、视觉标记采样器(感知器重采样器[22])和预训练的大型语言模型(phi3-mini[37])组成。模型的输入可以是本文组合的各种多模态数据源中的自由形式多模态交错文本和视觉标记。
任意分辨率视觉标记采样
正如最近在LMMs[46-48]中证明的那样,在微调和后训练阶段采用了动态高分辨率(即"任意分辨率")图像编码策略。
通过图像块编码来实现更高分辨率的图像理解。块编码通过将单个图像分割成多个块并分别编码它们,来尽可能保留原始图像的分辨率。
将编码后的图像块与缩小尺寸后提供全局信息的原始图像进行拼接。
在视觉与语言(VL)连接器中,使用感知器重采样器对视觉标记进行下采样。在任意分辨率图像编码中,对每个图像块(包括缩小尺寸后的原始图像)独立进行下采样。然后,将下采样后的视觉标记拼接在一起并发送到大型语言模型(LLM)。在VL连接器中进行下采样时,可以根据感知器重采样器中的查询标记数量,将视觉标记的序列长度减少五倍或更多。
第7.2节中对不同的标记采样策略进行了消融研究。
Training
预训练
预训练的目标是预测在预训练过程中混合的数据集中的下一个文本标记。
得到的基础模型xGen-MM-Phi3-mini-base-r是在从组合数据集中提取的大约1000亿个多模态标记上进行预训练的,并且预训练分辨率为384x384像素,这与SigLIP[45]保持一致。
监督微调(SFT)
进一步在遵循指令的示例上对预训练模型进行微调,以使其更好地理解和遵循用户查询。
在微调阶段,使用了一系列公开可用的遵循指令的数据集。
采用了任意分辨率视觉标记采样策略,以便更好地理解高分辨率图像,如文本丰富的文档数据。
交错多图像监督微调
在遵循指令的模型上,对多图像和单图像混合的遵循指令样本进行第二阶段微调。这一阶段微调的目标是增强模型理解交错图像-文本输入的能力,这有助于多模态上下文学习、多图像问答以及更多实际应用场景。
对于多图像微调,也采用了与之前SFT阶段相同的任意分辨率视觉标记采样策略。
后训练
最后,执行两个阶段的后训练,以提高模型的实用性,同时减轻幻觉和毒性等有害特性。
首先进行直接偏好优化(DPO[50]),以提高模型的实用性和视觉保真度。
然后,进行安全微调,以提高模型的无害性。
通过量化指标证明了后训练后模型在无害性和实用性方面的帕累托改进。