大家好,这里是好评笔记,本文为试读,查看全文请移步公主号:Goodnote。本文详细介绍这几年AIGC火爆的隐藏功臣,多模态模型:CLIP、BLIP。
@[toc]
CLIP(Contrastive Language-Image Pre-training)
CLIP 是由 OpenAI 提出的一个用于多模态学习的模型,通过对比学习(contrastive learning)进行图像-文本联合学习的创新模型。CLIP 训练图像和文本的联合表示。
论文:Learning Transferable Visual Models From Natural Language Supervision
1. CLIP 的核心思想
CLIP 的核心思想是将图像和文本映射到一个共享的嵌入空间中,并通过对比学习来最大化匹配图像-文本对之间的相似度,最小化不匹配图像-文本对的相似度。模型通过大量数据上进行预训练,具备强大的通用化能力,即零样本学习(zero-shot learning),这意味着它可以处理没有见过的任务或类目而无需重新训练。
2. CLIP 的模型架构
CLIP 的架构包括图像编码器和文本编码器,它们分别将图像和文本输入嵌入到同一个向量空间。图像和文本分别经过编码后,计算它们在向量空间中的相似度来进行对比学习。
2.1 图像编码器
CNN(如 ResNet)或 Vision Transformer (ViT) 作为图像编码器
- ResNet 或 ViT 接受图像作为输入,并输出包含了图像的高层语义信息的向量。
2.2 文本编码器
Transformer 作为文本编码器。这个编码器会将输入的文本描述(自然语言)转化为一个向量表示。
- 文本编码器会将每个文本通过多层 Transformer 的处理,生成包含了文本的语义信息向量。
2.3 对比学习机制
CLIP 的训练目标:通过对比学习(contrastive learning) 的损失函数 让正确的图像-文本对的表示在向量空间中尽可能接近,而错误的图像-文本对在向量空间中尽可能远离。
2.4 对比损失(Contrastive Loss)
对比损失(Contrastive Loss):CLIP 使用了一种基于InfoNCE的对比损失函数。对于每一对图像-文本,模型会计算图像和所有文本对(以及文本和所有图像对)的相似度。通过最大化匹配对的相似度,同时最小化不匹配对的相似度,CLIP 可以学到更强的多模态表示。
InfoNCE
损失函数的目标是让图像 ;与正确文本描述 的相似度最大化,同时与所有其他不相关文本 的相似度最小化,公式为:
详细全文请移步公主号:Goodnote。