BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Mode

BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models
----
BLIP-2:使用冻结图像编码器和大型语言模型引导语言图像预训练

摘要

由于大规模模型的端到端训练,视觉和语言预训练的成本变得越来越高。本文提出了 BLIP-2,这是一种通用且高效的预训练策略,可从现成的冻结预训练图像编码器和冻结大型语言模型引导视觉语言预训练。 BLIP-2 通过轻量级查询转换器弥补了模态差距,该转换器分两个阶段进行预训练。第一阶段从冻结图像编码器引导视觉语言表示学习。第二阶段从冻结的语言模型引导视觉到语言的生成学习。尽管可训练参数比现有方法少得多,但 BLIP-2 在各种视觉语言任务上实现了最先进的性能。例如,我们的模型在零样本 VQAv2 上的性能比 Flamingo80B 高出 8.7%,可训练参数减少了 54 倍。我们还展示了该模型的新兴功能,即可以遵循自然语言指令的零样本图像到文本生成功能。

1. 简介

视觉语言预训练(VLP)研究在过去几年中取得了快速进展,预训练模型的规模越来越大,不断推动各种下游领域的最新技术发展任务(Radford 等人,2021;Li 等人,2021;2022;Wang 等人,2022a;Alayrac 等人,2022;Wang 等人,2022b)。然而,由于使用大规模模型和数据集进行端到端训练,大多数最先进的视觉语言模型在预训练期间都会产生很高的计算成本。视觉语言研究位于视觉和语言之间的交叉点,因此自然期望视觉语言模型可以从视觉和自然语言社区中现成的单峰模型中获益。在本文中,我们通过从现成的预训练视觉模型和语言模型中引导,提出了一种通用且计算高效的 VLP 方法。预先训练的视觉模型提供高质量的视觉表示。预训练的语言模型,特别是大型语言模型(LLM),提供强大的语言生成和零样本迁移能力。为了降低计算成本并抵消灾难性遗忘问题,单峰预训练模型在预训练期间保持冻结状态。

为了利用预训练的单模态模型进行 VLP,促进跨模态对齐是关键。然而,由于LLM在单模态预训练期间没有看到图像,因此冻结它们使得视觉-语言对齐特别具有挑战性。在这方面,现有方法(例如 Frozen(Tsimpoukelli 等人,2021)、Flamingo(Alayrac 等人,2022))诉诸图像到文本生成损失,我们证明这不足以弥合模态差距。

为了与冻结的单峰模型实现有效的视觉语言对齐,我们提出了一种使用新的两阶段预训练策略进行预训练的查询转换器(QFormer)。如图 1 所示,Q-Former 是一种轻量级转换器,它采用一组可学习的查询向量从冻结图像编码器中提取视觉特征。它充当冻结图像编码器和冻结 LLM 之间的信息瓶颈,为 LLM 提供最有用的视觉特征以输出所需的文本。在第一个预训练阶段,我们执行视觉语言表示学习,强制 Q-Former 学习与文本最相关的视觉表示。在第二个预训练阶段,我们通过将 Q-Former 的输出连接到冻结的 LLM 来执行视觉到语言的生成学习,并训练 Q-Former 使其输出的视觉表示可以由 LLM 解释。

我们将我们的 VLP 框架命名为 BLIP-2:使用冻结单峰模型进行引导语言图像预训练。 BLIP-2 的主要优势包括:

BLIP-2 有效地利用了冻结的预训练图像模型和语言模型。我们使用分两个阶段预训练的 Q-Former 来弥补模态差距:表示学习阶段和生成学习阶段。 BLIP-2 在各种视觉语言任务上实现了最先进的性能,包括视觉问答、图像字幕和图像文本检索。

在 LLM(例如 OPT(Zhang 等人,2022)、FlanT5(Chung 等人,2022))的支持下,BLIP-2 可以被提示执行遵循自然语言指令的零样本图像到文本生成,这实现视觉知识推理、视觉对话等新兴功能(示例见图 4)。

由于使用了冻结单峰模型和轻量级 Q-Former,BLIP-2 比现有最先进的技术更具计算效率。例如,BLIP-2 在零样本 VQAv2 上的性能比 Flamingo(Alayrac 等人,2022)高出 8.7%,同时使用的可训练参数少了 54 倍。此外,我们的结果表明 BLIP-2 是一种通用方法,可以收获更先进的单峰模型以获得更好的 VLP 性能。

2. 相关工作

2.1.端到端视觉语言预训练

视觉语言预训练旨在学习多模态基础模型,以提高各种视觉和语言任务的性能。根据下游任务的不同,提出了不同的模型架构,包括双编码器架构(Radford et al., 2021; Jia et al., 2021)、融合编码器架构(Tan & Bansal, 2019; Li et al. ., 2021)、编码器-解码器架构 (Cho et al., 2021; Wang et al., 2021b; Chen et al., 2022b),以及最近的统一 Transformer 架构 (Li et al., 2022; Wang等人,2022b)。多年来也提出了各种预训练目标,并逐渐收敛到一些经过时间考验的目标:图像文本对比学习(Radford et al., 2021; Yao et al., 2022; Li et al., 2021;2022)、图像文本匹配(Li et al.,2021;2022;Wang et al.,2021a)和(屏蔽)语言建模(Li et al.,2021;2022;Yu et al.,2022; Wang 等人,2022b)。

大多数 VLP 方法使用大规模图像文本对数据集执行端到端预训练。随着模型尺寸不断增加,预训练会产生极高的计算成本。此外,端到端预训练模型利用现成的单峰预训练模型(例如 LLM)并不灵活(Brown 等人,2020;Zhang 等人,2022;Chung 等人,2022) )。

2.2.模块化视觉语言预训练

与我们更相似的是利用现成的预训练模型并在 VLP 期间将其冻结的方法。一些方法冻结图像编码器,包括采用冻结目标检测器来提取视觉特征的早期工作(Chen et al., 2020;Li et al., 2020;Zhang et al., 2021),以及最近的LiT(Zhai et al., 2022),它使用冻结的预训练图像编码器进行 CLIP(Radford et al., 2021)预训练。一些方法冻结语言模型,以使用法学硕士的知识进行视觉到语言生成任务(Tsimpoukelli et al., 2021; Alayrac et al., 2022; Chen et al., 2022a; Ma ̃ nas et al., 2023 ;Tiong 等人,2022;Guo 等人,2022)。使用冻结的法学硕士的关键挑战是将视觉特征与文本空间对齐。为了实现这一目标,Frozen(Tsimpoukelli et al., 2021)对图像编码器进行了微调,其输出直接用作法学硕士的软提示。 Flamingo(Alayrac 等人,2022)将新的交叉注意力层插入到 LLM 中以注入视觉特征,并在数十亿个图像文本对上预训练新层。两种方法都采用语言建模损失,其中语言模型根据图像生成文本。

与现有方法不同,BLIP-2 可以有效且高效地利用冻结图像编码器和冻结 LLM 来执行各种视觉语言任务,以较低的计算成本实现更强的性能。

3.方法

我们提出了BLIP-2,一种新的视觉语言预训练方法,它从冻结的预训练单峰模型中引导。为了弥补模态差距,我们提出了一个分两个阶段预训练的查询变换器(Q-Former):(1)使用冻结图像编码器的视觉语言表示学习阶段和(2)视觉到语言生成学习阶段与冻结的llm。本节首先介绍 Q-Former 的模型架构,然后描述两阶段预训练过程。

3.1.模型架构

我们提出 Q-Former 作为可训练模块,以弥合冻结图像编码器和冻结 LLM 之间的差距。它从图像编码器中提取固定数量的输出特征,与输入图像分辨率无关。如图 2 所示,Q-Former 由两个共享相同自注意力层的转换器子模块组成:(1) 与冻结图像编码器交互以进行视觉特征提取的图像转换器,(2) 可以运行的文本转换器作为文本编码器和文本解码器。我们创建一组可学习的查询嵌入作为图像转换器的输入。查询通过自注意力层相互交互,并通过交叉注意力层(插入每个其他变压器块)与冻结图像特征交互。查询还可以通过相同的自注意力层与文本进行交互。根据预训练任务,我们应用不同的自注意力掩码来控制查询文本交互。我们使用 BERTbase 的预训练权重初始化 QFormer(Devlin 等人,2019),而交叉注意力层是随机初始化的。 Q-Former 总共包含 188M 个参数。请注意,查询被视为模型参数。

图 2.(左)Q-Former 和 BLIP-2 第一阶段视觉语言表示学习目标的模型架构。我们联合优化三个目标,强制执行查询(一组可学习的嵌入)以提取与文本最相关的视觉表示。 (右)每个目标的自注意力掩蔽策略来控制查询文本交互。

在我们的实验中,我们使用 32 个查询,其中每个查询的维度为 768(与 Q-Former 的隐藏维度相同)。我们使用 Z 来表示输出查询表示。 Z 的尺寸 (32 × 768) 比冻结图像特征的尺寸小得多(例如 ViT-L/14 的尺寸为 257 × 1024)。这种瓶颈架构与我们的预训练目标一起工作,强制查询提取与文本最相关的视觉信息。

3.2.从冻结图像编码器学习引导视觉语言表示

在表示学习阶段,我们将 Q-Former 连接到冻结图像编码器,并使用图像文本对进行预训练。我们的目标是训练 Q-Former,以便查询能够学习提取最能提供文本信息的视觉表示。受 BLIP(Li et al., 2022)的启发,我们联合优化了三个共享相同输入格式和模型参数的预训练目标。每个目标在查询和文本之间采用不同的注意力屏蔽策略来控制它们的交互(参见图 2)。

图像文本对比学习(ITC)学习对齐图像表示和文本表示,以使它们的互信息最大化。它通过将正对的图像文本相似性与负对的图像文本相似性进行对比来实现这一点。我们将图像转换器的输出查询表示 Z 与文本转换器的文本表示 t 对齐,其中 t 是 [CLS] 标记的输出嵌入。由于 Z 包含多个输出嵌入(每个查询一个),因此我们首先计算每个查询输出与 t 之间的成对相似度,然后选择最高的一个作为图像文本相似度。为了避免信息泄漏,我们采用单峰自注意力掩码,其中查询和文本不允许互相看到。由于使用了冻结图像编码器,与端到端方法相比,我们可以在每个 GPU 上容纳更多样本。因此,我们在 BLIP 中使用批内负数而不是动量队列。

基于图像的文本生成 (ITG) 损失训练 Q-Former 在给定输入图像作为条件的情况下生成文本。由于 Q-Former 的架构不允许冻结图像编码器和文本标记之间直接交互,因此必须首先通过查询提取生成文本所需的信息,然后通过自注意力层传递给文本标记。因此,查询被迫提取捕获有关文本的所有信息的视觉特征。我们采用多模态因果自注意力掩码来控制查询文本交互,类似于 UniLM 中使用的掩码(Dong 等人,2019)。查询可以相互关注,但不能关注文本标记。每个文本标记可以处理所有查询及其先前的文本标记。我们还将 [CLS] 标记替换为新的 [DEC] 标记,作为指示解码任务的第一个文本标记。

图像文本匹配(ITM)旨在学习图像和文本表示之间的细粒度对齐。这是一个二元分类任务,要求模型预测图像文本对是正(匹配)还是负(不匹配)。我们使用双向自注意力掩码,所有查询和文本都可以相互关注。因此,输出查询嵌入 Z 捕获多模态信息。我们将每个输出查询嵌入到二类线性分类器中以获得 logit,并将所有查询的 logit 平均作为输出匹配分数。我们采用 Li 等人的硬负挖掘策略。 (2021;2022)创建信息丰富的负对。

3.3.从冻结参数LLM引导视觉到语言生成学习

在生成预训练阶段,我们将 QFormer(附加冷冻图像编码器)连接到冻结LLM,以获取LLM的生成语言能力。如图 3 所示,我们使用全连接 (FC) 层将输出查询嵌入 Z 线性投影到与 LLM 的文本嵌入相同的维度。然后将投影的查询嵌入添加到输入文本嵌入之前。它们起到软视觉提示的作用,使LLM以 Q-Former 提取的视觉表示为条件。由于 Q-Former 已经过预训练,可以提取包含语言信息的视觉表示,因此它可以有效地充当信息瓶颈,为 LLM 提供最有用的信息,同时删除不相关的视觉信息。这减轻了法学硕士学习视觉语言对齐的负担,从而减轻了灾难性的遗忘问题。

图 3.BLIP-2 的第二阶段视觉到语言生成预训练,它从冻结的大型语言模型 (LLM) 中引导。 (上)引导基于解码器的 LLM(例如 OPT)。 (下)引导基于编码器-解码器的 LLM(例如 FlanT5)。全连接层从 Q-Former 的输出维度适应所选 LLM 的输入维度。

我们尝试了两种类型的 LLM:基于解码器的 LLM 和基于编码器-解码器的 LLM。对于基于解码器的 LLM,我们使用语言建模损失进行预训练,其中冻结的 LLM 的任务是生成以 Q-Former 的视觉表示为条件的文本。对于基于编码器-解码器的 LLM,我们使用前缀语言建模损失进行预训练,其中我们将文本分为两部分。前缀文本与视觉表示连接起来,作为 LLM 编码器的输入。后缀文本用作 LLM 解码器的生成目标。

3.4.模型预训练预训练数据。

我们使用与 BLIP 相同的预训练数据集,总共 129M 图像,包括 COCO (Lin et al., 2014)、Visual Genome (Krishna et al., 2017)、CC3M (Sharma et al., 2018)、CC12M ( Changpinyo 等人,2021)、SBU(Ordonez 等人,2011)以及来自 LAION400M 数据集的 115M 图像(Schuhmann 等人,2021)。我们采用 CapFilt 方法(Li et al., 2022)为网络图像创建合成字幕。具体来说,我们使用 BLIPlarge 字幕模型生成 10 个字幕,并根据 CLIP ViT-L/14 模型生成的图像文本相似性对合成字幕与原始网页字幕进行排名。我们将每张图像的前两个标题保留为训练数据,并在每个预训练步骤中随机采样一个。

预训练的图像编码器和LLM。对于冻结图像编码器,我们探索了两种最先进的预训练视觉变换器模型:(1)来自 CLIP 的 ViT-L/14(Radford 等人,2021)和(2)ViT-g/14来自 EVA-CLIP(Fang 等人,2022)。我们删除了 ViT 的最后一层并使用倒数第二层的输出特征,这会带来稍微更好的性能。对于冻结语言模型,我们探索了用于基于解码器的 LLM 的无监督训练 OPT 模型系列(Zhang et al., 2022),以及用于编码器-解码器的指令训练 FlanT5 模型系列。

预训练设置。我们在第一阶段预训练 250k 步,在第二阶段预训练 80k 步。我们在第一阶段对 ViT-L/ViT-g 使用 2320/1680 的批量大小,在第二阶段对 OPT/FlanT5 使用 1920/1520 的批量大小。在预训练期间,我们将冻结的 ViTs 和 LLM 参数转换为 FP16,但 FlanT5 除外,我们使用 BFloat16。与使用 32 位模型相比,我们发现性能没有下降。由于使用了冻结模型,我们的预训练比现有的大规模 VLP 方法更加计算友好。例如,使用单台16-A100(40G)机器,我们最大的ViT-g和FlanT5-XXL型号第一阶段需要不到6天,第二阶段需要不到3天。

所有模型都使用同一组预训练超参数。我们使用 AdamW (Loshchilov & Hutter, 2017) 优化器,β1 = 0.9、β1 = 0.98,权重衰减为 0.05。我们使用余弦学习率衰减,峰值学习率为 1e-4,线性预热为 2k 步。第二阶段的最小学习率为5e-5。我们使用大小为 224×224 的图像,并通过随机调整大小的裁剪和水平翻转进行增强。

4. 实验

表 1 概述了 BLIP-2 在各种零样本视觉语言任务上的性能。与之前最先进的模型相比,BLIP-2 实现了更高的性能,同时在视觉语言预训练期间需要的可训练参数数量大幅减少。

表 1. BLIP-2 在各种零样本视觉语言任务上的结果概述。与以前最先进的模型相比。 BLIP-2 实现了最高的零样本性能,同时在视觉语言预训练期间需要最少数量的可训练参数。

4.1.指令式零样本图像到文本生成

BLIP-2 有效地使LLM能够理解图像,同时保留其遵循文本提示的能力,这使我们能够通过指令控制图像到文本的生成。我们只需在视觉提示后面附加文本提示作为 LLM 的输入。图 4 显示了演示各种零样本图像到文本功能的示例,包括视觉知识推理、视觉共义推理、视觉对话、个性化图像到文本生成等。

零样本 VQA。我们对零样本视觉问答任务进行定量评估。对于OPT模型,我们使用提示“问题:{}答案:”。对于 FlanT5 型号,我们使用提示“问题:{}简答:”。在生成过程中,我们使用波束宽度为 5 的波束搜索。我们还将长度惩罚设置为 -1,这鼓励更短的答案,更好地与人工注释保持一致

如表 2 所示。BLIP-2 在 VQAv2 (Goyal et al., 2017) 和 GQA (Hudson & Manning, 2019) 数据集上取得了最先进的结果。尽管可训练参数少了 54 倍,但它在 VQAv2 上的性能比 Flamingo80B 高出 8.7%。在 OK-VQA(Marino 等人,2019)数据集上,BLIP-2 次于 Flamingo80B。我们假设这是因为 OK-VQA 更注重开放世界知识而不是视觉理解,而来自 Flamingo80B 的 70B Chinchilla (Hoffmann et al., 2022) 语言模型比 11B FlanT5XXL 拥有更多的知识。

表 2. 零样本视觉问答与最先进方法的比较。

我们从表 2 中得出了一个有希望的观察结果:更强的图像编码器或更强的 LLM 都会带来更好的性能。这一观察结果得到了几个事实的支持:(1) ViT-g 在 OPT 和 FlanT5 方面均优于 ViT-L。 (2) 在同一LLM家族中,较大的模型优于较小的模型。 (3) FlanT5 是一种指令调整的 LLM,在 VQA 上优于无监督训练的 OPT。这一观察结果验证了 BLIP-2 作为一种通用的视觉语言预训练方法,可以有效地收获视觉和自然语言社区的快速进步。

视觉语言表征学习的效果。第一阶段表示学习对 QFormer 进行预训练,以学习与文本相关的视觉特征,这减轻了LLM学习视觉语言对齐的负担。在没有表示学习阶段的情况下,Q-Former 仅依靠视觉到语言的生成学习来弥合模态差距,这类似于 Flamingo 中的感知器重采样器。图 5 显示了表征学习对生成学习的影响。如果没有表示学习,两种类型的LLM在零样本 VQA 上的性能都会显着降低。特别是,OPT 会遭受灾难性遗忘,随着训练的进行,表现会急剧下降。

4.2.图像字幕

我们针对图像字幕任务对 BLIP-2 模型进行了微调,该任务要求模型为图像的视觉内容生成文本描述。我们使用提示“a photo of”作为 LLM 的初始输入,并训练模型以生成具有语言建模损失的标题。我们在微调期间保持 LLM 冻结,并与图像编码器一起更新 Q-Former 的参数。我们尝试使用 ViT-g 和各种LLM。详细的超参数可以在附录中找到。我们对 COCO 进行微调,并对 COCO 测试集和零样本转移到 NoCaps(Agrawal 等人,2019)验证集进行评估。

结果如表 3 所示。BLIP-2 实现了最先进的性能,与现有方法相比,NoCap 有了显着改进,展示了对外域图像的强大泛化能力

4.3。视觉问答

给定带注释的 VQA 数据,我们微调 Q-Former 和图像编码器的参数,同时保持 LLM 冻结。我们对开放式答案生成损失进行微调,其中LLM接收 Q-Former 的输出和问题作为输入,并被要求生成答案。为了提取与问题更相关的图像特征,我们还针对问题设置了 Q-Former 条件。具体来说,问题标记作为 Q-Former 的输入给出,并通过自注意力层与查询交互,这可以引导 Q-Former 的交叉注意力层关注信息更丰富的图像区域。

遵循 BLIP,我们的 VQA 数据包括来自 VQAv2 的训练和验证分割,以及来自 Visual Genome 的训练样本。表 4 显示了 BLIP-2 在开放式生成模型中的最新结果。

4.4.图像文本检索

由于图像文本检索不涉及语言生成,因此我们直接对第一阶段预训练模型进行微调,无需LLM。具体来说,我们使用与预训练相同的目标(即 ITC、ITM 和 ITG)在 COCO 上与 Q-Former 一起微调图像编码器。然后,我们在 COCO 和 Flickr30K (Plummer et al., 2015) 数据集上评估图像到文本检索和文本到图像检索的模型。在推理过程中,我们遵循 Li 等人的观点。 (2021;2022),首先根据图像文本特征相似性选择 k = 128 个候选者,然后根据成对的 ITM 分数重新排名。我们尝试使用 ViT-L 和 ViT-g 作为图像编码器。详细的超参数可以在附录中找到。

结果如表 5 所示。BLIP-2 实现了最先进的性能,在零样本图像文本检索方面比现有方法有显着改进。 ITC 和 ITM 损失对于图像文本检索至关重要,因为它们直接学习图像文本相似性。在表 6 中,我们表明 ITG(基于图像的文本生成)损失也有利于图像文本检索。这一结果支持了我们设计表示学习目标的直觉:ITG 损失强制查询提取与文本最相关的视觉特征,从而改善视觉语言对齐。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值