论文《BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation》阅读
Unified Vision-Language Understanding and Generation》阅读)
论文概况
本文是2022年ICML上的一篇多模态论文,在CLIP基础上进行应用层面的改进,扩大了模型应用范围。
Introduction
作者提出问题
- 大多数现有的预训练模型仅在基于理解的任务或基于生成的任务中表现出色
- 此外,通过使用从网络收集的有噪声的图像-文本对放大数据集,在很大程度上提高了性能,这是次优的监督来源。
对于上述问题,作者提出了BLIP模型
(1) 通过一种新的VLP框架BLIP,它可以灵活地转换到视觉语言理解和生成任务
(2) BLIP通过生成字幕进行降噪
Method
A.模型结构
单模态编码器:分别编码图像和文本。这部分与CLIP基本一致,将编码后的文本与图片进行对比学习,绑定对应的图像文本对。
基于图像的文本编码器:通过在文本编码器的每个transformer块的自注意力(SA)层和前馈网络(FFN)之间插入一个额外的跨注意力层(CA)来注入视觉信息。
基于图像的文本解码器:用因果自注意力层取代了基于图像的文本编码器中的双向自注意力层。除了self-att层之外,各个结构共享参数。
B.预训练目标
Image-Text Contrastive Loss (ITC):集成 ALBEF 中的 ITC 损失。通过鼓励正面图像文本对具有相似的表示,负面图像文本相反,对齐视觉变换器和文本变换器的特征空间。
Image-Text Matching Loss (ITM):旨在学习图像-文本多模态表示,捕捉视觉和语言之间的细粒度对齐。ITM是一个二分类任务,给定其多模态特征,其中模型使用ITM头(线性层)来预测图像文本对是正(匹配)还是负(不匹配)。
Language Modeling Loss (LM):旨在生成给定图像的文本描述。优化交叉熵损失,该损失训练模型以自回归方式最大化文本的可能性。
C.CapFilt
因为图像文本对中包含噪声,对于模型训练影响很大,因此我们采用生成器与判别器的方式来进行数据提纯。
数据D中包含网络噪声图文和人工精准图文,我们利用LM来生成对应图片的文本描述,再利用ITC与ITM来判别文本是否符合图片,最终数据集被提纯。
D.结果
总结
BLIP设计新的模型结构,加上数据清洗,可以提高下游任务性能,是一种通用的多模态结构和训练方法。