Plug-and-Play VQA

结合大型预训练模型和零训练的零样本 VQA
2022-ACL
Plug-and-Play VQA:Zero-shot VQA by Conjoining Large Pretrained Models with Zero Training
代码

一、摘要和结论

Abstract

VQA 是视觉和语言推理的一个标志,是零样本设置下的一个具有挑战性的任务。我们提出了即插即用的 VQA 模型(PNP-VQA),这是一个零样本 VQA 的模块化框架。与大多数现有工作相比,PNP-VQA 不需要对预训练模型(Pretrained Language Model)进行额外的训练。此外,我们建议使用自然语言和网络解释作为中间表示,将预训练模型联系在一起。

首先,生成问题引导的图像信息 caption,并将 caption 传递给 PLM 作为回答问题的上下文,并将 caption 传递给 PLM 作为回答问题的上下文,超越端到端训练 baseline。

Conclusion

实验结果

PNP-VQA 在零样本的 VQAv2 和 GQA 数据集上取得了最先进的成果。在 VQAv2 上使用了 11B 大小的参数时,比 80B 参数的 Flamingo 模型的性能好 8.5%,使用 738M 的 PLM 参数时,PNP-VQA 在 GQA 上比使用 740M PLM 参数的 FewVLM 提高了 9.1%

结论

提出了 PNP-VQA 框架,通过将现成的预训练模型结合起来,为零样本 VQA 提供零附加训练(zero addition training)。PNP-VQA 利用图像-文本匹配模块来确定与当前问题相关的图像块。然后图像字幕模块生成问题引导的 caption,该 caption 由问题回答模块处理以产生答案。PNP-VQA 在多个 VQA 基准测试中实现了最先进的性能。

局限性

PNP-VQA 的优点和缺点都源于零训练模块化的系统设计。PNP-VQA 具有预训练模型的功能,但也继承了这些模型的偏差(歧视)。
该算法具有零训练的效率,但由于过程多步,引入了额外的推理成本。

二、文献综述

Introduction

zero-shot 和 few-shot 领域

通过扩展预训练语言模型 PLMs 及其训练数据,大幅提升许多自然语言推理任务的性能,尤其是 zero-shot 和 few-shot

  • BERT: Pre-training of deep bidirectional transformers for language understanding.
  • Roberta: A robustly optimized bert pretraining approach.
  • Language models are few-shot learners.
  • Exploring the limits of transfer learning with a unified text-to-text transformer.
  • GPT-NeoX-20B: An open-source autoregressive language model.
  • Multitask prompted training en- ables zero-shot task generalization
  • Finetuned language models are zero-shot learners.

受此启发,一个自然的想法就是利用 PLMs 也应该可以提高视觉语言推理任务的零样本性能。

将 PLM 用于视觉语言任务

现有的大多数方法都要求 PLM 对视觉模式进行重大调整,需要设计新的网络组件和培训目标。

  1. 在 PLM 中加入从零开始训练的一个全新的层级结构
    • VL-Adapter: Parameter-efficient transfer learning for vision-and-language tasks.
    • Flamingo: a visual language model for few-shot learning.
  2. 训练视觉编码器,向冻结的 PLM 输出软提示
    • Multimodal few-shot learning with frozen language models.
  3. 训练视觉编码器和插入 PLM 的全新层级结构
    • VisualGPT: Data-efficient adapta- tion of pretrained language models for image cap- tioning.
    • Magma – multimodal augmentation of generative models through adapter-based finetuning.
  4. 零样本训练中,使用各种视觉语言的预训练目标
    • 图像字幕: Flamingo: a visual language model for few-shot learning.
    • 图像字幕 MaskLM: A good prompt is worth millions of parameters: Low-resource prompt-based learning for vision-language models.

这样看来,将 PLM 用于视觉语言任务十分复杂。所以通过简单重组大规模预训练模型或者基础模型来执行新任务的能力而不需要改变架构或增加额外的训练,这样才是我们想要的技术发展方向。
这样的系统可以通过简单地重新连接少量的基础模型来动态地适应以前未知的任务(zero-shot or few-shot)
如果在此基础上,没有一个针对性的端到端的训练,是很难获得高性能的。

Plug-and-Play VQA

提出了 Plug-and-Play VQA,这是一个零样本可视化问题回答的框架。它将大型预训练模型与零额外训练相结合,并在零样本 VQAv2 和 GQA 上实现了最先进的性能。为了连接视觉和语言模态,使用一个预训练的视觉语言模型 PVLM (BLIP: bootstrapping language-image pre-training for unified vision-language understanding and generation.),它用文本 caption 描述视觉信息。为了获得相关且信息丰富的 caption,我们采用网络可解释性技术(Grad-CAM: Visual explanations from deep networks via gradient-based localization.),来检测与问题相关的图像块。然后随机为这些图像块生成 caption。最后用一个 PLM (Least-to-most prompting enables complex reasoning in large language models.)来回答 caption 中的问题。

模块化的理论支撑

认知科学和神经科学的研究表明,人类的认知系统在很大程度上是模块化的。Fodor(1983)的开创性工作认为,人类的低级认知是由几个快
速、自主和领域特定的模块组成的。纯粹出于实用目的,人工智能的模块化设计很容易利用每个单独组件的快速进展,因为这些组件可以单独更换和更新,而不影响系统的其他部分。

本文中利用 PLM 和 PVLMs 的最新进展,为零样本 VQA 提供了这样的模块化设计,并将它们与网络可解释性的创新应用相结合。

贡献

  1. PNP-VQA:这是一种用于未训练的零样本 VQA 模块化框架。它的灵活性是的 PNP-VQA 能够随着预训练模型的不断发展而共同发展。
  2. 准确的 QA :除了自然语言外,建议使用网络解释作为训练的资源管理器和资源管理器之间的接口。通过可解释性技术,创建广泛覆盖预问题相关信息的图像 caption,使得准确的 QA 成为可能。
  3. 性能展示:在多个基准上展示了最先进的零样本 VQA 性能。在 VQAv2 上,PNP-VQA 11B 版本比 Flamingo 80B 版本提升了 8.5%,应用了广泛的端到端 VLPretraining。在 GQA,PNP-VQA Large 上的表现比 FewVLM Large 高出 9.1%。

Related Work

大规模图像-文本预训练

大规模的图像文本预训练是神经网络研究的一个热门方向。人们提出了各种视觉语言预训练任务,包括

  1. image-conditioned language modeling
    • Multimodal few-shot learning with frozen language models.
    • Flamingo: a visual language model for few-shot learning.
  2. Mask Language Modeling
    • LXMERT: Learning cross-modality encoder representations from trans- formers.
    • ViLBERT: Pretraining task-agnostic visio-linguistic representations for vision-and-language tasks.
    • UNIMO: Towards unified-modal under- standing and generation via cross-modal contrastive learning.
  3. prefix language modeling (前缀语言建模)
    • SimVLM: Simple visual language model pretraining with weak supervision.
  4. image-text matching
    • VisualBERT: A simple and performant baseline for vision and language.
    • UNITER: universal image-text representation learning.
    • Align before fuse: Vision and language representation learning with momentum distillation.
  5. image-text contrastive learning (图像文本对比学习)
    • Learning transferable visual models from natural language supervision.
    • Scaling up visual and vision-language representation learning with noisy text supervision.
    • Align before fuse: Vision and language representation learning with momentum distillation.
  6. 经过预训练之后,几个模型在图像-文本检索领域表现出零样本的能力
    • Scaling up visual and vision-language representation learning with noisy text supervision.
    • Learning transferable visual models from natural language supervision.
    • Multi-grained vision language pre-training: Aligning texts with visual concepts.
  7. image captioning (图像字幕)
    • SimVLM: Simple visual language model pretraining with weak supervision.
    • BLIP: bootstrapping language-image pre-training for unified vision-language understand- ing and generation.

总之,zero-shot VQA 对于模型的推理能力要求较高,仍然是一个具有挑战性的任务

适用 PLMs 的 zero-shot VQA

适用 PLMs 的 zero-shot VQA 已经显示出良好的效果。为了将视觉信息整合到 PLM 中,现有的大多数方法都采用对图像-文本数据进行额外的视觉语言训练

  1. Frozen:在训练视觉编码的同时,让巨大的 PLM 保持冻结,以在 QA 中保留知识。视觉编码器的输出被附加到文本中,作为对冻结语言模型的提示。
    • Multimodal few-shot learning with frozen language models.
  2. FewVLM:使用 prefix Language modeling 和 Mask Language Modeling 对 PLM 进行微调。
    • A good prompt is worth millions of parameters: Low-resource prompt-based learning for vision-language models.
  3. VLKD:在微调过程中使用 CLIP 作为教师模型,将多模态知识提取到 PLM 中。
    • Enabling multimodal generation on CLIP via vision-language knowledge distillation.
  4. Flamingo:向预训练的视觉模型和 PLM 添加了额外的层,并在数十亿图像-文本对上训练新的层。
    • Flamingo: a visual language model for few-shot learning.

PNP-VQA

与上述工作不同,PNP-VQA 直接使用预先训练的模型,既不进行架构修改,也不进行额外的训练。与我们工作最为相似的是 PICa (An empirical study of GPT-3 for few-shot knowledge-based VQA),将图像转化为单个标题,并采用 GPT-3 进行zero-shot VQA。相比之下,PNP-VQA 生成多个问题导向的 caption,编码之后对 caption 进行融合,能有效利用大量的 caption,获得了可观的性能收益。

  • zero-shot VQA 的正交研究方向是对 VLMs 进行基于 caption 生成的合成 VQA 示例的训练
    • All you may need for VQA are image captions.
    • WeaQA: Weak supervision via captions for visual question answering.
  • 而 PNP-VQA 不需要额外的训练。

自然语言作为中间表示

自然语言作为不同模型或者多步骤推理之间的中间表示。

  • 最早:Learning with latent language.
  • 大型 PLMs:学习自然语言描述,这些描述在图文文本匹配模型中充当 few-shot 分类器
    • Learning with latent language.
    • Few-shot image classification by generating natural language rules.
  • 使用微调 PLM 生成中间推理步骤
    • Natural language deduction through search over statement compositions.
  • 鼓励 PLM 生成复杂问题的子问题描述,并将子问题反馈给 PLM 以分层次解决

三、理论研究

四、实验

我们使用 VQAv2 验证集,因为最近一些作品仅在这个数据集上评估它们的性能。通过开放式生成得到答案,并在精准匹配的基础上进行评估。

实验设置

数据集

采用多个 zero-shot 的 VQA 基准,包括 VQAv2 的验证集(214,354 个问题)和测试开发集(107,394 个问题),OKVQA 的测试集(5046 个问题)以及 GQA 平衡的测试开发集(12,578 个问题)。

衡量指标

我们报告了 VQAv2 和 OK-VQA 的软准确性,以及解释了多个 ground truth 的答案,对于 GQA,我们则只报告了准确率 acc。

实验细节

  1. Image-Question Matching Module:采用 BLIP,并在 129M 的图像-文本对上预训练了 ViT-L/16 架构。最初的 BLIP-ITM(Image-Text Matching) 和 BLIP-Caption模型进一步调整了 2017 年 COCO Caption 的分割训练集,其中部分与 VQAv2 和 OKVQA 重叠。为了防止数据泄露,对 2014 COCO Caption 的分割训练集进行了调整,使其与 VQA 评估数据集不重叠。强调与公开发布的 BLIP 相比,这代表的是更少而不是更多的训练。
  2. Question-Answer Module:采用 UnifiedQAv2,对不同文本 QA 数据集进行训练。因为 UnifiedQAv2 在训练过程中完全没有视觉模态,所以训练数据不会和 VQA 数据集重叠。
  3. 除非另外说明,否则我们对每个问题使用总共 100 个 caption。我们为 GradCAM 选择了 ITE 网络和第 8 个交叉注意层。采样 K ′ = 20 K'=20 K=20 个图像 patches 来生成每个标题,并使用 K=50 来进行 top-K 解码。对于 VQAv2 和 OK-VQA 我们应用 FiD,每次用一个标题对问题进行编码。但对于 GQA 我们将每一个问题编码为一组五个 caption。GQA 由于需要合成的视觉推理,因此每个问题往往都需要更多的上下文信息。
  4. GPU:8 x A100

实验结果

![[Pasted image 20230831193447.png]]

结果如上表所示。在 VQAv2 和 GQA 上,PNP-VQA 比以前的方法有更大的优势。在VQAv2 测试开发中,PNP-VQA 11B 的性能比第二好的技术 Flamingo 80B 高出8.5%。PNP-VQA 3B 的表现比 Flamingo 80B 好 7.2% ,尽管它的尺寸比Flamingo 3B 小了 14.3%。在 GQA 上, PNP-VQA large 的表现比 FewVLM large 好 9.1%,尽管 PLM 规模类似,但缺乏端到端培训。只有在 OK-VQA 上,Flamingo 的表现优于PNP-VQA。OK-VQA 需要图像中不存在的外部知识,仅靠好的 caption 是解决不了问题的。我们假设,在 Flamingo 庞大的视觉语言数据集上的端到端训练诱导了图像和知识概念之间的映射,这有助于 OK-VQA。然而,PNP-VQA 在 OK-VQA 上的表现仍然比其他所有没有在巨大的 Flamingo 数据上训练过的 baseline 要好。与使用 175B 参数的语言连接 PICa 相比,PNP-VQA 11B 实现了 18.2% 的显著提高。

实验结果分析

结果强调了使用语言模型进行 zero-shot VQA 的困难,而不需要任何 Vision-Language training(VL 训练)。PICa 使用了 175B 的参数语言模型,实现了与 FewVLM large 相当的性能,后者的语言模型要小 236 倍,但是在 VL 数据上进行了微调。另一方面,对十亿级别的语言模型进行微调,可能会导致沉重的计算成本和灾难性遗忘的风险。PNP-VQA 展示了一种不同范式的可行性:在零训练的情况下为 VQA 使用 10 亿规模的预训练语言模型。

精读

这一遍需要知道每一句话在做什么,每段话在说什么。在读这篇文章的时候脑子里可以不断去重复实现这篇文章。比如:

  1. 作者提出了什么问题,作者是用什么方法来解决这个问题的,如果换做你,你会用什么方法来解决这个问题;

  2. 作者是怎么做实验的,如果换做你,你会怎么做实验,能不能比他做的更好;

  3. 作者说这篇文章有些地方没有继续做下去,留到之后的工作了,然后你可以想,如果你来做,是不是可以做下去,往前走呢。

这一遍最关键的是要知道每一句话者在做些什么,而且能够从大脑中脑补一下作者的整个过程是什么样子,使得好像是你自己再做一遍一样。

看完这遍之后,你大概就对整个论文的细节都比较了解了,然后合上文章,大概也能回忆出很多细节。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安徒生在ACL讲一千零一夜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值