视频异常检测

QVAD精读:让小模型多问两句,离可靠的边缘异常检测还有多远?

细读训练免费问答循环,核对停止条件、向量记忆、后处理与边缘部署证据。

图2:问答循环、向量记忆和后处理的完整流程。停止条件应按图与伪代码核验。

QVAD精读:让小模型多问两句,离可靠的边缘异常检测还有多远?

一段监控描述说“一个人坐在地上,另外两人站在旁边”,既可能是普通交流,也可能是控制他人。QVAD 的出发点不是立即换一个更大的模型,而是让语言模型追问:是否存在身体约束?视觉模型重新检查同一组帧,再把回答交给推理模块。它把视频异常检测变成有边界的问答循环。

本文精读 2026 年 4 月 3 日的 arXiv:2604.03040v1,覆盖正文、全部附录和实现伪代码,图表来自该 CC BY 4.0 版本。最值得学习的是“按当前歧义提问”;最需要警惕的是把无参数训练、低显存、桌面显卡速度,合并成已经验证的边缘实时能力。

一、它不是训练参数,而是在测试时改变问题

QVAD 把视觉感知与语言判断分开:视觉语言模型负责描述可见内容,语言模型依据描述判断异常。如果判断还没有达到终止条件,语言模型生成一个更具体的问题,视觉模块再次观察已选视频帧,随后重新评估。两类模型参数不更新,问题却随当前视频及历史回答变化。

必要的参照是 VERA:它借助视频级标签,在离线阶段优化用于引导判断的问题;QVAD 则在当前视频的推理过程中生成追问。因此,二者都使用自然语言问题,并不意味着监督条件相同。另一个比较对象 VADTree 侧重将视频整理为多粒度结构;QVAD 把主要复杂性放在有限轮次的问答上,而不是更复杂的层级树。

不过,论文的“training-free”应理解为不针对目标任务更新模型权重。附录明确按数据集修改异常定义,并在各数据集验证集上优化后处理参数。它不是完全没有领域知识、没有标注参与配置选择的黑箱零样本系统。预训练模型已经学到的知识与可能的数据重叠,也没有被这个名称自动排除。

二、先挑帧,再决定问什么

图2:问答循环、向量记忆和后处理的完整流程。停止条件应按图与伪代码核验。

图注:图2:问答循环、向量记忆和后处理的完整流程。停止条件应按图与伪代码核验。 来源:Bekit等,QVAD v1,CC BY 4.0。(按原页裁切。)(第 4 页,来源:论文)

默认窗口为 128 帧,步长 64 帧,窗口之间重叠。第一阶段均匀保留 32 个候选帧,第二阶段根据运动显著性挑选八帧,并强制保留首尾。这样既保留时间跨度,又把视觉计算集中在变化较大的位置。相较随机抽样,短暂动作被保留的机会可能更高;但运动强并不等于异常,缓慢放置物品、静止障碍也可能被低估。

这里有一个影响复现的小分歧。正文公式以高斯模糊后的帧差平均强度计算运动分数;附录算法 3 则先对帧差做阈值二值化,再计算运动掩码占比。二者不完全相同。附录还给出阈值 25、模糊核大小 21。没有核验具体代码之前,应保留这个实现差异,而不是把正文公式与伪代码说成严格一致。

初始提示要求描述人物、动作、物体互动与可见细节,尽量避免猜测意图。随后语言模型输出二值判断、分数及理由。追问提示要求只问一个具体、可从视频观察回答的问题,视觉模块则用一两句话集中回答。这个限制有助于减少无效长对话,但无法保证问题本身没有诱导性,更不能保证视觉回答真实。

三、停止条件并不等于一般意义的不确定性

论文将继续追问的条件写为分数低于 0.7,最多追加两轮。正文把这个分数称为异常概率,提示模板又称它为置信度。这一点非常重要:低异常概率可能恰恰表示模型确信正常,而不是不确定;高异常概率也不等于判断必然可靠。因此,把该循环解释为严格的不确定性估计是不准确的。

图示和伪代码都采用低分继续、高分停止的方向。这可能让大量低分正常窗口被继续检查,而高分误报较早终止。作者期待追问纠正初始漏报,定性案例也展示这种情况;但如果要说明它同时减少误报,就还需要按初始判断类别分别统计变化。仅有整体 AUC 不足以回答这件事。

附录阈值实验还存在解释与规则不易一致的地方:较低阈值被文字解释为可能增加追问,但按“分数小于阈值才继续”的规则,固定分数下较低阈值反而减少进入循环的机会。这不必然否定表中结果,却意味着复现时必须以实际执行条件为准,不能照搬因果解释。

四、记忆存的是模型的历史判断,不是真实答案

向量记忆采用 MiniLM-L6-v2,将描述和问答等压缩成 384 维向量,检索最相似的三个历史条目;返回上下文预算为 512 token,单条存储上限为 150 token,最多约四百条后进行裁剪。每个视频使用独立记忆,避免把另一个测试视频的内容直接串进当前推理。

这种记忆允许跨非相邻窗口回看相似事件,但它保存的是系统生成的内容及判断,而不是外部确认过的事实。如果早期解释错误,后续检索可能把错误再次当上下文,形成自我强化。语义相似也未必代表时间因果相关:两个看起来相似的动作,未必属于同一个连续事件。这些是方法结构带来的风险推断,论文并没有通过消融完全排除。

后处理先对覆盖同一帧的多个窗口取最大二值判断与最大分数,再根据二值判断用参数 α 调整分数上下界,随后进行两级平滑。最大聚合会保留任何窗口里的强异常证据,但也可能放大一个窗口的误判。平滑则改变定位边界;它不是纯粹为画图美观,必须算作检测方法的一部分。

五、表格支持的是竞争力,不是全面第一

主配置为 Qwen3-4B 语言模型与 Qwen3-VL-4B 视觉语言模型。表 1 中 UCF-Crime 的 AUC 为 84.28,XD-Violence 的 AP 为 68.53;PANDA 对应为 84.89 和 70.16,VADTree 为 84.74 和 68.85。因此不能把摘要中的先进性表述改写成这两个基准均超过所有比较方法。

更亮眼的结果出现在 UBNormal:表 2 给出 AUC 79.60,PANDA 为 75.78。ComplexVAD 上为 68.02,相比作者复现的 VADTree 54.20 有明显提升,但仍低于表中采用不同监督方式的 HyCoVAD 72.5。正确读法是注明监督和复现来源,而不是跨设置直接排一个统一冠军。

附录说明,UBNormal 与 ComplexVAD 的 VADTree 对照由作者实现;其中边界检测组件还提到在 UBNormal 上微调。它与原始方法论文报告值不能不加区别地混用。模型、提示、视频分段、特征及后处理都可能影响差距,因此这组比较更适合说明当前实现配置,而不是孤立证明问答结构必然优于树结构。

六、多轮对话的收益是数据集相关的

表6—7:轮数收益并非各数据集单调上升,组件消融也未包含所有组合。

图注:表6—7:轮数收益并非各数据集单调上升,组件消融也未包含所有组合。 来源:Bekit等,QVAD v1,CC BY 4.0。(按原页裁切。)(第 8 页,来源:论文)

表 6 是检验核心假设最直接的证据。UCF 从零轮 77.23,经一轮 82.18,到两轮 84.28;UBNormal 从 77.95 到 78.20,再到 79.60。但 XD-Violence 的 AP 是 68.23、68.73、68.53,两轮略低于一轮;ComplexVAD 则是 49.81、49.67、68.02,一轮也没有改善。因此“追问严格增强检测能力”比数据支持的范围更强。

ComplexVAD 第二轮的大幅提升很有研究价值,但仍不能仅凭这一组结果断言模型形成了正确的多步因果推理。增加调用次数、历史文本、提示结构和偶然采样都同时改变。更有解释力的后续对照应包括相同调用预算下的重复独立判断、固定追问和随机追问,判断收益究竟来自适应性问题,还是单纯增加计算。

组件实验中,不用记忆与运动选择为 81.67,仅加选择为 82.35,两者都有为 84.28。这里没有单独“只加记忆”的一行,所以只能说明在有选择机制的条件下记忆进一步改善结果,不能完整估计两模块的独立贡献与交互。它与零轮基线也不是相同控制变量,不能将两张表的差值随意拼接。

七、敏感性和重复实验比单次最好分更有用

附录表 8—10 显示,窗口或帧数不是越大越好:128/64 窗口步长组合为 84.28,64/32 为 81.92,256/128 为 83.00;八帧为 84.28,四帧为 79.30,十六帧为 83.10。它们支持需要合理压缩信息,但“冗余压倒上下文”等解释仍属于作者推测,未被独立机制实验直接验证。

阈值敏感性尤其突出。UBNormal 上阈值 0.6、0.7、0.8 分别得到 66.30、79.60、65.56。这远大于多次生成带来的随机波动,意味着迁移新场景时,配置选择可能比表面上的零训练更关键。

三次运行的 UCF 均值为 84.03,标准差 0.204;UBNormal 均值为 79.20,标准差 0.283。主表分别采用 84.28 和 79.60,不能当作重复运行的均值。这是有用的稳定性证据,但三次运行不足以证明所有微小模型组合差异均统计不显著,也不能替代跨场景稳定性测试。

八、低显存可行性,不等于实测边缘实时

表4:顺序加载卸载下的模型组合、UBNormal AUC与报告显存。不是Jetson实机速度测试。

图注:表4:顺序加载卸载下的模型组合、UBNormal AUC与报告显存。不是Jetson实机速度测试。 来源:Bekit等,QVAD v1,CC BY 4.0。(按原页裁切。)(第 7 页,来源:论文)

论文全部性能评估在 RTX 5090 上完成。标准 4B/4B 管线为约 5.98 FPS,顺序加载卸载后约 5.89 FPS;更小的 1.7B/2B 组合为约 6.19 FPS。显存优化版的小组合报告 4.20 GB,UBNormal AUC 为 73.88,UCF 为 83.75。这说明能以性能损失换空间,不代表小组合在所有任务上都接近主配置。

作者据显存预算讨论 Jetson Orin Nano 可行性,但没有提供该设备上的等价实测时延、能耗或持续运行结果。桌面 5090 的 FPS 不能直接搬到嵌入式平台,也不能自动满足原始视频帧率。论文对 PANDA 的模型规模与硬件比较还混合了未知远端模型和本地显卡,不宜将该表理解为严格统一硬件下的成本排名。

窗口需要等待完整帧段,重叠聚合与高斯平滑也可能访问目标帧之后的信息。因此,没有另外实现因果窗口和因果平滑前,不应承诺逐帧零等待告警。作者提出缓存视觉特征与 KV 状态的未来优化方向,但它不是现有实验已经证明的加速成果。

QVAD 留下的好问题是:能否用少量、更有区分力的观察请求,替代盲目增加模型规模?论文给出了值得继续检验的肯定线索。更稳妥的下一步,则是把追问策略、验证集调参、后处理、硬件和延迟条件逐一拆开,检验它究竟在哪里节省了资源,又在哪里引入了新的不确定性。

还应注意,异常定义提示里出现音频线索,并不证明当前视觉帧输入真正读取了声音。若输入管线没有对应音频编码与传输,文字指令无法凭空增加听觉证据。实际部署应把可用模态明确列出来,并让模型在证据不足时保留未知,而不是用常识补全枪声、碰撞声或行为意图。

来源与核验范围

QVAD v1 正文及附录 A—C,图 2、表 1—13、算法 1—3;CC BY 4.0。必要对照包括 VERA 的提问优化和后处理机制,以及 QVAD 附录说明的 VADTree 复现配置。本文未运行作者模型,也未证实 Jetson 实机表现;不把论文中的配置解释当成独立验证。

原论文固定 v1 全文 · 原始 PDF · CC BY 4.0 许可