clip论文阅读(Learning Transferable Visual Models From Natural Language Supervision)

目录

  • 摘要
  • [训练pre-train model的过程](#训练pre-train model的过程)
  • [将pre-train model应用于下游任务](#将pre-train model应用于下游任务)
  • 应用(待更新)

论文/项目地址:https://github.com/OpenAI/CLIP

提供了clip的pre-trained model的权重,也可安装使用pre-trained model

摘要

使用标签标注的图像数据集具有规模不足、费时费力的缺点。所以作者提出了使用(text,image)的数据训练预训练模型(pre-train model) ,实验结果表明pre-train model在下游任务(图像分类、ORC等)中表现出色。例如:pre-train model在图像集ImageNet中的ACC高于Resnet(有监督训练的模型)在其上的ACC(准确率)

训练pre-train model的过程

从图中矩阵可看出 正样本为写对角线元素共N个,负样本为其他元素共 N 2 − N N^{2}-N N2−N个。

实现的核心代码如下所示:

1、将输入的图片使用resnet或其他模型提取特征向量I_f,将输入的文本使用transformer或其他模型提取特征向量T_f。

2、对前一步生成的特征向量分别加权重向量生成I_e和T_e。

3、两个向量相乘生成NxN的矩阵logits

4、最大化批处理中N对实数对图像和文本嵌入的余弦相似度,同时最小化 N 2 − N N^{2}−N N2−N对错误对嵌入的余弦相似度。

重点来了labels为[0,1,2...,n-1]的向量,表示正确类别的索引值。

5、总结:模型输入(text,image);输出------text和image的特征向量。最终的目的是训练image encoder和text encoder,其中训练过程中的loss为步骤4中的内容。

将pre-train model应用于下游任务

传统的视觉模型需要在新的数据集上进行微调,而clip可以直接实现zero-shot的图像分类,即不需要任何训练数据,就能在某个具体下游任务上实现分类。

操作步骤:

1、根据任务的分类标签构建每个类别的描述文本:A photo of {label},然后将这些文本送入Text Encoder得到对应的文本特征,如果类别数目为N,那么将得到N个文本特征;

2、将要预测的图像送入Image Encoder得到图像特征,然后与N个文本特征计算缩放的余弦相似度(和训练过程一致),选择相似度最大的文本对应的类别作为图像分类预测结果,进一步地,可以将这些相似度看成logits,送入softmax后可以到每个类别的预测概率。

应用(待更新)

styleclip

clipdraw

clips

参考:https://openatomworkshop.csdn.net/664ee0a5b12a9d168eb70230.html

相关推荐
大拨鼠21 小时前
【多模态读论文系列】MINIGPT-4论文笔记
论文阅读
计算机-秋大田21 小时前
基于Spring Boot的船舶监造系统的设计与实现,LW+源码+讲解
java·论文阅读·spring boot·后端·vue
ssf-yasuo1 天前
SPIRE: Semantic Prompt-Driven Image Restoration 论文阅读笔记
论文阅读·笔记·prompt
YMWM_1 天前
论文阅读《Structure-from-Motion Revisited》
论文阅读
是瑶瑶子啦1 天前
【深度学习】论文笔记:空间变换网络(Spatial Transformer Networks)
论文阅读·人工智能·深度学习·视觉检测·空间变换
咔叽布吉1 天前
【论文阅读笔记】CamoFormer: Masked Separable Attention for Camouflaged Object Detection
论文阅读·笔记·目标检测
热情的Dongming2 天前
【课程总结】day34:多模态大模型之ViT模型、CLIP模型论文阅读理解
论文阅读
chencjiajy2 天前
向量模型Jina Embedding: 从v1到v3论文笔记
论文阅读·embedding·向量模型
HollowKnightZ2 天前
论文阅读笔记:DRCT: Saving Image Super-Resolution away from Information Bottleneck
论文阅读·笔记