关注公众号,发现CV技术之美

1

写在前面

大多数现有的视觉和语言(V&L)模型依赖预训练的视觉编码器,使用相对较小的人工标注数据集来感知视觉世界。然而,大规模的预训练通常可以产生更好的泛化性能,例如,在大量图像标题对上训练的CLIP(Contrastive Language-Image Pre-training,对比语言图像预训练)在各种视觉任务中表现出很强的零样本迁移能力。

为了进一步研究CLIP带来的优势,作者提出在两种典型场景中,在各种V&L模型中使用CLIP作为视觉编码器:

1)将CLIP插入到特定于任务的微调中;

2)将CLIP与V&L预训练相结合,并迁移到下游任务

作者发现,CLIP显著优于使用域内标注数据训练的视觉编码器(如Bottom Up-Top Down)。作者在各种V&L任务上取得了具有竞争力或更好的结果,同时在Visual Question Answering、 Visual Entailment和V&L Navigation任务上取得了SOTA的结果。

2

论文和代码地址

How Much Can CLIP Benefit Vision-and-Language Tasks?

论文地址:https://arxiv.org/abs/2107.06383

代码地址:https://github.com/clip-vil/CLIP-ViL

3

Motivation

视觉和语言(V&L)任务能够测试系统在自然语言帮助下理解和推理视觉世界语义的能力。大多数V&L模型依靠视觉编码器感知视觉世界,将原始像素转换为表示空间的向量。

最近的工作表明,视觉表征已成为V&L模型的性能瓶颈,并强调学习强大视觉编码器的重要性。而高性能的视觉编码器通常是基于带有类别标签(如ImageNet)或边界框(如Visual Genome)的标注数据进行训练的。

然而,这类检测或图像分类数据的收集成本很高,并且视觉表示受到预定义类别标签的限制。因此,需要一种视觉编码器,该编码器在更加多样化和大规模的数据源上进行训练,不受固定标签集的限制,并且具有对没见过的对象和概念的泛化能力。

最近,CLIP被提出用来基于语言监督学习视觉概念。CLIP由视觉编码器和文本编码器组成,它是在从互联网上抓取的4亿的噪声图像-文本对上训练的。因此,收集的数据可以是大规模的,几乎不需要人工标注。

CLIP在ImageNet分类等基准数据集测试中显示了强大的Zeroshot性能。因此,作者认为它对V&L任务也有很大的潜力。然而,将CLIP作为Zeroshot模型直接应用于V&L任务是非常困难的,因为许多V&L任务需要复杂的多模态推理。因此,作者提出将CLIP与现有的V&L模型集成,用CLIP的视觉编码器替换其视觉编码器。

作者考虑了两个典型的场景:

1)将CLIP插入到特定任务中直接微调;

2) 将CLIP与V&L预训练结合起来,对图像-文本对进行训练,并迁移到下游任务中。这两种场景的模型分别表示为(没有V&L预训练)和(有V&L预训练)。

基于特定任务的微调,作者考虑了三个任务:视觉问答(Visual Question Answering)、图像字幕( Image Captioning)、视觉和语言导航(Vision-and-Language Navigation)。在V&L预训练中,作者将原来的region特征转换为了CLIP。

4

方法

4.1. Background

在上图中展示了三个典型的预训练阶段:

1)视觉编码器在标注的视觉数据集上进行训练(即,视觉编码器预训练);

2)(可选)对成对的图像字幕数据进行预训练(即,视觉和语言预训练);

3)对特定于任务的数据进行微调(即,特定于任务的微调)。

不同的模型使用不同的视觉编码器,上图展示了它们的结构和预训练过程。主要可以分为两类:

1)基于region的模型,比如BUTD目标检测器;

2)基于grid的模型,即直接从视觉主干网络提取grid特征图。

4.2.

在本节中,作者将CLIP直接插入特定于任务的模型(称为CLIP-ViL),并对三个代表性任务进行微调,包括视觉问答、图像字幕和视觉语言导航。

4.2.1. Visual Question Answering

视觉问答(VQA)的任务是提供给定图像和相关问题的答案,在本文中,作者采用了两种方法Pythia和MCAN来研究CLIP特征对VQA的影响。

可以看出,基于CLIP的CNN模型的特征,性能能够优于基于以前特征的模型。

4.2.2. Image Captioning

图像字幕(Image Captioning)旨在生成图像的自然语言描述。

如上图所示,基于Transformer结构,CLIP特征训练的模型能够明显比BUTD提取的region特征和基于ImageNet的grid特征性能更高。

4.2.3. Vision-and-Language Navigation

视觉和语言导航旨在让agent具有根据人类指令采取行动的能力。

作者在两个数据集上进行了实验,分别为R2R和RxR,结果如上表所示。可以看出,CLIP的视觉特征确实优于以前的方法。

4.3. 

最近,V&L预训练被认为是提高各种V&L任务性能的有效方法。在特定任务的微调之前,模型先在对齐的图像文本数据上进行预训练。作者探索了将CLIP预训练和V&L预训练混合的潜力,因此提出了,这是一种以CLIP视觉编码器为视觉主干,对图像文本数据进行预训练的视觉和语言模型。

4.3.1. Model Architecture

以图像和文本作为输入。对于文本,可以将其转换为一系列的subword ,然后在这些subword 上加上position和segment embeddings得到输入的文本序列。

对于图像,只需要从grid特征中提取一系列的视觉向量,然后将图像和文本进行concat,得到。最后将其输入到Transformer中进行预训练,在预训练和微调期间,其参数都是可训练的。

4.3.2. Pre-training on Image-Text Data

为了学习视觉和语言的统一表示,先对图像-文本对模型进行预训练。预训练中,作者采用了LXMERT中的三个预训练任务,分别为grounded masked language modeling, text-image matching,visual question answering。

上表展示了模型的实验结果,可以看出能够在VQA和 SNLI-VE上达到SOTA的性能。

5

实验

5.1. Zero-Shot Performance of CLIP in VQA

从上表可以看出,在zero-shot设置下,所有CLIP变体的性能都比较差,因此预训练和微调还是非常重要的。

5.2. Unfreezing the Visual Backbone

从上表可以看出,不冻结主干网络的参数能够获得进一步的性能提升。

5.3. Low Detection Performance of CLIP-ViT-B

从上面两张表,可以看出CLIP-ViT-B的grid特征的性能较差,作者认为这是因为ViT特征图内缺乏视觉定位的特性。

5.4. Qualitative Comparison of CLIP Variants

上图展示了CLIP-ViT-B和CLIP-Res50的Grad-CAM可视化的结果。

6

总结

在本文中,作者提出利用CLIP作为各种任务中不同V&L模型的视觉编码器。具体来说,作者尝试了两种方法:第一种,直接插入到特定任务的微调;在第二种方法中,将CLIP与V&L预训练相结合,然后对下游任务进行微调。对不同V&L任务的大量实验表明,与baseline相比,和可以获得具有竞争力甚至更好的性能。

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

END

欢迎加入「计算机视觉交流群

CLIP-ViL:CLIP对视觉和语言任务有多大的好处?UC BerkeleyUCLA团队给出了答案!相关推荐

  1. 学习笔记:Towards Counterfactual Image Manipulation via CLIP 基于CLIP的反事实图像处理研究

    [ACM MM-2022] Towards Counterfactual Image Manipulation via CLIP 基于CLIP的反事实图像处理研究 1.背景 2. 方法 2.1 整体框 ...

  2. 笔记:文澜:桥接视觉和语言的大规模多模态预训练 WenLan: Bridging Vision and Language by Large-Scale Multi-Modal Pre-Training

    笔记:WenLan: Bridging Vision and Language by Large-Scale Multi-Modal Pre-Training 笔记:文澜:桥接视觉和语言的大规模的多模 ...

  3. 从视觉到语言:半监督式学习的大规模实际运用

    来源:TensorFlow本文约2300字,建议阅读5分钟 Noisy Student 半监控式蒸馏的实践应用案例. 监督式学习 (Supervised Learning),即使用已知的结果数据(即标 ...

  4. 124页,UC伯克利大学胡戎航博士论文公布:视觉与语言推理的结构化模型

    来源:机器之心 本文约1500字,建议阅读5分钟 UC 伯克利大学计算机科学博士胡戎航(Ronghang Hu)的博士论文新鲜出炉,内容涉及视觉与语言推理的结构化模型. 视觉 - 语言任务(如基于图像 ...

  5. VALSE Webinar 20-29期 图文并茂, 让视觉与语言相得益彰

    目录 Richer and Deeper Unbiased Scene Graph Generation Panel 报告时间:2020年12月2日 (星期三)晚上20:00 (北京时间) 主持人:杨 ...

  6. 学习视觉和语言的多粒度对齐?字节提出新多模态预训练方法 X-VLM:代码已开源!...

    写在前面 视觉语言预训练提高了许多视觉语言任务的性能.但是,现有的多数预训练方法依赖目标检测器(object detectors)提取基于物体的视觉特征,以此学习细粒度的视觉和语言对齐,例如物体(ob ...

  7. 直播 | UCLA博士生洪逸宁:视觉和语言的联合语法归纳(ICCV 2021)

    「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...

  8. 中国人民大学金琴老师组,AI·M^3实验室招募视觉与语言方向硕博

    关注公众号,获取更多AI领域发展机会 导师介绍 金琴,清华大学计算机科学与技术系 学士.硕士:卡内基梅隆大学计算机学院 博士 研究方向 视觉与语言,多模态情感计算,人机交互 学生要求 有好的学习能力: ...

  9. CVPR 2020 | 京东AI研究院对视觉与语言的思考:从自洽、交互到共生

    纵观视觉与语言在这六年间的飞速发展史,它就仿佛是两种不同文化(计算机视觉与自然语言处理)的碰撞与交融.这里每一种文化最初的进化都是自洽的,即独立地演化形成一套完备的视觉理解或语言建模体系:演化至今,我 ...

最新文章

  1. Android 透明度百分比对应的 十六进制
  2. 光流 | 基于光流法检测跟踪视频中的汽车
  3. Java泛型的不变性和作用域
  4. Lis(bzoj 3532)
  5. C++描述 国王给骑士发放金币 ||
  6. 三分钟让面试官满意系列 - Bagging和Boosting 的联系及区别
  7. Servlet and Tomcat
  8. 安卓电视硬件测试软件,据说这是2017 最好用的智能电视软件!
  9. JVM故障分析系列之四:jstack生成的Thread Dump日志线程状态
  10. 201671030113 李星宇 《英文文本统计分析》结对项目报告
  11. php做资源嗅探器,php做的端口嗅探器–可以指定网站和端口_php技巧
  12. CAD突然没有对话框了?只能命令行输入内容??(FILEDIA=0?CMDECHO=0?)
  13. android打开iso,安卓手机端如何运行iso镜像文件
  14. i春秋《从0到1:CTFer成长之路》通关WP
  15. uni-app - 设置最外层容器高度为100%
  16. c++ mupdf 提取pdf文件里面图片
  17. hdu 6149 Valley Numer II(状压+ 枚举)
  18. 什么是服务器?服务器有哪几种类型?
  19. 免费超大量邮件发送服务Amazon SES和Mailgun提供SMTP和API支持
  20. JS 浮点数转整数的方法

热门文章

  1. maven配置其他源下载jar包(详细)
  2. 随机样本一致性:一种用于图像分析和自动制图的模型拟合模型(6)--(计算共线矩阵T)
  3. Goalng笔记——排序和查找
  4. HTML 元素和属性--备份
  5. pytorch load state dict_学习Pytorch过程遇到的坑(持续更新中)
  6. ios 表情符号 键盘_ios – 将键盘布局更改为表情符号
  7. android 瀑布流_软件工程过程模型之瀑布模型
  8. php试题及答案 博客,转php面试题及我的答案(一)
  9. web用户登录界面设计_UI设计师怎样做界面设计?
  10. java动态生成excel_java动态生成excel打包下载