CLIP(对比语言-图像预训练)Contrastive Language-Image Pre-Training

CLIP(对比语言-图像预训练)是一种在各种(图像、文本)对上训练的神经网络。可以用自然语言指示它在给定图像的情况下预测最相关的文本片段,而无需直接针对任务进行优化,类似于 GPT-2 和 3 的零样本功能。我们发现 CLIP 与原始 ResNet50 的性能相匹配在不使用任何原始 1.28M 标记示例的情况下,在 ImageNet 上“零样本”,克服了计算机视觉中的几个主要挑战。

本文提出的模型为Contrastive Language-Image Pre-training,简称CLIP,即对比学习语言-图像预训练模型,是通过对比学习训练的模型。因为预训练的数据集较大,所以采用对比学习提高效率

CLIP主要特点是zero-shot,即不需要微调fine-tune直接用于下游模型也有很好的效果。如在ImageNet数据集上,CLIP zero-shot的准确率可以达到监督训练的ResNet-50的效果。

CLIP也是学习NLP模型GPT-3,GPT-3在NLP领域就有zero-shot的能力。

CLIP采用的数据集有4亿个(图片-文本)对。数据规模可以和训练GPT-2的匹配。这份数据是从网络上爬取整理的,我们称这份数据为WIT(WebImageText)。

CLIP虽然zero-shot能力很强,但还是需要提高,比如离最好的监督模型还有距离,只是达到了ResNet-50的水平。

CLIP模块clip提供了以下方法:

clip.available_models()
返回可用 CLIP 模型的名称

clip.load(名称,设备=...,jit=False)
返回模型和模型所需的 TorchVision 转换,由 clip.available_models() 返回的模型名称指定。它将根据需要下载模型。 name 参数也可以是本地检查点的路径。

可以选择指定运行模型的设备,如果有则默认使用第一个 CUDA 设备,否则使用 CPU。当 jit 为 False 时,将加载模型的非 JIT 版本。

clip.tokenize(text: Union[str, List[str]], context_length=77)
返回包含给定文本输入的标记化序列的 LongTensor。这可以用作模型的输入

我们正在引入一种名为 CLIP 的神经网络,它可以从自然语言监督有效地学习视觉概念。 CLIP 可以应用于任何视觉分类基准,只需提供要识别的视觉类别的名称,类似于 GPT-2 和 GPT-3 的“零样本”功能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值