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

2023-11-02

2a2ee951cb75cad89a11a536c004060a.gif

 ©PaperWeekly 原创 · 作者 杨浩

研究方向 | 自然语言处理

#01.

VL-T5

90d48433ff0608d158c8519ab57c283b.png

论文标题:

Unifying Vision-and-Language Tasks via Text Generation

收录会议:

ICML 2021

论文链接:

https://arxiv.org/abs/2102.02779

代码链接:

https://github.com/j-min/VL-T5

1.1 Motivation

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

1.2 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>” 来指示预测的图片区域。

1.3 Contribution

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

bc6116f661efd4c9dd27881210ee637d.png

#02.

CLIP

e98e008e7aa2c23b39c96ed70ab9463f.png

论文标题:

Learning Transferable Visual Models From Natural Language Supervision

收录会议:

ICML 2021

论文链接:

https://arxiv.org/abs/2103.00020

代码链接:

https://github.com/OpenAI/CLIP

2.1 Motivation

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

2.2 Method

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

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

2.3 Contribution

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

40bc3034814de5a79c95b870c6ff3308.png

#03.

Frozen

1b55b3db1be7e0fdb9f943cda24b64f2.png

论文标题:

Multimodal Few-Shot Learning with Frozen Language Models

收录会议:

NeurIPS 2021

论文链接:

https://arxiv.org/abs/2106.13884

3.1 Motivation

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

3.2 Method

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

3.3 Contribution

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

91bbed863fb72957fd96faf86b1b7ade.png

#04.

CoOp

dad958278f9d81ac8c7879a460b1c3bf.png

论文标题:

Learning to Prompt for Vision-Language Models

收录会议:

NeurIPS 2021

论文链接:

https://arxiv.org/abs/2109.01134

代码链接:

https://github.com/KaiyangZhou/CoOp

4.1 Motivation

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

4.2 Method

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

4.3 Contribution

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

e940896dba75cdef69e256c10f1677c5.png

#05.

MAnTiS

4e23375151fde9e81c42ab87acd8a723.png

论文标题:

Multimodal Conditionality for Natural Language Generation

论文链接:

https://arxiv.org/abs/2109.01229

5.1 Motivation

将 prompt 方法应用到文案生成。

5.2 Method

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

5.3 Contribution

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

19b34781496851e396395832587e6913.png

#06.

CPT

9e00497ef5c5684450f722987a912911.png

论文标题:

CPT: Colorful Prompt Tuning for Pre-trained Vision-Language Models

论文链接:

https://arxiv.org/abs/2109.11797

6.1 Motivation

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

6.2 Method

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

6.3 Contribution

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

90584f4cdac81860180e3c6a34e24ef5.png

#07.

CLIP-Adapter

26e0e8f784f11bfab9e5d3bb98229ce3.png

论文标题:

CLIP-Adapter: Better Vision-Language Models with Feature Adapters

论文链接:

https://arxiv.org/abs/2110.04544

代码链接:

https://github.com/gaopengcuhk/clip-adapter

7.1 Motivation

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

7.2 Method

1. CLIP Adapter 仅在视觉或语言主干的最后一层之后添加了两个额外的线性层;相反,原始适配器模块插入到语言主干的所有层中;

2. CLIP Adapter 通过残差连接将原始 Zero-Shot 视觉或语言嵌入与相应的网络调整特征混合。通过这种“残差样式混合”,CLIP Adapter 可以同时利用原始 CLIP 中存储的知识和来自 Few-Shot 训练样本的新学习的知识。

7.3 Contribution

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

b7e466323ac80924bbaf0e1c36a70b6f.png

#08.

DenseCLIP

4d56bcd49555c7bd56128b36566307f4.png

论文标题:

DenseCLIP: Language-Guided Dense Prediction with Context-Aware Prompting

论文链接:

https://arxiv.org/abs/2112.01518

收录会议:

CVPR 2022

代码链接:

https://github.com/raoyongming/denseclip

8.1 Motivation

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

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

8.2 Method

pre-model prompting:在文本编码器之前将视觉特征和可学习 soft tokens 传递给 Transformer 解码器生成。

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

8.3 Contribution

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

514f63e9b3c0c280e6822175f4f7517e.png

903257783ffdc302897e0f0b3c98cb92.png

#09.

PromptFuse

8cd685c59741edfe14a92a2cfca6605c.png

论文标题:

Prompting as Multimodal Fusing

论文链接:

https://openreview.net/pdf?id=wWZCNLkK-FK

9.1 Motivation

对 Frozen 的改进,Frozen 中的 image encoder 同时完成了两个目标:提取视觉特征、对齐图文空间的表示。本文对这两个目标解耦,image encoder 只负责编码图像特征,而对齐图文空间表示的任务交给 prompt 向量来做。这样视觉编码器的参数也变成固定的了,只有 prompt 向量的参数是可训练的。

这样做有两个好处:1)整个架构更加模块化,可以灵活调整视觉编码器,也可以灵活地加入其他模态;2)实现了更高的参数效率,视觉编码器中的大量参数都可以冻结,只需要调整 prompt 向量即可。本文还提出了一种特殊的 attention mask,它迫使 prompt 对所有输入数据都是不可见的,称为 BlindPrompt。

9.2 Method

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

9.3 Contribution

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

8df6c5ffe58336f7c9267022e3cc65bd.png

#10.

UniVL

ee429a6b7cdba7861f919e5370439cbc.png

论文标题:

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

论文链接:

https://arxiv.org/abs/2112.05587

10.1 Motivation

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

10.2 Method

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

10.3 Contribution

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

a97c11be1e727c008481ae9a1cbf9a0f.png

411d84397fa6fb08db29a6ae338edcd2.png

#11.

VL-Adapter

5b7b166f73b646aa97d6218b00f35e67.png

论文标题:

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

论文链接:

https://arxiv.org/abs/2112.06825

11.1 Motivation

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

11.2 Method

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

11.3 Contribution

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

2af710824170b522ec5ce45f2d601433.png

#12.

OFA

81663bc560cbf54acbe5ddd694b2cf1a.png

论文标题:

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

论文链接:

https://arxiv.org/abs/2202.03052

代码链接:

https://github.com/OFA-Sys/OFA

12.1 Motivation

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

12.2 Method

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

12.3 Contribution

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

ca3cdcddf74c36c4a7c4cb9dc2604b49.png

更多阅读

223a07bfe21d6cef5bccf39842f39687.png

4deace7ba4186238bfca489dfa6f32e7.png

be2586741008588f72f4f7b2240e1536.png

5f5d10884037e83c4e89de0b12e7da32.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

随机推荐

  • linux中网络配置工具“nmcli”

    网络配置工具nmcli 一 查看网卡信息 1 重启网络服务及查看网络状态 systemctl restart network 重启网络服务 systemctl status network 查看网络状态 2 查看网卡具体IP信息 使用命令
  • 【Python】使用smtplib+email实现邮件发送 正文+附件+抄送

    使用smtplib email实现邮件发送 正文 附件 抄送 可以先封装一个Email类 class Email object def init self host user pwd milelist text Subject cclist
  • Mac 常用的 20 款效率神器推荐

    文章目录 01 IntelliJ IDEA JetBrains 系列产品 02 GoLand JetBrains 系列产品 03 Alfred 04 Google Chrome 05 iTerm2 06 Manico 07 Paste 08
  • 【充电站】_世俗智慧_哲学智慧_.

    世俗智慧 哲学智慧 世俗智慧是对既存价值体系的准确认识和有效利用 哲学智慧是对既存价值体系的全面反思和对根本人生问题的深刻洞见 太追求世俗智慧 你会发现自己是社会的 是公司的 是他人的 唯独不是自己的 渐渐会活得跟千千万万的别人一样 从世俗
  • 大数据基础知识——数仓的搭建(维度建模)

    数据仓库 文章目录 数据仓库 数据仓库的介绍 数据仓库的概念 OLTP和OLAP区别 数据仓库的特点 面向主题 数据集成 非易失 时变 数据仓库系统架构 系统结构图 源数据 ETL 数据仓库与数据集市 应用系统 用户层 纬度分析 维度分析介
  • zookeeper常用命令行操作

    常见的zookeeper命令行操作 在3台机器分别部署了zookeeper 3 4 5 集群 本文操作是在此基础上进行的 部署详情参见上一篇文章 客户端登录与帮助查看 由于是集群模式 所以可以在3台机器的其中任意一台进行登录 操作结果和数据
  • 公司的组成

    集团公司 group company 1 董事 board 董事长相当于国家主席 董事 Member of the Board Director 又称执行董事 是指由公司股东会选举产生的具有实际权力和权威的管理公司事务的人员 是公司内部治理
  • 一文搞懂Elastic-Job(内附源码解析)

    前言 Elastic Job是当当基于Zookepper Quartz开发并且开源的Java分布式定时任务 解决Quartz不支持分布式的弊端 它由两个相互独立的子项目Elastic Job Lite和Elastic Job Cloud组成
  • JS 浅拷贝与深拷贝

    JS 浅拷贝与深拷贝 关于深拷贝与浅拷贝的概念在此不在赘述 本篇只讲述如何实现深拷贝 针对数组与对象 1 切实可行的深拷贝 1 1 自定义拷贝函数 const cloneDeep value gt 非数组和非对象直接返回值即可 if val
  • 四开关管BUCK_BOOT三种工作模式切换基本介绍(个人学习心得)

  • 【蓝桥杯】-- 竞赛规则及说明(Python程序设计)

    蓝桥杯 竞赛规则及说明 Python程序设计 本文来自蓝桥杯官网 官网地址 http dasai lanqiao cn 组别 本次竞赛拟不分组别 所有研究生 重点本科 普通本科和高职高专院校均可报名该组 统一评奖 竞赛赛程 全国选拔赛时长
  • java运算符(++运算和+=运算)

    package sort public class Qperator public static void main String args int a 5 int b 10 int c a b int d a b a b System o
  • Quartus II 18.1的下载安装和注册

    前言 本文章主要教学Quartus II 18 1安装教学以及使用方法的介绍说明 一 Quartus的下载 进入Quartus官网 点击下载Windows版 选择所需要的软件版本 推荐使用18 1版本的 下载Quartus软件包和Model
  • verdi学习总结

    verdi学习总结 本篇文章关于Verdi的使用 并长期进行补充与更新 verdi简介 verdi用来查看fsdb波形进行代码的debug 使用流程 1 在tb文件中dump相应的要调试的信号 fsdbDumpvars 0 test top
  • 12V转5V2A电源模块的电路集合

    目前工作上所用到的电源模块都整理出来 以便之后的不时之需 建议在稳定的12V左右的电源下应用该模块 1 TPS54331DR 该芯片目前在TB中大概为1 1 RMB 价格也还能接收 主要的特点就是体积小 但是电路比较复杂 在放置PCB的过程
  • 【C++】模板特化

    模板特化的必要性 使用模板可以实现一些与类型无关的代码 但对于一些特殊类型的可能会得到一些错误的结果 比如 template
  • 机器人编程是用计算机编吗,机器人编程与电脑编程有何区别?官方专家为你详细解说!...

    近年来 无论是国外还是国内都掀起了一股编程热潮 许多编程课程纷纷涌现 很多家长为了孩子不输在起跑线上 报名各种机器人编程 电脑编程等课程 一些家长也许存在这样的疑问 我们想要报名学习编程 但是应该报机器人编程呢 还是电脑编程呢 1 机器人和
  • 如何捕获micropython 报错的详细信息 行数 具体错误内容等

    电脑端 可以用traceback来找 mpy没有这个模块 咋办 自己搞啊 翻WIKI 有个sys print exception函数 然后简单包装一下 完事儿 从不废话 都是干货 import io import sys class ERR
  • JAVA中StringBuffer和数组的区别

    共同点 两者都可以看作是一种容器 都可以存放其他的数据 不同点 StringBuffer最终会是一个字符串类型 数组可以存放多种类型的数据 每个数组的类型必须是一样的
  • NLP领域最近比较火的Prompt,能否借鉴到多模态领域?一文跟进最新进展

    PaperWeekly 原创 作者 杨浩 研究方向 自然语言处理 01 VL T5 论文标题 Unifying Vision and Language Tasks via Text Generation 收录会议 ICML 2021 论文链
Powered by Hwhale