【深度学习】CLIP:Learning Transferable Visual Models From Natural Language Supervision

Posted by ShawnD on June 2, 2022

Abstract

最先进的计算机视觉系统经过训练,可以预测一组预先确定的物体类别。

这种受限制的监督形式限制了它们的一般性和可用性,因为需要额外的标记数据来指定视觉概念。

直接从原始文本中学习图像是一个很有前途的选择,它利用了更广泛的监督来源。

这篇文章证明了简单的预训练任务,即预测哪个标题与哪个图像相匹配,是在从互联网收集的4亿(图像,文本)对数据集上从头学习SOTA图像表示的有效和 scalable 的方法。

在预训练之后,使用自然语言来引用学习到的视觉概念(或描述新的视觉概念),从而实现模型的 zero-shot 迁移到下游任务。

我们通过对30多个不同的现有计算机视觉数据集进行基准测试来研究这种方法的性能,这些数据集涵盖了OCR、视频中的动作识别、地理定位和许多类型的细粒度对象分类等任务。

该模型能够很好地迁移到大多数任务中,并且在不需要任何数据集特定训练的情况下,通常可以与全监督的基线相媲美。

例如,在ImageNet zero-shot 上匹配原始ResNet-50的精度,而不需要使用它训练的128万个训练示例中的任何一个。

Approach

Selecting an Efficient Pre-Training Method

最初的方法类似于VirTex,从零开始联合训练图像CNN和文本 Transformer 来预测图像的标题。

在图2中,我们展示了一个6300万个参数 Transformer 语言模型(它已经使用了ResNet-50图像编码器的两倍计算能力)学习识别 ImageNet 类的速度比一个简单得多的基线 (预测相同文本的 bag-of-words 编码)慢三倍。

这两种方法有一个关键的相似之处。他们试图预测每张图片所伴随的文本的确切单词。这是一项艰巨的任务,因为图像中会出现各种各样的描述、评论和相关文本。

最近关于图像对比表征学习的研究发现,对比目标可以比其等价的预测目标学习更好的表征。

其他研究发现,尽管图像生成模型可以学习高质量的图像表示,但它们需要比具有相同性能的对比模型多一个数量级的计算。

注意到这些发现,我们探索一个更容易的代理任务,即只预测哪个文本作为一个整体与哪个图像配对,而不是该文本的确切单词。

从相同的 bag-of-words 编码基线开始,我们将预测目标替换为图2中的对比目标,观察到 zero-shot 迁移到ImageNet的效率进一步提高了4倍。

Limitations

尽管CLIP可以为各种各样的任务和数据集灵活地生成 zero-shot 分类器,但CLIP仍然局限于在给定的 zero-shot 分类器中选择的那些概念。

不幸的是,如第2.3节所述,我们发现我们尝试的 image caption 基线的计算效率比CLIP低得多。

一个值得尝试的简单想法是,将对比目标和生成目标联合训练,希望将CLIP的效率与标题模型的灵活性结合起来。

Conclusion

这篇文章研究了是否有可能将NLP中 task-agnostic 的网络尺度预训练的成功转移到另一个领域。

这篇文章发现采用该范式会在计算机视觉领域出现相似的表现,并讨论了这一研究方向的社会意义。

为了优化训练目标,CLIP模型在预训练学习执行各种各样的任务。

这个任务学习可以利用自然语言提示使得零样本迁移到很多现有的数据集。

在足够大的规模下,这种方法的性能可以与特定于任务的监督模型相媲美,尽管还有很大的改进空间。