VideoAgent


VideoAgent: A Memory-augmented Multimodal Agent for Video Understanding

摘要

本文探索了如何通过一种新颖的统一记忆机制,将多种基础模型(大语言模型和视觉语言模型)协同整合,以解决具有挑战性的视频理解问题,特别是捕捉冗长视频中的长期时序关系。

具体而言,本文提出多模态智能体 VideoAgent:1)构建了一个结构化记忆,用于存储视频的通用时序事件描述和以对象为中心的轨迹状态;2)给定一个输入的任务查询,它利用包括视频片段定位、对象记忆查询以及其他视觉基础模型在内的工具,通过大语言模型的零样本工具使用能力,以交互式的方式解决任务。

VideoAgent 在多个长视野视频理解基准测试中展现了令人印象深刻的性能,在 NExT-QA 基准上相比基线平均提升 6.6%,在 EgoSchema 基准上平均提升 26.0%,缩小了开源模型与 Gemini 1.5 Pro 等私有模型之间的差距。

引言

理解视频并回答自由形式的查询(如问答、内容检索等)仍然是计算机视觉和人工智能领域的重大挑战。近年来,这一领域的进展主要得益于基于大语言模型的端到端预训练大型Transformer模型,即多模态大模型。

然而,这些模型在处理长视频时,其能力受到越来越多的质疑。这些视频通常包含丰富的事件和复杂的时空依赖关系。具体挑战体现在两方面:

  1. 高昂的计算和内存成本:处理冗长视频时,尤其是内存成本会显著增长,甚至变得无法承受。
  2. 长距离关系捕捉困难:自注意力机制有时难以有效捕捉视频中长范围的关联信息。

这些问题严重阻碍了将复杂的 foundation models 应用于视频理解的进一步进展。

近年来,得益于LLM的工具使用能力,一类新型多模态理解方法多模态智能体应运而生。其核心思路是通过调用多个工具基础模型(如目标检测、视觉问答等)与大语言模型交互式协作,从而解决多模态任务。这类方法具有巨大潜力,因为它们大多无需额外训练且能灵活搭配工具集

然而,将其扩展到视频理解领域,尤其是长视频处理时,仍面临诸多挑战。单纯将视频基础模型作为工具添加,仍可能遭遇计算成本高注意力机制限制等问题。

  • Video-llava: LanguageBind 编码器获取视觉特征,将不同模态映射到文本特征空间,统一的视觉表示通过共享的投影层进行编码,并与分词后的文本查询结合,输入至 LLM。
  • MovieChat:利用滑动窗口方法提取视频特征,并以token形式表示,这些token被逐帧送入短期记忆。短期记忆达到预设限制时,最早的token被弹出并整合到长期记忆。

其他研究尝试采用更复杂的提示策略搭配更强大的工具,但这些方法往往导致流程复杂化,其性能仍无法与端到端方法相媲美,这可能源于缺乏针对视频特性的智能体设计

  • Video-chatgpt:结合使用人工辅助和半自动标注方法创建了包含 100,000 个视频指令对的数据集。 每对都包含一个视频及其以问答形式呈现的相关说明。冻结clip和llm,指令微调线性投影。

  • Lifelongmemory:以固定时间间隔(如每2秒)从长视频中采样片段,让多模态模型生成caption,随后提炼描述及时间戳&用户查询,输入LLM做文本推理。

    image-20251102130427387
  • Doraemongpt:构建了一个由记忆工具规划器三大核心组成的系统框架。将原始视频通过各个小模型提取空间主导记忆(目标轨迹,外观,行为等)和时间主导记忆(音频,字幕,片段描述等),转换为一个结构化的符号记忆库。使用工具集生成sql查询,用蒙特卡洛规划路径。

    image-20251102132444182

针对以上局限,本文提出了 VideoAgent,一个基于大语言模型的、用于视频理解任务的多模态工具使用智能体。核心洞察是将视频表示为一个结构化的统一记忆,从而促进LLM强大的时空推理和工具使用能力,以期达到甚至超越端到端模型的性能。记忆设计遵循“最小但足够”的原则:研究发现,整体的事件上下文描述关于物体的时序一致细节可以覆盖对视频最常见的查询。因此,VideoAgent设计了两种记忆组件:

  1. 时序记忆(temporal memory):存储从完整视频切分出的每个短片段(2秒)的文本描述。
  2. 物体记忆(object memory):跟踪并存储视频中物体和人物出现的信息。

在接收到查询后,LLM会将其分解为几个子任务,并调用工具模型。整个系统围绕统一记忆和以下工具展开工作:

  • 描述检索(caption retrieval):根据时间范围返回事件描述。
  • 片段定位(segment localization):根据文本查询定位相关视频片段。
  • 视觉问答(visual question answering):对检索到的视频片段回答问题。
  • 物体记忆查询(object memory querying):使用类似SQL的查询从物体记忆中检索复杂信息。

最后,LLM聚合交互式工具使用的结果,生成对输入查询的答案。

image-20251103113026077

总体贡献:

  • 提出了一种用于长视频结构化表示的统一记忆机制。包括时序记忆存储段落级别的描述和物体记忆存储物体轨迹状态。
  • 基于该统一记忆,设计了VideoAgent,这是一个由LLM驱动的多模态智能体。它会分解输入的任务查询,并通过交互式调用工具从内存中检索信息,直至生成最终响应。
  • 在多个视频理解基准上进行了全面评估,对比端到端多模态语言模型和多模态Agent基线,证明了VideoAgent的有效性。

架构

VideoAgent的完整工作流程,核心思想是将视频理解任务分为两个核心阶段:

  1. 记忆构建阶段(离线):将输入的长视频转化为一种结构化的、高效的统一记忆表示。这包括时序记忆(Temporal Memory, MT)物体记忆(Object Memory, MO)
  2. 任务求解阶段(在线):当接收到一个任务查询时,以大语言模型为核心的智能体会交互式地调用一系列工具,从构建好的记忆和原始视频片段中检索、整合信息,最终生成答案。
image-20251102235331647

这个架构的优势在于,将繁重的视频处理工作前置并离线完成,而在推理时,LLM只需要像查询数据库一样高效地查询记忆,从而避免了处理原始视频的巨大计算开销。

时序记忆

存储视频的宏观事件流和上下文信息,相当于视频的“内容摘要”或“剧本”。

构建过程

  • 视频分割:首先将长视频 V切割成 n个短的视频片段 [v1,v2,…,vn],每个片段时长约2秒。
  • 片段描述生成(Video segment caption):使用预训练的视频描述模型 LaViLa为每个片段生成一个文本描述s^caption。LaViLa的描述带有一个关键前缀:#C表示描述是关于摄像头佩戴者(Egocentric视角),#O表示是关于其他人。这使得该记忆能同时适用于自我中心视频和普通视频。
  • 特征提取(Video segment feature and caption feature)视频片段特征:使用 ViCLIP的视频编码器对每个片段进行编码。每个片段均匀采样10帧作为输入,生成片段的视觉特征向量 e^video描述文本特征:使用OpenAI的 text-embedding-3-large模型为每个片段的LaViLa描述生成文本特征向量 e^caption。这主要用于后续的文本相似性检索。

LaViLa

LAVILA(Language-model augmented Video-Language pre-training)是一种创新的视频-语言表示学习方法,通过利用大语言模型(LLMs)作为自动视频叙述生成器,显著提升了视频理解能力。

LAVILA包含两个核心组件:

1. NARRATOR(叙述生成器)

  • 基于预训练LLM(如GPT-2)构建
  • 添加视觉条件化模块,使模型能够根据视频内容生成文本描述
  • 通过交叉注意力机制将视觉特征融入文本生成过程
image-20251104123334184

2. REPHRASER(文本改写器)

  • 基于T5等文本到文本模型
  • 对现有叙述进行改写和扩充,增加文本多样性
  • 通过替换同义词、调整语序等方式实现数据增强

为了确保生成的文本描述多样且高质量,LaViLa 在利用 LLM 时会提供不同的文本提示。例如,可以要求 LLM 以“第一人称”或“第三人称”视角进行描述,或者侧重于描述动作、物体或场景。这大大丰富了生成数据的多样性,让训练出的模型更具泛化能力。

ViCLIP

ViCLIP 的名称源自于 Vision Contrastive Language Image Pre-training,但其核心思想扩展到了视频领域。它遵循的是 CLIP 模型开创的 对比学习范式

ViCLIP 的架构通常包含两个核心组件,并在 CLIP 的基础上针对视频的时序特性进行了优化。

  1. 视频编码器基础:通常基于强大的视觉 Transformer 模型(如 InternVideo 项目中的 ViT)构建。时序信息处理:这是与图像 CLIP 最大的不同。为了捕捉视频中的动态信息,ViCLIP 会采用以下几种策略之一:时序注意力:在 Transformer 层中加入对时间维度的自注意力机制,让模型能够关注不同帧之间的关系。帧采样与融合:从视频中均匀或稀疏地采样多帧(如论文中提到的 10 帧),然后通过编码器将这些帧的信息聚合起来,形成一个代表整个视频片段的特征向量。
  2. 文本编码器通常采用标准的文本 Transformer(如 BERT 或 GPT 的编码器部分)。它将输入的文本描述(如“一个人正在厨房切菜”)转换为一个文本特征向量。
  3. 对比损失函数模型通过优化对比损失(如 InfoNCE Loss)来同时训练视频和文本编码器,迫使它们学习到对齐的跨模态表示。

ViCLIP 的强大之处在于,通过 InternVid 数据集的训练,它能够实现零样本(Zero-shot)视频分类和检索。例如,无需额外训练,直接给 ViCLIP 一段新视频和一组候选文本标签,它就能计算出视频与每个标签的相似度,并选出最匹配的那个。

text-embedding-3-large

text-embedding-3-large是 OpenAI 在 2024 年 1 月推出的新一代文本嵌入模型,属于 text-embedding-3系列的性能旗舰。其核心创新并非具体的架构变动,而在于训练方法和输出策略上的重大改进。

  • 核心目标:将文本(词、句、段)转换为高维向量(嵌入),使语义相似的文本在向量空间中的位置接近。
  • 核心创新Matryoshka 表示学习。该技术允许模型输出一个高维向量(如 3072 维),但其内部结构确保该向量的前 N 维(如 256、512 维)本身就包含了对语义理解最关键的信息,且性能损失极小。

物体记忆

显式地、精确地捕获视频中物体和人物的时空状态变化,提供细粒度的、跨时间线的实体信息。

构建过程

  • 目标跟踪:首先,使用目标检测模型 RT-DETR和多目标跟踪器 ByteTrack的组合,在整个视频中检测物体,并为每个被跟踪的物体实例生成一个“跟踪ID”,同时记录其类别和边界框。
  • 重识别:由于物体可能在视频中时隐时现,同一个物体可能被赋予多个不同的“跟踪ID(tracking ids)”。为了解决这个问题,VideoAgent采用了重识别技术。具体来说,它对每个“跟踪ID”裁剪出10个随机帧中的物体图像,并分别计算其 CLIPDINOv2视觉特征。然后,通过计算这些特征的加权余弦相似度,将属于同一物体的不同“跟踪ID”聚类,最终为视频中每个独一无二的物体分配一个永久的 “物体ID”
image-20251102161446202 image-20251102162228702

重识别:

  • 初始化:创建一个空的重识别组列表。
  • 遍历视频帧:对于每一帧中的每一个未被检查的“跟踪ID”,算法尝试将其分配到现有的重识别组中。
  • 合并条件:一个“跟踪ID”能被合并到一个现有组,必须同时满足三个严格条件:非共存性:该“跟踪ID”与组内任何其他“跟踪ID”不能在同一视频帧中共存(因为同一物体在同一帧中只应有一个边界框)。特征相似性阈值1:该“跟踪ID”与组内所有“跟踪ID”的综合特征相似度必须大于0.5。这个相似度是CLIP和DINOv2视觉特征的加权余弦相似度。特征相似性阈值2:该“跟踪ID”至少与组内一个“跟踪ID”的相似度大于0.62。
  • 创建新组:如果无法合并到任何现有组,则以此“跟踪ID”为核心创建一个新的重识别组
image-20251103123013742

记忆存储:构建好的物体信息被存储在两种结构中:

  • 特征表:存储每个“物体ID”的平均CLIP视觉特征 fobject。这使得系统能够通过自然语言(如“红色的杯子”)进行开放词汇的物体查询
  • SQL数据库:建立一个关系型数据库,包含三个字段:物体ID(sid)、物体类别(scategory)以及该物体出现过的所有视频片段的索引列表。这为执行复杂的逻辑查询(如“查询所有在厨房场景出现过的杯子”)奠定了基础。

RT-DETR

RT-DETR(Real-Time Detection Transformer)是一种专为实时目标检测设计的先进模型。它通过一系列创新架构解决了传统 DETR 类模型收敛速度慢、计算复杂度高的问题。

image-20251104190612841

Backbone(主干网络)

  • 作用:负责从输入图像中提取多层次、多尺度的特征图。通常采用高性能的卷积神经网络,如 HGNetv2
  • 输出:生成多个不同尺度的特征图(S3, S4, S5),其中浅层特征图分辨率高、包含丰富的细节信息(如边缘、纹理),深层特征图分辨率低、包含高级的语义信息。

Hybrid Encoder(混合编码器)

这是 RT-DETR 最具创新性的部分,它取代了原始 DETR 中计算昂贵的 Transformer 编码器,并集成了类似于 FPN/PAN 的特征金字塔网络功能。其内部又分为两个关键子模块:

  • 尺度内特征交互模块目标:使用自注意力机制对最后一个、也是语义信息最丰富的高层级特征图(C5)进行全局上下文建模。这允许模型捕获图像中不同位置远距离物体之间的关系,对于处理遮挡或复杂场景至关重要。实现:通常只对 C5 特征图使用 Transformer 编码层,因为其尺度最小,计算成本相对可控。这一步确保了每个物体特征都拥有全局视野。
  • 跨尺度特征融合模块目标:将经过全局上下文增强的高层特征与来自主干网络的低层、高分辨率特征进行融合。“混合”一词正体现在此——结合了CNN的局部特征提取和Transformer的全局关系建模优势实现:通过类似 PANet 的路径,使用上采样和卷积操作,将高层语义信息传递到中层和低层特征中,同时将底层的细节信息向上融合。最终输出一系列既包含丰富语义又保留精确定位信息的多尺度特征图(S3, S4, S5),供解码器使用。

Decoder(解码器)与 Prediction Head(预测头)

  • 作用:解码器接收混合编码器输出的多尺度特征和一组可学习的“目标查询”。
  • 创新:RT-DETR 引入了不确定性引导的查询选择策略。它不是随机初始化目标查询,而是根据编码器输出的特征图,初步筛选出可能包含物体的区域(高不确定性区域),并以此初始化查询。这加速了模型的收敛过程。
  • 流程:通过多层 Transformer 解码器,目标查询与多尺度特征进行交互,最终每个查询输出一个预测结果(包括类别分数和边界框坐标)。

ByteTrack

ByteTrack是字节跳动与2021年10月份公开的一个全新的多目标跟踪算法,原论文是《ByteTrack: Multi-Object Tracking by Associating Every Detection Box》。ByteTrack的MOTA和FPS等指标上都实现了较好的性能,要优于现有的大多数MOT(多目标追踪)算法。

ByteTrack 并不是连接所有检测框形成一个追踪轨迹,而是通过预测和验证的方法来确定追踪轨迹。对于每一个轨迹使用卡尔曼滤波来预测轨迹下一个位置(预测框),然后计算检测框和预测框的IOU,最后通过匈牙利算法匹配IOU,返回匹配成功和失败的轨迹。

追踪算法的详细步骤:

  1. 在开始追踪之前给每一目标创建追踪轨迹
  2. 通过卡尔曼滤波预测每一个追踪轨迹的下一帧边界框
  3. 通过检测器获得目标的检测框,根据置信度将检测框分为高分框和低分框
  4. 首先针对高分框,计算高分框和预测框的IOU ,使用匈牙利算法匹配IOU,获得3个结果:已匹配的轨迹与高分框,未成功匹配的轨迹,未成功匹配的高分框。匹配成功后将追踪轨迹中的框更新为高分检测框
  5. 然后针对低分框,计算低分框和上一步未匹配上的预测框的IOU,使用匈牙利算法匹配IOU,获得3个结果:已匹配的轨迹与低分框,未成功匹配的轨迹,未成功匹配的低分框。匹配成功后将追踪轨迹中的框更新为检测框
  6. 最后针对未匹配上的高分检测框,将其和状态未激活的轨迹匹配,获得3个结果:匹配、未匹配轨迹、未匹配检测框。对于匹配更新状态,对于未匹配轨迹标记为删除,对于未匹配检测框,置信度大于高阈值+0.1新建一个跟踪轨迹,小于则丢弃。

论文选择ByteTrack作为目标追踪方案,是基于其显著优势:

  1. 简单高效:无需复杂的外观特征提取和重识别模型,主要依赖IoU和运动模型,计算开销小,非常适合处理长视频,保证了VideoAgent记忆构建阶段的效率。
  2. 强鲁棒性:通过利用低分检测框,极大地减轻了遮挡、运动模糊等挑战性问题带来的轨迹断裂和ID切换,为后续的“重识别”步骤提供了质量更高、更完整的初始轨迹数据。
  3. 通用性强:它可以与任何高性能的目标检测器(如RT-DETR)无缝衔接,这种模块化设计符合VideoAgent“组合最佳工具”的理念

工具与推理

在推理阶段,LLM(本文使用GPT-4)作为“总指挥”,动态调用一个精简而高效的工具集来解决问题。这些工具主要围绕查询记忆而设计。

四大核心工具

  1. 描述检索(Caption retrieval):根据给定的起止时间点,直接从时序记忆中返回对应时间段的所有文本描述。为避免上下文过长,最多允许检索15个连续片段的描述。
  2. 片段定位(Segment localization):给定一个文本查询,该工具会计算查询与时序记忆中所有片段的综合相似度(结合了ViCLIP提供的视频-文本相似度和基于文本嵌入的描述-文本相似度),返回最相关的Top-5视频片段。
  3. 视觉问答:当记忆中的信息不足时,该工具可以对一个定位到的短片段时间点,调用VQA模型(如Video-LLaVA)来回答关于该片段的细节问题,获取未被记忆直接记录的视觉信息。
  4. 物体记忆查询:这是最强大的工具之一。对于复杂的物体相关问题,LLM会先从中提取物体描述,将描述的文本特征(通过CLIP获取)与Mo数据库中的对象特征进行比对,以确定与描述最匹配的对象ID。随后,LLM将根据查询语句和检索到的对象ID,然后自动编写SQL代码来查询物体记忆的数据库,从而获得精确的、跨时间的物体信息(如出现次数、位置等)。
image-20251102172840825

推理流程是一个标准的智能体交互循环

  1. LLM接收用户查询,初始化一个历史缓冲区。
  2. LLM进行思考,决定下一步需要调用哪个工具以及输入参数是什么。
  3. LLM调用工具,并将工具返回的结果添加到历史缓冲区。
  4. 重复步骤2和3,直到LLM认为已经收集到足够的信息来回答问题,或达到最大步数限制。
  5. LLM根据所有历史交互信息,生成最终答案。
image-20251102172310460

推理流程

下面,我们详细拆解循环中的每一个组成部分,看看它们具体是如何运作的。

Thought(思考)
  • 作用:这是LLM的内部推理过程。它基于当前的问题和已有的历史信息(之前的步骤及其结果),分析当前局势,规划下一步应该做什么。其目的是保持推理的连贯性和可解释性。
  • 内容示例“用户想知道视频开头穿黑西装的男人做了什么。我需要先查看视频开头的描述来找到这个人。”
  • 如何实现:在提示工程中,我们会要求LLM在调用任何工具之前,必须先输出一个“Thought:”字段来表达它的推理。这通常通过精心设计的提示词(Few-Shot示例)来引导模型养成这种习惯。
Action & Action Input(行动与输入)
  • 作用:这是LLM根据思考后做出的决策Action指定要调用哪个工具(如 segment_localization),Action Input则为该工具提供必要的参数(如 "man in black suit")。
  • 内容示例Action: segment_localization``Action Input: "man in black suit"
  • 如何实现:系统为LLM提供了一个工具列表,描述了每个工具的功能和输入格式。LLM根据它的“思考”,从列表中选择最合适的工具并生成符合格式的输入参数。这利用了LLM强大的指令遵循和上下文学习能力。
Observation(观察)
  • 作用:这是环境(或工具)对行动的反馈。当系统执行完LLM指定的工具后,将工具返回的结果作为“Observation”提供给LLM。
  • 内容示例Observation: [22, 15, 39] (The top relevant segments are 22, 15, and 39)
  • 如何实现:这是由系统自动完成的。一旦LLM输出了Action和Action Input,系统会解析这些指令,调用相应的内部函数或API,并将执行结果格式化后返回给LLM。
最终答案(Final Answer)
  • 作用:当LLM通过多次循环认为已经收集到足够的信息时,它会决定结束循环,并综合所有“Observation”生成面向用户的最终答案。
  • 内容示例Final Answer: The man in the black suit takes a document from his briefcase.
  • 如何实现:LLM通过一个特殊的指令(如“When you have a final answer, output it as ‘Final Answer: …’”)来识别何时以及如何输出最终结果。

要实现VideoAgent这样的链式推理系统,需要以下几个关键组件和技术:

  1. 一个强大的核心LLM:需要像GPT-4这样具备强大推理能力和指令遵循能力的模型作为“大脑”。
  2. 一套定义清晰的工具集:工具的功能、输入输出格式必须被明确定义,并可以通过自然语言描述给LLM。
  3. 精心设计的提示词:这是实现的灵魂。提示词需要:定义角色:明确告诉LLM它是一个智能体,需要完成特定任务。说明规则:规定输出格式(必须严格遵循Thought/Action/Action Input/Observation的格式)。提供示例:给出1-2个完整的链式推理示例(Few-Shot Learning),让LLM学会模仿这种行为。提供工具描述:清晰列出所有可用的工具及其用法。
  4. 一个解析与执行引擎:需要一个外部系统(如LangChain、AutoGPT或其他自定义框架)来:解析LLM的输出,识别出Action和Action Input。调用对应的工具函数。将工具执行结果包装成Observation,并连同历史信息一起送回给LLM,进行下一轮循环。

这种“Thought, Action, Action Input, Observation”的链式推理模式,相比传统的一次性问答,具有巨大优势:

  • 可解释性:整个推理过程像推理小说的笔记一样清晰可见,我们可以知道模型是如何一步步得出结论的,而不是一个“黑箱”。
  • 纠错能力:如果某一步工具调用失败或返回了错误信息,LLM可以在后续的“Thought”中意识到问题,并尝试另一种策略。
  • 模块化与灵活性:工具集可以轻松扩展或修改,而无需重新训练整个模型。LLM作为控制器,可以灵活地组合调用这些工具来解决复杂问题。

总而言之,VideoAgent通过ReAct框架将LLM的推理能力与外部工具的执行能力相结合,通过清晰的交互协议实现了多步、可解释、类人的复杂问题求解能力。

prompt

  • 角色定义:明确告知LLM它是一个需要回答视频相关问题的智能体。
  • 背景信息提供:视频已被分割为2秒的片段,每个片段有唯一的ID和描述。存在一个记录物体出现信息的对象记忆。强调了描述中#C(摄像头佩戴者)和#O(其他人)前缀的重要性。
  • 工具描述:清晰定义了四个核心工具(caption_retrieval, segment_localization, visual_question_answering, object_memory_querying)的功能和使用限制(例如,caption_retrieval最多只能检索15个连续片段的描述)。
  • 重要注意事项:特别提醒LLM要警惕VQA工具可能产生的“幻觉”,应更注重描述而非答案本身,并建议通过验证选项来回答选择题。
  • 强制输出格式:规定了严格的“思维-行动-行动输入-观察”链式格式,确保推理过程的结构化和可解析性。
image-20251103204455106 image-20251103211415682

物体记忆查询

这是一个嵌套智能体的巧妙设计。当主智能体需要调用object_memory_querying工具时,实际上启动了一个专门的“记忆查询智能体”。这个子智能体同样由GPT-4驱动,并被赋予了更专业的工具:

  • database_querying(program):直接执行SQL代码来查询对象记忆数据库。
  • open_vocabulary_retrieval(description)通过比较CLIP特征,根据自然语言描述查找可能的物体ID。

实验分析

任务和模型

image-20251103130452777

为了确保对比实验的公平性和准确性,论文详细说明了每个基线模型的实现方式。

  • SeViLA:采用其官方代码的默认设置。处理视频时使用32帧,但从中选择4个关键帧进行推理。
  • Video-LLaVA:采用其官方代码的默认设置。输入帧数设置为8帧
  • mPLUG-Owl:遵循EgoSchema数据集论文中的评估流程。采用特定的提示策略(“Given question, is answer correct?”),并选择对“Yes”令牌置信度最高的选项作为答案。输入帧数根据EgoSchema论文的建议设置为5帧,以达到最佳性能。
  • ViperGPT:使用GPT-3.5作为代码生成器。从视频中均匀采样4帧,生成的代码在这4帧上运行以收集信息。

数据集

评估旨在检验VideoAgent在多种长视频理解任务上的能力。测试的基准数据集包括:

  • EgoSchema:专注于长视频的复杂视频级推理。
  • **Ego4D Natural Language Queries (NLQ)**:任务是在长视频中定位与文本查询对应的时间窗口。
  • WorldQA:需要世界知识和长链推理来理解长视频(如电影)。
  • NExT-QA:包含关于视频的时序性、因果性和描述性多选题。

评估对象不仅包括VideoAgent,还涵盖了最先进的端到端多模态大模型其他多模态智能体基线,以确保对比的全面性。

EgoSchema

  • 数据集特点:包含约5000个关于长视频的复杂问题,问题通常涉及对视频内容的整体推理,例如“描述房间中的整体活动以及不同角色及其行为如何促成这种环境”。

  • 对比模型:包括SeViLA, Video-LLaVA, mPLUG-Owl, ViperGPT, LLoVi, FrozenBiLM, InternVideo和Gemini 1.5 Pro。

  • 核心结果:在官方500个问题的子集上,VideoAgent取得了62.8%的准确率,显著优于其他开源模型(如SeViLA的33.6%和Video-LLaVA的35.5%)。在完整的5031个问题的测试集上,VideoAgent达到了60.2%的准确率,性能接近强大的闭源模型Gemini 1.5 Pro(61.1%)

  • 优势分析统一记忆赋能强大推理:EgoSchema的问题非常复杂,需要强大的时空推理能力。VideoAgent的结构化记忆为此提供了坚实基础,而端到端模型或其他智能体缺乏这种设计,导致性能受限。灵活的工具使用:对于难以直接定位关键帧的复杂问题,VideoAgent可以先用caption_retrieval获取视频主线上下文,再决定关键片段,这种策略比单纯依赖视频定位的方法更有效。

    对于像 “人物C的行为在整段视频中是如何演变的?可以识别出哪些任务参与阶段?”这样的典型问题,传统的多模态大模型(如 SeViLA)很难有效处理。

    • 问题本质:这类问题不是关于某个瞬间或特定物体,而是要求对整个视频的时序脉络、行为阶段进行宏观分析。它需要模型具备“纵观全局”的能力。
    • 传统方法的瓶颈:像 SeViLA 这类模型通常采用“视频定位”的策略。即,试图从问题中提取关键描述性文本,然后在视频中寻找与之匹配的关键帧。但对于上述问题,你很难简单地用几个关键词(如“行为演变”、“参与阶段”)来精准定位关键帧,因为答案分散在整个视频的长河之中。强行选择少量关键帧会不可避免地丢失大量上下文信息,导致理解碎片化。

    面对这一挑战,VideoAgent 凭借其智能体架构,能够灵活地组合使用不同的工具,采取一种更接近人类理解的策略。

    1. 第一步:利用 caption_retrieval把握全局。VideoAgent 不会贸然去定位细节。它会首先调用 caption_retrieval(描述检索)工具。这个工具可以快速返回视频中一系列连续时间段(例如,从开始到结束)的文本描述。这使得智能体能够首先通读一遍“视频剧本”,对人物C在整个视频中所有的主要活动有一个概览性的认识。
    2. 第二步:基于上下文决策关键片段。在掌握了视频的宏观叙事流之后,LLM作为“大脑”,就能够基于完整的上下文进行分析。它可以判断出在哪个阶段人物的行为发生了关键转变,哪些片段对于定义“参与阶段”至关重要。先有全局,再定位局部,这个顺序至关重要。
    3. **第三步:协同使用 segment_localizationvisual_question_answering**在确定了需要深入探究的关键时间段或具体内容后,VideoAgent 可以再调用 segment_localization(片段定位)来精确定位相关片段,或者直接对特定片段使用 visual_question_answering(视觉问答)来获取更细致的视觉细节。
image-20251102193043084

Ego4D Natural Language Queries (NLQ)

  • 任务目标:在长视频(平均9分钟)中定位一个平均9秒长的时间窗口。

  • 实验设置:VideoAgent以零样本方式测试,主要评估其segment_localization工具的不同实现变体:(1)仅使用ViCLIP视觉特征。(2)仅使用文本特征(LaViLa描述或Ego4D真实旁白)。(3)结合视觉和文本特征。

  • 核心结果:结合文本和视觉特征的VideoAgent变体(LaViLa+ViCLIP和Ego4D+ViCLIP)取得了最佳性能。虽然性能不及在该任务上专门训练的顶级模型(如GroundNLQ),但VideoAgent作为零样本方法,其表现已优于2D-TAN和VSLNet等早期监督方法,证明了其潜力。

    image-20251102202929899
  • 关键洞察文本描述质量至关重要:使用更高质量的文本描述(从LaViLa到Ego4D真实旁白)能直接带来性能提升。相似性检索优于LLM直接定位:论文与LifeLongMemory进行了对比,后者使用GPT-4直接处理视频描述并生成候选窗口。结果显示,VideoAgent基于相似性的检索方法(即使只返回1个候选)的性能,就超过了LifeLongMemory返回多个候选的性能,证明前者更有效、更可靠。

    image-20251102213534505
    • 视频片段定位本质上是一个检索任务,核心是找到表面特征最匹配的内容。基于相似性的方法完美契合这一任务本质。
    • 直接让LLM进行定位,是要求它执行一个需要深层语义推理的任务。然而,在没有真正“看到”视频内容、仅凭可能不完整或有噪声的文本描述的情况下,这种推理往往是不可靠的。这好比只凭目录就去精确判断一本书某段情节的起止页码,容易出错。
    • 对于视频片段定位这一具体任务,直接、稳健的基于相似性的检索方法,在效果上显著优于依赖LLM进行复杂推理和生成的方法。这不仅验证了VideoAgent在设计上的正确性,也为我们提供了一个重要的工程启示:在构建复杂AI系统时,让合适的组件做合适的事,往往比盲目依赖单一强大模型的全能性更为有效。

WorldQA

  • 数据集特点:挑战模型利用世界知识和进行长链推理的能力。
  • 对比模型:Video-LLaMA, Video-ChatGPT, Video-LLaVA, GPT-4V。
  • 核心结果:在多选题上,VideoAgent显著超越了所有开源模型,并且优于GPT-4V。这证明了结构化记忆在理解长视频内容上的巨大优势。在开放问答上,GPT-4V的表现优于VideoAgent。论文分析认为,这是因为GPT-4V能以视频帧作为视觉条件来生成更流畅的回答,而VideoAgent更擅长从记忆中提取精确信息进行判断。
image-20251102214405694

NExT-QA

  • 数据集特点:问题分为描述性、时序性和因果性三类。

  • 核心结果:在600个问题的子集上,VideoAgent在所有问题类型上均取得了最佳性能,特别是在最具挑战性的因果性问题上,比强基线SeViLA高出近10个百分点。

    image-20251102214919814
  • 消融实验:为了深入理解各组件贡献,论文在150个问题的子集上进行了消融研究,设计了6种不同工具组合的VideoAgent变体。主要结论如下表所示:描述检索是基础:仅使用caption_retrieval工具(类型6),性能已达40.7%,堪比端到端模型mPLUG-Owl,说明视频的文本主线信息已能解决很多问题。物体记忆提升显著:对比类型2和3,增加物体记忆后,时序和因果问题的性能大幅提升,因为它提供了关键的跨片段物体状态信息。重识别技术至关重要:对比类型4和5,使用重识别技术构建的物体记忆,在需要精确物体计数的描述性问题上表现更好。VQA和片段定位贡献最大:对比类型3和6,同时增加visual_question_answeringsegment_localization工具带来了最大的性能提升(22%),说明获取细节视觉信息的能力极为重要。将VQA工具从Video-LLaVA升级为GPT-4V(类型1 vs 2),性能进一步提升,证明了强大VQA模型的价值。

    image-20251102215821697

案例研究

附录D包含了五个案例,每个案例都完整记录了LLM的“思维链”。典型的每一步都包含:

  • Thought:LLM分析当前局势,决定下一步做什么。
  • Action:选择要调用的工具。
  • Action Input:提供给工具的输入参数。
  • Observation:工具返回的结果。

基础工具链协作

展示了VideoAgent处理需要定位和细节观察的问题的标准流程。

  • 问题:通常是关于视频中特定人物或物体的具体行为(如“那个男人接下来做了什么?”)。
  • 过程定位:LLM首先调用 segment_localization工具,根据问题描述找到最相关的视频片段检索上下文:接着,它可能调用 caption_retrieval工具,获取定位片段前后时间段的事件描述,以理解上下文。深度观察:最后,调用 visual_question_answering工具,对关键片段进行针对性提问,获取精细的视觉信息。
  • 启示:即使VQA工具的回答存在轻微偏差(如案例2中,VQA将“棒球棒”误称为“弓箭”),但LLM能够优先相信更可靠的记忆描述,并结合VQA回答中的合理部分(如“握紧”),最终选择正确答案。这体现了系统的容错能力
image-20251103213602728 image-20251103214022591

对象记忆的精确查询

这个案例展示了对象记忆在回答需要精确、跨时间线统计的问题时的无可替代性。

  • 问题:“视频中有多少只大象?”
  • 过程直接查询:LLM直接调用 object_memory_querying工具,将问题抛给专门的对象记忆查询智能体。精准回答:该子智能体通过查询其SQL数据库,直接返回精确的计数结果。
  • 启示:对于这类问题,无需复杂的定位和观察,直接查询结构化的对象记忆是最快、最准确的方式。这证明了双记忆设计的必要性——时序记忆用于叙事流,对象记忆用于事实查询。
image-20251103214215146

VQA“幻觉”的鲁棒性处理

这个案例非常关键,它展示了VideoAgent如何应对VQA模型的常见缺陷——“幻觉”。

  • 问题:“如何知道影片开头戴黑色眼镜的女人结婚了?”
  • 过程定位与VQA:LLM定位到该女人出现的片段,并调用VQA工具提问。识别并利用有效信息:VQA工具产生了严重幻觉,描述内容为“一男一女在玩石头剪刀布”,这与视频实际内容(可能是演讲)完全不符。然而,VQA回答的后半部分却正确指出:“可以观察到她左手上戴着一枚结婚戒指”。智能筛选:LLM忽略了VQA中错误的场景描述,但捕捉并信任了关于“结婚戒指”这个关键的视觉细节,从而正确回答了问题。
  • 启示:LLM作为“指挥官”,并非盲目相信所有工具的输出,而是扮演了信息过滤器和整合器的角色。它能从有噪声的工具输出中提取有价值的信息片段,展现出高级的推理能力。
image-20251103214321269 image-20251103214340973

诠释复杂、长链推理的解决过程

这个案例来自复杂的EgoSchema数据集,完美诠释了何为“整体视频理解”。

  • 问题:分析视频中食材的选择及其重要性,以及它们如何贡献于最终菜肴。
  • 过程全局扫描:LLM首先调用 caption_retrieval工具,检索视频开头大部分片段的描述,以快速获取所有可能涉及的食材列表(如酱汁、番茄酱、通心粉、香料等)。迭代调查:然后,它针对列表中的每一种或每一类食材,多次、迭代地调用 visual_question_answering工具,分别询问每种食材的作用(如“酱汁在菜肴中的角色是什么?”“香料和炒蛋的角色是什么?”)。综合判断:最后,LLM将所有工具返回的关于不同食材的信息进行汇总,并与多选题的选项进行比对,选出最全面、最准确的答案。
  • 启示:此案例是灵活工具使用的典范。它证明了VideoAgent能够像人类一样,先通览全局建立背景知识,再有目的地深入调查细节,最后进行综合研判,解决了单一模型难以处理的宏观分析问题。
image-20251103214508222 image-20251103214546938

相关工作

MLLM

这一小节回顾了端到端预训练模型的发展路线。

  • 核心思想:直接扩展大型语言模型,使其能够处理视觉输入(如图像、视频帧),通过大规模的视觉-语言数据进行预训练,形成一个统一的多模态模型。
  • 代表性工作LaViLa:通过自动生成大量多样化的视频叙述文本来进行视频-文本对比表示预训练。Video-LLaMA:通过捕捉视觉场景的时间变化并整合音频信号来增强视频理解。LSTPGemini:尝试解决长视频问题。LSTP利用空间和时间采样器模块提取基于光流的时间特征;Gemini则通过巨大的计算资源和私有数据集将多模态模型扩展到更长的视频。
  • 局限性(与VideoAgent的对比):尽管这些模型取得了快速进展,但它们存在固有的局限性:1) 高昂的计算成本;2) Transformer架构在处理超长视频时存在天然瓶颈。这些因素阻碍了这类端到端模型在视频理解中的进一步应用。

Multimodal agent

这一小节回顾了另一条技术路线,即不依赖端到端训练,而是利用LLM的工具调用能力来解决多模态任务。

  • 核心思想:将LLM作为任务规划中心,让其调用各种专门化的视觉基础模型(如目标检测、VQA等)作为工具,通过交互式步骤解决复杂问题。这种方法通常是免训练的,工具集灵活。
  • 代表性工作VisProg:该方向的开创性工作之一,为GPT-3规划器配备了大量视觉工具,解决复杂的现实世界视觉推理问题。LifeLongMemory:使用自然语言视频叙述创建基于文本的情景记忆,并提示LLM进行推理和检索。DoraemonGPT:引入了复杂的提示策略(如蒙特卡洛树搜索MCTS)来调用工具和结构化记忆。
  • 局限性(与VideoAgent的对比):虽然这些多模态智能体潜力巨大,但它们在通用视频理解基准测试上的表现大多难以与端到端的基础模型相媲美。论文分析其原因可能在于:1) 流程过于复杂;2) 缺乏针对视频特性的专门设计。而VideoAgent的成功正是通过视频特定的记忆机制和精简的工具集克服了这些不足。

总结

本文的三项主要贡献:

  • 提出统一记忆机制:创新性地设计了用于长视频的结构化记忆表示,包括存储事件描述的时序记忆和追踪物体状态的物体记忆
  • 设计VideoAgent智能体:基于统一记忆,构建了一个由LLM驱动的多模态智能体,能够通过交互式工具调用进行视频理解。
  • 全面实验验证:在多个具有挑战性的长视频理解基准测试上进行了彻底评估,证明了VideoAgent的有效性,并通过消融分析确认了关键设计选择的重要性。

论文指出,与端到端多模态LLM和现有的工具使用智能体相比,VideoAgent具有显著优势:

  • 性能优异:在取得可比或更好实证结果的同时。
  • 高效简约:采用极简的工具使用流程。
  • 成本低廉:不需要昂贵的端到端训练。

最后,论文为未来的研究指明了几个充满潜力的方向:

  • 现实世界应用探索:VideoAgent的框架非常适合在需要长时序理解的场景中部署,例如:robotics:使机器人能够理解长时间的任务演示。智能制造:分析生产线上的长流程视频以进行优化或监控。增强现实:为AR眼镜提供持续的环境理解和交互支持。

代码

参考

(5 封私信 / 18 条消息) RT-DETR全解析:超越 YOLO,实时物体检测更快更精准(附代码) - 知乎

目标追踪 ByteTrack 算法详细流程分析 - 金色旭光 - 博客园


文章作者: wolf-ll
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 wolf-ll !
  目录