原文:Yu J, Wang Z, Vasudevan V, et al. CoCa: Contrastive Captioners are Image-Text Foundation Models[J]. arXiv preprint arXiv:2205.01917, 2022.
探索大规模预训练基础模型在计算机视觉中具有重要意义,因为这些模型可以快速迁移到许多下游任务中。本文提出了对比Captioner模型(Contrastive Captioner,简称CoCa),结合对比损失和captioning损失来预训练图像-文本编码器-解码器基础模型,从而兼具了对比方法(如CLIP)和生成方法(如SimVLM)的优点。与标准的编码器-解码器Transformer(所有解码器层都参与编码器输出的处理)不同,CoCa省略了解码器前半部分的交叉注意力来编码纯文本表示,并在后半部分用交叉注意力将图像编码器的输出和多模态解码器级联起来,以学习多模态图像-文本表示。我们在单模态图像和文本嵌入之间应用对比损失,在多模态解码器的输出上应用captioning损失,以自回归的方式预测文本tokens。通过将所有标签简单地视为文本,我们利用有标签图像数据和带噪声图像-文本数据对CoCa进行了预训练。从经验上看,CoCa在广泛的下游任务上实现了SOTA性能,包括视觉识别(ImageNet、Kinetics-400/600/700、Moments-in-Time)、跨模态检索(MSCOCO、Flickr30K、MSR-VTT)、多模态理解(VQA、SNLI-VE、NLVR2)和图像描述(MSCOCO、NoCaps)。值得注意的是,CoCa在ImageNet图像分类任务上,采用零样本的方式获得了86.3%的精度,使用冻结编码器获得了90.6%的精度,使用微调编码器获得了91.0%的SOTA精度。
相关工作
- CLIP:从自然语言监督中学习可迁移的视觉模型
- ALIGN:基于噪声文本监督的视觉和视觉语言表示学习
- ViT:一图胜千言,用于大规模图像识别的Transformer
- VinVL:视觉语言模型中的视觉表示
论文故事
深度学习最近见证了基础语言模型的兴起,如BERT、 T5、 GPT-3,这些模型在大规模数据上进行预训练,并通过零样本、小样本或迁移学习的方式展示了通用的多任务能力。与专业模型相比,针对大规模下游任务的预训练基础模型可以分摊训练成本,为模型达到并超过人类智能提供了契机。
针对视觉和视觉-语言问题,研究者们已经探索了几种基础模型:(1)开拓性工作表明,在图像分类数据集(如ImageNet)上,使用交叉熵损失预训练的单编码器模型是有效的。图像编码器提供了通用的视觉表示,可用于各种下游任务,包括图像和视频理解。然而,这些模型在很大程度上依赖于图像注释作为标记向量,并且没有吸收人类自然语言的知识,这阻碍了它们在涉及视觉和语言模态的下游任务中的应用。(2)最近,研究者们在大规模含有噪声的图像-文本对上,利用对比损失对两个并行的编码器进行预训练,证明了图像-文本基础模型的可行性。除了仅用于视觉任务的视觉嵌入外,形成的双编码器模型还可以将文本嵌入编码到相同的潜在空间,从而实现新的跨模态对齐功能,如零样本图像分类和图像-文本检索。然而,由于缺少学习图像-文本融合表示的联合组件,这些模型不能直接适用于视觉-语言理解任务,如视觉问答(VQA)。(3)另一项研究探索了使用编码器-解码器模型进行生成式预训练,以学习通用的视觉和多模态表示。在预训练期间,模型从编码器一侧获取图像,并在解码器输出上应用语言建模损失(或PrefixLM)。对于下游任务,解码器的输出可以用作多模态理解任务的联合表示。虽然通过预训练的编码器-解码器模型获得了优异的视觉-语言结果,但它们不会生成与图像嵌入对齐的纯文本表示,因此对于跨模态对齐任务来说,可行性和效率较低。
在这项工作中,我们统一了单编码器、双编码器和编码器-解码器范式,并训练了一个包含三种方法优点的图像-文本基础模型。我们提出了对比Captioner模型(CoCa),该模型采用经过对比损失和captioning损失训练的编码器-解码器架构。如图1所示,我们将Transformer解码器解耦为两部分,分别是单模态解码器和多模态解码器。我们省略了单模态解码器中的交叉注意力来编码纯文本表示,并用交叉注意力将图像编码器的输出和多模态解码器级联起来,以学习多模态图像-文本表示。我们在图像编码器和单模态文本解码器的输出之间应用对比损失,并在多模态解码器的输出处应用captioning损失。此外,通过将所有标签简单地视为文本,我们利用有标签图像数据和带噪声图像-文本数据对CoCa进行了训练。图像注释文本上的生成损失提供了类似于单编码器交叉熵损失的细粒度训练信号,有效地将上述三种预训练范式纳入到统一的方法中。