摘要
大多现有的视觉语言预训练好的模型只善于基于理解的任务或基于生成的任务,而且,性能的提高很大程度上是通过扩大来自web上收集的有噪声的图像-文本对的数据集,这是一个次优的监督来源。本文,提出BLIP,一种新的VLP框架,可以灵活地转换到视觉-语言理解和生成任务。BLIP通过引导字幕,有效地利用了有噪声的web数据,其中字幕器生成合成字幕,过滤器去除有噪声的字幕。我们在广泛的视觉语言任务上实现了最先进的结果,如图像-文本检索、图像标注和VQA。BLIP能以零样本的方式直接转移到视频-语言任务上,也论证了很强的泛化能力。
一、介绍
现有的视觉-语言预训练任务有以下两种主要限制:(1)模型角度:大多方法要么采用基于编码器的模型或基于编码-解码器的模型,然而,基于编码器的模型很难直接转移到文本生成任务上(如图像标注),而编码-解码器模型尚未成功地用于图像-文本检索任务。(2)数据角度:大多最新的方法CLIP、ALBEF、SimVLM在来自web的图像-文本对上预训练,通过扩大数据集获得性能增益,而我们的论文表明,有噪声的web文本对视觉语言学习是次优的。
我们提出BLIP:引导语言-图像预训练为统一的视觉语言理解和生成。BLIP是一个新的VLP框架,它支持比现有方法更广泛的下游任务。它分别从模型和数据角度介绍了两个贡献:
(a)编码器-解码器(MED)的多模态混合结构:一种为有效的多任务预训练和灵活的转移学习的新的模型架构。MED可以作为单模态编码器、或一个图像接地的文本编码器、或一个图像接地的文本解码器。模型与三个视觉-语言目标共同预训练:图像-文本对比学习、图像-文本匹配、和以图像为条件的语言建模。
(b)标注和过滤(CapFilt):一种新的从有噪声的图像-文本对中学习的数据集引导方法。我们将预训练好的MED微调为两个模块:一个字幕器用于生成给定web图像的合成字幕;另一个过滤器用于从原始的web文本和合成文本中删除有噪声的字幕。
我们进行了广泛的实验和分析,并得出以下关键的观察:(1)我们表明了字幕器和过滤器一起工作,通过引导字幕在各种下游任务上实现实质性性能改进,我们还发现,更多样化的字幕会产生更大的收益。(2)BLIP在各种视觉-语言任务上实现了最先进的性能,包括图像-文本检索、图像标注、视觉问答、视觉推理和视觉对话。当直接将我们的模型转移到两个视频语言任务:文本到视频检索和视频QA时,我们也实现了最先进的零样本性能。
二、相关工作
2.1 视觉-语言预训练
视觉-语言预训练旨在通过在大规模图像-文本对上对模型机型预训练来提高下游视觉和语言任务的性能。由于获取人工注释的文本的费用过高,大多方法使用从web上爬取的图像和替代文本对,尽管使用了简单的基于规则的过滤器,噪声仍然在web文本中普遍存在。然而,噪声的负面影响在很大程度上都