NLP新秀prompt跨界出圈,清华刘知远最新论文将它应用到VLM图像端

益达Charmve

共 2733字,需浏览 6分钟

 · 2021-10-31

点击上方“迈微AI研习社”,选择“星标★”公众号

重磅干货,第一时间送达

大家好,我是Charmve。NLP的新秀prompt,最近着实有点火。上周针对CoOp写过一篇分享,视觉-语言表征学习CLIP,这周继续介绍视觉语言模型,NLP-CV结合,突破感知到认知的飞跃!

9c07ff607ab06e29d877e22ffcc7a552.webp

还跨界火到了VLM(Visual-Language model,视觉语言模型)

像OpenAI的CLIP,和南洋理工大学的CoOp都用了这种思路。

现在,清华副教授刘知远团队最新发布的视觉语言模型论文中,也提出了一种基于prompt的新方法。

b29885ad5e002afb4f43d2535490b5a8.webp

据论文表示,这也是首次将prompt用于cross-model和零样本/少样本学习视觉定位中。

从目前的NLP和VLM模型来看,不少基于prompt的模型效果都不错,让搞CV的同学们也有点心动——能不能给我们也整一个?

那么,prompt究竟好在哪,应用于图像端后是否也能收获不错的效果?

一起来看看。

与微调差别在哪?

最初,在NLP模型还不太大的时候,大家会采用“预训练+微调(fine-tune)”的方式设计针对特定任务的模型。

这种模式下,研究人员会预先训练出一个效果比较好的模型,再在保留大部分模型参数的情况下,根据特定任务(下游任务)调整部分参数,使得它在这一任务上达到最好的效果。

11f635274b37d3239aa8a7b107787ee4.webp

例如以BERT作为预训练模型

然而,随着预训练模型变得越来越大,微调的代价(训练时间、需求的数据量等)也在增加,研究人员有点吃不消了,开始找更好的方法。

prompt就在这个时候出现了,只不过它这次是针对下游任务进行调整。

它有点像是一种输入模板,用来给预训练模型“做出提示”,预训练模型一“看到”它,就知道自己要完成什么任务。

例如,在情感分类任务中,希望预训练模型能体会到输入句子的情绪,并给出形容词来对它分类:

输入“I love this movie.”后,提前给定一个prompt“This movie is [mask]”,让预训练模型一看到它,就明白自己要输出“great/nice”等夸赞的形容词。

这样训练后,预训练模型就能在看到对应prompt时,选出正确的词汇类型,而不是“跑偏”去做别的事情。

由于prompt在NLP领域的应用效果挺好,因此在与NLP相关的VLM模型中,不少研究人员也开始尝试这种方法。

清华将它用到图像端

当然,最初应用prompt的VLM模型,大多也还仍然是将它应用在文本端

据知乎@陀飞轮介绍,像OpenAI的CLIP、NTU的CoOp这两个VLM模型,prompt应用都与NLP中的PET模型有点像。

从它们的模型设计来看,都能很明显从文本端看出prompt的影子,像CLIP中的“A photo of a [mask]”:

e36c0802445db14fea66a9bdfa5e8930.webp

以及CoOp在CLIP上进一步改进的、在训练中能够自行优化的prompt:

a41f0b7944df7f1f0bcc24a9ab95abff.webp

这些prompt的应用,整体改进了VLM模型整体的输出效果。

不过,这也基本都是VLM在文本端的应用,prompt到底适不适合被用在图像端上?

最新来自清华刘知远团队的论文中,就尝试着在VLM的图像端中,以涂色的方式建立了一种visual sub-prompts。

5e4bca13c096c95d5dce978aabdbc4f1.webp

当然,文本端也对应用上了prompt,不过据刘知远老师介绍,prompt在文本端的应用,感觉不足以完全发挥prompt tuning的作用,因此这篇论文尝试了一种cross-modal prompt tuning的方法。

从论文的测试结果来看,这种方法在少样本学习(few-shot)的情况下,基本能取得比微调更好的效果。

06a0f26aec791515ab589e708b165e89.webp

不过,这也还是prompt在VLM上的另一种尝试。

它究竟适不适合用来处理CV领域的图像问题?

CV领域能借鉴吗?

在知乎上,有不少博主给出了自己的看法。

知乎@陀飞轮从方法上给出了两条路径:

如果是纯CV方向的prompt,也就是类似于ViT将图片拆分patch,每个patch实际上可以看成一个字符,那么也可以设计patch的prompt对模型进行训练,这其中也可以分成生成式(类似ViT)和判别式(类似self-supervised)两种方法。

知乎@yearn则认为,就目前来看,continuous prompt是最有可能transfer到CV领域的一系列工作。最近transformer准备大一统CV,NLP,将image输入转化为patch的形式,也让研究人员更方便借鉴NLP的方法学习prompt。

当然,@yearn也表示,要想真正将prompt应用到CV领域,还存在两个需要解决的难题:

1、CV还不存在BERT,GPT这样具有统治力的预训练模型,因此近期内可能很难将prompt 做few-shot learning这一套搬过来。

2、CV的downstream task更加复杂,感觉检测,分割这类任务要把prompt调work是一个非常大的工作量。

但也有匿名用户直接认为,图像上只能用非常别扭的方法做一些任务。当然,视频反而可能应用得更好。

2e812841c0847f4e0e53d58fc358a4d8.webp

那么,你认为prompt能应用在CV领域吗?

刘知远团队最新论文:
https://arxiv.org/abs/2109.11797

知乎回答(已授权):
@陀飞轮:https://www.zhihu.com/question/487096135/answer/2127127513
@yearn:https://www.zhihu.com/question/487096135/answer/2124603834

© THE END 

投稿或寻求报道微信:MaiweiE_com



GitHub中文开源项目《计算机视觉实战演练:算法与应用》,“免费”“全面“”前沿”,以实战为主,编写详细的文档、可在线运行的notebook和源代码。


14242ab5f3c0fdc5134b23e90264ff9c.webp


  • 项目地址 https://github.com/Charmve/computer-vision-in-action

  • 项目主页 https://charmve.github.io/L0CV-web/




推荐阅读

(更多“抠图”最新成果)

迈微AI研习社

微信号: MaiweiE_com

GitHub: @Charmve

CSDN、知乎: @Charmve

投稿: yidazhang1@gmail.com

主页: github.com/Charmve


如果觉得有用,就请点赞、转发吧!

浏览 45
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报