LongViTU: Instruction Tuning for Long-Form Video Understanding

Authors: Rujie Wu, Xiaojian Ma, Hai Ci, Yue Fan, Yuxuan Wang, Haozhe Zhao, Qing Li, Yizhou Wang Affiliations: 北京大学计算机科学学院, 通用人工智能国家重点实验室 (BIGAI), 新加坡国立大学 GitHub: rujiewu/LongViTU Year: 2025

1. Motivation (研究动机)

问题背景

现有 Video QA 数据集存在三个关键不足:

局限性具体描述
证书长度短NextQA、ActivityNet-QA 的平均 certificate length 通常 < 10 秒;WorldQA、EgoSchema 仅 60~100 秒
推理浅层化已有数据集主要关注空间基础元素(物体、属性、位置),缺乏因果、规划、功能等凝练推理
缺少时间戳Otter、Video-ChatGPT、VideoChat、MVBench、LLaVA-Video、MM-Ego 均无显式 QA 相关事件时间戳

核心贡献

  1. 提出层次化视频树 (Hierarchical Video Tree) 自动构建 pipeline:帧级 事件级 段级,实现多粒度视频表征
  2. 构建 LongViTU 数据集:~121K QA 对,~900 小时 Ego4D 视频,平均 certificate length 276.8 秒 (~4.6 分钟)
  3. 设计结构化推理分类体系:12 类问题类型,引导 LLM 生成需要凝练推理的高质量问答
  4. SFT 在多个基准上带来显著提升:LongVU 平均提升 2.5%,LLaVA-Video 平均提升 3.7%

Figure 1 解读: 本图对比了 LongViTU 与已有数据集的差异。上排展示了一段长视频序列的关键帧,红框标注答案线索帧,黄框标注答案相关物体。中间对比了已有数据集(同质化、短期、静态空间、粗粒度、整段视频、多选题)与 LongViTU(多样化、长期、时空、细粒度、显式时间戳、开放式)的区别。下排对比了三种模型的预测:Video-LLaVA (zero-shot) GPT-4 得分仅 0 分,VLM + LongViTU 微调后得分 100,而 Gemini-1.5-Pro 得分 60,说明 LongViTU 微调能显著提升长视频理解能力。

2. Idea (核心思想)

2.1 Stage I: 层次化视频树构建 (Hierarchical Video Tree Construction)

整个 pipeline 将视频组织为三级树结构

Figure 2 解读: LongViTU 的数据构建流程包含三大模块。左上:层次化视频树构建——从底层的 Dense Caption + Human Narration 开始,通过聚合空间细节得到事件级描述,再通过分割时间动态得到段级描述,最终形成视频树 左下:长视频 QA 生成——从视频子树出发,通过滑动窗口提示 LLM 生成 QA 对。右侧:自修正与人工审核——LLM 自修正过滤低质量 QA,人工审核生成最终验证集。

帧级 (Frame Level)

使用 InternLM-XComposer2 对 Ego4D 视频以 1 fps 采样帧进行密集描述:

其中 为帧级文本描述, 为对应时间戳。

事件级 (Event Level)

LLM 综合人工标注事件和帧级描述,生成简洁事件描述

段级 (Segment Level)

LLM 将相关事件分组为段:

视频树

其中 为根节点, 为段级节点,向下逐级展开为事件和帧。

def build_hierarchical_video_tree(events: list, video_frames: list) -> dict:
    """Hierarchical Video Tree Construction (Frame -> Event -> Segment)."""
 
    # Frame level: dense captioning at 1 fps
    frame_nodes = []
    for frame in sample_frames(video_frames, fps=1):
        d_f = internlm_xcomposer2(frame)  # frame-level dense caption
        frame_nodes.append({"desc": d_f, "t_start": frame.t_s, "t_end": frame.t_e})
 
    # Event level: aggregate frame captions into event descriptions
    event_nodes = []
    for event in events:
        frame_descs = [f["desc"] for f in frame_nodes if in_event(f, event)]
        d_e = gpt4_summarize(frame_descs)  # event-level description
        event_nodes.append({
            "desc": d_e, "t_start": event.t_s, "t_end": event.t_e,
            "frames": frame_descs
        })
 
    # Segment level: group related events via GPT-4
    segments = gpt4_group_events(event_nodes)
    segment_nodes = []
    for seg in segments:
        event_descs = [e["desc"] for e in seg]
        d_s = gpt4_summarize(event_descs)  # segment-level description
        segment_nodes.append({
            "desc": d_s, "t_start": seg[0]["t_start"], "t_end": seg[-1]["t_end"],
            "events": seg
        })
 
    # Assemble video tree
    T_video = {"root": "video", "segments": segment_nodes}
    return T_video

2.2 Stage II: 基于视频树的 QA 生成

滑动窗口策略

从视频树中取连续 5 个 segment 构成子树,送入 LLM 生成 QA:

其中 为滑动窗口选取的段,每个段 ,包含事件和帧级描述。

确保长 Certificate Length

指示 LLM 仅在最后两个 segment (Ask Content) 提出问题,但要求答案必须依赖前三个 segment (Memory Content) 中的信息,从而确保生成的问题需要较长的视频上下文。

促进凝练推理

设计层次化推理分类体系,包含 3 大类 12 子类

大类子类
时空理解 (Spatiotemporal Understanding)Object, Attribute, Location, Action
情节推理 (Episodic Reasoning)Transition, Interaction, Causality, Motivation
常识推理 (Commonsense Inference)Planning, Risk, Function, Affordance

Figure 3b 解读: 旭日图展示了 LongViTU 中 QA 对的分类分布。内环为三大类(时空理解、情节推理、常识推理),中环为 12 个子类,外环为各子类中最高频的 8 个词。可以看到 Action 和 Object 类别占比较大,Planning 和 Affordance 等高级推理类别也有相当比例。

2.3 Self-Revision (自修正)

LLM 生成初始 QA 后进行两步自修正:

  1. 内容修正:纠正不准确信息,去除冗余,精炼回答
  2. 纯文本评估(无视觉输入):检测并丢弃有过度文本偏差的 QA 对

3. Method (方法)

3.1 数据集特征与质量评估

数据集统计

统计项数值
总视频数1,833 (训练 1,533 / 验证 200 / 测试 100)
总 QA 对数~121K (训练 101K / 验证 14K / 测试 6K)
总视频时长~900 小时
平均视频时长29.3 分钟 (范围 3.5~120.7 分钟)
每个视频平均 QA 数66
QA 时长范围6~1800 秒
平均 certificate length276.8 秒 (~4.6 分钟)
平均事件时长8.5 秒
平均段时长82 秒

Figure 3a 解读: 左侧展示视频时长和 QA 时长的分布。QA 时长(底部横轴,秒)主要集中在 6600 秒,平均 276.8 秒;视频时长(右侧纵轴,分钟)主要在 560 分钟,平均 29.3 分钟,均呈长尾分布。

质量评估

Figure 4 解读: 人工质量评估结果。基于评分标准的评估(上):100 个随机抽样中,Good 占 46%,Fair 占 45%,Poor 仅 9%,表明 91% 的 QA 对质量可接受。与 VideoMME 的对比评估(下):100 对对比中,LongViTU 优于 VideoMME 27 次,持平 37 次,VideoMME 优于 LongViTU 36 次——说明自动生成的 LongViTU 质量接近人工标注的 VideoMME。

3.2 代码实现与复现

代码仓库结构

代码路径功能说明
Video-LLaVA/finetune.shVideo-LLaVA 微调脚本
Video-LLaVA/inference.shVideo-LLaVA 推理脚本
LLaMA-VID/finetune.shLLaMA-VID 微调脚本
LLaMA-VID/inference.shLLaMA-VID 推理脚本
LongVU/train_longvitu_qwen.shLongVU (Qwen-2-7B) 训练脚本
LongVU/eval.shLongVU 评估脚本
LLaVA-Video/train.shLLaVA-Video 训练脚本
LLaVA-Video/eval.shLLaVA-Video 评估脚本

微调超参数

超参数LLaMA-VIDVideo-LLaVALongVULLaVA-Video
Pretrained LLMVicuna-1.5-7BLLaMA-2-7BQwen-2-7BQwen-2-7B
Max seq length20482048819232768
Batch size132321
Grad accum steps64211
Learning rate
Vision tower LR---
Warmup ratio0.030.030.030.03
LR schedulerCosineCosineCosineCosine
Image tokens/sample2256144196
Video frames/sample1 fps8 frames1 fps64 frames

GPT-4 评分标准

Level分数描述
10预测与问题无关或不可理解
220预测完全偏离答案事实内容
340预测有一定相关但包含错误或无关细节
460预测大体正确但有部分不准确
580预测准确回答问题,仅有少量偏差
6100预测完美匹配答案事实

4. Experimental Setup (实验设置)

4.1 评估设置

评估指标:GPT-4 多级评分(0/20/40/60/80/100),由 GPT-4-turbo 根据预定义标准评估模型预测与 ground truth 的对齐程度。

4.2 数据与任务设置

  • 训练/验证/测试划分与 QA 统计如上表所示
  • 任务覆盖时空理解、情节推理、常识推理三大类问题
  • LongViTU 主要面向长视频理解场景,证据跨度通常跨多个 segment

5. Experimental Results (实验结果)

5.1 LongViTU 测试集上的定量结果

模型设置Overall Avg.时空理解情节推理常识推理
GPT-4 turbo (Blind)-38.230.249.548.7
Video-LLaVA*Frame-Based45.942.749.451.7
Video-LLaVA**Frame-Based SFT50.744.958.059.8
compared+10.5%+5.2%+17.4%+15.7%
LLaMA-VID*Sampling38.234.343.244.1
LLaMA-VID**Sampling SFT44.539.152.151.7
compared+16.5%+14.0%+20.6%+17.2%
LongVU*Sampling49.946.354.256.0
LongVU**Sampling SFT55.948.865.266.4
compared+12.0%+5.4%+20.3%+18.6%
Gemini-1.5-ProProprietary52.354.747.350.3
Human-81.084.174.375.5

关键发现:

  • 最佳开源模型 LongVU SFT 后达到 55.9,超过 Gemini-1.5-Pro 的 52.3,但仍远低于人类水平 81.0
  • SFT 在情节推理和常识推理上提升最为显著(Causality +29.2%, Motivation +31.1%)
  • Gemini-1.5-Pro 在时空理解上表现突出,但在情节推理和常识推理上反而不如 SFT 后的开源模型

5.2 其他基准上的定量结果

模型EgoSchemaVideoMME (Avg.)MLVULVBench
LongVU*67.655.662.935.1
LongVU** (SFT)70.866.265.235.3
+4.7%+0.5% (+0.3%~+0.4%)+3.7%+0.6%
LLaVA-Video*57.374.067.739.6
LLaVA-Video** (SFT)62.873.969.940.0
+9.6%-0.1%+3.2%+1.0%

关键发现:

  • SFT 几乎在所有 ID 和 OOD 基准上都带来提升,排除了数据集偏差的影响
  • 越长视频提升越大: VideoMME Long 子集上 LLaVA-Video 提升 +1.0%,Medium +0.3%,Short 则 -0.1%
  • MLVU 上 LongVU 的 Ego 子类提升最为显著 (+12.2%)
  • MVBench 上 Episodic Reasoning (+5.7%) 和 Unexpected Action (+6.9%) 提升最明显

5.3 消融实验

Figure 5 解读: 无论是 zero-shot 还是 fine-tuned 设置,LongVU 在更长的 QA 时长子集 [300, 600) 上表现都低于较短的 [0, 60) 和 [60, 300)。这表明长视频理解仍然是一个根本性挑战。Fine-tuned 模型在所有时长区间上都优于 zero-shot,但差距在长视频上更为明显。

Figure 6 解读: LongVU 在 EgoSchema 上的性能随训练 epoch 增加而提升,但增益逐渐递减。zero-shot baseline 约 4%,SFT 后从约 5% 持续提升,在接近完整训练规模时趋于稳定,说明 LongViTU 的数据量已接近饱和。

附录:定性分析

Figure 7a 解读: 空间细节案例。场景中包含多个密集前景物体,Video-LLaVA 和 LongVU 在 zero-shot 下均给出错误预测(Table / Chairs and Table)。经 LongViTU 微调后,两个模型都正确识别出 “Chairs”,GPT-4 得分从 20/60 提升到 100/100。

Figure 7b 解读: 关键时刻捕捉案例。问题 “Where is the plant?” 答案在窗台上短暂出现。Zero-shot Video-LLaVA 回答 “In the kitchen”(得分 20),但 fine-tuned 后准确回答 “On the windowsill”(得分 100)。LongVU 同理从 80 提升到 100,说明 LongViTU 增强了模型对短暂关键帧的捕捉能力。

Figure 7c 解读: 时间定位案例。问题需要在长视频末尾识别厨房台面上的插座数量。Zero-shot 下两个模型均失败(得分 0/20),fine-tuned 后均准确回答 “Two”(得分 100/100),展示了 LongViTU 在增强长视频时间定位泛化能力方面的价值。

Figure 8a 解读: 时空理解子类别示例。展示了 Object(“What object on the wall?” “A painting”)、Attribute(“What color is the wall?” “Light yellow”)、Location(“Where am I now?” “In the house”)、Action(“What did I do as I walked to the door?” “Pet the cat”)四种问题类型。

Figure 8b 解读: 情节推理子类别示例。展示了 Transition(“What changed of the instant noodles?” “It was cooked”)、Interaction(“What did I do to the microwave?” “I opened it and put in a bowl”)、Causality(“Why do I organize these chains?” “Hang them between the two paintings”)、Motivation(“Why did I walk to the kitchen?” “I wanted to find something to eat”)四种需要跨事件推理的问题。

Figure 8c 解读: 常识推理子类别示例。展示了 Planning(“I want to go upstairs. What should I do?” “Take the stairs on the right”)、Risk(“What risks do I have now?” “Too close to glass; might hit your head”)、Function(“What can the knife on the table do?” “It can cut fruit”)、Affordance(“What does the screen provide?” “It provides entertainment while I eat”)四种需要常识知识的高级推理问题。