# Contrastive Learning(对比学习)--CLIP笔记(一)

Contrastive Learning(对比学习)–CLIP笔记(一)

参考:CLIP 论文逐段精读【论文精读】_哔哩哔哩_bilibili

CLIP简介

CLIP是一种多模态预训练模型,由OpenAI在2021年提出,论文标题:Learning Transferable Visual Models From Natural Language Supervision ([2103.00020] Learning Transferable Visual Models From Natural Language Supervision (arxiv.org)

论文有四十多页,作者做了超级多的实验,看李沐老师和朱老师的视频讲解也算是一次知识蒸馏([1503.02531] Distilling the Knowledge in a Neural Network (arxiv.org) by Hinton)了

通过大量的图像-文本对进行训练,CLIP的核心思想是通过对比学习来训练模型。它将图像与文本配对,并尝试将它们映射到相同的特征空间中。在训练过程中,模型区分真实配对的图像和文本与错误配对的图像和文本。

clip涌现出的能力:很强的迁移能力,很强的zero shot能力,在不使用imagenet微调的情况下,和resnet50效果接近

在超过三十个数据集上测试,包括ocr,视频动作检测等任务

而且是一篇多模态的工作

如何训练

训练文本图像对的模型需要大数据集,所以OpenAI收集了很多数据,训练样本是图片文本对(4亿),如图所示,利用自然语言处理获得的监督信号进行训练
在这里插入图片描述
对角线是正样本(n个),负样本(n^2-n个)

用自然语言作为监督信号:(1)不需要再标注数据,只需要下载图片和文字的配对

(1,n)的标签->文本,模型的输入输出自由度变大很多

(2)图片文本绑定,学习到的不只是视觉特征,多模态特征容易去做zero shot 学习

对比任务:判断文本和图片是不是一个配对,而不是逐字逐句的去预测图像对应的文本,所消耗的计算资源大大减少,且更简单(生成式变为判别式)

生成型对比函数换成对比型函数,训练效率提升四倍

在这里插入图片描述
clip训练伪代码:

在这里插入图片描述
I[n,h,w,c]图片维度(batch_size,244,244,3)(例如)

T[n,l]文本维度(batch,length)

通过文本,图像编码器得到文本和图像特征,经过归一化(中间还要经过一个投射层,主要是为了从单模态转换到多模态)

有了n个图像的特征和n个文本的特征,计算图像特征和文本特征之间的余弦相似度

(logits):用于分类的logits

使用logits和ground truth做loss

创建gro

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值