AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


聊聊SORA背后技术之一(二):CLIP
发布日期:2024-04-18 08:27:40 浏览次数: 2595 来源:瓦力算法学研所


技术总结专栏

本文将对热门的SORA的视频生成中使用到的模型Clip进行原理介绍。


CLIP(Contrastive Language-Image Pre-training)。它是多模态领域的经典之作,后续也作为基础模型,被广泛用在DALLE2,Stable Diffusion等重要文生图大模型中,是多模态领域的一个神器。

论文地址:https://arxiv.org/pdf/2103.00020.pdf

项目地址:https://github.com/openai/CLIP


核心思想


CLIP的整体训练过程及标签数据格式如上,可以分为三个阶段:

  1. 从训练集中随机取出一张图片和标签文本,然后分别使用编码器进行编码。编码器的主体模型结构是相同的,但是在前期处理中,image encoder多增加了一步patch embedding(后文进一步介绍)。

  2. Text Encoder和Image Encoder输出的embedding向量,然后用基于余弦相似度(cosine similarity)损失来比较两个embedding向量的相似性,以判断随机抽取的标签文本和图片是否匹配。

  3. 将计算得到的损失进行梯度反向传播,不断优化训练。


完成CLIP的训练后,输入配对的图片和标签文本,则Text Encoder和Image Encoder可以输出相似的embedding向量,如果是计算余弦相似度就可以得到接近1的结果。同时对于不匹配的图片和标签文本,输出的embedding向量计算余弦相似度则会接近0。在实际应用时,就是获取Text Encoder和Image Encoder的输出向量,作为跨模态领域的沟通桥梁。


CLIP损失函数


上图为CLIP模型的前向训练的过程,需要将N个标签文本和N个图片的两两组合预测出N对可能的文本-图片对的余弦相似性,即上图所示的矩阵。这里共有N个正样本,即真正匹配的文本和图片(矩阵中的对角线元素),而剩余文本-图片对为负样本,这时CLIP模型的训练目标就是最大N个正样本的余弦相似性(每个格子上对应的向量点积),同时最小化负样本的余弦相似性。


完成CLIP的训练后,输入配对的图片和标签文本,则Text Encoder和Image Encoder可以输出相似的embedding向量,计算余弦相似度就可以得到接近1的结果。同时对于不匹配的图片和标签文本,输出的embedding向量计算余弦相似度则会接近0。以下为代码实现:


# cosine similarity as logitslogit_scale = self.logit_scale.exp()logits_per_text = torch.matmul(text_embeds, image_embeds.t()) * logit_scalelogits_per_image = logits_per_text.t()
loss = Noneif return_loss: loss = clip_loss(logits_per_text)
if not return_dict: output = (logits_per_image, logits_per_text, text_embeds, image_embeds, text_outputs, vision_outputs) return ((loss,) + output) if loss is not None else output


总结


CLIP模型具有非常大的优点,包括:

  • 多模态学习:CLIP模型能够同时处理文本和图像数据,从而在多种任务上展现出强大的性能。

  • 零样本学习能力:CLIP模型通过对大规模数据进行预训练,具备了良好的零样本学习能力,可以在见过的类别之外泛化和识别新的类别。

  • 语义理解:CLIP模型通过学习文本和图像之间的语义联系,能够实现对图像内容的更深层次理解,这使得它在一些文本提示下执行图像任务时表现出色。


但是,它也具有一些不足之处:

  • 计算资源需求:CLIP模型由于其庞大的规模和复杂性,需要大量的计算资源和存储空间来进行训练和部署,这增加了使用该模型的成本。

  • 数据依赖性:尽管CLIP模型在许多情况下表现出色,但其性能仍然高度依赖于预训练数据的质量和多样性,对于某些特定领域或语言的应用可能泛化能力较差。

  • 对抗攻击:与许多深度学习模型一样,CLIP模型也容易受到对抗性攻击,即针对输入进行微小修改以欺骗模型,这可能会导致错误的预测或行为不稳定。


CLIP模型表现的还是十分强大,作为SORA、STABLE DIFFUSION等模型的基础,赶紧学起来~



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询