51-7 CLIP,Contrastive Language-Image Pre-training 论文精读

今天我们一起来读一篇来自OpenAI的CLIP工作。原文Learning Transferable Visual Models From Natural Language Supervision,简称CLIP,Contrastive Language-Image Pre-training。自从2021年2月底提出,就立马火爆全场,他的方法出奇的简单,但是效果又出奇的好,很多结果和结论都让人瞠目结舌。
比如,作者说CLIP的这个迁移学习能力是非常强的。
CLIP预训练好后,能够在任意一个视觉分类数据集上取得不错的效果,而且最重要的是zero shot,意思就是说他完全没有在这些数据集上去做训练,就能得到很高的效果。
作者做了超级多的实验,他们在超过30个数据集上做了测试,涵盖的面也非常广,包括了OCR,包括视频动作检测,还有就是坐标定位和许多细分类任务。
在所有这些结果之中,其中最炸裂的一条就是在ImageNet上的这个结果了,CLIP在不使用ImageNet训练集的情况下,也就是不使用128万张图片中任何一张训练的情况下,直接zero shot做推理就能获得和之前有监督训练好的这个ResNet-50取得同样的效果。
就在CLIP这篇工作出来之前,很多人都认为这是不可能的事情。
到底他是怎么去做这个zero的推理的,我们现在直接就来看文章的图一,也就是CLIP的这个模型总览图。

### 关于Contrastive Language-Image Pre-training (CLIP) 的论文下载与阅读 #### CLIP的核心概念 CLIPContrastive Language-Image Pre-training)是一种基于对比学习的多模态模型,其主要目标是通过大量的文本-图像对来训练一个能够理解视觉和语言之间关系的通用表示[^3]。该模型利用对比学习的优势,在预训练过程中无需精确预测某个特定的文本描述,而是专注于判断哪些文本更可能与给定的图像相关联[^5]。 #### 论文获取途径 CLIP的相关研究由OpenAI团队完成,原始论文名为《Learning Transferable Visual Models From Natural Language Supervision》。可以通过以下几种方式进行下载: 1. **官方链接**: OpenAI通常会公开发布其研究成果,可以直接访问OpenAI官网并搜索“CLIP”或“Learning Transferable Visual Models From Natural Language Supervision”,找到PDF版本进行下载。 2. **学术资源平台**: 使用Google Scholar或其他学术搜索引擎输入关键词“Contrastive Language-Image Pre-training”或“CLIP paper”。这些平台上可能会提供免费的PDF下载选项。 3. **第三方存储库**: 如果无法直接从官方网站获得,则可以尝试在arXiv上查找是否有上传的版本。大多数机器学习领域的最新进展都会第一时间发布在此处。 #### 阅读建议 为了更好地理解和吸收CLIP的内容,推荐按照如下结构展开阅读: - **摘要部分**:快速了解整个工作的背景意义以及取得的主要成果。 - **方法论章节**:重点掌握如何构建损失函数实现对比学习机制;具体到正样本负样例的选择策略等方面[^4]。 - **实验分析**:注意作者是如何验证零样本迁移能力的有效性的,并且观察跨多种下游任务的表现情况。 以下是Python代码片段用于加载已发布的CLIP模型作为示例: ```python import clip import torch device = "cuda" if torch.cuda.is_available() else "cpu" model, preprocess = clip.load("ViT-B/32", device=device) image = preprocess(Image.open("example_image.jpg")).unsqueeze(0).to(device) text = clip.tokenize(["a diagram", "a dog", "a cat"]).to(device) with torch.no_grad(): image_features = model.encode_image(image) text_features = model.encode_text(text) logits_per_image, logits_per_text = model(image, text) probs = logits_per_image.softmax(dim=-1).cpu().numpy() print(f"Label probs: {probs}") ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

UROVAs驭星达

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

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

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

打赏作者

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

抵扣说明:

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

余额充值