一、CLIP模型
论文:Learning Transferable Visual Models From Natural Language Supervision
论文地址:https://arxiv.org/abs/2103.00020
论文代码:https://github.com/openai/CLIP
1、Motivation&Contribution
Motivation
(1)在现实世界里得到大量有标签的数据是困难的,受人力、金钱、现实等因素限制,“有严格限制”的标签是难以得到的,比如,一张狗的图片它对应的标签是dog,dog是给定的类别标签,这需要人去判断这张图片的标签,得到的数据符合<image,label>。
但是“非严格限制”的标签是容易得到的,比如,小A发布了一张狗的图片,并配文:My dog is so cute!这在网络上到处都有这样的信息,我们可以将这样的数据定义为<imge,text>,显然,text文本信息是更容易得到的,不需要专门的人员进行标注。
(2)随着对比学习Contrastive Learning、Transformer、多模态学习的发展,文本和图片任务之间互相促进,使用text中的丰富的语义信息帮助图片的识别,也成为一个重要的探索方向。
(3)NLP任务中出现了BERT这样的大型预训练模型,帮助下游任务训练,那么在CV领域中是否也能有这样的模型,大家以后只要使用这个预训练好的CLIP模型,就能低成本地得到一个精度不错的模型,实现zero-shot或few-shot。事实上,CLIP确实在很多数据集上的迁移效果非常好。
Contribution:
(1)不再受传统的标准标签限制,使用一段text作为标签。
(2)将Text引入CV,使用Text语义信息帮助图片识别并达到很好的效果。
(3)预训练的CLIP模型在zero-shot、few-shot表现出色,可以在众多下游任务中拿来应用。
2、Data
前人并非没有用text信息与image信息结合的想法,但效果都不够好,而CLIP指出它们之所以达不到更好的效果是因为它们使用的数据集还不够大,因此CLIP模型收集、使用了4亿的数据,数据的形式为<image,text>,可见CLIP模型能够有这么好的迁移效果,和大量的数据也有很大关系。
3、Model
在解释模型前,可以先简单了解对比学习