一块显卡理解一部完整电影!智源联合多所高校推出小时级的超长视频理解大模型 Video-XL
长视频理解是多模态大模型的核心能力之一,也是迈向通用人工智能(AGI)的关键一步。然而,现有的多模态大模型在处理 10 分钟以上的超长视频时,仍然面临性能差和效率低的双重挑战。对此,智源研究院联合上海交通大学、中国人民大学、北京大学和北京邮电大学等多所高校,推出了小时级的超长视频理解大模型 Video-XL。
Video-XL 借助语言模型(LLM)的原生能力对长视觉序列进行压缩,不仅保留了短视频理解的能力,而且在长视频理解上展现了出色的泛化能力。Video-XL 相较于同等参数规模的模型,在多个主流长视频理解基准评测的多项任务中排名第一。此外,Video-XL 在效率与性能之间实现了良好的平衡,仅需一块 80G 显存的显卡即可处理 2048 帧输入(对小时级长度视频采样),并在视频“海中捞针”任务中取得了接近 95%的准确率。
未来,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
图一 不同长视频模型在单块 80G 显卡上支持的最大帧数及在 Video-MME 上的表现
背景介绍
使用 MLLM 进行长视频理解具有极大的研究和应用前景。然而,当前的视频理解模型往往只能处理较短的视频,无法处理十分钟以上的视频。尽管最近研究社区出现了一些长视频理解模型,但这些工作主要存在以下问题:
压缩视觉 token 带来的信息损失:为了使语言模型的固定窗口长度适应长视频带来的大量视觉 token,众多方法尝试设计机制对视觉 token 进行压缩,例如 LLaMA-VID 主要降低 token 的数量,而 MovieChat, MALMM 则设计 memory 模块对帧信息进行压缩。然而,压缩视觉信息不可避免带来信息的损失和性能降低。
性能和效率的不平衡:相关工作 LongVA 尝试 finetune 语言模型扩大其上下文窗口,并成功将短视频理解能力泛化到了长视频上。LongVila 优化了长视频训练的开销,提出了高效训练长视频训练的范式。然而,这些工作并未考虑推理时视频帧数增加带来的计算开销。
方法介绍
1、模型结构
图二 Video-XL 模型结构图
如图二所示,Video-XL 的整体模型结构和主流的 MLLMs 结构相似,由视觉编码器(CLIP), 视觉-语言映射器(2-layer MLP)以及语言模型(Qwen-7B)构成。特别之处在于,为了处理各种格式的多模态数据(单图,多图和视频),Video-XL 建立了一个统一的视觉编码机制。针对多图和视频数据,将每帧分别输入 CLIP;针对单图,将其划分为多个图像块,并将图像块输入 CLIP 进行编码。因此,一个 N 帧的视频或者一个 N 图像块的图片都将统一标记成 N × M 视觉 tokens。
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、评测结果
长视频理解:
表一 Video-XL 在 MLVU 和 VideoMME 的性能
表二 Video-XL 在 VNBench 和 LongVideoBench 上的性能
如表一,表二所示 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、消融实验
表三 Video-XL 的消融实验
Video-XL 对所提出的视觉压缩机制和 VICO 数据集进行了消融实验,如表三所示
1.视觉压缩的有效性: Video-XL 使用 Bunny 695k 数据集训练了两个模型:一个不使用压缩,另一个使用随机压缩比(从{2, 8, 16}中选取)。对于压缩模型,在视频基准 MLVU 和图像基准 MME、MMBench 上测试时应用了不同的压缩比。值得注意的是,即使使用 16 的压缩比,压缩模型在仍表现出较好的效果,接近甚至超越了基线模型。
2.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 训练的模型。此外,主要事件/动作排序任务比字幕生成任务带来了更显著的提升,因为它促使模型从长序列中提取关键片段并进行理解。
可视化结果
图三 Video-XL 在长视频理解任务上的可视化结果
如图三所示,Video-XL 在电影摘要、视频异常检测、广告植入检测等长视频任务上展现了良好的性能。
总结
该工作提出了 Video-XL 模型,利用语言模型的压缩能力,仅需一块 80G 显卡即可理解小时级别的视频;除此之外,Video-XL 在多个主流长视频理解基准评测上表现优异。Video-XL 有望在多个长视频理解的应用场景中展现出广泛的应用价值,成为得力的长视频理解助手。目前。Video-XL 的模型代码均已开源,以促进全球多模态视频理解研究社区的合作和技术共享。
评论