Language-guided Open-world Video Anomaly Detection under Weak Supervision¶
会议: ICLR 2026
arXiv: 2503.13160
代码: GitHub
领域: 视频生成
关键词: 视频异常检测, 开放世界, 语言引导, 概念漂移, 弱监督
一句话总结¶
提出语言引导的开放世界视频异常检测范式LaGoVAD,通过将异常定义建模为随机变量并以自然语言形式输入,结合动态视频合成和对比学习正则化策略,在七个数据集上实现零样本SOTA性能。
研究背景与动机¶
-
领域现状: 视频异常检测(VAD)旨在识别偏离预期模式的视频帧,广泛应用于智能监控等领域。近年来弱监督方法在封闭集设定下取得了不错的性能。
-
现有痛点: 现有方法假设异常定义是固定不变的,无法应对开放世界中异常定义可能随需求变化的情况。例如,不戴口罩在流感期间是异常行为,但平时是正常的——这构成了概念漂移(concept drift)问题。
-
核心矛盾: 开放集和领域泛化方法虽然能检测训练集之外的新类别异常,但仍假设异常定义不变,无法处理同一行为在不同场景下标签改变的情况(如行人在公路上行走在犯罪数据集中是正常的,但在高速公路监控中是异常的)。
-
本文目标: 提出一种允许用户在推理时通过自然语言动态定义异常的开放世界VAD范式,从根本上避免概念漂移。
-
切入角度: 将异常定义 \(Z\) 显式建模为随机变量,将预测条件化为视频 \(V\) 和定义 \(Z\) 的联合函数 \(\Phi:(V,Z)\rightarrow Y\),使 \(P(Y|V,Z)\) 恒定不变,从而理论上消除概念漂移。
-
核心 idea: 通过将异常定义作为输入条件,学习视频-文本-标签三元组的联合映射,并以大规模多样化数据集支撑泛化能力。
方法详解¶
整体框架¶
LaGoVAD 把异常定义 \(z\) 当成和视频 \(v\) 并列的输入,用一个双分支网络去学三元组 \((v,z,y)\) 的联合映射。视频经 CLIP 图像编码器加 Transformer 时序编码器得到帧级特征 \(v^t = \mathcal{F}(v)\),异常定义文本经 CLIP 文本编码器得到 \(z^t = \mathcal{G}(z)\),两者在 Transformer 融合模块 \(\mathcal{U}\) 中交互后送入二分类检测头 \(\mathcal{H}^{\text{bin}}\) 和多分类头 \(\mathcal{H}^{\text{mul}}\),分别输出逐帧异常分数和视频级类别。围绕这条主干,作者再用动态视频合成解决异常时长分布偏差、用硬负样本对比学习解决帧级判别模糊,并构建 PreVAD 数据集提供足够多样的训练三元组。
关键设计¶
1. 动态视频合成:让模型见过各种异常时长比例
弱监督 VAD 的一个隐患是训练分布偏差——网络爬来的异常视频里,异常往往占了大半时长,而真实监控中异常通常只是一闪而过的几秒。模型若只见高异常占比的样本,就容易把"长时间都在报警"当成默认行为,迁移到真实场景时过拟合。动态视频合成在训练中实时拼接视频来打破这种偏差:先随机决定本次合成正常还是异常样本,再确定要拼几段,然后从 K 近邻里挑语义相近的片段缝合成不同长度的新视频,使异常占比在 0 到 1 之间被均匀采样。拼接时异常段所在的锚点位置被转写成逐帧二值伪标签 \(y^p \in \{0,1\}^L\),由动态视频合成损失 \(\mathcal{L}_{\text{dvs}}\) 直接监督帧级预测,从而强制模型在各种时长比例下都能定位到真正异常的那几帧。
2. 硬负样本对比学习:把异常视频里的"正常段"当反例对齐
异常视频里正常帧和异常帧的边界本就模糊,加上视频-文本联合空间样本稀疏,简单对齐很难学出细粒度判别力。作者先用异常分数当权重把帧级特征加权聚合成视频级表示,让真正异常的帧主导这条向量;关键之处在于,同一条异常视频中评分较低的正常段被显式当作硬负样本,去和这段视频对应的异常描述做对比——即"这段画面不该匹配这条异常定义"。对比损失 \(\mathcal{L}_{\text{neg}}\) 同时跑文本→视频和视频→文本两个方向,逼模型在最容易混淆的同源样本上拉开正常与异常的距离,而不是只在不同视频之间做粗粒度对齐。
3. PreVAD 大规模预训练数据集:撑起语言引导范式的数据底座
语言引导范式要泛化,前提是见过足够多样的 \((v,z,y)\) 三元组,而已有数据集最大也才约 5K 视频、领域窄、且几乎没有语义描述标注。作者搭了一条可扩展的数据管线,从视频文本数据集、网络资源和监控流里聚合视频,再用多模态大模型(MLLM)自动清洗和标注,最终得到 35,279 个视频、覆盖 7 大类 35 小类异常,且每个异常视频都配有文本描述。正是这份在规模、领域和语义标注三个维度都更丰富的数据,才让模型在推理时能对没见过的异常定义文本做出合理响应。
损失函数 / 训练策略¶
训练用四项损失联合优化:\(\mathcal{L} = \mathcal{L}_{\text{MIL}} + \mathcal{L}_{\text{MIL-align}} + \mathcal{L}_{\text{dvs}} + \mathcal{L}_{\text{neg}}\)。其中 \(\mathcal{L}_{\text{MIL}}\) 是多实例学习损失,负责时序二分类检测;\(\mathcal{L}_{\text{MIL-align}}\) 是 MIL 对齐损失,负责视频级多类分类;\(\mathcal{L}_{\text{dvs}}\) 用合成视频的逐帧伪标签监督检测头;\(\mathcal{L}_{\text{neg}}\) 则是带硬负样本挖掘的双向对比损失。四项分别对应"检测什么时刻异常 / 是哪类异常 / 各种时长都能定位 / 帧级特征可分"四个目标,缺一项都会在消融中带来明显掉点。
实验关键数据¶
主实验¶
Protocol 1:零样本跨数据集二分类异常检测(AUC/AP)
| 数据集 | 指标 | 本文(LaGoVAD) | 之前SOTA | 提升 |
|---|---|---|---|---|
| UCF-Crime | AUC | 82.81 | 82.42 (OVVAD) | +0.39 |
| XD-Violence | AP | 76.28 | 63.74 (OVVAD) | +12.54 |
| MSAD | AUC | 88.09+ | — | — |
| DoTA | AUC | 优于所有基线 | — | — |
| TAD | AUC | 优于所有基线 | — | — |
Protocol 2:概念漂移评估(drift@5),LaGoVAD在不同异常定义下均表现稳定,优于VadCLIP和LLM-based方法。
消融实验¶
| 配置 | 关键指标 | 说明 |
|---|---|---|
| 完整模型 | 最佳 | 所有组件协同工作 |
| 去除动态视频合成 | 下降 | 异常持续时间多样性不足导致overfitting |
| 去除对比学习 | 下降 | 特征对齐质量降低 |
| 去除文本分支 | 大幅下降 | 退化为固定定义模式,无法处理概念漂移 |
关键发现¶
- 在XD-Violence上检测和分类分别提升20%和32%,体现了语言引导范式在跨域泛化上的巨大优势
- PreVAD的规模和多样性对模型性能至关重要,35K视频的多样化训练集是泛化的关键
- 概念漂移评估协议(drift@5)证明模型能有效应对异常定义的动态变化
亮点与洞察¶
- 理论贡献扎实: 通过概率论形式化了概念漂移问题,证明了将异常定义作为条件输入可以消除概念漂移,理论与实践紧密结合
- 范式创新: 从固定异常定义到动态语言引导定义的转变,开创了VAD领域的新范式
- 大规模数据集: PreVAD是目前最大最多样的视频异常检测数据集,具有独立的评估价值
- 实用性强: 用户可通过自然语言灵活定义异常,适应不同场景需求
局限与展望¶
- 依赖CLIP作为骨干网络,可能继承其在细粒度视觉理解上的局限
- 数据集虽大但仍以网络视频为主,与真实监控场景存在域差距
- 推理时需要用户提供合适的异常定义文本,定义质量直接影响检测效果
- 可考虑引入更强的视频理解模型(如VideoLLM)替代CLIP特征提取
相关工作与启发¶
- OVVAD等开放词汇方法虽能检测新类别但假设定义固定,本文的"定义作为输入"思路更灵活
- 与LAVAD等LLM-based方法相比,LaGoVAD在保持轻量级的同时实现了更好的性能
- 动态视频合成的思路可推广到其他视频理解任务的数据增强中
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 开创性地将概念漂移问题形式化并提出语言引导VAD范式
- 实验充分度: ⭐⭐⭐⭐ 七个数据集的零样本评估+两个评估协议,非常全面
- 写作质量: ⭐⭐⭐⭐ 逻辑清晰,理论推导严谨
- 价值: ⭐⭐⭐⭐⭐ 范式级贡献,PreVAD数据集也具有独立价值