论文阅读——BLIP

BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation

(1)单模态编码器,它分别对图像和文本进行编码。图像编码器用ViT,并使用附加的 [CLS] 标记来表示全局图像特征。文本编码器与 BERT 相同(Devlin et al., 2019),其中 [CLS] 标记附加到文本输入的开头以总结句子。

(2)基于图像的文本编码器,通过在文本编码器的每个变换器块的自注意(SA)层和前馈网络(FFN)之间插入一个额外的交叉注意(CA)层来注入视觉信息。特定于任务的 [Encode] 标记被附加到文本中,并且 [Encode] 的输出嵌入用作图像-文本对的多模态表示。

(3)基于图像的文本解码器,用因果自注意力层替换基于图像的文本编码器中的双向自注意力层。 [Decode] 标记用于表示序列的开始,序列结束标记用于表示序列的结束。

三个损失:

Image-Text Contrastive Loss (ITC)

Image-Text Matching Loss (ITM):

图像文本匹配损失(ITM)激活图像文本编码器。它的目的是学习图像文本多模态表示,捕获视觉和语言之间的细粒度对齐。 ITM 是一项二元分类任务,其中模型使用 ITM 头(线性层)来预测图像文本对在给定多模态特征的情况下是正(匹配)还是负(不匹配)。

Language Modeling Loss (LM):

语言建模损失(LM)激活基于图像的文本解码器,其目的是根据给定的图像生成文本描述。它优化了交叉熵损失,训练模型以自回归方式最大化文本的可能性。在计算损失时,我们应用 0.1 的标签平滑。与 VLP 中广泛使用的 MLM 损失相比,LM 使模型具有泛化能力,可以将视觉信息转换为连贯的字幕。

CapFilt:处理网络图像文本对数据大量噪声

我们提出了字幕和过滤(CapFilt),这是一种提高文本语料库质量的新方法。图 3 给出了 CapFilt 的图示。它引入了两个模块:一个用于在给定网络图像的情况下生成字幕的字幕生成器,以及一个用于消除噪声图像文本对的过滤器。字幕生成器和过滤器都是从相同的预训练 MED 模型初始化的,并在 COCO 数据集上单独进行微调。微调是一个轻量级的过程。具体来说,字幕生成器是一个基于图像的文本解码器。它通过 LM 目标进行微调,以解码给定图像的文本。

给定网络图像 Iw,字幕生成器生成合成字幕 Ts,每个图像一个字幕。该过滤器是一个基于图像的文本编码器。它根据 ITC 和 ITM 目标进行了微调,以了解文本是否与图像匹配。该过滤器会去除原始网络文本 Tw 和合成文本 Ts 中的噪声文本,其中如果 ITM 头预测文本与图像不匹配,则文本被认为是噪声文本。最后,我们将过滤后的图像文本对与人工注释对结合起来形成一个新的数据集,我们用它来预训练新模型。

实验:

模型在 PyTorch 中实现,并在两个 16-GPU 节点上进行预训练。图像转换器是从 ImageNet 上预训练的 ViT 初始化的,文本转换器是从 BERTbase 初始化的。

使用 AdamW (Loshchilov & Hutter, 2017) 优化器,权重衰减为 0.05。学习率预热至 3e-4 (ViT-B) / 2e-4 (ViT-L),并以 0.85 的速率线性衰减。我们在预训练期间随机采集分辨率为 224 × 224 的图像,并在微调期间将图像分辨率提高到 384 × 384。我们使用预训练数据集总共 1400 万张图像,包括两个人工注释数据集(COCO 和 Visual Genome )和三个网络数据集(Conceptual Captions 、Conceptual 12M),SBU captions)。我们还尝试了另一个网络数据集 LAION,其中包含 1.15 亿张图像,其中文本噪声较多1。

CapFilt 可以通过更大的数据集和更大的视觉主干进一步提高性能,这验证了其在数据大小和模型大小方面的可扩展性。

相关推荐
全栈胖叔叔-瓜州32 分钟前
关于llamasharp 大模型多轮对话,模型对话无法终止,或者输出角色标识User:,或者System等角色标识问题。
前端·人工智能
坚果派·白晓明1 小时前
AI驱动的命令行工具集x-cmd鸿蒙化适配后通过DevBox安装使用
人工智能·华为·harmonyos
GISer_Jing1 小时前
前端营销技术实战:数据+AI实战指南
前端·javascript·人工智能
Dekesas96951 小时前
【深度学习】基于Faster R-CNN的黄瓜幼苗智能识别与定位系统,农业AI新突破
人工智能·深度学习·r语言
大佐不会说日语~2 小时前
Spring AI Alibaba 的 ChatClient 工具注册与 Function Calling 实践
人工智能·spring boot·python·spring·封装·spring ai
CeshirenTester2 小时前
Playwright元素定位详解:8种定位策略实战指南
人工智能·功能测试·程序人生·单元测试·自动化
棒棒的皮皮2 小时前
【OpenCV】Python图像处理几何变换之翻转
图像处理·python·opencv·计算机视觉
世岩清上3 小时前
AI驱动的智能运维:从自动化到自主化的技术演进与架构革新
运维·人工智能·自动化
K2_BPM3 小时前
告别“单点智能”:AI Agent如何重构企业生产力与流程?
人工智能
TMT星球3 小时前
深业云从人工智能产业投资基金设立,聚焦AI和具身智能相关产业
人工智能