长视频理解是多模态大模型的核心能力之一,也是迈向通用人工智能(AGI)的关键一步。然而,现有的多模态大模型在处理 10 分钟以上的超长视频时,仍然面临性能差和效率低的双重挑战。
对此,智源研究院联合上海交通大学、中国人民大学、北京大学和北京邮电大学等多所高校,推出了小时级的超长视频理解大模型 Video-XL。
Video-XL 借助语言模型(LLM)的原生能力对长视觉序列进行压缩,不仅保留了短视频理解的能力,而且在长视频理解上展现了出色的泛化能力。
Video-XL 相较于同等参数规模的模型,在多个主流长视频理解基准评测的多项任务中排名第一。
此外,Video-XL 在效率与性能之间实现了良好的平衡,仅需一块 80G 显存的显卡即可处理 2048 帧输入(对小时级长度视频采样),并在视频「大海捞针」任务中取得了接近 95% 的准确率。
▲ 仅需几秒钟,VideoXL 便可以准确检索长视频中植入的广告内容,也可以像人类一样准确理解电影中发生的主要事件
未来,Video-XL 有望在电影摘要、视频异常检测、广告植入检测等应用场景中展现出广泛的应用价值,成为得力的长视频理解助手。
论文标题:Video-XL: Extra-Long Vision Language Model for Hour-Scale Video Understanding
论文链接:https://arxiv.org/abs/2409.14485
模型链接:https://huggingface.co/sy1998/Video_XL
项目链接:https://github.com/VectorSpaceLab/Video-XL
图 1 不同长视频模型在单块 80G 显卡上支持的最大帧数及在 Video-MME 上的表现
背景介绍
使用 MLLM 进行长视频理解具有极大的研究和应用前景。然而,当前的视频理解模型往往只能处理较短的视频,无法处理十分钟以上的视频。
尽管最近研究社区出现了一些长视频理解模型,但这些工作主要存在以下问题:
压缩视觉 token 带来的信息损失
为了使语言模型的固定窗口长度适应长视频带来的大量视觉 token,众多方法尝试设计机制对视觉 token 进行压缩,例如 LLaMA-VID 主要降低 token 的数量,而 MovieChat,MALMM 则设计 memory 模块对帧信息进行压缩。然而,压缩视觉信息不可避免带来信息的损失和性能降低。
性能和效率的不平衡
相关工作 LongVA 尝试 finetune 语言模型扩大其上下文窗口,并成功将短视频理解能力泛化到了长视频上。LongVila 优化了长视频训练的开销,提出了高效训练长视频训练的范式。然而,这些工作并未考虑推理时视频帧数增加带来的计算开销。
方法介绍
1. 模型结构
图 2 Video-XL 模型结构图
如图 2 所示,Video-XL 的整体模型结构和主流的 MLLMs 结构相似,由视觉编码器(CLIP),视觉-语言映射器(2-layer MLP)以及语言模型(Qwen-7B)构成。
特别之处在于,为了处理各种格式的多模态数据(单图,多图和视频),Video-XL 建立了一个统一的视觉编码机制。
针对多图和视频数据,将每帧分别输入 CLIP;
针对单图,将其划分为多个图像块,并将图像块输入 CLIP 进行编码。
因此,一个 N 帧的视频或者一个 N 图像块的图片都将统一标记成 N×M 视觉 token。
2. 视觉上下文隐空间压缩
相比于以往长视频模型直接对视觉 token 压缩,Video-XL 尝试利用语言模型对上下文的建模能力对长视觉序列进行无损压缩。对于视觉语言连接器输出的视觉信号序列:
其中 n 为视觉 token 的数量。Video-XL 的目标在于将 X 压缩成更为紧凑的视觉表示 C (|C|<|X|)。在下文中将详细介绍视觉上下文隐空间压缩的原理。
受到 Activation Beacon 的启发,Video-XL 引入了一种新的特殊标记,称为视觉摘要标记(VST), 记为 <vs>。基于此可以将视觉信号的隐层特征压缩到 VST 在 LLM 中的激活表示中(每层的 Key 和 Value 值)。
具体而言,首先将视觉信号序列 X 分成大小为 w 的窗口(默认每个窗口长度为 1440):
接着,对每个窗口首先确定压缩比,并插入一组 VST 标记,以交替的方式在视觉标记序列中插入。
在该过程中,视觉 token 表示的变化可以由以下公式表达:
LLM 将逐个处理每个窗口进行编码,并使用额外的投影矩阵在每层自注意力模块中处理 VST 的隐藏值。
编码完成后,普通视觉标记的激活值被丢弃,而 VST 的激活值被保留并累积,作为处理后续窗口时的视觉信号代理。
3. 模型训练方式
Video-XL 通过优化在压缩视觉信号下的生成质量来进行训练。
下一个 token 的预测通过以下公式进行计算:
其中 Θ 代表模型所有优化的参数,包含语言模型,视觉编码器、视觉语言连接器、VST 的投影矩阵,以及 VST 的 token embedding。
模型通过最小化标准的自回归损失进行训练,训练过程中不计算 VST 标记的损失(其标签设为-100),因为它们仅用于压缩。
同时,为了灵活支持不同的压缩粒度,训练时每个窗口的压缩比会从 {2,4,8,12,16} 中随机抽取。在推理时,可以根据具体的效率需求选择一个压缩比并应用于所有窗口。
4. 模型训练数据
在预训练阶段,Video-XL 使用 Laion-2M 数据集优化视觉语言连接器。
在微调阶段,Video-XL 充分利用了 MLLM 在各种多模态数据集上的能力。
对于单图像数据,使用了 Bunny 695k 和 Sharegpt-4o 的 57k 张图片。
对于多图像数据,使用了从 MMDU 提取的 5k 个数据。
对于视频数据,收集了不同时长的视频样本,包括来自 NExT-QA 的 32k 样本,Sharegpt-4o 的 2k 视频样本,CinePile 的 10k 样本以及 11k 个带有 GPT-4V 视频字幕注释的私有数据。
为了增强长视频理解能力并释放视觉压缩机制的潜力,本工作开发了一个自动化的长视频数据生产流程,并创建了一个高质量数据集 —— 视觉线索顺序数据(VICO)。
该流程首先从 CinePile 数据或 YouTube 等视频平台获取长视频,涵盖电影、纪录片、游戏、体育等开放领域的内容。每个长视频被分割成 14 秒的片段。
对于每个片段,本工作使用 VILA-1.5 40B 模型生成详细描述,包括动作序列和关键事件。基于这些描述,本工作利用 ChatGPT 将线索按时间顺序排列。
VICO 数据集通过要求模型检索关键帧并检测时间变化,提升其长视频理解能力。
实验
1 . 评测基准
Video-XL 选用多个主流视频理解评测基准,对于长视频理解任务,评测了 VNBench、LongVideoBench、MLVU 和 Video-MME;对于短视频理解任务,评测了 MVBench 和 Next-QA。
2. 评测结果
长视频理解:
表 1 Video-XL 在 MLVU 和 VideoMME 的性能
表 2 Video-XL 在 VNBench 和 LongVideoBench 上的性能
如表 1 和表 2 所示 Video-XL 在多个主流的长视频评测基准上展现了卓越性能。
在 VNBench 上准确率超过了目前最好的长视频模型大约 10%;
在 MLVU 的验证集上,仅仅具有 7B 参数的 Video-XL 甚至在单项选择任务上超越了 GPT-4o 模型;
在 Video-MME 和 LongVideoBench 等数据集上,Video-XL 也在同等量级规模的长视频理解模型中排名第一。
超长视频理解:
Video-XL 通过进行了视频「大海捞针」测试来评估其处理超长上下文的能力。
LLaVA-NexT-Video 和 LongLLaVA 都采用了简单的位置信息外推算法,但在输入更多上下文时,仍然难以理解关键信息。虽然 LongVA 通过微调 LLM 来处理更长的输入,但高昂的计算成本限制了其在单块 80G GPU 上处理约 400 帧的能力。
相比之下,Video-XL 在相同硬件条件下,以 16 倍压缩比和 2048 帧输入,达到了近 95% 的准确率。这表明,Video-XL 在准确性和计算效率之间实现了最佳平衡。
短视频理解:
尽管 Video-XL 的设计主要面向长视频,但它保留了短视频理解的能力。在 MVBench 和 Next-QA 任务评测中,Video-XL 取得了和目前 SOTA 模型相当的效果。
3. 消融实验
表 3 Video-XL 的消融实验
Video-XL 对所提出的视觉压缩机制和 VICO 数据集进行了消融实验,如表 3 所示。
视觉压缩的有效性
Video-XL 使用 Bunny 695k 数据集训练了两个模型:一个不使用压缩,另一个使用随机压缩比(从 {2, 8, 16} 中选取)。
对于压缩模型,在视频基准 MLVU 和图像基准 MME、MMBench 上测试时应用了不同的压缩比。
值得注意的是,即使使用 16 的压缩比,压缩模型在仍表现出较好的效果,接近甚至超越了基线模型。
VICO 数据集的有效性
Video-XL 使用不同数据集训练了四个模型:(a)仅使用 Bunny 695k;(b)Bunny 695k 结合 NeXTQA 32k;(c)Bunny 695k 结合 CinePile 10k;(d)Bunny 695k 结合长视频字幕 5k;(e)Bunny 695k 结合 VICO 5k。
值得注意的是,即使仅使用 5k 的 VICO 数据,Video-XL 也超过了使用 NeXTQA 32k 训练的模型。
此外,主要事件 / 动作排序任务比字幕生成任务带来了更显著的提升,因为它促使模型从长序列中提取关键片段并进行理解。
可视化结果
图 3 Video-XL 在长视频理解任务上的可视化结果
如图 3 所示,Video-XL 在电影摘要、视频异常检测、广告植入检测等长视频任务上展现了良好的性能。
总结
该工作提出了 Video-XL 模型,利用语言模型的压缩能力,仅需一块 80G 显卡即可理解小时级别的视频;除此之外,Video-XL 在多个主流长视频理解基准评测上表现优异。
Video-XL 有望在多个长视频理解的应用场景中展现出广泛的应用价值,成为得力的长视频理解助手。
目前,Video-XL 的模型代码均已开源,以促进全球多模态视频理解研究社区的合作和技术共享。
参考资料:
https://arxiv.org/abs/2409.14485
本文来自微信公众号:微信公众号(ID:null),作者:编辑部 HYZ,原标题《一张显卡看遍天下电影!智源联合高校开源 Video-XL 打破长视频理解极限,95% 准确率刷爆纪录》