NLP领域最近比较火的prompt,能否借鉴到多模态领域?一文跟进最新进展

929 阅读8分钟

1.Unifying Vision-and-Language Tasks via Text Generation 2021.2.4

Motivation:

提出了一个统一的框架、统一的训练目标,能够兼容7个多模态任务的学习。统一的训练方式是multimodal conditional text generation,即输入视觉图片+文本,生成文本label,不同的任务之间的知识可以共享。

Method:

7个多模态任务的benchmark,包括VQA,GQA,COCO Caption, NLVR2,VCR, MMT,REF-COCOg。所有任务的输入加上文本前缀(e.g.”vqa:”, “image text match:”)用于区分不同任务,输出都统一成text label的形式。对于visual grounding任务,图片特征输入时就加了类似<vis_n>的region id,所以输出时可以用text label “<vis_n>” 来指示预测的图片区域。

Contribution:

提出任务统一框架,使用了encoder-decoder的Transformer结构。

2.Learning Transferable Visual Models From Natural Language Supervision 2021.2.26 OpenAI

Motivation:

NLP领域BERT\GPT等可以利用大量的语料的数据进行自监督训练从而进行pretrain,然而CV领域是用标注信息的分类数据集进行pretrain(ImageNet),是否能利用网上大规模的图片信息进行预训练,使用natural language作为image representation的监督信号,从而提升下游任务的效果。

Method:

1. 利用从互联网爬取的400 million 个image-text pair进行图文匹配任务的训练,并将其成功迁移应用于30个现存的计算机视觉——OCR、动作识别、细粒度分类等

2.使用对比学习的方法,做图文匹配的任务,计算相似度。给定batch=N的image-text pairs,CLIP预测NxN的概率(利用线性变换得到multi-modal embedding space的向量,点乘计算得到相似度),对角线即为正样本,其它都是负样本。

Contribution:

无需利用ImageNet的数据进行训练,就可以达到ResNet-50在该数据集上有监督训练的结果。

3.Multimodal Few-Shot Learning with Frozen Language Models 2021.6.25

Motivation:

借鉴NLP中prompt工作,Frozen可以看成是一种image conditional下的prompt learning,即将连续的prompt特征学习变成是来自于图片的特征(由另一个网络训练产生)。探究了固定语言模型参数下如何学习多模态任务。

Method:

Vision Encoder编码得到图片特征,再映射为n个prompt向量加到文本表示之前。Language Model使用了一个7 billion参数规模的预训练好的模型;Vision Encoder 使用了NF-ResNet-50。

Contribution:

通过将prompt扩展到有序的图像,将大型语言模型转换为多模态语言模型的方法同时保留语言模型的文本提示能力,在VQA、OKVQA、miniImageNet等多个数据集验证了迁移学习的效果。由于Visiual Encoder和文本的处理比较简单,模型效果离SOTA有一定的距离。

4.CoOp: Learning to Prompt for vision-language models 2021.9.2

Motivation:

CLIP中使用的手工prompt有两个缺点:1.需要额外的知识和人力来为每个下游任务/数据集设计合适的prompt,当数据集或者下游任务很多时非常耗时耗力;2.手工prompt不太稳定,对某个单词可能很敏感。把NLP中离散token->连续token思路引入进来。

Method:

在class前面加入一组prompt连续向量,续可学的prompt具体又可分为unified context和class-specific context (CSC)两种。实验发现class-specific context (CSC)这种类型的prompt对细粒度图片分类任务更有用,而在一般的数据集上,unified context效果更好。

Contribution:

在图片分类任务上的few-shot learning设置上,连续prompts比CLIP中手工定制的prompt效果有很大提升

5.Multimodal Conditionality for Natural Language Generation 2021.9.2

Motivation:

将prompt方法应用到文案生成

Method:

image和text(即商品title),分别用ResNet-152和embedding映射到语言模型的同一个空间中为为prompt,同时作为条件的文本输入和生成序列一同进行编码,最后再经过Transformer Decoder得到输出的描述。

Contribution:

文案生成效果中融入视觉效果,使得生成效果更佳

6.CPT:Colorful Prompt Tuning for Pre-Training Vision-Language Models 2021.9.24

Motivation:

将prompt方法应用到visual grounding任务上,将任务转化为完形填空问题

Method:

对图片中的object一些被涂上不同颜色的图片,然后把文本当作问题,最后回答什么颜色的图片是问题的答案并填空。

Contribution:

该方法在visual grounding任务上zero/few shot 场景下取得了非常好的表现

7.CLIP-Adapter: Better Vision-Language Models with Feature Adapters 2021.10.9

Motivation:

soft prompt优化的CoOp,由于CLIP的过度参数化和缺乏足够的训练样本,简单的网络调整会导致对特定数据集的过拟合。从而本文只需对轻量级附加特征适配器进行微调,受参数有效迁移学习中适配器模块的启发,作者提出了CLIP-Adapter,它只调整少量额外权重,而不是优化CLIP的所有参数。

Method:

1.CLIP Adapter仅在视觉或语言主干的最后一层之后添加了两个额外的线性层;相反,原始适配器模块插入到语言主干的所有层中;2.CLIP Adapter通过残差连接将原始Zero-Shot视觉或语言嵌入与相应的网络调整特征混合。通过这种“残差样式混合”,CLIP Adapter可以同时利用原始CLIP中存储的知识和来自Few-Shot训练样本的新学习的知识。

Contribution:

在11个数据集上few-shot的实验结果,CLIP-Adapter明显优于CoOp和CLIP

8.DenseCLIP: Language-Guided Dense Prediction with Context-Aware Prompting 2021.12.2

Motivation:

1.CoOp中可学的prompt是task-level或者class-level的,不能随着每个输入数据样例的变化而变化,本文设计了instance-level的prompt,即把视觉(图片)特征注入到prompt向量中去,所以每个数据对应的prompt都是不一样的,引入了数据侧的信息。

2.从图像-文本对中学习到的知识转移到更复杂的密集预测任务的问题几乎没有被研究(目标检测、语义分割和动作识别等)。在这项工作中,作者通过隐式和显式地利用CLIP的预训练的知识,提出了一个新的密集预测框架。

Method:

pre-model prompting:在文本编码器之前将视觉特征和可学习soft tokens传递给Transformer解码器生成prompt post-model prompting:在文本编码器之后将视觉特征和类别向量传递给Transformer解码器生成类别向量表示

Contribution:

提出一个更通用的框架,可以利用从大规模预训练中学到的自然语言先验来改善密集预测。

9.Prompting as Multimodal Fusing 2021.11.16

Motivation:

对Frozen的改进,Frozen中的image encoder同时完成了两个目标:提取视觉特征、对齐图文空间的表示。本文对这两个目标解耦,image encoder只负责编码图像特征,而对齐图文空间表示的任务交给prompt向量来做。这样视觉编码器的参数也变成固定的了,只有prompt向量的参数是可训练的。这样做有两个好处:(1) 整个架构更加模块化,可以灵活调整视觉编码器,也可以灵活地加入其他模态;(2) 实现了更高的参数效率,视觉编码器中的大量参数都可以冻结,只需要调整prompt向量即可。本文还提出了一种特殊的attention mask,它迫使prompt对所有输入数据都是不可见的,称为BlindPrompt

Method:

固定视觉编码器和文本编码器,只更新prompt向量

Contribution:

相比Fintune上对于few-shot和full-shot上有些效果上的提升

10.Unified Multimodal Pre-training and Prompt-based Tuning for Vision-Language Understanding and Generation 2021.12.10

Motivation:

提出理解与生成统一的多模态预训练,使用mixing causal mask,下游任务使用prompt进行fintune。

Method:

预训练使用图文对比学习+MLM+图文匹配loss

Contribution:

在图文检索full-shot/zero-shot相比UNITER、CLIP等有所提升,在Image captioning 和VQA上效果也有提升,但是没有达到SOTA水平。

11.VL-Adapter: Parameter-Efficient Transfer Learning for Vision-and-Language Tasks 2021.12.13

Motivation:

在大型文本语料库上预训练的语言模型的微调在视觉和语言(V&L)任务以及纯语言任务上提供了巨大的改进。然而,由于模型规模迅速增长,对预训练模型的整个参数集进行微调变得不切实际。

Method:

将三种流行的基于适配器的方法(Adapter, Hyperformer, Compacter)与标准的完全微调和最近提出的提示微调方法进行比较,应用到多模态任务。

Contribution:

用权重共享技术训练适配器(占总参数的4.4%)可以与微调整个模型的性能相匹配。

12.Unifying Architectures, Tasks, and Modalities Through a Simple Sequence-to-Sequence Learning Framework 2022.2.7

Motivation:

模态、任务、结构统一的模型OFA,将多模态及单模态的理解和生成任务统一到1个简单的Seq2Seq生成式框架中,OFA执行预训练并使用任务instruction/prompt进行微调,并且没有引入额外的任务特定层进行微调。

Method:

统一模态:统一图片、视频、文本的多模态输入形式;统一结构:采取统一采用Seq2Seq生成式框架;统一任务:对不同任务人工设计了8种任务指令;

Contribution:

OFA覆盖的下游任务横跨多模态生成、多模态理解、图片分类、自然语言理解、文本生成等多个场景,在图文描述、图像生成、视觉问答、图文推理、物体定位等多个风格各异的任务上取得SOTA