超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述

发布于 2024-11-25 10:32
浏览
0收藏

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

文章链接:https://arxiv.org/pdf/2411.07076
数据集&代码:https://github.com/hyc2026/StoryTeller

亮点直击

  • 引入音画角色识别任务:提出了音画角色识别任务,通过整合视觉、音频和文本信息,实现对白与角色的精准匹配,从而解决长视频描述中的一致性挑战,包括角色描述和故事逻辑连贯性。
  • StoryTeller系统创新: 开发了StoryTeller系统,包含视频分割模块、音画角色识别模块和身份感知的描述生成模块,生成密集且一致性高的长视频描述,兼顾基础视觉概念和高级剧情信息。
  • 高质量数据集与自动评估方法: 构建了MovieStory101数据集,包含密集标注的三分钟电影片段和对白角色身份标签,同时引入MovieQA自动评估方法,通过GPT-4回答多选问题,以准确率衡量描述质量。
  • 显著性能提升: StoryTeller在MovieQA任务中比最强基线Gemini-1.5-pro提升9.5%准确率,在人类对比评估中表现出+15.56%的优势。同时,将音画角色识别结果输入其他模型也显著提升了它们的长视频描述能力,分别提升5.5%和13.0%的准确率。

总结速览

解决的问题
现有的大型视觉语言模型(LVLMs)在处理短视频(数秒)时表现良好,但在生成分钟级长视频的连贯描述时存在困难,特别是在保持剧情一致性方面。此外,视频中角色的音画识别和台词匹配也是一个关键挑战。

提出的方案
提出了StoryTeller系统,通过结合低级视觉概念和高级剧情信息,为长视频生成密集描述。该系统通过多模态大语言模型(整合视觉、音频和文本模态)进行分钟级视频片段的音画角色识别,并将结果输入LVLM以提升描述的一致性。

应用的技术

  • 多模态模型:整合视觉、音频和文本信息进行角色识别。
  • MovieStory101数据集:包含三分钟电影片段的密集描述,用于评估长视频描述性能。
  • MovieQA测试集:为MovieStory101创建的大量多选题集,通过GPT-4回答这些问题,基于准确率自动评估描述质量。

达到的效果

  • 模型性能提升:StoryTeller在MovieQA任务中比最强基线Gemini-1.5-pro高9.5%的准确率;在人类对比评估中表现出+15.56%的优势。
  • 角色识别的增强作用:将音画角色识别集成到视频描述模型中提升了整体性能,如Gemini-1.5-pro和GPT-4o在MovieQA上的准确率分别提升了5.5%和13.0%。

StoryTeller 长视频描述系统

概述

StoryTeller 是一个全自动的长视频描述生成系统,能够处理跨度数分钟的视频。如下图 1 所示,该系统包含三个主要模块。首先,视频分割模块将长视频划分为多个持续数秒的短片段,同时保留这些片段的完整性和相对独立性。第二部分是音画角色识别模块,该模块采用局部和全局双重机制,以准确识别整个长视频中的角色。在局部上,利用一个多模态大语言模型(MLLM),整合音频、视觉和文本模态,通过音频和视觉线索实现短片段内的角色识别。在全局上,通过一个全局解码算法,在推理过程中同时处理与同一角色相关的多个短片段,将 MLLM 的局部结果整合,以提升整体识别精度。最后,描述生成模块利用 LVLM 生成详细的描述。通过将音画角色识别结果作为输入,LVLM 能生成贯穿整个长视频的连贯描述,从而形成以情节为单位的密集叙述。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

音画角色识别

音画角色识别模块通过整合音频、视觉和文本信息,确定视频片段中的说话者身份。具体而言,给定一个视频片段(包括帧、音频和字幕)以及演员列表(包含角色照片和姓名),该模块将对白分配给对应的角色。如果说话者在演员列表中,则提供他们的姓名;否则,使用描述性身份(例如“一个警察”或“一个小女孩”)。此任务具有以下几个挑战:

  1. 仅依赖视觉信息通常不够,尤其是在多个角色同时出现在画面中或说话者未出现时;
  2. 数秒长的片段中的音频线索通常是孤立的,在角色识别方面作用有限。然而,在更长的片段中,音频可以用来提取跨不同片段的说话者特征,例如识别是否同一人在多个片段中讲话。 依赖短片段的模型通常难以有效整合这些全局特征。


为了解决上述挑战,本文设计了一种结合音视频模态的创新音画角色识别机制,并开发了一个全局解码算法,以利用全局音频信息实现更准确的角色识别。如上面图 1 所示,首先对整个视频进行音频分离,对对白进行分割,并为不同的说话者分配 ID(例如 C1、C2 等)。带有全局 ID 的字幕随后被输入到 MLLM 中,以识别每个全局 ID 对应的角色名称。全局解码机制并行处理短视频片段,确保不同片段中的全局 ID 始终映射到相同的名称,从而提高识别精度。MLLM 和全局解码算法的实现细节如下所述。

模型架构与训练
本文集成了一个能够处理视觉和音频数据的 MLLM,如下图 2 所示。对于视觉输入,每个图像或视频帧由 CLIP-ViT编码,然后通过一个多层感知机(MLP)映射到下游 LLM 的 token 嵌入空间。这些 tokens 随后被输入到 LLM 中。音频输入由双音频编码器处理,包括 Whisper-Large-v2的语音编码器和非语音 BEATs 音频编码器。两个音频编码器的输出在帧级进行拼接,随后通过窗口级 Q-former 对组合后的音频表示对齐到 LLM 的输入空间。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

从 Tarsier-7b(一种在多种视频理解基准测试中表现出SOTA性能的大型视觉语言模型)初始化视觉模块和语言模型。训练流程分为三个阶段:

  1. 对音频模块进行预训练;
  2. 在包括音频分离、角色识别、识别与追踪等任务上进行微调;
  3. 使用 MovieStory101 训练集进行音画角色识别的微调。

全局解码
使用 MLLM 将名称分配给每个全局角色ID。首先,这些名称来源于集合 N,其中包括演员列表中的所有名称以及一个特殊项“Others”,代表不在演员列表中的角色。当模型输出“Others”时,还会进一步提供一个描述性名称。其次,模型输出一个 JSON 字典,其中每个键是输入短片段中的全局角色 ID,每个对应的值是分配的名称。键按全局角色 ID 的升序列出。


一个给定的全局角色 ID 可能同时出现在多个短视频片段中。如果在不同片段中独立分配名称,可能会产生冲突,即同一角色 ID 在不同片段中被分配了不同的名称。为了解决这个问题,对所有包含相同全局角色 ID 的片段的结果进行并行解码。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

此外,在计算模型生成特殊项“Others”的概率时,仅考虑“Others”token的概率,忽略任何描述性名称token。这种方法基于观察到的现象,即模型在生成描述性名称时表现出高准确率,但在推理时可能为同一角色生成不同但有效的描述,例如“警察”和“穿警服的男人”。尽管这些描述有所不同,但它们并不影响最终的视频描述,因为语言模型可以正确识别这些描述指代的是同一人。

描述生成

在识别出角色后,接下来生成最终描述。在此阶段,模型接收包含视频、演员表以及标注角色名称的字幕的数据输入。为了与现有的开源或闭源大型视觉语言模型兼容,此阶段排除音频输入。对于开源模型,使用 MovieStory101 数据集中的视频描述数据进行监督微调。在这一阶段,视觉适配器和 LLM(大语言模型)都参与训练。

MovieStory101 数据集

MovieStory101,是一个基于电影的长视频描述数据集。选择电影作为数据来源,因为它们包含丰富且多样化的信息。一份高质量的电影描述不仅需要捕捉细粒度的细节,如场景、角色和动作,还需要涵盖更高层次的内容,比如角色关系、剧情发展以及事件之间的因果关系(参见下图 3)。此外,由于电影本质上是长视频,其描述需要在语言上保持连贯性,并在逻辑上保持一致性。因此,电影描述任务具有显著的挑战性。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

电影来源

基于公开可用的数据集 Movie101 和 Movie101v2 构建了 MovieStory101 数据集。这些数据集共包含 203 部电影,并为无障碍版本中的无对话场景提供了音频描述。


由于 Movie101 和 Movie101v2 中的电影在音轨中整合了音频描述,收集了电影的原始版本以获取原始音轨。在审查内容后,为数据集选择了 187 部电影。排除了 16 部电影,因为它们的原始版本与无障碍版本之间存在显著差异。每部选定的电影被分割为 3 分钟的片段。最终,MovieStory101 数据集在训练/开发/测试集划分中分别包含 5,350 / 140 / 492 个片段,总计 300 小时。每个划分包含来自不同电影的视频片段。

标注流程

标注流程包括以下三个步骤:电影描述、角色照片和音视频角色识别。

电影描述
本文为数据集中每个电影片段提供详细描述。为提高标注效率,向标注人员提供来自 Movie101 和 Movie101v2 的音频描述和自动语音识别(ASR)数据作为参考。标注人员的任务是描述视频中每个事件,并标注相应的开始和结束时间戳。描述需要包含场景、角色、动作、对话及剧情发展等细节,旨在创建连贯的长篇视频描述。MovieStory101 数据集中的示例见上图 3。此外,标注人员还需同时修订 ASR 数据以生成每个电影片段的字幕。

角色照片
对于每个电影片段,标注人员需要识别出现的主要角色,并为每个角色选择一个面部特写。随后创建一个演员表,记录每个角色的姓名及其对应的面部图像,示例见图 3。

音视频角色识别
对于视频片段中的每一句对话,标注人员需要识别发言者。如果发言者包含在演员表中,则分配相应的角色名称;否则,使用描述性标签来标注发言者。MovieStory101 数据集中关于音视频角色识别的示例见图 3。

电影描述的评估

由于长视频描述包含大量细节,评估的成本较高,因此对其评估是一个挑战。为了解决这一问题,为 MovieStory101 测试集开发了一种自动评估方法——MovieQA。平均而言,MovieQA 为每个 3 分钟的视频生成 38 道多项选择题,这些问题聚焦于视觉动作、角色关系及剧情发展。

评估方法
在评估过程中,利用 GPT-4 根据长视频描述回答这些问题,问答的准确率作为衡量描述质量的自动化指标。MovieQA 的示例见下表 1。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

MovieQA 的创建
确定了评估长视频描述时需要关注的三种关键信息类型:

  1. 动作:包括动作识别、动作序列以及动作之间的因果关系。
  2. 角色:角色的身份、与其他角色的关系以及这些关系的演变。
  3. 剧情:事件的因果关系、角色动机以及事件间的关联性。

基于上述类别,为每种类型生成相应的问题和答案对。

实验

基线方法

将所提出的方法与两类基线方法进行比较:

  • 闭源 LVLMs
  • 开源 LVLMs

对所有基线方法,均提供视频、演员表和字幕作为输入。具体而言,对于 Gemini-1.5-pro,直接输入完整的 3 分钟视频;而对于其他模型,先将视频划分为 10 秒片段,并从每个片段中采样 8 帧作为输入,以生成单个片段的描述。最后,将各片段的描述拼接成整个 3 分钟视频的完整描述。

实验结果

首先,在 MovieQA 数据集上评估了所提出方法和基线方法生成的描述。如下表 2 所示,StoryTeller 在 MovieQA 上优于所有基线方法。值得注意的是,StoryTeller 比表现最强的基线 Gemini-1.5-pro 高出 9.5% 的准确率。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

下表 3 展示了一个包含多个角色的视频示例,其中 StoryTeller 能有效跟踪角色间的关系,比 Gemini-1.5-pro 生成的描述减少了虚构内容。在分析 MovieQA 中不同问题类型的表现时,StoryTeller 在动作、角色和剧情问题上均优于所有基线方法,这表明 StoryTeller 在低层次视觉细节和高层次剧情信息的描述上更为准确。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

还进行了人工对比评价,这是评估视频描述的黄金标准。将 StoryTeller 与 Gemini-1.5-pro 和 VILA1.5-8B 进行比较,分别代表表现最好的闭源和开源基线。在此评价中,从 MovieStory101 测试集中随机选择 100 个 3 分钟视频,并要求标注人员比较两种模型生成的描述,收集其偏好意见。由于直接比较 3 分钟视频较为困难,标注人员按 20 秒片段观看视频,并对对应描述给出偏好意见。计算了 20 秒片段级别的胜率。


结果如下表 4 所示,与自动评估结果一致。StoryTeller 生成的描述显著优于 Gemini-1.5-pro 和 VILA1.5-8B 的描述。具体来说,StoryTeller 相比 Gemini-1.5-pro 优势为 +15.56%,相比 VILA1.5-8B 优势为 +42.25%。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

系统设计
StoryTeller 的系统设计是一个通用框架,适用于各种 LVLMs(大规模多模态语言模型),以增强其长视频描述能力。下表 5 展示了不同组件对各种 LVLMs 的增量贡献:

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

  • 视频分段模块用视频分段模块替代直接划分为 10 秒片段的方式,可显著提高描述准确率。在 MovieQA 数据集上,所有模型的准确率平均相对提升6.3%
  • 音视频识别结果将本文模型生成的音视频识别结果作为输入提供给 LVLMs,可进一步提升准确率,平均相对提升6.4%。这表明,本文模型生成的音视频识别结果在增强长视频描述方面具有普适性和有效性。
  • 替换“Others”标签用本文模型生成的描述性名称替代 “Others” 标签,同样能够改进视频描述效果,且对所有模型均有益处。在本文的框架下,Gemini-1.5-pro 和 GPT-4o 分别在 MovieQA 上实现了5.5%13.0%的相对准确率提升。

消融研究
进行了消融研究,以评估以下模块的必要性:

  • 音频和视觉任务的微调
  • 音视频识别模块中的全局解码(Global Decoding)

在 MovieStory101 测试集上测试了音视频角色识别的准确率,结果见下表 6:

  • 微调音频和视觉任务的性能提升4.6%
  • 全局解码方法带来了3.2%的性能提升。

超Gemini-1.5-pro 9.5%!字节&上交&北大开源StoryTeller:生成一致性高的长视频描述-AI.x社区

这些实验表明,StoryTeller 的模块化设计及优化对提升描述精度具有显著贡献。

结论

本文提出了音视频角色识别作为生成长视频详细且一致描述的关键步骤。基于这一见解,提出了 StoryTeller 系统,一个旨在生成密集且具有情节层次的视频描述的框架。该系统由三个主要模块组成:视频分段、音视频角色识别和描述生成。同时,引入了一个新的数据集 MovieStory101,包含来自 187 部电影的 5,982 个 3 分钟长的视频片段。为了有效和高效地评估长视频描述,提出了 MovieQA,一个与 MovieStory101 测试集对齐的大规模多项选择问答数据集。通过将视频描述输入到 GPT-4 中以回答这些问题,并以准确率作为自动评估指标,来评估描述的质量。


实验结果表明,StoryTeller 在 MovieQA 上超越了所有开源和闭源基线模型,特别是,StoryTeller 的准确率比最强的基线 Gemini-1.5-pro 高出 9.5%。在人类评估中,StoryTeller 在 20 秒片段级别上相比 Gemini-1.5-pro 具有 +15.56% 的优势。此外,验证了音视频角色识别的加入显著增强了所有 LVLMs 的视频描述效果。值得注意的是,Gemini-1.5-pro 和 GPT-4o 在 MovieQA 上的准确率分别提升了 5.5% 和 13.0% 。

这些结果表明,StoryTeller 的方法为提高长视频描述提供了一种通用的解决方案。


本文转自AI生成未来 ,作者:AI生成未来


原文链接:​​https://mp.weixin.qq.com/s/pDspeBAqofeqK9JcdCQpbg​

标签
收藏
回复
举报
回复
相关推荐