VideoCLIP-XL:推进视频CLIP模型对长描述的理解

news2024/11/24 11:11:03

摘要

对比语言-图像预训练(CLIP)已被广泛研究并应用于众多领域。然而,预训练过程中对简短摘要文本的重视阻碍了CLIP理解长描述的能力。在视频方面,这个问题尤为严重,因为视频通常包含大量详细内容。在本文中,我们提出了VideoCLIP-XL(eXtra Length,超长)模型,旨在释放视频CLIP模型理解长描述的能力。首先,我们建立了一个自动数据收集系统,并收集了一个大规模的视频与长描述对(VILD)预训练数据集。然后,我们提出了文本相似性引导的主成分匹配(TPCM)方法,以在扩展长描述能力的同时更好地学习特征空间的分布。我们还引入了两个新任务,即细节感知描述排序(DDR)和幻觉感知描述排序(HDR),以进一步提高理解能力。最后,我们构建了一个长视频描述排序(LVDR)基准,以更全面地评估长描述能力。在包含短描述和长描述的常用文本-视频检索基准以及我们的LVDR基准上的大量实验结果充分证明了我们的方法的有效性。

1 引言

对比语言-图像预训练(CLIP)模型(Radford等,2021)是视觉-语言预训练领域的一项关键发展。它结合了文本和图像编码器,通过对比学习使这两种模态对齐。该方法已在各种应用中得到有效应用,如零样本分类(Sun等,2023)、文本-图像检索(Luo等,2023)和文本到图像的生成(Rombach等,2022;Frans等,2022)。然而,CLIP的一个显著局限性是其处理大量文本描述的能力有限,因为其文本编码器依赖于最大长度为77的位置嵌入。这一限制极大地限制了输入文本的长度,现有研究(Zhang等,2024)也揭示了一个实际有效的标记限制仅为大约20个。

此外,原始CLIP训练过程对简短摘要文本的重视迫使文本/视觉编码器主要关注文本/视觉输入的主要特征,往往忽略了较小但可能至关重要的细节。与图像相比,视频中的这个问题尤为严重,因为视频在连续帧中包含了大量细节,以及活动顺序和流程、摄像机运动等附加信息。在此背景下,采用原始CLIP训练方法的现有视频CLIP模型(Xu等,2021;Luo等,2022;Wang等,2023c)可能难以准确捕捉复杂的关系和属性,因为它们依赖于简单的“概念袋”方法(Tang等,2023b)。为了克服这些限制,增强模型理解长描述的能力至关重要。更长的文本提供了丰富的属性和相互关联的信息,为提高模型在更复杂场景中的性能和适用性提供了途径。

为此,我们提出了据我们所知的第一个具有长描述能力的视频CLIP模型VideoCLIP-XL(eXtra Length,超长)。(1)具体而言,鉴于包含(视频,长描述)对的公共数据集的不足,我们建立了一个自动数据收集系统,旨在从多个数据源聚合足够且高质量的对。我们已经成功收集了超过200万个(视频,长描述)对,称为我们的VILD预训练数据集。(2)我们发现现有的针对长文本的CLIP模型(Zhang等,2024)缺乏在高维特征空间内动态适应分布变化的灵活性。为了解决这个问题,我们引入了文本相似性引导的主成分匹配(TPCM)方法,这是一种使模型能够更好地学习跨模态和跨样本相对距离的新方法。(3)我们认为,具有长描述理解能力的CLIP模型自然应具备两个属性:对于给定的视频及其相关描述,当描述包含i)更丰富和精确的细节上下文;或ii)在相同细节水平下更少出现幻觉时,它应该能够给出更高的评分。为此,我们提出了两个新任务来建模这两个属性,即细节感知描述排序(DDR)和幻觉感知描述排序(HDR)。它们使视频CLIP模型学会如何正确地对具有不同细节和幻觉水平的多个描述进行排序。(4)为了更好地评估视频CLIP模型,我们还发布了一个长视频描述排序(LVDR)基准。给定每个视频和从Shot2Story(Han等,2023)中采样并经过人工校正的对应真实长描述,我们在每一步中迭代地将一定比例的正确内容修改为幻觉。模型需要根据描述的忠实度正确地对这些描述进行排序。

为了评估VideoCLIP-XL的性能,我们不仅在视频&长描述数据集Shot2Story(Han等,2023)上进行了大量实验,还在传统的广泛使用的MSR-VTT(Xu等,2016)、LSMDC(Rohrbach等,2015)、DiDeMo(Anne Hendricks等,2017)、MSVD(Chen和Dolan,2011)和ActivityNet(Heilbron等,2015)基准上进行了文本-视频检索任务的实验。此外,我们还在我们提出的LVDR基准上评估了VideoCLIP-XL和其他代表性CLIP模型。实验结果表明,我们的方法相比最先进的竞争对手表现出优越的性能。

我们的主要贡献如下:

  • 我们提出了VideoCLIP-XL模型,以释放视频CLIP模型理解长描述的能力。我们还使用自动数据收集系统收集并发布了一个新的包含超过200万个视频&长描述对的预训练数据集VILD。
  • 在VideoCLIP-XL中,我们提出了TPCM方法,以在扩展长描述能力的同时进行动态特征学习。我们还提出了两个新任务(即DDR和HDR),以进一步建模有效属性,从而更好地学习长描述的表示。
  • 为了更好地评估视频CLIP模型的长描述能力,我们提出了长描述排序(LVDR)基准。
  • 大量实验表明,VideoCLIP-XL在各种任务和基准上明显优于最先进的模型。

2 相关工作

图像/视频CLIP模型。CLIP(Radford等,2021)是一个基于对比学习的多模态模型。其训练数据包含大量的文本-图像对,每个图像都与相应的文本描述配对。通过对比学习,模型学习文本-图像对之间的匹配关系。由于其强大的零样本泛化能力,CLIP已成功应用于包括检测(Gu等,2021;Li等,2022b)、分割(Xu等,2022;Li等,2022a)、图像/视频理解(Luo等,2022;Xu等,2021;Tang等,2023a)、检索(Wang等,2023a,b)和图像生成(Ramesh等,2022;Frans等,2022;Crowson等,2022;Vinker等,2022)在内的众多场景。对于视频分析,ViCLIP(Wang等,2023c)在其视频编码器内融入了时空注意力,并在训练过程中采用了部分随机补丁掩码。然而,随后的几项研究(Kim等,2023;Zeng等,2021)指出CLIP在提取细粒度信息方面存在不足。这些工作实现了与CLIP类似的对比方法,将完整的句子标记与整个图像的区域进行对齐。此外,Long-CLIP(Zhang等,2024)提出使用CLIP特征的主成分匹配来提高模型对图像中长描述的理解能力。

视觉-语言数据集。随着多模态模型能力的提升,需求已经超越了传统的固定类别图像数据集,如ImageNet(Deng等,2009)和CIFAR10(Krizhevsky等,2009)。当代开放世界应用需要包含图像/视频及其相关文本描述的数据集。常见的开放世界图像-语言数据集包括Visual Genome(Krishna等,2017)、Conceptual-12M(Changpinyo等,2021)、SBU(Ordonez等,2011)、COCO(Lin等,2014)和LAION-5B(Schuhmann等,2022)。典型的视频-语言数据集包括MSR-VTT(Xu等,2016)、MSVD(Chen和Dolan,2011)、LSMDC(Rohrbach等,2015)、WebVid(Bain等,2021)、InternVid(Wang等,2023c)和Panda-70M(Chen等,2024)。然而,这些数据集通常只包含简短的描述。另一方面,少数数据集专注于长描述。ShareGPT4V(Chen等,2023)是一个包含120万张带有长描述图像的大规模数据集。Shot2Story(Han等,2023)包含2万个视频片段,每个片段都有详细的镜头级描述和全面的视频摘要。MiraData(Ju等,2024)处理未剪辑的视频片段,并带有结构化的长描述。它包含57,800个视频片段,涵盖游戏和城市/风景探索两个场景。这些集合中的平均描述长度通常比以前的数据集(Zhang等,2024)中的描述长度高出几个数量级。

3 方法论

在本节中,我们介绍了我们的自动数据收集系统以及由此产生的视频与长描述(VILD)预训练数据集(第3.1节)、文本相似性引导的主成分匹配(TPCM)技术(第3.2节)、两个新的描述排序任务(第3.3节)以及新的长视频描述排序(LVDR)基准数据集(第3.4节)。

3.1 视频与长描述(VILD)数据集

训练CLIP模型通常需要大量的视觉-文本对。在图像处理领域,开源大型多模态模型(LMMs)的出现以及GPT-4V(Achiam等,2023)等API的可用性推动了使用详细长描述对图像进行标注的工作。例如,ShareGPT4V(Chen等,2023)是一个大型数据集,它源自一个高质量策划的10万个描述集合,该集合是使用GPT-4V收集的,并通过一个描述模型扩展到120万个。
在这里插入图片描述

然而,具有大量长描述的视频数据集,尤其是在开放领域,仍然非常稀缺。例如,Shot2Story(Han等,2023)提供了2万个视频片段,每个片段都附有镜头级描述和视频摘要。在使用LMMs进行标注后,进一步的手动校正确保了这些长描述的可靠性,从而使其成为一个值得信赖的评估集,并从我们的训练数据中排除。MiraData(Ju等,2024)利用GPT4V为57,800个视频片段生成长描述,这些视频片段仅限于游戏和城市/风景探索场景。Open-Sora-Dataset(PKU-YuanGroup,2024)利用LMMs为40,200个视频生成描述性叙述,主要是自然景观。

鉴于开放领域视频与长描述对的稀缺性,我们设计了一个自动数据收集系统,如图1所示。我们的方法利用了多种来源,主要包括视频叙述数据、视频指令调整数据、原始视频和可用的视频与长描述对。
(a)视频叙述数据。视频叙述数据通常包含由人类标注者产生的与人类相关的描述,可以描述整个场景、主要活动以及涉及多个角色和对象的事件。我们采用了VidLN(Voigtlaender等,2023)数据集,该数据集包含视频中每个主要人物/动物/目标的个体级描述以及背景的人类标注。为了使数据集符合我们的目的,我们采用大型语言模型(LLMs)通过提示工程(即描述聚合步骤)将个体级叙述聚合成整体级描述。最后,考虑到训练的有效性和鲁棒性,我们进一步利用LLMs对整体级描述进行重写(即描述重写步骤)。此过程涉及生成具有相同意义的不同文本描述,同时保持主要内容和详细属性不变。在附录A.1中展示了在两个步骤中使用的LLMs和提示的详细信息。
(b) 视频指令调优数据。随着大型语言模型(LMMs)的出现,大量的视频指令调优数据集也已公开。例如,VideoInstruct100K(Maaz等,2023)包含与视频摘要、基于描述的问题回答以及创造性/生成性问题回答相关的问答对。VideoChat(Li等,2023b)提供了一个丰富的数据集,其中包含详尽的视频描述和对话,通过融入视频指令中的时间和因果方面来增强数据的多样性。这些数据集最初是为了训练一种与类型无关的视频理解模型而制作的,而不是为了整理视频描述。因此,我们的方法包括使用大型语言模型(LLMs)进行数据过滤,以排除与视频描述无关的样本。我们采用了提示工程,并提供了一些示例演示,以帮助LLMs取得更好的效果。最后,还执行了描述重写步骤。所使用的LLMs和提示的详细信息见附录A.1。

© 可用视频与长描述数据。如前所述,现有将视频与长文本描述配对的数据集通常在视频的数量或领域/类型上受到限制。在这方面,我们对这些数据集执行了数据采样操作。具体而言,VILD包含了MiraData(Ju等,2024)中所有关于游戏和城市/风景探索场景的57.8K个视频片段。从Open-Sora-Dataset(PKU-YuanGroup,2024)中随机抽取了50K条描述自然景观的长字幕。最后还涉及描述重写步骤。(d) 原始视频数据。为了进一步扩大训练数据的数量,我们利用LMMs和LMMs(这里可能是指利用不同类型的LMMs或重复提及以强调,但原文表述略显重复,故在此稍作调整以明确)根据原始视频(有些结合了相应的短字幕)生成长描述。如果没有短字幕可用,则需要使用现成的模型(Li等,2023a;Huang等,2023;Zhang等,2023;Yu等,2023)执行一个可选的短视频描述生成步骤。为了提高计算效率,我们随机抽取了超过200万个视频片段,这些片段由Panda-70M(Chen等,2024)中的多个教师模型和微调后的字幕选择模型生成了高质量短字幕。然后,我们从每个视频片段中等间隔地采样 k k k(在我们的设置中 k = 3 k=3 k=3)帧作为关键帧,并使用LMMs为它们添加长描述。我们没有为每一帧都这样做,因为这将非常耗时且费力。接下来,给定整个视频的短描述和其关键帧的长描述,我们要求LLMs将它们整合成整个视频的长描述。短视频描述的辅助可以缓解帧描述中出现的幻觉。我们的发现也与现有研究(Wang等,2023c,2024)达成共识,即直接使用视频LMMs(Li等,2023b;Maaz等,2023)为长字幕描述视频可能会导致次优结果。所使用的LLMs/LMMs和提示的详细信息见附录A.1。

最后,执行了后处理步骤。过滤掉了不适宜公开(NSFW)的示例。接下来,我们使用ViCLIP(Wang等,2023c)和LongCLIP(Zhang等,2024)过滤掉平均视频-文本相似度小于0.20的低质量示例。我们最终收集了超过200万个视频与长描述数据对,作为我们的VILD数据集用于模型预训练。数据统计信息的更详细比较见附录A.2。

3.2 文本相似性引导的主成分匹配(TCPM)

CLIP模型的原始预训练以视觉-文本对 ( v , t ) (v, t) (v,t)作为输入。 v v v可以是图像或视频。它对特定的单模态编码器架构没有假设。给定一个视觉编码器 E v E_{v} Ev和一个文本编码器 E t E_{t} Et,首先提取单模态特征为 f v = E v ( v ) f_{v}=E_{v}(v) fv=Ev(v) f t = E t ( t ) f_{t}=E_{t}(t) ft=Et(t)。然后,通常采用InfoNCE(Oord等,2018)损失的对比学习来学习视觉和文本之间的对应关系。特别是,这可以表示为:

L C L ( f t , f v ) = 1 2 N ∑ N L InfoNCE  f t → f v + L InfoNCE  f v → f t \mathcal{L}_{\mathrm{CL}}\left(f_{t}, f_{v}\right)=\frac{1}{2 N} \sum_{N} \mathcal{L}_{\text {InfoNCE }}^{f_{t} \rightarrow f_{v}}+\mathcal{L}_{\text {InfoNCE }}^{f_{v} \rightarrow f_{t}} LCL(ft,fv)=2N1NLInfoNCE ftfv+LInfoNCE fvft

其中 N N N是批量大小,

L InfoNCE  f t → f v = − log ⁡ exp ⁡ ( sim ( f t , f v + ) / τ ) ∑ f v ∈ { f v + , f v − } exp ⁡ ( sim ( f t , f v ) / τ ) \mathcal{L}_{\text {InfoNCE }}^{f_{t} \rightarrow f_{v}}=-\log \frac{\exp \left(\text{sim}\left(f_{t}, f_{v}^{+}\right) / \tau\right)}{\sum_{f_{v} \in\left\{f_{v}^{+}, f_{v}^{-}\right\}} \exp \left(\text{sim}\left(f_{t}, f_{v}\right) / \tau\right)} LInfoNCE ftfv=logfv{fv+,fv}exp(sim(ft,fv)/τ)exp(sim(ft,fv+)/τ)

反之亦然。这里, τ \tau τ是温度超参数, sim \text{sim} sim是余弦相似度计算, f v + f_{v}^{+} fv+是与文本特征 f t f_{t} ft配对的正视觉特征, f v − f_{v}^{-} fv是由当前训练批次中其他未配对的图像/视频形成的负视觉特征。

为了扩展CLIP模型对长描述的理解能力,Long-CLIP(Zhang等,2024)提出使用主成分匹配进行图像CLIP。给定短描述、长描述和视觉输入( s t , l t , v s_t, l_t, v st,lt,v),损失函数表示为:

L = L C L ( f l t , f v ) + α 1 L C L ( f s t , f v ′ ) \mathcal{L}=\mathcal{L}_{\mathrm{CL}}\left(f_{l t}, f_{v}\right)+\alpha_{1} \mathcal{L}_{\mathrm{CL}}\left(f_{s t}, f_{v}^{\prime}\right) L=LCL(flt,fv)+α1LCL(fst,fv)

其中 α 1 \alpha_{1} α1是比率超参数, f v ′ = P C E ( f v , 32 ) f_{v}^{\prime}=\mathrm{PCE}\left(f_{v}, 32\right) fv=PCE(fv,32)。这里,PCE是主成分提取的缩写,由组件分解函数 F \mathcal{F} F(将特征分解为不同属性及其重要性的向量)、组件过滤函数 E \mathcal{E} E(过滤掉不太重要的属性)和组件重建函数 F − 1 \mathcal{F}^{-1} F1(重建特征)组成。在实现 E \mathcal{E} E时,Long-CLIP选择了最重要的32个属性作为保留的属性。
在这里插入图片描述

然而,当将此技术扩展到视频预训练时,我们发现由于视频通常比图像包含更丰富的内容和更多细节,这种固定策略无法动态适应视频CLIP高维特征空间在学习期间发生的严重分布变化(如图5所示)。在这方面,我们建议使用 l t l_t lt s t s_t st之间的余弦文本相似性作为信号来指导PCE过程,如图2所示。因此,我们将 f ^ v \hat{f}_{v} f^v重新写为:

f ^ v = P C E ( f v , G ( sim ( f l t , f s t ) ) ) \hat{f}_{v}=\mathrm{PCE}\left(f_{v}, \mathcal{G}\left(\text{sim}\left(f_{l t}, f_{s t}\right)\right)\right) f^v=PCE(fv,G(sim(flt,fst)))

其中 G \mathcal{G} G表示我们按重要性降序保留属性,直到 f ^ v \hat{f}_{v} f^v f v f_{v} fv之间的相似度达到 l t l_t lt s t s_t st之间的相似度为止。

3.3 两种描述排序任务

我们假定,旨在理解长描述的视频CLIP模型应固有地表现出两种特性:给定一个视频及其相关描述,模型应为(1)具有更丰富和更精确上下文以及(2)在细节程度相当的情况下更准确且更少出现幻觉的描述分配更高的分数。为了实现这些原则,我们引入了两个新任务:细节感知描述排序(DDR)和幻觉感知描述排序(HDR),以解决相应的属性问题。我们的准备步骤包括使用句法分析工具,如NLTK(Bird等人,2009)和spaCy(Honnibal等人,2020),对长描述的真实标签执行词性标注和句法结构解析。
在这里插入图片描述

随后,我们为每个视频合成多个描述候选,以促进DDR和HDR训练。如图3(a)所示,在每个步骤中,我们选择性地将特定单词(名词、数字、颜色或方向相关术语、动词)替换为同一句法类别中语义不同的对应词(例如,将boys替换为girls,将white替换为blue,将throwing替换为lifting),并进行 m − 1 m-1 m1次这样的替换。此方法产生一系列逐渐出现幻觉的描述,表示为 t H = { t 1 H , t 2 H , … , t m H } \mathbf{t}^{\mathbf{H}}=\left\{t_{1}^{H}, t_{2}^{H}, \ldots, t_{m}^{H}\right\} tH={t1H,t2H,,tmH}。类似地,如图3(b)所示,每个步骤都涉及从当前描述中随机删除子句、形容词、数字或依存解析子树。此过程递归地为每个视频生成 m − 1 m-1 m1个顺序上逐渐不太详细的描述,表示为 t D = { t 1 D , t 2 D , … , t m D } \mathbf{t}^{\mathbf{D}}=\left\{t_{1}^{D}, t_{2}^{D}, \ldots, t_{m}^{D}\right\} tD={t1D,t2D,,tmD}

对于 t H \mathbf{t}^{\mathbf{H}} tH t D \mathbf{t}^{\mathrm{D}} tD,给定相同的对应视频,我们希望模型能为序列中较早出现的描述生成更高的相似度分数。例如,对于DDR任务,我们制定损失函数如下:

L D D R = 1 m ( m − 1 ) 2 ∑ i = 1 m − 1 ∑ j = i + 1 m ReLU ⁡ ( − ( Δ i , j D − α D ) ) \mathcal{L}_{\mathrm{DDR}}=\frac{1}{\frac{m(m-1)}{2}} \sum_{i=1}^{m-1} \sum_{j=i+1}^{m} \operatorname{ReLU}\left(-\left(\Delta_{i, j}^{D}-\alpha_{D}\right)\right) LDDR=2m(m1)1i=1m1j=i+1mReLU((Δi,jDαD))

其中, α D \alpha_{D} αD是相似度差异间隙,

Δ i , j D = sim ⁡ ( f t i D , f v ) − sim ⁡ ( f t j D , f v ) \Delta_{i, j}^{D}=\operatorname{sim}\left(f_{t_{i}^{D}}, f_{v}\right)-\operatorname{sim}\left(f_{t_{j}^{D}}, f_{v}\right) Δi,jD=sim(ftiD,fv)sim(ftjD,fv)

此学习目标背后的直觉来自于模型能够区分具有最小区分度 α D \alpha_{D} αD的各种描述的要求。类似地,对于HDR,我们有损失函数:

L H D R = 1 m ( m − 1 ) 2 ∑ i = 1 m − 1 ∑ j = i + 1 m ReLU ⁡ ( − ( Δ i , j H − α H ) ) \mathcal{L}_{\mathrm{HDR}}=\frac{1}{\frac{m(m-1)}{2}} \sum_{i=1}^{m-1} \sum_{j=i+1}^{m} \operatorname{ReLU}\left(-\left(\Delta_{i, j}^{H}-\alpha_{H}\right)\right) LHDR=2m(m1)1i=1m1j=i+1mReLU((Δi,jHαH))

我们预训练过程的总损失为:
L = L C L ( f l t , f v ) + α 1 L C L ( f s t , f v ′ ) + α 2 L D D R + α 3 L H D R , \begin{aligned} \mathcal{L}= & \mathcal{L}_{\mathrm{CL}}\left(f_{l t}, f_{v}\right)+\alpha_{1} \mathcal{L}_{\mathrm{CL}}\left(f_{s t}, f_{v}^{\prime}\right)+ \\ & \alpha_{2} \mathcal{L}_{\mathrm{DDR}}+\alpha_{3} \mathcal{L}_{\mathrm{HDR}}, \end{aligned} L=LCL(flt,fv)+α1LCL(fst,fv)+α2LDDR+α3LHDR,
其中, α 2 \alpha_{2} α2 α 3 \alpha_{3} α3是平衡超参数。
在这里插入图片描述

3.4 新的LVDR基准

幻觉在当代大型语言模型(LLMs)和大型多模态模型(LMMs)中无处不在(Liu等人,2024a)。给定一个视频,具有理解长文本能力的视频CLIP模型应自然具备在长描述中区分正确和错误文本的判断力。为了更好地评估这种能力,我们提出了长视频描述排序(LVDR)基准。我们首先从Shot2Story(Han等人,2023)中随机抽取2K个视频和长描述对。然后,我们执行与图3(a)类似的合成过程,迭代 p − 1 p-1 p1次,并在每次迭代中更改 q q q个单词,从而产生总共 p p p个幻觉程度逐渐增加的描述。我们将这样的子集表示为 p × q p \times q p×q,并构建了五个子集作为 { 4 × 1 , 4 × 2 , 4 × 3 , 4 × 4 , 4 × 5 } \{4 \times 1,4 \times 2,4 \times 3,4 \times 4,4 \times 5\} {4×1,4×2,4×3,4×4,4×5}。每个不同的子集都经过人工审核,以避免不恰当的替换。图4中提供了代表性示例。根据我们的分析,一个更好的模型需要能够在给定视频的情况下,正确地将这些描述按相似度降序排序。因此,我们还设计了名为排序分数(RS)的评价标准,其可以表示为:

R S = 100 m ( m − 1 ) 2 ∑ i = 1 m − 1 ∑ j = i + 1 m 1 ( sim ⁡ ( f t i , f v ) > sim ⁡ ( f t j , f v ) ) \mathrm{RS}=\frac{100}{\frac{m(m-1)}{2}} \sum_{i=1}^{m-1} \sum_{j=i+1}^{m} \mathbb{1}\left(\operatorname{sim}\left(f_{t_{i}}, f_{v}\right)>\operatorname{sim}\left(f_{t_{j}}, f_{v}\right)\right) RS=2m(m1)100i=1m1j=i+1m1(sim(fti,fv)>sim(ftj,fv))

其中, 1 \mathbb{1} 1是指示函数。

4 实验

4.1 实现细节

我们采用CLIP(Radford等,2021)的模型结构,结合ViT-L/14,并在视频编码器中使用时空注意力机制,其权重初始化来自ViCLIP(Wang等,2023c)。我们进一步在我们的VILD数据集上对VideoCLIP-XL进行了2个周期的预训练。所有实验均在PyTorch中实现,并在NVIDIA Tesla A100-80G GPU上运行。更多实验细节见附录A.3。

4.2 性能比较

我们将VideoCLIP-XL与三个不同下游任务中的强劲对手进行比较:传统基准上的文本-视频检索、长描述基准上的文本-视频检索,以及在我们LVDR基准上的描述排序。
在这里插入图片描述

传统基准上文本-视频检索的结果如表1和表2所示。我们可以发现,无论是在零样本还是微调设置下,VideoCLIP-XL在所有基准上均表现出优于其他视频CLIP模型的性能。例如,VideoCLIP-XL在MSR-VTT数据集上的T2V/V2T零样本R@1得分分别提高了+7.7/+8.6,T2V/V2T微调R@1得分分别提高了+4.5/+4.8。值得注意的是,尽管我们的方法主要关注学习视频和文本中的细粒度特征,但其有效的训练策略也能在所有基准上带来显著提升,无论文本是否详细。
在这里插入图片描述

如表4所示,在长描述设置下,VideoCLIP-XL在Shot2Story上也显著超越了其他竞争对手。在Shot2Story中,每个视频片段由多个在不同场景之间切换的视频镜头组成,以表达同一主要事件。这要求模型能够从多个复杂场景中充分理解主要活动。实验结果表明,无论是将整个视频片段(Shot2Story-W)还是每个镜头(Shot2Story-S)作为个体进行文本-视频检索任务,我们的方法都表现出显著优势。
在这里插入图片描述

我们LVDR基准的结果如表3所示。VideoCLIP-XL与竞争对手相比,具有更强的识别能力,能够感知长视频描述中的不准确内容,并为其分配较低的相似度分数。例如,在 4 × 1 4 \times 1 4×1设置下,相邻生成的描述之间只有1个原始单词被随机替换为错误单词,我们的模型可以超越Long-CLIP(专注于图像的长文本理解)10.25的排名分数。我们还可以观察到,随着单步幻觉的程度从浅到深(从 4 × 1 4 \times 1 4×1 4 × 5 4 \times 5 4×5),视频CLIP模型能够更自然地区分不同的长视频描述。

4.3 消融研究

在本小节中,我们旨在探索我们方法中每个组件的有效性。

如图1所示,我们的VILD预训练数据集由来自不同数据源的四个部分的聚合而成。对于部分(a)(b)(c),在基于LLM的步骤之前,数据资源通常利用强大的GPT4 V(Achiam等,2023)或人工来生成文本信息。而对于部分(d),我们使用开源LLM从原始视频中生成长描述。表5(a)中的结果展示了数据的有效性。虽然使用开源LLM进行自动化数据合成的效果自然会略逊于GPT-4V/人工,但与现有竞争对手相比,它仍然可以取得最先进的性能。此外,在(a)(b)(c)的基础上添加(d)可以进一步带来明显的改进。这也证明了我们的数据合成管道的有效性。
在这里插入图片描述

如表5(b)中#2与#1所示,TPCM在传统文本-视频检索数据集上可以获得+0.44 R@1的提升,在Shot2Story上可以获得+0.56 R@1的提升。此外,它还可以在预训练期间动态修改特征空间分布,这体现在PCA维度的增加上,如图5所示。
在这里插入图片描述

DDR和HDR的有效性也可以在表5(b)中找到。比较#3与#2,DDR在传统基准上获得了+0.52 R@1的提升,在LVDR上获得了+1.20 RS的提升。至于HDR,比较#4与#2,它在LVDR上获得了+6.55 RS的提升。此外,如表5(b)中#5与#2所示,在MLDMA和LVDR上同时执行这两个任务比单独使用任何一个都更有效。

5 结论

在本文中,我们提出了VideoCLIP-XL,这是一种具有长描述能力的视频CLIP模型。我们建立了一个自动数据采集系统来收集我们的VILD数据集,并提出了TPCM,以在预训练期间更好地学习特征空间分布的同时扩展长描述能力。我们还引入了两个新任务,即DDR和HDR,以进一步提高理解能力。我们的LVDR基准有助于更全面地评估长描述能力。广泛的实验结果证明了我们的方法的有效性。

对于未来的研究,我们计划改进预训练方法,并增加数据量和模型规模以进一步提高性能。我们还将尝试将交叉编码器和LLM的结构集成到我们的方法中。

局限性
尽管VideoCLIP-XL经过训练以具备长描述理解能力,但由于预训练数据的数量和单模态编码器的特征提取能力的限制,仍有改进空间。数据的规模、质量和多样性可以进一步扩展,特征提取器的模型结构和规模也可以扩大。将我们的方法应用于交叉编码器和LLM的结构也值得探索。这些改进留待我们后续工作完成。

伦理考虑
本文提出的训练VideoCLIP-XL模型的技术完全是方法论的,因此我们的方法没有直接的负面社会影响。此外,我们已从预训练数据中过滤掉了NSFW(不适合在工作场合观看)的示例,以确保所看到的内容适合公开分发。

致谢
本研究部分得到了国家自然科学基金(项目号:62441604、62476093)的支持。此外,本研究还得到了阿里云计算的支持,通过华南理工大学的科研人才计划。

A 附录

A.1 VILD数据生成的细节

在VILD数据生成过程中,我们在基于LLM的步骤中使用了Qwen1.5-72B-Chat(Bai等人,2023),在基于LMM的步骤中使用了LLaVA-v1.6-34B(Liu等人,2024b)。我们使用的所有提示如下:
[描述聚合]
“以下是视频中主题或背景的描述。请将它们组织成一个对整个视频的单一描述。不要遗漏任何内容,也不要添加任何未包含或不确定的新内容。
{示例}
描述:{个体层面的描述}
输出:”
[描述重写]
“以下是一个视频描述。请输出一个重写版本。不要遗漏任何内容,也不要添加任何未包含或不确定的新内容。
{示例}
描述:{输入描述}
输出:”
[数据过滤]
“判断以下对话是否在讨论视频的整体/综合层面的描述/内容。如果是,输出Yes;否则,输出No。
(示例)
对话:{输入对话}
输出:”
[长帧描述生成]
“准确描述这张图片。”
[长视频描述生成]
“我们将提供一个视频的描述和一些帧描述。直接根据它们输出一个丰富的视频描述。删除重复内容。不要描述任何不确定或未包含的内容。不要描述单个帧。不要描述具体主题,使用通用词汇代替。
{示例}
视频描述:{短视频描述}
帧描述:{长帧描述} 输出:”

A.2 数据统计详情

数据统计信息的更详细比较如表6所示。

A.3 实验设置详情

在预训练期间,我们为每个视频采样8帧。我们还根据(Zhang等人,2024)将原始绝对位置嵌入从77拉伸到248。在预训练时,我们设置批量大小为1664,预热步数为200,权重衰减为0.02,最大学习率为 4 e − 6 4 \mathrm{e}-6 4e6。学习率在预热后按余弦计划降低。 α 1 \alpha_{1} α1 α 2 \alpha_{2} α2 α 3 \alpha_{3} α3 α D \alpha_{D} αD α H \alpha_{H} αH分别经验性地设置为0.1、1.0、10.0、0.0和0.0。在DDR和HDR任务中, m m m设置为5。

在预训练期间,如等式8所示,我们使用长描述来使VideoCLIP-XL学习长文本的语义,并使用短描述来维持其原有的短文本能力。对于我们的VILD数据集中没有来自原始资源的配对短描述的视频,我们使用Qwen1.5-72B-Chat根据长描述生成它们。我们使用的提示是:
“以下是一个详细的视频描述。请提取其核心内容并将其总结成一个非常短的句子。不要超过10个词。
{示例}
描述:{长视频描述}

输出:”
对于在传统基准上的文本-视频检索微调设置,我们使用普通的文本-视频对比学习损失在每个评估基准的训练集上微调我们的预训练VideoCLIP-XL。在训练和测试期间,我们采样12帧。详细的超参数与ViCLIP(Wang等人,2023c)相同。而在零样本设置下,以及Shot2Story和LVDR的评估中,我们只采样8帧。

对于Long-CLIP等图像CLIP模型,我们计算帧的平均图像特征和文本特征之间的相似性。

A.4 与更多模型的性能比较

如表7所示,我们引入了更多最近强大且大型交叉编码器模型(Li等人,2023c;Wang等人,2024)进行全面比较。交叉编码器模型,特别是大型多模态模型(LMM),通常会添加额外的Transformer层来建模视觉和文本表示之间的深层交互。该模型通常可以提高检索性能,但当应用于整个图像/视频集合时,由于每次给出新的文本查询时都需要为每个图像/视频样本计算跨模态成本,因此检索速度会变得难以忍受地慢。相比之下,具有双编码器结构的VideoCLIP-XL的参数和检索时间成本明显更少。双编码器以完全解耦的方式对视觉和文本输入进行编码。视觉表示可以独立于文本查询进行预计算和重用。这些方法可以在运行时利用快速近似最近邻(ANN)搜索(Muja和Lowe,2009;Jegou等人,2010;Johnson等人,2019)来确保高效率。例如,VideoCLIP-XL在零样本文本-视频检索上通常超越UMT-L(Li等人,2023c),并且在MSR-VTT上的检索速度比UMT-L快 ∼ 4.14 × \sim 4.14 \times 4.14×,无需任何额外修饰,这也表明了我们预训练阶段的有效性。它还比InternVideo 2s2-1B快 ∼ 8.69 × \sim 8.69 \times 8.69×。对于微调,大型交叉编码器模型由于跨模态特征交互而自然超越双编码器模型。然而,这些模型仍然受到推理速度慢的问题的困扰,因此很难部署在实时应用中。

A.5 更多定性结果

我们在图6中给出了通过图1(d)获得的一些合成长视频描述示例。在Shot2Story基准上的文本到视频检索结果的定性示例如图7所示。我们可以发现,与竞争对手相比,我们的VideoCLIP-XL可以实现更准确和匹配的视频检索结果。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2220382.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JavaEE】——TCP应答报文机制,超时重传机制

阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 一:TCP协议(面试重点重点) 1:报头长度 2:…

Pytest参数详解 — 基于命令行模式!

1、--collect-only 查看在给定的配置下哪些测试用例会被执行 2、-k 使用表达式来指定希望运行的测试用例。如果测试名是唯一的或者多个测试名的前缀或者后缀相同,可以使用表达式来快速定位,例如: 命令行-k参数.png 3、-m 标记(…

鲸信私有化即时通信如何平衡安全性与易用性之间的关系?

即时通信已经成为我们生活中不可或缺的一部分。从日常沟通到工作协作,每一个信息的传递都承载着信任与效率。然而,随着网络安全威胁日益严峻,如何在享受即时通信便捷的同时,确保信息的私密性与安全性,成为了摆在我们面…

AGV电子地图之贝塞尔曲线

贝塞尔曲线在AGV系统的电子地图中的重要位置 AGV电子地图之贝塞尔曲线_哔哩哔哩_bilibili 点击关注不迷路,你的关注是我们最大的动力 在AGV(自动引导车)系统的电子地图中,贝塞尔曲线有着重要的作用,主要体现在以下几个…

如何保证Redis和数据库的数据一致性

文章目录 0. 前言1. 补充知识:CP和AP2. 什么情况下会出现Redis与数据库数据不一致3. 更新缓存还是删除缓存4. 先操作缓存还是先操作数据库4.1 先操作缓存4.1.1 数据不一致的问题是如何产生的4.1.2 解决方法(延迟双删)4.1.3 最终一致性和强一致…

【大数据算法】一文掌握大数据算法之:大数据算法分析技术。

大数据算法分析技术 1、引言2、 大数据分析技术2.1 时间/空间复杂度2.2 I/O 复杂度2.3 结果质量2.4 通信复杂度 3、总结 1、引言 小屌丝:鱼哥,最近更文有些不频繁了哈。 小鱼:这一个月不见,你这说话方式也变了。 小屌丝&#xff…

C++与C语言的排序算法对比(插入,希尔,归并)

1. 引言 排序算法是计算机科学中的基础概念,广泛应用于数据处理和算法设计中。本文将通过插入排序、希尔排序、归并排序和选择排序这四种常见的排序算法,分别用C和C语言实现,并对它们进行优劣对比,以帮助读者更好地理解这两种语言…

MATLAB支持的字体

listfonts 列出可用的系统字体 {Adobe Devanagari } {Agency FB } {Algerian } {AlienCaret } {AMS } {Arial } {Arial Black …

[LeetCode] 21. 合并两个有序链表

题目描述: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]示例 2: 输入:l1 [], l2 […

数据结构(8.3_1)——冒泡排序

交换排序: 冒泡排序和快速排序 冒泡排序: 示例: 从行往前将A[i-1]和A[i]比较若遇到A[i-1]>A[i]则将两个元素交换 注意: 代码实现: //交换 void swap(int& a, int& b) {int temp a;a b;b temp; } //冒…

入门!Linux 常见指令及权限管理全面指南

Linux 操作系统在现代计算机应用中扮演着重要的角色,广泛用于服务器、桌面系统、嵌入式设备及云计算平台等领域。理解和掌握 Linux 常见指令及权限管理机制,是每一位系统管理员和开发人员的基础技能。本文将详细介绍 Linux 系统的基本背景、常用指令、权…

设计模式概览

设计模式是一种解决常见编程问题的经验总结,提供了代码的可重用性、可扩展性和可维护性。常见的设计模式有23个,主要分为三大类:创建型模式、结构型模式和行为型模式。下面是这三类设计模式的详细分类和讲解: 一、创建型模式 创建…

进入 Searing-66 火焰星球:第一周游戏指南

Alpha 第四季已开启,穿越火焰星球 Searing-66,带你开启火热征程。准备好勇闯炙热的沙漠,那里有无情的高温和无情的挑战在等待着你。从高风险的烹饪对决到炙热的冒险,Searing-66 将把你的耐力推向极限。带上充足的水,天…

Fusion创建一个简单的api脚本文件

我的Fusion版本:Fusion 2.0.20476 x86_64 脚本模块在实用程序->附加模型->脚本和附加模块,快捷键为shifts 里面有一些演示脚本,可以直接使用 也可以自己创建一个新的脚本 创建的脚本在此处—— 选择脚本文件,点击编辑&a…

小新学习Docker之Ansible 的脚本 --- playbook 剧本

一、playbook 剧本简介 playbooks 本身由以下各部分组成: (1)Tasks:任务,即通过 task 调用 ansible 的模板将多个操作组织在一个 playbook 中运行 (2)Variables:变量 (3…

Linux系统基础-动静态库

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 Linux系统基础-动态库和静态库 收录于专栏[Linux学习] 本专栏旨在分享学习Linux的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 1. 动…

如何在 Jupyter Notebook 执行和学习 SQL 语句(下)—— 进阶版题目综合(多表连接,窗口函数,子查询等等)

这是我收藏的一些相关的题目,其中包含基本操作(如创建表、插入数据)(注意一般企业也不会让删除数据啥的,毕竟刚进去哪会让对人家数据库做什么操作,我是实习的时候参加了数据仓库的建设,插了一些…

498.对角线遍历

目录 题目解法代码说明:输出: 如何确定起始点?解释一下max(0,d−m1)是什么意思? 如何遍历对角线?.push_back是怎么用的? 题目 给你一个大小为 m x n 的矩阵 mat ,请以对角线遍历的顺序&#xf…

JNA调用c++动态库返回数据

jna学习网站 JNA Examples 1、返回String, pch.h头文件 // pch.h: 这是预编译标头文件。 // 下方列出的文件仅编译一次,提高了将来生成的生成性能。 // 这还将影响 IntelliSense 性能,包括代码完成和许多代码浏览功能。 // 但是,如果此处…

软考攻略/超详细/系统集成项目管理工程师/基础知识分享18

6.5数据分析及应用 6.5.1 数据集成(掌握) 数据集成就是将驻留在不同数据源中的数据进行整合,向用户提供统一的数据视图,使得用户能以透明的方式访问数据。 WebServices技术是一个面向访问的分布式计算模型,它的本质是…