BLIP-2

Li (Salesforce) 2023 · 论文

一句话总结 — BLIP-2通过一个轻量级的查询Transformer(Q-Former)连接一个冻结的预训练图像编码器和一个冻结的大语言模型,以远低于端到端多模态模型训练成本的代价,实现了强大的视觉-语言能力。

问题

视觉-语言预训练的成本已变得令人望而生畏,因为这意味着要对大规模模型进行端到端训练——每一个新的VLM都要重新训练数十亿个视觉和语言参数。然而强大的现成组件早已存在:大型预训练图像编码器和LLM,二者在各自模态上都表现出色。悬而未决的问题是,一个小型可训练模块能否弥合模态差异——将视觉信息输入一个从未见过图像的LLM中——而不需要解冻这两个庞然大物,也不会引发解冻所导致的灾难性遗忘。

方法与架构

Q-Former。 唯一可训练的模块(1.88亿参数,由BERT-base初始化)位于冻结的图像编码器和冻结的LLM之间。它包含两个共享同一自注意力层的Transformer子模块:一个图像Transformer,其输入是一组固定的32个可学习查询嵌入(维度768),与冻结图像编码器的输出特征进行交叉注意力(每隔一个模块插入一次交叉注意力);以及一个文本Transformer,可作为文本编码器或解码器使用。无论输入分辨率如何,这些查询都会将图像压缩为32个输出向量 ZZ——一个被迫提取与语言最相关的视觉内容的信息瓶颈。

第一阶段——视觉-语言表示学习(冻结图像编码器+Q-Former,基于图文对进行训练),联合优化三个仅在注意力掩码上有所不同的目标:

第二阶段——从冻结LLM中进行生成式学习。 一个单一的全连接层将 ZZ 投影到LLM的嵌入维度;投影后的查询作为软视觉提示被前置到文本之前。解码器型LLM(OPT 2.7B/6.7B)用语言建模损失进行训练;编码器-解码器型LLM(FlanT5-XL/XXL)用前缀语言模型损失进行训练。由于第一阶段已经使 ZZ 具备语言信息,LLM需要学习的对齐负担很小,从而缓解了灾难性遗忘。

训练。 冻结的编码器:CLIP ViT-L/14或EVA-CLIP ViT-g/14(取倒数第二层特征)。数据:1.29亿张图像(COCO、Visual Genome、CC3M、CC12M、SBU,以及来自LAION-400M的1.15亿张),并使用CapFilt生成的合成描述。25万步(第一阶段)+8万步(第二阶段);最大的模型(ViT-g + FlanT5-XXL)在一台16×A100(40G)的机器上,预训练时间不到6+3天。

实验结果

零样本概览(BLIP-2具有1.88亿可训练参数):

模型可训练参数VQAv2 (test-dev)NoCaps CIDErFlickr TR@1 / IR@1
Flamingo10.2B56.3
BLIP583M113.296.7 / 86.7
BLIP-2188M65.0121.697.6 / 89.7

对SLAM的意义

BLIP-2的”冻结编码器+轻量适配器+冻结LLM”模式成为廉价构建视觉-语言系统的标准方案(InstructBLIP、MiniGPT-4以及许多机器人VLM都采用了这一方案),它也为向空间系统添加基于语言的推理能力指明了实用路径:无需重新训练一个庞大的模型,一个小型的桥接模块就可以将SLAM系统的视觉(或渲染地图)特征连接到现成的LLM上。在贯穿本级别的VLM到VLA谱系中,BLIP-2是介于CLIP的对比嵌入与LLaVA/OpenVLA的指令跟随体系之间的效率里程碑。

相关条目