微信扫码
与创始人交个朋友
我要投稿
对比语言-图像预训练(CLIP)被广泛用于训练模型,在共同的嵌入空间中对齐图像和文本,通过将它们映射到固定大小的向量。
这些模型对于多模态信息检索及相关任务至关重要。然而,与专门的文本模型相比,CLIP模型在仅文本任务上通常表现不佳。
这对于在仅文本和多媒体任务中保持分离的嵌入和模型的信息检索系统来说是不高效的。
作者提出了一种新颖的多任务对比训练方法来解决这一问题,作者使用该方法训练jina-clip-v1模型,在文本-图像和文本-文本检索任务上都取得了最先进的表现。
文本-图像对比训练模型,如CLIP(Radford等人,2021年),通过利用图像及其对应标题的配对,创建了一个图像和文本的对齐表示空间。同样,文本-文本对比训练模型,如jina-embeddings-v2(Gunther等人,2023年),通过使用具有已知语义关系的相关文本配对(如问题/答案对、 Query /文档对或其他文本对),构建了语义相似文本的表示空间。
由于图像标题通常非常简短,使用它们训练的CLIP风格模型只支持较短的文本上下文长度。它们在捕捉较长文本中更丰富信息方面存在困难,因此在纯文本任务上的表现不佳。作者的实证研究(表1)显示,OpenAI的CLIP在所有文本检索任务中的表现都不尽如人意。这对于许多使用较长文本输入的应用造成了问题,例如文本-图像检索、多模态检索增强生成(Zhao等人,2023年)和图像生成。
在本文中,作者提出并证明了使用大规模图像-标题配对和文本配对进行对比训练的新方法的有效性。作者共同优化文本-图像和文本-文本配对的表示对齐,使模型能够在两种任务上都表现良好。由于缺乏可用的多模态多目标数据集(例如文本-文本-图像三元组),作者为每类任务使用不同的数据集并共同训练。
由此产生的模型jina-clip-v1在跨模态CLIP基准测试上的表现与EVA-CLIP相当,而仅文本编码器本身在MTEB基准任务上的表现与类似模型相当。
用于文本嵌入的对比学习 在训练基于文本的信息检索、语义文本相似性、文本聚类和重新排序的模型方面已得到广泛应用。Reimers & Gurevych提出了一种用于成对文本相似性训练的双编码器架构。Ni等人(2022年)证明双编码器架构能够有效扩展。Wang等人(2022年)和Gunther等人(2023年)开发了包含“硬负样本”的多阶段训练方法。Mohr等人(2024年)将文本相似性分数直接引入训练中。Gunther等人(2023年)和Chen等人(2024年)将文本嵌入模型的输入长度扩展到8,192个 Token 。
对比文本-图像预训练 自从Radford等人(2021年)提出CLIP(对比语言-图像预训练)范式以来,变得越来越受欢迎。后续的许多研究寻求改进文本-图像训练。Zhai等人(2022年)引入了“锁定图像调优”(LiT),它涉及固定训练有素的图像编码器的权重,并训练文本编码器与它的图像表示对齐。Kossen等人(2023年)将LiT范式推广到更灵活的“三塔”架构。Zhai等人(2023年)提出了一种修改后的sigmoid损失函数用于对比学习,在相对较小的批量大小上表现出更好的性能。Cherti等人(2023年)和Sun等人(2023年)探索了不同的文本-图像训练设置,包括数据集、模型大小和超参数的变化。Zhang等人(2024年)实证确定CLIP的有效上下文长度小于20个 Token ,并提出了一种拉伸位置编码的算法,提高了较长文本上的性能。Sun等人(2024年)将EVA-CLIP架构扩展到1800亿个参数。
此外,越来越多的较大数据集,如YFCC100M(Thomee等人,2016年)、LAION-5B(Schuhmann等人,2022年)和精选数据集如ShareGPT4v(Chen等人,2023年)帮助不断提高CLIP-like模型的性能。
作者采用了与原始CLIP(Radford等人,2021年)中相同的双编码器架构。它包括一个文本编码器和一个图像编码器,它们生成相同维度的表示。
文本编码器使用JinaBERT架构(Gunther等人,2023年),这是一种BERT变体,集成了AliBi(Press等人,2021年)以支持更长文本。作者使用原始BERT模型(Devlin等人,2019年)的“ Mask 语言建模”目标对模型进行预训练。实验结果表明,与从已经使用对比学习完全训练的文本嵌入模型开始相比,这可以获得更优的最终性能。
对于图像编码器,作者使用EVA02架构。为了保持模型大小与文本编码器相当,作者选择了基础变体,并使用EVA02的预训练权重初始化作者的模型。作者的实验表明,EVA02显著优于类似的可比图像编码器,如DinoV2(Oquab等人,2024年)和来自OpenCLIP(Ilharco等人,2021年)的ViT B/16模型。
图1展示了作者受Gunther等人(2023年)启发的多任务、三阶段训练方法。这种方法联合优化模型以执行两个任务:文本-图像匹配和文本-文本匹配。
用于训练文本-文本匹配的文本比用于文本-图像匹配的文本要长得多,这在多模态模型中文本-文本性能的下降中占了很大一部分。为了解决这个问题,作者同时训练文本-文本和文本-图像匹配,减少了模型“忘记”如何处理长文本的风险。作者还向训练数据中添加了由AI生成的长图像标题。
训练的三个阶段如下:
作者的文本对语料库 由来自40个文本对数据集的多样化集合组成,类似于Gunther等人(2023年)所使用的语料库。这些数据集被混洗。作者随机选择一个数据集,并用文本对的嵌入填充每个批次,直到批次满为止。
在第一阶段进行文本-图像训练时,作者使用LAION-400M(Schuhmann等人,2021年)作为作者的语料库 。LAION-400M包含从Common Crawl中提取的4亿图像-文本对,广泛用于多模态训练。
在第二阶段和第三阶段,作者使用ShareGPT4V(Chen等人,2023年)数据集作为作者的 语料库。这个数据集包含大约10万条使用GPT4v(OpenAI,2023年)生成的合成标题,以及一个大型标题生成模型在原始GPT4v生成输出上训练产生的110万条长标题。总共大约有120万图像标题。
最后,在第三阶段,作者使用包含困难负样本的三元文本语料库 。这个语料库结合了MSMarco(Bajaj等人,2016年)、Natural Questions (NQ)(Kwiatkowski等人,2019年)、HotpotQA(Yang等人,2018年)以及自然语言推理(NLI)数据集(Bowman等人,2015年)的数据。每个训练批次包含一个标注的正样本和七个负样本。作者使用文本检索模型选择困难负样本,以强调文本三元组中的相关性,除了NLI中负样本是随机选择的。
所有三个阶段都采用了一个联合损失函数,该函数结合了两个InfoNCE损失函数(Van den Oord等人,2018年)。对于第1阶段和第2阶段的文本对,作者使用批次中的文本嵌入对的损失函数。这个函数评估给定 Query 与其对应目标之间的余弦相似性相对于批次中所有其他目标的相似性。作者在两个方向上求和损失,以保持相似性度量的对称性:
常数温度参数影响损失函数如何权衡相似性分数中的微小差异(Wang和Liu,2021年)。根据相关研究(Gunther等人,2023年),作者选择。
同样,作者将 应用于批次 中的图像嵌入和标题对的批处理 ,以获得文本-图像匹配的损失值。对于文本-图像训练, 是可训练的,遵循 OpenCLIP 框架(Ilharco et al., 2021)中的默认行为。
在第三阶段的文本-文本训练中,作者使用来自三元组数据库 的文本嵌入,这些嵌入以批次 的形式抽取。回想一下,这些嵌入包括一个 Query ,一个正匹配 ,以及七个负样本 。作者采用了 损失的扩展版本,这里表示为 ,在方程(2)中。与 类似,这个损失函数是双向的,但在将 Query 与段落配对时包含了额外的负样本:
损失函数 定义为:随机变量 服从 分布时的期望,其中包含了对数项的负值,该对数项是余弦相似度 的指数除以温度参数 的总和,该总和是余弦相似度 的指数加上与 的负样本 的余弦相似度的指数之和;以及另一项的对数项的负值,该对数项是余弦相似度 的指数除以温度参数 的总和,该总和是 与正样本 的余弦相似度的指数之和。这里的 是由 Query 向量 ,正样本向量 和七个负样本向量 组成的元组。
在每一阶段,文本和图像编码器被应用于第4.1节描述的语料库中的输入,并且训练使用了以下损失函数的组合:之后,训练使用了以下损失函数的组合:
在第一阶段, 从 中获得,通过在分词期间截断文本值至77个标记,如同Radford等人(2021)的做法。这使得作者能够使用非常大的批次大小,为。 从 中获得,使用相同的截断方法,尽管这个语料库中的大多数标题都很短。在这一阶段,多模态性能有所提高,但由于文本-文本训练数据与文本-图像数据之间的文本长度差异,文本-文本性能不尽如人意。
在第二阶段,再次使用 。但是,在这种情况下,文本值被截断为512个标记,因此使用了较小的批次大小,为。文本图像对 从 中选择。在这一阶段,通过将带有更长标题的合成数据添加到训练中,文本-文本和文本-图像检索得到了改进。
最后一个阶段使用了 中的文本三元组和第2阶段中的文本-图像批次 。这种使用文本三元组和困难负样本的重点微调,将文本-文本性能提升到了与专门的文本-only模型竞争的水平。
作者评估了作者的模型在仅文本任务、仅图像任务以及结合文本和图像的跨模态任务上的性能。表1展示了将jina-clip-v1与OpenAI CLIP (Radford等人,2021)、EVA-CLIP (Sun等人,2023)和LongCLIP ViT B/16 (Zhang等人,2024)模型进行比较的测试结果。此外,为了评估文本检索性能,作者还与jina-embeddings-v2进行了比较。这些结果表明,作者的模型在所有基准测试中都表现出高性能。
为了评估模型的跨模态性能,作者使用了包括零样本图像分类和零样本跨模态检索任务的CLIP基准测试。
对于零样本图像-文本和文本-图像信息检索,作者使用Flickr8k (Hodosh等人,2013)、Flickr30K (Young等人,2014)和MSCOCO Captions (Chen等人,2015)进行评估,这些数据集都包含在CLIP基准测试中。jina-clip-v1在所有检索基准测试中实现了85.8%的平均Recall@5,超过了OpenAI的CLIP模型,与EVA-CLIP表现相当,而训练数据量显著更少。
为了评估jina-clip-v1的文本编码器,作者使用了大规模文本嵌入基准测试(MTEB)(Muennighoff等人,2023),该测试包括涉及58个数据集的八个任务。由于CLIP-like模型通常针对跨模态任务进行优化,它们在文本嵌入任务上表现不佳,尤其是在信息检索方面。然而,jina-clip-v1与顶级仅文本嵌入模型竞争激烈,实现了60.12%的平均分数。这比其他CLIP模型整体提高了大约15%,在检索任务上提高了22%。
作者提出了一种多任务、三阶段的训练方法,该方法使多模态模型能够在仅文本任务上保持高水平的性能。作者使用这种方法生产的模型,jina-clip-v1,在跨模态任务(如图像-文本检索)中表现出强大的性能,并且在语义文本相似性和文本检索等任务上表现出色。这一结果证实了统一的多模态模型可以替代不同任务模态的独立模型,对于应用来说具有巨大的潜在节省。
由于多语言资源的限制,当前这个模型仅限于英语文本。未来的工作将重点扩展到多语言环境。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-05-30
2024-09-12
2024-06-17
2024-08-06
2024-08-30
2024-04-21
2024-06-26
2024-07-07
2024-06-14
2024-07-21
2024-09-26
2024-09-26
2024-09-01
2024-07-15
2024-07-14
2024-07-10
2024-07-02
2024-06-29