BLIP2-图像文本预练习论文解读

[复制链接]
查看1170 | 回复0 | 2023-8-23 11:45:25 | 显示全部楼层 |阅读模式
论文: 《BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models》
github: https://github.com/salesforce/LAVIS/tree/main/projects/blip2
摘要

练习大标准视觉语言预练习模子成本比较高,BLIP-2,基于现有的图像编码器预练习模子,大规模语言模子举行预练习视觉语言模子;BLIP-2通过轻量级两阶段预练习模子Querying Transformer缩小模态之间gap,第一阶段从冻结图像编码器学习视觉语言表征,第二阶段基于冻结语言模子,举行视觉到语言天生学习;BLIP-2在各种视觉-语言模子到达SOTA。比如在zero-shot VQAv2上逾越Flamingo80B 8.7%,也证明该模子可以根据天然语言指引举行zero-shot图像到文本天生。
解决标题

端到端练习视觉语言模子需要大标准模子及大规模数据,该过程成本大,本文提出方法基于现有高质量视觉模子及语言大模子举行联合练习,为减少计算量及防止遗忘,作者对预练习模子举行frozen,为了将两使命对齐,作者提出Querying Transformer (Q- Former) 预练习,如图1,其将有效视觉特征通报至LLM输出目标文本。

BLIP-2优势如下:
1、高效使用frozen预练习视觉及语言模子;
2、由于大规模语言模子本事,BLIP-2可以根据提示举行zero-shot图像到文本天生;
3、由于使用frozen单模态预练习模子,BLIP-2与现有SOTA方案相比,计算更加高效;

算法

为了对齐视觉特征到LLM文本空间,作者提出Q-Former,举行两阶段预练习:
1、图像编码器frozen举行学习视觉语言表征;
2、使用frozen LLM举行学习视觉到文本天生;

模子结构

如图2,Q-Former包括两个贡共享self-attention层的transformer子模块:图像transformer(Q-Former左半部分)与frozen image encoder相互作用提取视觉特征;文本transformer(Q-Former右半部分)可作为文本编码器,也可作为文本解码器。
可学习query embedding作为图像transformer输入,通过self-attention层相互作用,通过cross-attention层与frozen图像特征相互作用,query同时通过self-attention层与文本相互作用。根据预练习使命,作者使用差别self-attention mask控制query-text之间交互;作者使用                                   B                         E                         R                                   T                                       b                               a                               s                               e                                                 BERT_{base}                  BERTbase​初始化Q-Former,cross-attention层举行随机初始化;

通过frozen图像编码器学习视觉语言表征

query通过学习提升与text相干视觉表征,受BLIP启发,作者通过3个目标函数,共享雷同输入格式及模子参数,每个目标函数通过差别attention mask计谋控制query与text之间相互影响,如图2所示;
图像文本对比学习(ITC)

ITC学习对齐图像表征与文本表征,通过比较成对与非成对的图像-文本相似度实现;计算过程如下:
计算image transformer输出query表征                                   Z                              Z                  Z(与可学习query长度雷同)与text transformer输出文本表征                                    t                              t                  t 中【CLS】token相似性,选取最大值作为图像文本对相似度,为防止信息泄露,作者使用单模态self-attention mask,query与text不能互相可见,防止从文本直接学习;由于image encoder举行frozen,显存开释,可以使用batch负样本而不消像BLIP中使用队列。
基于图像文本天生(ITG)

ITG根据输入图像练习Q-Former天生文本,由于Q-Former不允许image encoder与text token直接交互,文本天生所需信息通过query举行提取,通过self-attention举行通报至text token,因此query需要捕获文本相干全部信息,作者使用多模态因果self-attention mask控制query-text交互,query无法获取text token,当前text token 可获取全部query及其之前text token。作者将【CLS】token更换为【DEC】token 作为解码使命标记;
图文匹配(ITM)

ITM为了学习精致化图像文本匹配,作者使用bi-dirention self-atttention mask,全部query与text相互可见,因此输出的query embedding Z捕获多模态信息,Z通过二类线性分类器获取logit,logit均值为匹配得分,作者使用《Align before Fuse》中难例负样本发掘计谋创建负样本对。
难例负样本发掘计谋:
当负样本的图像文本对有雷同的语义但在细粒度细节上差别,那么该样本是难样本。作者通过对比相似度探求batch内的 hard negatives。对于一个batch中的每一幅图像,作者根据对比相似性分布从雷同的batch中抽取一个负文本,其中与图像更相似的文本有更高的大概被采样。同样的,作者还为每个文本采样一个hard negative图像。
从大规模语言模子学习视觉到语言天生

作者将Q-Former与LLM相连,后去LLM的语言天生本事。如图3,FC层映射输出的query embedding Z至LLM的text embedding;基于LLM Q-Former提取到的视觉表征作为soft visual prompt,由于Q-Former已经预练习用于提取对文本有效的视觉表征,减轻LLM学习视觉-文本对齐的负担。

作者实行两种LLM,decoder-based LLM以及encoder-decoder-based LLM。
对于decoder-based LLM,作者使用language modeling loss举行预练习,frozen LLM举行文本天生;
对于encoder-decoder-based LLM,使用prefix language modeling loss预练习,将text分为两部分,text前半部分与视觉表征concat输入LLM编码器,后半部分作为LLM解码器的天生目标。
模子预练习

预练习数据

BLIP-2使用与BLIP雷同数据,129M图片,包括COCO、Visual Genome、CC3M、CC12M、SBU,其中115M来自 LAION400M,使用CapFilt对网图举行天生caption,具体步调如下:
1、使用                                   B                         L                         I                                   P                                       l                               a                               r                               g                               e                                                 BLIP_{large}                  BLIPlarge​天生10个caption;
2、天生10个caption+原始web caption通过CLIP ViT-L/14模子与对应图像举行相似度排序;
3、选取top2作为该图的caption,以此作为练习数据;
预练习图像编码器与LLM

两个SOTA视觉transformer预练习模子:
ViT-L/14 from CLIP、ViT-G/14 from EVA-CLIP
移除ViT末了一层,使用倒数第二层特征。
LLM模子:
无监视练习的OPT作为decoder-based LLM
基于指令练习的FlanT5作为encoder-decoder-based LLM

预练习设置

第一阶段练习250k step,第二阶段练习80k step;ViT和LLM 转为FP16,FlanT5转为BFloat16,作者发现相对于32-bit,性能无降落;由于使用frozen模子,作者预练习比如今大规模VLP方法计算量都小,在16个A100(40G)上,对于ViT-G和FlanT5-XXL第一阶段练习耗时6天,第二阶段少于3天。
实行

表1展示BLIP-2在各种零样本视觉语言使命上体现,与之前SOTA方法相比,性能得到改善,而且练习参数大量减少;

引导零样本图像到文本天生

BLIP-2使得LLM具有图像明确本事,同时保存遵照文本提示的本事;作者在视觉promt后增长简朴文本promt,图4展示BLIP-2零样本图像文本天生本事,包括:视觉知识推理、视觉共鸣推理、视觉对话、个性化图像到文本天生等。

零样本VQA

表2表明,BLIP-2在VQAv2及GQA数据集到达SOTA。
表2得到一个有希望的发现:一个更好的图像编码器或LLM模子都将使得BLIP-2性能更好;
基于OPT或FlanT5,BLIP-2使用ViT-G性能逾越使用VIT-L;
图像编码器固定,BLIP-2使用大LLM模子性能逾越使用小模子;
在VQA上,基于指令练习的的FlanT5性能优于无监视练习的OPT;

第一阶段预练习使得Q-Former学习与文本相干视觉表征,图5展示表征学习对天生式学习有效性,不举行表征学习,两种LLM模子在零样本VQA使命上性能大幅降落。

图像形貌

表3表明,BLIP-2在NoCaps性能到达SOTA,证明对out-domain图像具有很强天生本事。

视觉问答

Q-Former的输出以及question作为LLM的输入,LLM天生对应answer,为了提取与标题相干图像特征,作者将question输入Q-Former,通过self-attention层与query举行交互,引导Q-Former的cross-attention层更加关注图中有效区域。表4表明BLIP-2在开放式天生模子中到达SOTA。

图像文本检索

图文检索不需要语言模子,作者在COCO数据集将图像编码器与Q-Former一起举行finetune,在COCO及Flickr30K数据集举行图像文本检索以及文本图像检索,作者起首根据图文特征相似度挑选128个样本,而后根据ITM score举行排序。
如表5,BLIP-2在零样本图文检索到达SOTA,相对现有方法,得到显著提升。

表6表明ITG丧失对图文检索也有资助,由于ITG丧失版主query提取与文本相干视觉特征。

限定

当LLM模子使用上下文VQA样本时,BLIP-2并未在VQA使命上提升性能,作者归因于预练习数据集为仅有一对图像文本样本,无法学习一个序列中多个图像文本对之间相干性。
BLIP-2在图像文本天生使命仍存在一些不敷:LLM不正确知识,不正确推理路径、对于一些新图像缺少相干信息,如图6所示。

结论

BLIP-2是一种通用且计算高效的视觉语言预练习方案,使用frozen 预练习图像编码器及LLM,在多个视觉语言使命到达SOTA,也证明白其在零样本instructed image-to-text天生本事。

来源:https://blog.csdn.net/qq_41994006/article/details/129221701
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则