一招入魂 | CLIPPO:利用Transformer建立多模态模型新范式!

欢迎关注『CVHub』官方微信公众号!

论文链接:

https://arxiv.org/pdf/2212.08045.pdf

代码链接:

https://github.com/google-research/big_vision

论文标题:

Image-and-Language Understanding from Pixels Only

导读

Example training images with rendered questions (black letters on gray background) from the VQAv2 dataset

这篇论文讨论了一种称为 CLIP-Pixels Only(CLIPPO)的多模式模型,它是一个纯基于像素的模型,可以用来执行图像、文本和多模式任务。CLIPPO 通过单一的编码器处理正常的图像和渲染成图像的文本。CLIPPO 在图像检索和零射击图像分类等任务中表现出色,几乎与 CLIP 一样好,但参数数量减少了一半,并且没有专门的文本塔或嵌入。当通过图像-文本对比学习和下一句对比学习联合训练时,CLIPPO 可以在自然语言理解任务中表现良好,而无需任何词级损失(语言建模或蒙版语言建模),并且优于基于像素的先前工作。令人惊讶的是,CLIPPO 可以通过将问题和图像一起渲染来获得良好的视觉问答准确度。最后,我们利用 CLIPPO 不需要分词器的事实,表明它可以在多语言多模式检索中取得良好的性能,而无需修改。

综上所述,这篇论文研究了 CLIPPO 这一多模式模型,它使用了单一的编码器处理图像和文本,并通过对比损失进行训练。该模型在图像检索和零射击图像分类等任务中表现出色,而且参数数量比 CLIP 少了一半。当联合训练时,CLIPPO 还可以在自然语言理解任务中表现良好,并且在视觉问答中获得良好的准确度。此外,CLIPPO 还可以在多语言多模式检索中取得良好的性能。

背景

近年来,基于 Transformer 的大规模多模式训练已经在不同领域改善了最先进的技术,包括视觉、语言和音频。特别是在计算机视觉和图像语言理解方面,单一的大型预训练模型可以胜过特定任务的专家模型。然而,大型多模式模型通常使用模态或数据集特定的编码器和解码器,并因此导致复杂的协议。例如,这些模型通常涉及在各自的数据集上分别训练模型的不同部分,具有数据集特定的预处理,或以任务特定的方式传递不同的部分。这些模态和任务特定的组件可能会导致额外的工程复杂度,并在引入新的预训练损失或下游任务时带来挑战。开发一个能够处理任何模式或模式组合的单一端到端模型将是多模式学习的有价值的一步。在这里,我们专注于图像和文本。

许多关键的统一性加速了多模式学习的进展。首先,Transformer 架构已被证明可以作为通用的骨干,在文本、视觉、音频和其他领域中均表现良好。其次,许多论文探索了将不同的模态映射到单一共享嵌入空间以简化输入/输出接口,或开发单一接口以适用于多个任务。第三,模态的替代表示方法允许在一个领域中使用为另一个领域设计的神经架构或训练过程。

在本文中,我们探究了使用纯像素模型进行文本和图像的多模式学习。我们的模型是单一的视觉 Transformer,它处理视觉输入或文本,或将它们一起渲染为 RGB 图像。所有模态都使用相同的模型参数,包括低级特征处理;也就是说,没有模态特定的初始卷积、分词算法或输入嵌入表。我们仅使用单一任务训练我们的模型:对比学习,如 CLIP 和 ALIGN 所普及的。因此,我们称我们的模型为 CLIP-Pixels Only(CLIPPO)。

我们发现,尽管 CLIPPO 没有模态特定的塔,但它在 CLIP 设计的主要任务(图像分类和文本/图像检索)中的表现与 CLIP 相似(相差 1-2%)。令人惊讶的是,CLIPPO 可以在没有任何从左到右的语言建模、蒙版语言建模或明确的词级损失的情况下以较高水平执行复杂的语言理解任务。特别是,在 GLUE 基准测试中,CLIPPO 的表现优于经典的 NLP 基线(如 ELMO+BiLSTM+attention),优于先前的像素蒙版语言模型,并且接近 BERT 的分数。有趣的是,当简单地将图像和文本渲染在一起时,CLIPPO 也可以在 VQA 中取得良好的表现,尽管从未在此类数据上进行过预训练。与常规语言模型相比,像素模型的立竿见影的优势在于不需要预先确定词汇表;因此,我们观察到与使用经典分词器的等效模型相比,多语言检索的表现有所改善。最后,我们观察到,在某些情况下,训练 CLIPPO 时会填补先前观察到的模态差距。

方法

CLIP [50] trains separate image and text encoders,
each with a modality-specific preprocessing and embedding, on
image/alt-text pairs with a contrastive objective

对比语言-图像预训练已成为在网络规模数据集上训练多功能视觉模型的强大、可扩展范式。具体来说,此方法依赖于可从网络自动收集的大规模图像/备用文本对。因此,文本描述通常很嘈杂,可能包括单个关键字、关键字集或可能包含许多描述图像内容的属性的详细描述。使用此数据,联合训练两个编码器,即将 alt-text 嵌入的文本编码器和将对应图像嵌入的图像编码器嵌入共享潜在空间。这两个编码器使用对比损失进行训练,鼓励对应图像和 alt-text 的嵌入相似,同时与所有其他图像和 alt-text 嵌入不同。

一旦训练完成,这样的编码器对可以用于许多方面:它可以专门通过文本描述对一组固定的视觉概念进行分类(零点分类);嵌入可用于给定文本描述检索图像,反之亦然;或者,可以以监督方式将视觉编码器转移到下游任务,通过在标记数据集上进行微调或在冻结的图像编码器表示上训练一个头。原则上,文本编码器可以用作独立的文本嵌入,但据我们所知,这种应用尚未得到深入研究,一些作者认为 alt-text 的质量较低导致文本编码器的语言建模性能较弱。

先前的工作已经表明,可以使用单个共享变压器模型(以下简称单塔模型,或 1T-CLIP)实现图像和文本编码器,其中使用补丁嵌入嵌入图像,使用单独的单词嵌入嵌入分词文本。除了模态特定的嵌入之外,所有模型参数都用于两种模态。虽然这种共享通常会导致图像/图像语言任务的性能下降,但也会将模型参数数量减半。

CLIPPO 将这个想法更进一步:文本输入在空白图像上呈现,随后完全作为图像处理,包括初始补丁嵌入。 通过像之前的工作一样对这个单独的视觉变压器进行对比性训练,我们获得了一个单独的视觉变压器模型,它可以通过单独的视觉界面来理解图像和文本,并提供一个单独的表示,可用于解决图像、图像语言和纯语言理解任务。

除了多模态的灵活性,CLIPPO 还缓解了文本处理常见的障碍,即开发适当的分词器和词汇。这在大规模多语言环境中尤其有意义,因为文本编码器必须处理数十种语言。

我们发现,在图像/替代文本对上训练的 CLIPPO 在常见的图像和图像语言基准测试中与其 1T-CLIP 对应物相当,并且与 GLUE 基准测试中的强基线语言模型相比具有竞争力。然而,由于替代文本的质量往往不是语法正确的句子,因此仅从替代文本中学习语言理解是根本有限的。因此,我们通过基于语言的对比训练来增强图像/替代文本对比性预训练。具体来说,我们考虑从文本语料库中采样的连续句子的正面对、不同语言的翻译句子对、反翻译句子的对以及带有单词辍学的句子对。这些文本/文本对可以通过补充图像/替代文本的批次(渲染的)文本/文本对来无缝集成到对比训练中。

实验

Vision and vision-language cross-modal results.

Results for the GLUE benchmark (dev set).

Results on the VQAv2 benchmark (test-dev set).

Zero-shot image/text retrieval performance on CrossModal3600.

局限性

Visualization of the modality gap for CLIP∗
and
CLIPPO optionally trained with 25% C4 data.

我们提出并评估了 CLIPPO,它产生了一个单一的 ViT,可以使用图像作为唯一的输入模态联合理解图像和语言。CLIPPO 在许多考虑的任务中与 1T-CLIP 基线的性能相匹配,与 CLIP∗ 基线相比仅产生轻微下降,特别是考虑到它的参数少于相当于 CLIP∗ 的参数的一半。尽管如此,仍存在一些局限性,如下所述。

首先,为了在 GLUE 上获得与 PIXEL 和 BERT 相竞争的语言理解性能,必须使用对比训练与文本对。虽然在所有考虑的任务中将 25% C4 数据添加到批次似乎达到了良好的平衡,但它确实会导致零射击图像分类和图像/文本检索中的非轻微下降。随着 C4 示例的比例增加,这种下降会更加严重。我们观察到了模态差距的相关变化,并且在协同训练的背景下进一步研究表示可能有助于开发在协同训练环境中获得更好整体性能的模型。

目前,CLIPPO 依赖于干净渲染的文本作为输入,因此无法在没有进一步调整的情况下处理文档或网页中的文本(除了 CLIP 类模型从图像/文本对学习的基本 OCR 能力外)。我们强调,这篇论文的目标并不是开发先进的 OCR 和文档理解,而是使用增强的噪声渲染文本来模拟文档和网站的分布很可能会导致在所有考虑的任务中表现更差,因为图像/文本对之间的相关性较弱,提供较弱的学习信号。但是,将 CLIPPO 进一步开发以处理更少干净的视觉文本将会为许多额外应用打开大门。

像 CLIP、BERT、PIXEL 和许多其他模型一样,CLIPPO 使用的是编码器设计,因此缺少产生文本输出的能力。为编码器模型提供生成能力的常见方法(例如,图像字幕或 VQA)是将它们与(可能是预先训练的)语言模型相结合。这种方法自然也适用于 CLIPPO 和 PIXEL,但在某些(例如多语言)情况下会挫败视觉文本的优势。尽管在机器翻译的背景下探索了视觉文本输出,但似乎还不清楚以无 tokenizer 的方式生成文本的是一种什么样的可扩展方法。

根据这篇论文的摘要,CLIPPO是一种基于像素的多模态模型,可以同时处理图像、文本和多模态任务。它使用视觉变换器(ViT)作为单个编码器,处理图像和文本(渲染为图像)。CLIPPO使用对比学习作为唯一的任务进行训练,可以在图像分类和文本/图像检索等任务中与CLIP相当。此外,CLIPPO还可以在自然语言理解任务中获得良好的性能,并在视觉问题回答(VQA)中获得良好的准确率。 CLIPPO的一个优势是它不需要预先确定词汇,因此可以在多语言多模态检索中获得更好的性能。然而,CLIPPO目前仍然有一些限制,例如对于文本输入的处理能力有限,缺乏生成文本输出的能力,并且对于细粒度的调整和平衡检索性能还需要进一步的步骤。

总结

本文提出了一种使用单个视觉变换器(ViT)来处理图像和文本的方法,称为CLIPPO。这种方法减少了设计选择和参数数量,可以提高语言理解能力,并增加了跨多种语言的通用性。 本文还探讨了增强语言理解的方法,在Web数据上训练的传统图像/文本对比模型(例如CoLA中的语法理解较差)表现不佳时有所改善。本文通过与文本对进行共同训练来证明这一点是可行的,CLIPPO模型在保持良好的图像理解能力的同时,表现优于优秀的NLP基线。

这篇论文提出了一种新的多模态模型,称为 CLIPPO,它使用单个视觉转换器(Vision Transformer)来处理图像、文本或两者的组合。CLIPPO 使用单一的对比性学习任务进行训练,因此它可以同时处理图像、文本和多模态任务。CLIPPO 在图像分类和文本/图像检索任务中的表现与 CLIP 几乎相同,尽管它没有模态特定的塔。当使用图像-文本对比性学习和下一句对比性学习联合训练时,CLIPPO 可以在自然语言理解任务中表现良好,而无需任何单词级别的损失(语言建模或屏蔽语言建模),并超越基于像素的先前工作。 令人惊讶的是,CLIPPO 可以通过将问题和图像渲染在一起来在视觉问答中获得良好的性能。

CVHub

如果您也对人工智能和计算机视觉全栈领域感兴趣,强烈推荐您关注有料、有趣、有爱的公众号『CVHub』,每日为大家带来精品原创、多领域、有深度的前沿科技论文解读及工业成熟解决方案!欢迎添加小编微信号: cv_huber,备注"CSDN",加入 CVHub 官方学术&技术交流群,一起探讨更多有趣的话题!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CVHub

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

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

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

打赏作者

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

抵扣说明:

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

余额充值