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


📖年份: 2023

📖期刊/影响因子:

📖代码:https://github.com/salesforce/LAVIS/tree/main/projects/blip2

📖数字对象唯一标识符DOI:https://doi.org/10.48550/arXiv.2301.12597

📖作者:Junnan Li, Dongxu Li, Silvio Savarese, Steven Hoi

🍒摘要:

   由于大规模模型端到端训练,视觉-语言预训练的成本变得越来越高。于是这篇论文提出了BLIP-2,一种通用且高效的预训练策略,特点是利用市面上现成的冻结预训练图像编码器和大语言模型进行引导视觉语言预训练。BLIP-2依赖于一种轻量级Querying Transformer,有效的弥补了模态差距。Querying Transformer的训练分为两个阶段。第一阶段通过冻结的图像编码器实现视觉到语言表征学习的引导,第二阶段通过冻结的大语言模型驱动视觉到语言生成学习的引导。尽管BLIP-2可训练参数比现有方法少,但它在大多数视觉-语言任务仍取得了最佳的表现。例如,我们的模型在零样本的可视化问答VQAv2任务中,以Flamingo80B的1/54的可训练参数,提高了8.7%的性能。我们也证明了该模型零样本图像到文本生成方面可以遵循自然语言指令,展示出了颇具潜力的新功能。

🥝研究背景和研究问题:

研究背景

  在过去几年,视觉语言预训练(VLP)研究取得了迅速的发展,越来越大的预训练模型不断提高下游任务的性能。然而,由于大多数先进的视觉语言模型在预训练过程中使用大规模模型和数据集进行端到端训练产生了很高的计算成本
  视觉语言研究处于视觉和语言的交叉点,因此自然希望视觉语言模型能够从视觉和自然语言社区中现成的单模态模型获益。

研究问题

image.png
  如何在降低计算成本的同时,使用预训练单模态模型进行VLP任务,促进跨模态对齐是关键。然而LLMs在单模态预训练期间没有看到图像,所以如何实现在单模态模型冻结状态下保持有效的视觉语言也颇具挑战性。

🍑研究方法及改进:

模型架构

image.png
  Q-Former是一个无论输入图像分辨率大小都能从图像编码器中提取固定数量输出特征的可训练模块。它包含两个transformer子模块:(1)image transformer,与冻结的图像编码器互动提取视觉特征 (2)text transformer,既可以作为文本编码器又可以作为文本解码器。Q-Fromer通过Self-Attention进行交互,并通过Cross Attention与冻结的图像编码器进行交互。
  Q-Former设置了一组learned query作为image encoder的输入,这些query能通过Self-Attention层相互作用并且与文本进行交流,通过Cross Attention与图像特征进行交互。
  为了控制query-text交互,采用不同的self-attention masks。初始时采用 B E R T b a s e BERT_{base} BERTbase的预训练权重初始化Q-Former,而Cross-Attention则随机初始化。整个模型包含188M个参数,包含了32个768维的queries,这种瓶颈架构与预训练目标相结合,迫使查询过程提取与文本最相关的视觉信息。

从冻结的图像编码器中引导视觉-语言表示学习

image.png
  在表示学习阶段,Q-Former连接到冻结的图像编码器使用图像-文本对进行预训练,以便query能够学会提取与文本最相关的视觉信息。引入三个预训练目标,他们共享相同的输入参数和模型参数,每个目标在query和text之间采用不同的attention masking策略来控制交互。
  图像-文本对比学习 (ITC)学习对齐图像表示和文本表示以使他们的互信息最大化,通过对比正负对文本-图像相似度来实现。为了避免信息泄露,采用unimodal self-attention mask限制query和text之间的交互
基于图像的文本生成 (ITG)损失训练Q-Former根据输入图片生成文本,生成文本所需的信息必须先由queries提取然后通过self-attention层传递给文本标记。采用multimodal causal self-attention mask,query之间可以相互处理,但文本标记不能,每个文本标记可以处理所有query及其先前的文本标记。
  图像文本匹配 (ITM)旨在学习图像和文本表示之间的细粒度对齐,该模型要求预测图像文本对是否匹配。采用bi-directional self-attention mask所有queries和texts可以互相关注。有助于模型学习图像和文本之间更精细的对齐关系,并预测他们的匹配程度。

从冻结的大语言模型中引导视觉到语言生成学习

image.png
  在生成预训练阶段,将Q-Former(附带冻结的图像编码器)与冻结的LLM模型连接起来以获得LLM的生成语言能力。
  使用全连接层将output query embeddings Z Z Z线性投影到LLM的text embedding相同的维度中,然后将投影后的query embeddings 前置到input text embeddings中用作soft visual prompts。
  Q-Former已经被预先训练以提取语言信息的视觉表示,同时去除了不相关的视觉信息,这减少了LLM学习视觉语言对齐的负担,减轻了灾难性遗忘问题
实验采用两种LLMs:
  基于解码器的LLM,采取语言建模损失预训练,其中冻结的LLM模型的任务是根据Q-Former的视觉表示生成文本。
  基于编码器-解码器的LLM,采取前缀语言建模损失进行预训练,其中将文本分为两部分,前缀文本与信息表示链接起来作为LLM编码器的输入,后缀文本作为LLM解码器的生成目标。

模型预训练

预训练数据:采用与BLIP相同的预训练数据集,总共129M张图片。采用CapFilt方法创造用于web图像的合成字幕。
预训练图像编码器和LLM:
  对于
冻结的图像编码器
,探索了两种最先进的预训练视觉transformer模型:(1) 来自CLIP的ViT-L/14 (2)来自EVA-CLIP的ViT-L/14 ,去除了ViT的最后一层并使用倒数第二层多为输出特征,稍微提高了性能。
  对于
冻结的语言模型
,基本解码器的LLMs探索了无监督训练的OPTmodel family,基本编码器-解码器的LLMs探索了经过指令训练的FlanT5 model family。
预训练设置:
  预训练第一阶段250k steps,对于ViT-L/ViT-g一批次大小为2320/1680,第二阶段80k steps,对于OPT/FlanT5一批次大小为1920/1520。在预训练期间,将冻结的 ViTs(视觉转换器)和 LLMs(语言模型)的参数转换为 FP16(半精度浮点数),除了 FlanT5 中我们使用 BFloat16(拓展精度浮点数)。由于使用了冻结模型,我们的预训练比现有的大规模 VLP方法更友好于计算。
  所有模型都使用相同的预训练超参数集,使用AdamW优化器 β 1 = 0.9 , β 1 = 0.98 \beta_{1}=0.9,\beta_{1}=0.98 β1=0.9,β1=0.98,权重衰减为0.05。
  使用余弦衰减的学习率调度方式,峰值学习率为1e-4,并且进行了线性的2k步预热。
  在第二阶段,最小学习率为5e-5。我们使用尺寸为224×224的图像,并通过随机调整大小的裁剪和水平翻转进行数据增强。

🍓结果与讨论:

  BLIP-2实现了更好的性能,同时在视觉语言预训练期间需要更少的可训练参数。
image.png

Instructed Zero-shot Image-to-Text Generation

  BLIP-2有效地使LLM能够理解图像,同时保留其在遵循文本提示时的能力,这允许我们使用指令控制图像到文本的生成。
image.png
  尽管BLIP-2的训练参数比Flamingo80B少了54倍,但在VQAv2GQA数据集上, BLIP-2达到了最先进的结果,超过了Flamingo80BVQAv2的分数8.7%。在OK-VQA数据集上,BLIP-2排在Flamingo80B之后,我们猜测这是因为OK-VQA更侧重于开放世界知识,而非视觉理解,并且Flamingo80B70B Chinchilla语言模型比11BFlanT5XXL拥有更多的知识。这一观察结果验证了BLIP-2作为一种通用的视觉语言预训练方法,可以有效地收获视觉和自然语言社区的快速发展。
image.png
  **第一阶段表征学习预训练QFormer以学习与文本相关的视觉特征,这减轻了LLM学习视觉语言对齐的负担。**在没有表示学习的情况下,这两种类型的LLM给予在零触发VQA上的性能显著降低。特别是,OPT遭受灾难性遗忘问题,随着训练的进行,性能急剧下降。

Image Captioning

image.png
  BLIP-2模型在图像描述任务中进行微调,训练模型根据图像的视觉内容生成文本描述。微调时,LLM参数保持不变,Q-Former和图像编码器的参数进行更新。实验采用ViT-g和各种LLM。实验在COCO数据集上进行微调,在COCO测试集和零射击转移到NoCaps验证集上进行评估。结果显示,BLIP-2在NoCaps上相较于现有方法表现出明显改进,证明了强大的泛化能力。

Visual Question Answering

image.png
  在带有标注的VQA数据上,对Q-Former和图像编码器的参数进行微调,同时保持LLM冻结用开放式答案生成损失进行微调,LLM接收Q-Former的输出和问题作为输入,并生成答案**。为了提取与问题更相关的图像特征,对Q-Former进行条件调整**,问题标记作为Q-Former的输入,并通过自注意力层与queries互动,引导Q-Former的交叉注意力层关注更有信息的图像区域。表4显示了BLIP-2在开放式生成模型中的最先进结果。

Image-Text Retrieval

image.png
  图像-文本检索任务无需语言生成,直接微调第一阶段预训练模型。实验采用ViT-L和ViT-g作为图像编码器。评估过程中首先根据图像-文本特征相似性选择k=128个候选项,然后根据成对ITM分数进行重新排名。实验结果表明,BLIP-2在零样本图像-文本检索任务上取得了显著优于现有方法的最先进性能。
image.png
  ITG损失也有利于图像-文本检索。这一结果支持了我们在设计表示学习目标时的直觉:ITG损失强制queries提取与文本最相关的视觉特征,从而改善视觉语言对齐。

🍹论文创新点

  结合冻结的图像编码器和大型语言模型进行视觉-语言模型的预训练。冻结的图像编码器使模型能够利用从大规模图像数据集中学习到的丰富视觉特征,而无需额外训练。
  通过三个预训练目标(图像-文本对比学习、图像引导文本生成和图像-文本匹配)共同优化模型,提高了零样本视觉-语言任务的性能。
  在Querying Transformer中引入了瓶颈层,减小了query embedding的维度,提高了模型的效率。

🧊启发与思考:

😪😪😪

⚖️不足及可改进的点:

  近期的LLM可以在给定少量示例的情况下执行上下文学习。然而,在BLIP-2实验中,并未观察到在给定上下文VQA示例时LLM的VQA性能有所改善。我们将这种缺乏上下文学习能力归因于我们的预训练数据集,因为每个样本只包含一个图像-文本对,LLM无法从中学习单个序列中多个图像-文本对之间的关联。同样的观察也在使用多个图像-文本对序列的封闭数据源(M3W)的Flamingo论文中报告。
  BLIP-2的图像-文本生成可能因为各种原因导致不满意的结果,包括LLM提供的不准确知识、激活错误的推理路径或缺乏关于新图像内容的最新信息。此外,由于使用了冻结的模型,BLIP-2继承了LLM的风险,如输出冒犯性语言、传播社会偏见或泄漏私人信息。补救方法包括使用指导性说明引导模型生成或在去除有害内容的过滤数据集上进行训练。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值