SEASON: Mitigating Temporal Hallucination in Video Large Language Models via Self-Diagnostic Contrastive Decoding¶
会议: CVPR 2026
论文: CVF Open Access
代码: https://chriswu018.github.io/season/ (项目页)
领域: 视频理解 / 多模态VLM
关键词: 视频幻觉, 时间幻觉, 对比解码, 训练无关, 逐token诊断
一句话总结¶
SEASON 是一种训练无关的视频大模型解码方法:通过"时间同质化"构造只破坏时间、保留空间的硬负样本,再用一个逐 token 的自诊断机制判断当前词更可能犯时间还是空间幻觉,自适应地对相应负样本做对比解码,在三个幻觉基准上超过所有训练无关方法,同时不损伤通用视频理解能力。
研究背景与动机¶
领域现状:视频大模型(VideoLLM)在视频理解上进展显著,但仍常生成与画面不符的文本,即"幻觉"。早期工作主要研究空间幻觉(描述不存在的物体/属性),主流缓解手段是对比解码(contrastive decoding):把"原始视觉输入"和"被破坏的视觉输入"两条 logits 相减,抵消语言先验带来的虚假关联。
现有痛点:视频比静态图多了时间结构。把图像端的对比解码直接搬到视频,即使压住了空间幻觉,模型仍会搞错事件的顺序与因果——这就是时间幻觉(temporal hallucination),是可靠视频理解的关键障碍。现有训练无关方法各有短板:DINO-HEAL 用 DINOv2 的显著图重加权视觉特征,关注空间显著性却忽略时间顺序;TCD 对比"原视频"与"抽帧后的视频",但抽帧只是削弱信息量,无法暴露因果错乱。训练类方法(ArrowRL、TPO、RRPO)靠强化学习或偏好优化提升时间忠实度,但要昂贵重训和高质量偏好数据。
核心矛盾:要在不重训的前提下同时压住时间和空间幻觉,需要两个东西现有方法都没给到——① 一个能只暴露时间错乱、不顺带破坏空间的负样本(否则模型靠"明显的空间损坏"就轻易否定了负样本,对比信号变弱、变"易");② 一个能逐 token 判断"这个词到底在冒时间幻觉还是空间幻觉"的机制,因为一句话里有的词靠时间线索("先""然后"),有的词靠静态物体线索("黄油""碗"),不该用同一种惩罚一刀切。
本文目标:拆成两步——先造出"时间难负样本",再造一个逐 token 的诊断器,把两者接进对比解码。
切入角度:作者观察到,一个 token 是否依赖时间线索,会反映在它对各视频帧的注意力分布上——当视频被时间同质化后,依赖时间一致性的 token 注意力会剧烈漂移,而依赖静态物体的 token 注意力几乎不变。这个注意力漂移就是天然的"自诊断信号"。
核心 idea:用"时间同质化"造时间硬负样本,用"逐 token 注意力散度"自诊断每个词的幻觉倾向,再据此自适应地对时间/空间负样本做对比解码。
方法详解¶
整体框架¶
给定视频 \(V=\{f_1,\dots,f_{|V|}\}\) 和问题 \(Q\),VideoLLM(视觉编码器 \(E_\theta\) + 文本解码器 \(D_\phi\))逐词生成回答 \(y=\{y_1,\dots,y_N\}\)。SEASON 在推理时插入三件事:① 用时间同质化把原始视觉表征 \(v^O\) 加工成"时间负样本"\(v^T\)(时间错乱但空间保留),并额外用高斯噪声造一个"空间负样本"\(v^S\)(空间损坏);② 对每个待生成 token,用自诊断机制比较原始与两种负样本下的帧级注意力分布,算出该 token 偏向时间幻觉还是空间幻觉的权重 \(w_T, w_S\);③ 自诊断对比解码按 \(w_T, w_S\) 对两条负样本 logits 加权后从原始 logits 里减掉,得到时空都被净化的输出分布。整套流程零训练、可挂到任意 VideoLLM。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["输入:视频 V + 问题 Q"] --> B["原始视觉表征 vO"]
A --> C["1. 时间同质化<br/>逐层混入全局上下文 → 时间负样本 vT"]
A --> D["空间负样本 vS<br/>(高斯噪声破坏空间)"]
B --> E["2. 自诊断机制<br/>逐 token 比较帧级注意力 JSD → wT, wS"]
C --> E
D --> E
E --> F["3. 自诊断对比解码<br/>按 wT/wS 加权惩罚负样本 logits"]
F --> G["输出:时间+空间都忠实的回答"]
关键设计¶
1. 时间同质化:造一个"只错时间、不错空间"的硬负样本
直接照搬图像端做法(给帧加高斯噪声得到 \(v^S\))会同时破坏空间和时间,结果是一个"时间易负样本"——模型靠那一眼可见的空间损坏就能否定它,根本不需要去关注时间不一致,对比信号被浪费。SEASON 想要相反的东西:一个空间完整、唯独时间被抹平的负样本,逼模型在对比时只能盯着时间一致性。
做法是在视觉编码器内部逐层把"全局时间上下文"回灌进每一帧。先对 \(V\) 做一次标准前向,在第 \(l\) 层得到所有帧特征的均值 \(d_l=\frac{1}{|V|}\sum_t h'_{l,t}\)(即该层的全局上下文);然后在每层每帧把帧自身特征 \(h'_{l,t}\) 与全局上下文做线性混合:\(h_{l,t}=(1-\beta)h'_{l,t}+\beta d_l\),其中 \(h'_{l,t}=E_\theta^{(l)}(h_{l-1,t})\) 来自上一层已被混合过的输出,\(\beta\in[0,1]\) 控制同质化程度。这样混合是渐进、逐层累积的:越往深层,每帧越接近"所有帧的平均",帧间时间差异被中和,但每帧的空间结构(patch 级)仍保留。取最后一层 \(v^T=\{h_{L,t}\}_{t=1}^{|V|}\) 作为时间负样本。消融(Table 3)显示它显著优于 Average / Shuffled / Reverse 这些"时间易负样本"。
2. 自诊断机制:用帧级注意力散度逐 token 判断幻觉类型
一句话里不同词依赖的线索不同,不该统一惩罚。作者的洞察是:token 的生成高度依赖其前文,而前一个 token \(y_{i-1}\) 对各视频帧的注意力分布,恰好暴露了当前 token \(y_i\) 在依赖时间还是空间。于是从文本解码器 \(D_\phi\) 第 \(j\) 层多头注意力里抽出帧级注意力分布
即前一 token 分配给每帧的归一化注意力(对所有头、层集合 \(J\)、帧内视觉 token \(k\) 求和)。然后比较原始 \(v^O\) 与两种负样本下的注意力分布漂移,用 Jensen-Shannon 散度(JSD)量化:
再归一化成倾向权重 \(w_T=\frac{D_T}{D_S+D_T}\)、\(w_S=\frac{D_S}{D_S+D_T}\)。直觉很清楚:\(D_T\) 大说明该 token 严重依赖时间线索(时间被抹平后注意力剧烈漂移),即时间幻觉倾向高;\(D_S\) 大则是空间幻觉倾向高。实验(Fig. 5)证实"先""A""B"这类排序词拿到高 \(w_T\),"黄油""碗"这类物体词拿到高 \(w_S\)。该机制对所选注意力层 \(J\)(默认 \([20,21,22,23]\))很鲁棒。
3. 自诊断对比解码:按诊断权重自适应惩罚
有了逐 token 的 \(w_T, w_S\),就把它们接进对比解码动态分配惩罚。先把文本上下文 \((y_{<i},Q)\) 分别在 \(v^O, v^S, v^T\) 条件下喂给 \(D_\phi\),得三条 logits,最终分布为
其中 \(\alpha\) 控制对比强度(\(\alpha=0\) 退化为普通解码)。当 \(w_T\) 大时,时间负样本的 logits 被更多减去——压住潜在时间幻觉;\(w_S\) 大时则更多惩罚空间幻觉。只针对时间维度的简化版(Eq. 3)为 \(p_{\text{SEASON}^T}=\text{softmax}[(1+\alpha)\,\text{logits}(y_i|v^O)-\alpha\,\text{logits}(y_i|v^T)]\),用于验证时间负样本单独的作用。这样每个 token 都做了一次"自我体检 + 对症下药",在不重训的前提下同时保证时间与空间忠实。
损失函数 / 训练策略¶
无训练、无微调,纯推理期方法。统一用 8 帧推理;自诊断取文本解码器第 \(J=[20,21,22,23]\) 层注意力(经验选取);对比强度 \(\alpha\) 与同质化程度 \(\beta\) 由网格搜索确定。可直接挂到 LLaVA-OV-7B、Qwen2.5-VL-7B、LLaVA-Video-7B 等开源模型。
实验关键数据¶
主实验¶
在三个幻觉检测基准(VidHalluc、VideoHallucer、EventHallusion)+ 两个时间理解基准(TempCompass、TVBench)+ 两个常规视频理解基准(VideoMME、MVBench)上评测,三个 backbone 全部测试。下表为各组平均分(AVG,越高越好):
| Backbone | 方法 | 幻觉检测 AVG | 时间理解 AVG | 常规理解 AVG |
|---|---|---|---|---|
| LLaVA-OV-7B | 基线 | 60.2 | 55.6 | 52.5 |
| LLaVA-OV-7B | +TCD(训练无关) | 62.6 | 55.7 | 52.4 |
| LLaVA-OV-7B | +SEASON | 64.3 | 56.1 | 52.7 |
| Qwen2.5-VL-7B | 基线 | 63.3 | 59.8 | 55.8 |
| Qwen2.5-VL-7B | +ArrowRL(需训练) | 65.5 | 61.0 | 54.7 |
| Qwen2.5-VL-7B | +SEASON | 66.5 | 60.7 | 56.4 |
| LLaVA-Video-7B | 基线 | 59.6 | 57.5 | 55.7 |
| LLaVA-Video-7B | +RRPO(需训练) | 61.1 | 57.8 | 56.0 |
| LLaVA-Video-7B | +SEASON | 61.6 | 58.8 | 55.6 |
说明:SEASON 是唯一在三个 backbone 上都拿到最佳/次佳幻觉检测分的训练无关方法,且常超过需要重训的 ArrowRL/RRPO;同时时间/常规理解不掉点甚至小涨,说明诊断机制没有"过度压制"正确 token。时间幻觉子任务提升尤为明显:VidHalluc 的 TSH 子任务上三个 backbone 分别提升 +24.5% / +18.7% / +12.3%。规模化验证:挂到 LLaVA-OV-72B,VidHalluc 总分 +2.05%,TSH 子任务 +8.67%。
消融实验¶
(a) 时间负样本设计(Table 3,时间幻觉 + 时间理解综合 AVG):
| 负样本类型 | LLaVA-OV-7B AVG | Qwen2.5-VL-7B AVG |
|---|---|---|
| 基线(无) | 54.2 | 56.3 |
| Average | 59.9 | 58.6 |
| Shuffled | 55.0 | 59.7 |
| Reverse | 57.6 | 58.8 |
| Homogenized(本文) | 61.4 | 62.0 |
(b) 关键组件(Table 4,幻觉检测 AVG):
| 配置 | LLaVA-OV-7B | Qwen2.5-VL-7B |
|---|---|---|
| 基线 | 59.0 | 63.3 |
| + 空间负样本 \(v^S\) | 63.7 | 64.7 |
| + 时间负样本 \(v^T\) | 63.9 | 66.2 |
| + SEASON(两者+自诊断) | 64.4 | 66.5 |
关键发现¶
- "硬负样本"是关键:同质化负样本比 Average/Shuffled/Reverse 这些朴素打乱都好(LLaVA-OV 上 +7.2%),印证"只破坏时间、保留空间"才能逼模型聚焦时间一致性。
- 两种负样本互补:单用 \(v^S\) 或 \(v^T\) 都涨,但只有"两者 + 逐 token 自诊断加权"取得最高 AVG,说明诊断机制让每个 token 用对了惩罚。
- 对超参鲁棒:自诊断所选注意力层 \(J\) 取早/中/晚层性能都稳定(Fig. 6),不需精细调层。
- 不伤通用能力:时间/常规理解基准不掉点,避免了对比解码常见的"过度抑制"副作用。
- ⚠️ Table 5 显示单用 \(v^T\) 在 VidHalluc 时间子任务上甚至略高于完整 SEASON,作者归因于 VideoHallucer 的 Yes/No 格式存在"偏好 Yes"的顺从偏置;完整 SEASON 仍在整体(时空综合)幻觉缓解上最优。
亮点与洞察¶
- "时间硬负样本"这个概念很巧:以往对比解码的负样本越破坏越好,本文反其道——刻意只破坏一个维度,让对比信号"提纯",这是把对比解码从图像迁到视频的关键缺口补全。该思路可迁移到任何多维度幻觉场景(如音频-视觉对齐):想压哪一维,就造一个"只错那一维"的负样本。
- 注意力散度当幻觉探针:用"前一 token 的帧级注意力在视觉被扰动后漂移多少"来逐 token 判断幻觉类型,是个零成本、可解释的诊断信号,Fig. 5 的可视化让"哪些词靠时间、哪些词靠空间"一目了然。
- 逐 token 自适应而非整句一刀切,避免对静态描述词施加时间惩罚(反之亦然),这是它不损伤通用理解的根本原因。
- 全程零训练、可即插即用到任意 VideoLLM 乃至 72B 规模,落地成本极低。
局限与展望¶
- 依赖可访问的内部注意力:自诊断要读文本解码器的多头注意力分布,对纯黑盒/仅 API 的模型不可用。
- 多次前向开销:每步要在 \(v^O, v^S, v^T\) 三种表征下各跑一次 logits,外加视觉编码器内的同质化前向,推理成本约为基线的数倍(论文未给出精确加速比,⚠️ 以原文为准)。
- 超参需网格搜索:\(\alpha\)(对比强度)、\(\beta\)(同质化程度)需逐基准调;虽对层 \(J\) 鲁棒,但跨数据集是否需重调未充分讨论。
- 评测取确定性子任务:为避免依赖第三方 LLM 评测器,EventHallusion/TempCompass 只复现确定性子任务,可能低估了在开放式生成上的表现。
- 改进方向:把三条前向蒸馏进单次前向以降本;把"只错一维负样本"扩展到更多幻觉维度(如计数、空间关系)。
相关工作与启发¶
- vs VCD / MARINE(图像端对比解码):它们针对静态图抵消语言先验,无法刻画时间依赖;SEASON 引入时间负样本与逐 token 诊断,专攻视频特有的时间幻觉。
- vs TCD:TCD 对比"原视频 vs 抽帧视频",只是削弱信息量、无法暴露因果错乱;SEASON 的时间同质化保留全部帧但抹平帧间差异,是更"硬"的时间负样本。
- vs DINO-HEAL:DINO-HEAL 用 DINOv2 显著图重加权空间特征,关注空间显著性、忽略时间顺序;SEASON 直接以时间一致性为对比目标。
- vs ArrowRL / TPO / RRPO(训练类):它们靠强化学习/偏好优化提升时间忠实度,需重训和偏好数据;SEASON 训练无关、即插即用,且多项指标已可比甚至反超。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ "时间硬负样本 + 逐 token 注意力自诊断"是对视频对比解码缺口的精准补全,概念清晰且可迁移。
- 实验充分度: ⭐⭐⭐⭐ 三 backbone × 7 基准 + 负样本/组件/层/规模化多重消融充分;扣分在多次前向的开销未给精确量化。
- 写作质量: ⭐⭐⭐⭐ 动机推导(为何要"硬负样本")讲得透彻,图示直观;公式排版在原文 OCR 中略乱。
- 价值: ⭐⭐⭐⭐⭐ 训练无关、可挂任意 VideoLLM 直至 72B,对自动驾驶/医疗等高可靠场景的视频理解落地价值高。