PANDA:通过代理型 AI 工程师迈向通用视频异常检测
文章目录
- 摘要
- 1 引言
- 2 相关工作
- 依赖训练的 VAD(Training-dependent VAD)
- 免训练的 VAD(Training-free VAD)
- 3 方法
- 3.1 自适应场景感知策略规划(Self-adaptive Scene-aware Strategy Planning)
- 环境感知(Environmental Perception)
- 基于 RAG 的策略规划(RAG-Based Strategy Planning)
- 3.2 目标驱动的启发式推理(Goal-Driven Heuristic Reasoning)
- 3.3 工具增强的自我反思(Tool-Augmented Self-Reflection)
- 基于经验的反思(Experience-Driven Reflection)
- 工具调用(Tool Invocation)
- 优化推理(Refined Reasoning)
- 3.4 自我改进的记忆链(Self-Improving Chain-of-Memory)
- 短期记忆链(Short CoM)
- 长期记忆链(Long CoM)
- 4 实验
- 4.1 实验设置(Experiment Setup)
- 数据集(Datasets)
- 评估指标(Evaluation Metrics)
- 实现细节(Implementation Details)
- 4.2 与当前最先进方法的比较(Comparison with State-of-the-Art Methods)
- 4.3 分析结果(Analytic Results)
- 反思轮数 rrr 的分析(Analysis of reflection round rrr)
- 规则数量 kkk 的分析(Analysis of rules number kkk)
- 短期记忆长度 lll 的分析(Analysis of short CoM length lll)
- 消融实验(Ablation Study)
- 定性结果(Qualitative Results)
- 5 结论(Conclusion)
PANDA: Towards Generalist Video Anomaly Detection via Agentic AI Engineer
NIPS’25
西安电子科技大学;新加坡国立大学 Show Lab
这篇论文的创新在于提出了 一种基于 MLLMs 的代理型 Agent 框架,通过结合自适应场景感知规划、目标驱动推理、工具增强自反思与自我改进记忆链,实现了在无训练与无人工干预条件下的通用视频异常检测。
这个总结反思那里用的是闭源模型,整体流程复杂;在线测试那里很水,一个视频只取10帧;自己构建了一个复杂场景子集,主要是为了证明他那些工具有用,比如低分辨率之类的。
摘要
视频异常检测(Video Anomaly Detection,简称 VAD)是一项关键但具有挑战性的任务,这源于真实世界场景的复杂性和多样性。以往的方法通常依赖特定领域的训练数据以及在新场景或未见异常类型下的人工调整,因而面临高昂的人工成本和有限的泛化能力。因此,我们的目标是实现通用型 VAD,即无需训练数据或人工参与即可自动处理任意场景与任意类型的异常。
在本研究中,我们提出 PANDA —— 一种基于多模态大型语言模型(MLLMs)的代理型 AI 工程师。具体而言,我们通过系统性设计以下四项关键能力实现 PANDA:
- 自适应的场景感知策略规划;
- 目标驱动的启发式推理;
- 工具增强的自我反思;
- 可自我改进的记忆链。
具体来说,我们开发了一种自适应的场景感知检索增强生成机制(RAG),使 PANDA 能够检索与异常相关的特定知识,以进行异常检测策略规划。随后,我们引入了潜在异常引导的启发式提示策略,以提升推理精度。此外,PANDA 结合渐进式反思机制与一系列具备上下文感知能力的工具,在复杂场景中迭代优化决策。最后,记忆链机制使 PANDA 能够利用历史经验实现持续性能提升。
大量实验结果表明,PANDA 在多场景、开放集与复杂场景设定下,无需训练与人工干预即可达到最先进性能,验证了其通用化与稳健的异常检测能力。
代码已开源:https://github.com/showlab/PANDA。
1 引言
视频异常检测(Video Anomaly Detection,简称 VAD)[1, 2, 3, 4] 旨在识别视频流中异常或可疑事件,在智能监控 [5]、交通监测 [6]、自动驾驶 [7] 以及工业安全 [2] 等众多实际应用中发挥着至关重要的作用。

现有的 VAD 方法遵循一种“专家导向(specialist-oriented)”范式,在针对新场景和异常类型部署时需要人工参与。总体而言,它们可分为依赖训练(training-dependent)与免训练(training-free)两类(见图 1(a))。其中,依赖训练的方法需要针对每个目标场景收集新的标注数据并训练模型。这类方法的人工与训练成本高昂,缺乏泛化性与通用性。相比之下,免训练方法通常采用预训练的大型语言模型(LLMs)或视觉语言模型(VLMs)作为骨干,从而消除了模型训练的需求。然而,这类方法在部署到新场景与异常类型时仍然严重依赖人工工程设计,例如特定场景的预处理步骤、手工编写的提示模板、规则整理以及后处理操作。这些静态流程缺乏适应性,当面对不确定性、长时间依赖关系或复杂动态场景时容易失效。此外,这种手工设计的特性也限制了其向通用型 VAD 方向发展。
为克服现有方法的局限,并摆脱特定领域训练和手工流水线设计的束缚,我们的目标是开发一种通用型视频异常检测方法,能够在没有训练数据或手工流水线组装的情况下,自适应地应对新场景与新异常类型。多模态大型语言模型(MLLMs)在广泛的视觉理解任务中取得的成功,为实现这一目标提供了有力基础。因此,我们提出了 PANDA —— 一种面向通用视频异常检测(Generalized VAD)的代理型 AI 工程师(Agentic AI Engineer,见图 1(b))。受人类工程师系统化分析问题、适应复杂环境并通过工具与经验不断改进的方式启发,PANDA 能够根据用户定义的需求自适应地感知环境、制定检测计划、执行目标驱动推理、调用外部工具以增强决策能力,并在记忆中不断积累经验以实现自我改进。
从技术上讲,PANDA 具有以下四个主要特征:
-
自适应场景感知策略规划(self-adaptive scene-aware strategy planning):在面对新场景或用户定义的异常检测需求时,PANDA 首先进行环境感知与理解,然后从异常知识库中检索相关规则。基于环境上下文信息,设计出场景自适应的检索增强生成机制(scene-adaptive Retrieval-Augmented Generation, RAG),以构建针对性的异常检测计划。
-
目标驱动的启发式推理(goal-driven heuristic reasoning):PANDA 利用潜在异常线索引导任务特定的提示,从而引导推理过程更加准确且聚焦。
-
工具增强的自我反思(tool-augmented self-reflection):PANDA 通过不确定性评估并调用一系列精选工具(如目标检测、图像检索或网络搜索等),以获取更多信息、解决模糊决策。
-
自我改进的记忆链(self-improving chain-of-memory):PANDA 融合历史经验以验证当前推理或反思过程。通过在时间维度上持续积累上下文线索,提高其决策的稳定性与准确性。
综上所述,PANDA 体现了一种具备代理智能的 AI 工程师,能够主动感知多样化环境,制定自适应策略,执行目标驱动推理,并通过工具增强反思与记忆链机制不断自我改进,从而在复杂真实场景中实现稳健且具备泛化能力的视频异常检测。
大量的实验结果表明,PANDA 在多场景、开放集与复杂场景等多个具有挑战性的基准测试中,在无需训练和人工干预的条件下,达到了最先进的性能。这些结果突显了 PANDA 作为一种自主且通用的视频异常检测解决方案在真实世界应用中的巨大潜力。
2 相关工作
视频异常检测(Video Anomaly Detection,简称 VAD)[8, 9, 10, 11] 一直是计算机视觉领域的重要研究方向,因为它在各种真实世界场景中具有广泛的应用价值。现有的 VAD 方法多为“专家导向(specialist-oriented)”,可大体分为两类:依赖训练(training-dependent) 与 免训练(training-free) 方法。
依赖训练的 VAD(Training-dependent VAD)
这类方法依赖不同程度的标注数据,通常可分为三种类型:半监督 VAD [2, 5, 10, 12, 13]、弱监督 VAD [14, 15, 16, 17, 18] 以及 指令微调 VAD(instruction-tuned VAD) [19, 20, 21, 22]。
例如,Ristea 等人 [23] 提出了一种基于轻量级掩码自编码器的高效异常检测模型。Yang 等人 [14] 引入了一种基于文本提示驱动的伪标签与自训练框架,用于弱监督 VAD。Zhang 等人 [22] 则提出了将异常导向的时间采样器与指令微调的多模态大型语言模型(MLLM)相结合的模型,用于检测异常。
虽然这些依赖训练的方法在训练数据域内表现良好,但在迁移到分布外环境(out-of-distribution)或面对全新异常类型时,性能往往会显著下降。这限制了它们在开放世界场景中(其中异常多样且上下文敏感)的适用性。
免训练的 VAD(Training-free VAD)
受大型语言模型(LLMs)[24, 25] 和视觉语言模型(VLMs)[26, 27, 28] 最新进展的启发,免训练的 VAD 方法 [29, 30] 近年来受到越来越多的关注。这类方法旨在利用基础模型(foundation models)中强大的先验知识,而无需特定领域的训练。
例如,Zanella 等人 [29] 提出了首个基于语言模型的免训练 VAD 框架,通过对齐 LLMs 与 VLMs 之间的跨模态特征来改进异常评分,并抑制噪声字幕。Yang 等人 [30] 开发了一种基于规则的异常推理框架,通过提示 LLMs 执行关于异常规则的归纳与演绎推理。
虽然免除了模型训练的需求,但这些方法仍依赖静态提示模式(static prompting patterns),并需要大量人工工程设计(例如手工预处理与后处理),这限制了其在复杂真实场景中的适应性与稳健性。
区别于上述两类范式,PANDA 是一种基于代理(agent-based)框架的方法,体现了代理型 AI 工程师的特性,能够在面对各种真实场景时自主执行视频异常检测,而无需训练或大量人工设计。
通过引入渐进式反思机制(progressive reflection mechanism)与一套感知增强工具(perception-enhancing tools),PANDA 能够在自我反思与工具调用的基础上自适应地优化推理,从而动态地处理多样化与不断变化的真实世界场景。
3 方法
在本节中,我们介绍 PANDA 的核心架构与推理过程。PANDA 是一种面向通用视频异常检测(generalized VAD)的代理型 AI 工程师,旨在动态感知多样化环境并执行渐进式、工具增强的推理与自我优化(如图 2 所示)。
PANDA 通过以下四个协同模块实现上述目标:
(1) 自适应场景感知策略规划(self-adaptive scene-aware strategy planning),
(2) 目标驱动的启发式推理(goal-driven heuristic reasoning),
(3) 工具增强的自我反思(tool-augmented self-reflection),
(4) 自我改进的记忆链(self-improving chain-of-memory)。

3.1 自适应场景感知策略规划(Self-adaptive Scene-aware Strategy Planning)
为了在一般性和无约束环境下实现视频异常检测(VAD),关键在于能够动态感知当前视频上下文并构建有针对性的检测策略。
鉴于许多真实世界异常具有显著的场景依赖性,且视觉条件存在多样变化,PANDA 首先对输入视频执行自适应场景感知(self-adaptive perception),以提取高层次的环境上下文信息。
环境感知(Environmental Perception)
设用户定义的检测查询为 UserqueryUser_{query}Userquery,输入视频序列为
V={f1,f2,…,fN}V = \{f_1, f_2, \ldots, f_N\}V={f1,f2,…,fN}
其中包含 NNN 帧。PANDA 从中均匀采样 MMM 个关键帧:
F={f1,f2,…,fM}F = \{f_1, f_2, \ldots, f_M\}F={f1,f2,…,fM}
并将其与 UserqueryUser_{query}Userquery 结合,构造感知提示(perception prompt)。
该提示被输入至视觉语言模型(VLM),模型返回结构化的环境信息:
EnvInfo={Scene Overview,Potential Anomalies,Weather Condition,Video Quality}EnvInfo = \{ \text{Scene Overview}, \text{Potential Anomalies}, \text{Weather Condition}, \text{Video Quality} \}EnvInfo={Scene Overview,Potential Anomalies,Weather Condition,Video Quality}
其中:
- Scene Overview(场景概述) 提供场景的高层次摘要,包括位置类型(例如:街道、商店、停车场等)及观察到的活动。
- Potential Anomalies(潜在异常) 指当前场景语境下可能发生的可疑行为类型。
- Weather Condition(天气状况) 捕捉时间与天气属性,例如昼夜(day/night)及天气(如晴天、雨天)。
- Video Quality(视频质量) 总结视频的分辨率与清晰度(例如:低分辨率、模糊、有噪声等)。
基于 RAG 的策略规划(RAG-Based Strategy Planning)
在获得结构化的环境上下文后,PANDA 随即规划其检测策略。为避免生成幻觉并提高可靠性,该规划过程通过检索增强生成(Retrieval-Augmented Generation, RAG) [31] 实现,由多模态大型语言模型(MLLM)驱动。
首先,基于 UserqueryUser_{query}Userquery,PANDA 构造知识库提示(knowledge base prompt)PromptknowPrompt_{know}Promptknow,并利用 MLLM 生成结构化的一般异常知识库:
κa=MLLM(Userquery,Promptknow)={Event Type,Anomaly Rules,Application Scenes}(1)\kappa_a = MLLM(User_{query}, Prompt_{know}) = \{ \text{Event Type}, \text{Anomaly Rules}, \text{Application Scenes} \} \tag{1} κa=MLLM(Userquery,Promptknow)={Event Type,Anomaly Rules,Application Scenes}(1)
其中:
- Event Type 表示用户指定的异常类别;
- Anomaly Rules 是与每种异常类型相关的检测规则;
- Application Scenes 表示异常可能发生的上下文场景。
对于每种异常类型,我们预定义 HHH 个“规则–场景”对来构建知识库。随后,PANDA 使用感知得到的 EnvInfoEnvInfoEnvInfo 作为查询,检索与当前环境最相关的前 kkk 条异常规则:
Rulesa=RetrieveTopK(EnvInfo,κa).(2)Rules_a = RetrieveTopK(EnvInfo, \kappa_a). \tag{2} Rulesa=RetrieveTopK(EnvInfo,κa).(2)
最后,PANDA 综合 UserqueryUser_{query}Userquery、EnvInfoEnvInfoEnvInfo 和 RulesaRules_aRulesa,构造规划提示 PromptplanPrompt_{plan}Promptplan,并将其输入 MLLM,以生成最终的检测策略计划:
Planstrategy=MLLM(Promptplan)={Preprocessing,Potential Anomalies,Heuristic Prompt}.(3)\begin{aligned} Plan_{strategy} &= MLLM(Prompt_{plan}) \\ &= \{ \text{Preprocessing}, \text{Potential Anomalies}, \text{Heuristic Prompt} \}. \end{aligned} \tag{3} Planstrategy=MLLM(Promptplan)={Preprocessing,Potential Anomalies,Heuristic Prompt}.(3)
其中:
- Preprocessing 指可选的视觉增强步骤(例如:亮度调整、去噪、超分辨率等);
- Potential Anomalies 根据规则相关性与场景理解对异常列表进行精炼;
- Heuristic Prompt 包含针对每种潜在异常的逐步推理指令,使下游推理模块能够执行结构化的链式思考(chain-of-thought)分析。
通过结合自适应环境感知与基于 RAG 的策略规划,PANDA 确保后续的异常推理过程具有目标驱动性(goal-driven)与上下文感知能力(context-aware),从而显著提升其在开放世界(open-world)场景中的鲁棒性。
3.2 目标驱动的启发式推理(Goal-Driven Heuristic Reasoning)
推理模块是 PANDA 在视频异常事件分析中的核心组成部分。PANDA 同时支持离线模式(offline)与在线模式(online) 的推理过程。本节重点介绍离线模式,而在线模式的具体实现细节将在后续章节中描述。
在第 3.1 小节所构建的检测策略计划指导下,PANDA 通过视觉语言模型(VLM)执行目标驱动的启发式推理(goal-driven heuristic reasoning)。
设用户查询为 UserqueryUser_{query}Userquery,视频片段为
Vclip={c1,c2,…,cT},V_{clip} = \{c_1, c_2, \ldots, c_T\},Vclip={c1,c2,…,cT},
其中每个视频片段 cic_ici 包含 sss 帧视频。根据检测策略 PlanstrategyPlan_{strategy}Planstrategy,PANDA 首先应用指定的预处理工具,对视频片段进行视觉增强,得到增强后的视频片段:
V~clip=Preprocessing(Vclip)={c~1,c~2,…,c~T}.(4)\tilde{V}_{clip} = Preprocessing(V_{clip}) = \{\tilde{c}_1, \tilde{c}_2, \ldots, \tilde{c}_T\}. \tag{4} V~clip=Preprocessing(Vclip)={c~1,c~2,…,c~T}.(4)
随后,PANDA 基于 PlanstrategyPlan_{strategy}Planstrategy 构造推理提示(reasoning prompt):
Promptreasoning={Memorytextl-steps,PotentialAnomalies,AnomalyDetectionRules,HeuristicPrompt,EnhancementandReflectionInfo}.Prompt_{reasoning} = \{ Memory_{text}^{l\text{-steps}},\ Potential\ Anomalies,\ Anomaly\ Detection\ Rules,\ Heuristic\ Prompt,\ Enhancement\ and\ Reflection\ Info \}. Promptreasoning={Memorytextl-steps, Potential Anomalies, Anomaly Detection Rules, Heuristic Prompt, Enhancement and Reflection Info}.
其中:
- Memorytextl-stepsMemory_{text}^{l\text{-steps}}Memorytextl-steps 表示前 lll 步推理的记忆文本;
- Potential Anomalies 为潜在异常候选;
- Anomaly Detection Rules 是相应的异常检测规则;
- Heuristic Prompt 提供逐步推理指令;
- Enhancement and Reflection Info 包含增强与反思信息,用于改进后续的推理质量。
字段 Potential Anomalies(潜在异常)、Anomaly Detection Rules(异常检测规则) 与 Heuristic Prompt(启发式提示) 直接继承自前一阶段的策略规划结果。
Enhancement and Reflection Info(增强与反思信息) 则整合了在自我反思阶段(详见第 3.3 小节)产生的内容,包括基于工具的修正、更新的异常规则及启发式提示。
为了增强时间感知能力,PANDA 配备了一个短期记忆模块:
Memorytextl-steps,Memory_{text}^{l\text{-steps}},Memorytextl-steps,
用于记录过去 lll 次推理步骤的文本记忆。
除文本记忆外,PANDA 还维护了一个对应的视觉记忆流:
Memoryvisuall-steps,Memory_{visual}^{l\text{-steps}},Memoryvisuall-steps,
其中存储与最近 lll 个推理步骤对齐的视觉帧,使模型能够在推理过程中访问细粒度的视觉线索。
最终,在潜在异常目标与增强的上下文知识的共同驱动下,PANDA 执行启发式推理,其形式化定义如下:
Resultreasoning=VLM(ci~,Memoryvisuall-steps,Promptreasoning)={Status: Normal / Abnormal / Insufficient,Score∈[0,1],Reason:⟨⋅⟩}.(5)\begin{aligned} Result_{reasoning} &= VLM(\tilde{c_i}, Memory_{visual}^{l\text{-steps}}, Prompt_{reasoning}) \\ &= \{ \text{Status: Normal / Abnormal / Insufficient}, \\ &\quad Score \in [0,1], \ Reason : \langle \cdot \rangle \}. \end{aligned} \tag{5} Resultreasoning=VLM(ci~,Memoryvisuall-steps,Promptreasoning)={Status: Normal / Abnormal / Insufficient,Score∈[0,1], Reason:⟨⋅⟩}.(5)
其中:
- Status 表示视觉语言模型(VLM)的判断结果:
- Normal:视频片段被确信归类为非异常;
- Abnormal:表明存在强烈的异常证据;
- Insufficient:表示当前信息不足以做出明确判断。
- Score 表示对应于每种状态的异常事件存在的概率。
- Reason 是 VLM 对该状态判断的原因说明。
当结果为 Insufficient 时,PANDA 将触发反思机制,以收集更多的上下文或观察信息,然后重新进入推理循环。
3.3 工具增强的自我反思(Tool-Augmented Self-Reflection)
在复杂场景中,PANDA 可能无法就某个视频片段是否为正常或异常给出明确结论。在这类含糊不清的情况下,系统会返回 Insufficient 状态,从而触发反思模块。PANDA 采用工具增强的自我反思机制,并配备一组专用工具 τ={tool1,tool2,…,tooln}\tau=\{\text{tool}_1,\text{tool}_2,\ldots,\text{tool}_n\}τ={tool1,tool2,…,tooln},用于视觉内容增强与辅助分析,这些工具包括图像去模糊、去噪、亮度增强、图像检索、目标检测以及网页搜索等。它们帮助收集额外证据,以支持决策过程。
基于经验的反思(Experience-Driven Reflection)
当当前推理步骤给出 Insufficient Reason 时,PANDA 首先查询其长记忆链(Long-CoM,将在第 3.4 小节介绍),以检索最相似的历史反思案例:
Experiencereflection=RetrieveTop1(Insufficient Reason,Long-CoM).(6)Experience_{\text{reflection}}=\mathrm{RetrieveTop1}(\text{Insufficient Reason}, \text{Long-CoM}). \tag{6} Experiencereflection=RetrieveTop1(Insufficient Reason,Long-CoM).(6)
随后,PANDA 利用视频上下文信息构造反思提示(reflection prompt),其中包括 UserqueryUser_{query}Userquery、EnvInfoEnvInfoEnvInfo、PlanstrategyPlan_{strategy}Planstrategy、RulesaRules_aRulesa、短记忆链(short CoM)、Insufficient Reason 以及 ExperiencereflectionExperience_{\text{reflection}}Experiencereflection:
Promptreflection={Userquery,EnvInfo,Planstrategy,Rulesa,short CoM,Insufficient Reason,Experiencereflection}.Prompt_{\text{reflection}}=\{User_{query},\,EnvInfo,\,Plan_{strategy},\,Rules_a,\,\text{short CoM},\,\text{Insufficient Reason},\,Experience_{\text{reflection}}\}. Promptreflection={Userquery,EnvInfo,Planstrategy,Rulesa,short CoM,Insufficient Reason,Experiencereflection}.
该提示被送入 MLLM,用于分析不确定性的成因并推荐合适的反思方案:
Resultreflection=MLLM(Promptreflection)={"Insufficient Reason":⟨⋅⟩,"Tools to Use":[{tool1,params},…,{tooln,params}],"New Anomaly Rule":⟨⋅⟩,"New Heuristic Prompt":⟨⋅⟩}.(7)\begin{aligned} Result_{\text{reflection}} \;=\;& \mathrm{MLLM}(Prompt_{\text{reflection}}) \\ =\;& \{\, \text{"Insufficient Reason"}:\langle\cdot\rangle,\; \text{"Tools to Use"}:[\{\text{tool}_1,\text{params}\},\ldots,\{\text{tool}_n,\text{params}\}],\\ &\quad \text{"New Anomaly Rule"}:\langle\cdot\rangle,\; \text{"New Heuristic Prompt"}:\langle\cdot\rangle \;\}. \tag{7} \end{aligned} Resultreflection==MLLM(Promptreflection){"Insufficient Reason":⟨⋅⟩,"Tools to Use":[{tool1,params},…,{tooln,params}],"New Anomaly Rule":⟨⋅⟩,"New Heuristic Prompt":⟨⋅⟩}.(7)
工具调用(Tool Invocation)
PANDA 执行在反思结果中推荐的工具函数,以增强视觉与语义信息。工具调用过程可表示为:
Resulttool_augmented=ToolInvoke(tool1,…,tooln)={Text Enhancement Info,Visual Enhancement Info=c^j∪{ck}}.(8)\begin{aligned} Result_{\text{tool\_augmented}} &= ToolInvoke(\text{tool}_1, \ldots, \text{tool}_n) \\ &= \{ \text{Text Enhancement Info}, \\ &\quad \text{Visual Enhancement Info} = \hat{c}_j \cup \{c_k\} \}. \end{aligned} \tag{8} Resulttool_augmented=ToolInvoke(tool1,…,tooln)={Text Enhancement Info,Visual Enhancement Info=c^j∪{ck}}.(8)
其中,Text Enhancement Info(文本增强信息) 包括来自工具输出的摘要内容(例如:检测到的对象、网页搜索结果等);
Visual Enhancement Info(视觉增强信息) 包含处理后的视频片段 c^j\hat{c}_jc^j 以及检索得到的历史关键帧集合 {ck}\{c_k\}{ck}。
优化推理(Refined Reasoning)
PANDA 使用新获取的文本线索更新推理提示(reasoning prompt):
Promptrefined reasoning=Promptreasoning∪{Text Enhancement,New Anomaly Rule,New Heuristic Prompt},Prompt_{\text{refined reasoning}} = Prompt_{\text{reasoning}} \cup \{\text{Text Enhancement},\ \text{New Anomaly Rule},\ \text{New Heuristic Prompt}\}, Promptrefined reasoning=Promptreasoning∪{Text Enhancement, New Anomaly Rule, New Heuristic Prompt},
并基于增强后的视频片段重新进行推理:
Resultreflection reasoning=VLM(c^j∪{ck},Memoryvisuall-steps,Promptreasoningrefined).(9)Result_{\text{reflection reasoning}} = VLM(\hat{c}_j \cup \{c_k\},\ Memory_{\text{visual}}^{l\text{-steps}},\ Prompt^{\text{refined}}_{\text{reasoning}}). \tag{9} Resultreflection reasoning=VLM(c^j∪{ck}, Memoryvisuall-steps, Promptreasoningrefined).(9)
当返回状态为 Normal 或 Abnormal 时,PANDA 在下一时间步恢复正常推理;
若状态仍为 Insufficient,则重新触发反思过程。为防止无限循环,反思轮数被限制为 rrr 次。
若经过 rrr 轮后结果仍为 Insufficient,PANDA 将为该状态分配一个默认的异常分数,并跳过当前片段,继续下一时间步的推理。
3.4 自我改进的记忆链(Self-Improving Chain-of-Memory)
为使 PANDA 能够通过推理、反思与再推理的循环不断积累经验,从而变得越来越“智能”,系统引入了自我改进的记忆链机制(Chain-of-Memory, CoM),如图 3 所示。该机制增强了模型的长期上下文感知能力与跨视频序列的决策一致性。
CoM 包含两个组成部分:短期记忆链(short CoM)与长期记忆链(long CoM)。

短期记忆链(Short CoM)
在推理阶段,短期记忆链包括文本推理轨迹 Memorytextl-stepsMemory_{text}^{l\text{-steps}}Memorytextl-steps 及其视觉对应部分 Memoryvisuall-stepsMemory_{visual}^{l\text{-steps}}Memoryvisuall-steps(参见第 3.2 小节)。
在反思阶段,短期记忆链由以往的反思输出集合表示:
Resultreflectionhistory={Resultreflection1,Resultreflection2,…,Resultreflectionl}.Result_{\text{reflection}}^{\text{history}} = \{ Result_{\text{reflection}}^{1}, Result_{\text{reflection}}^{2}, \ldots, Result_{\text{reflection}}^{l} \}. Resultreflectionhistory={Resultreflection1,Resultreflection2,…,Resultreflectionl}.
长期记忆链(Long CoM)
PANDA 同时维护一个随时间演化的长期记忆链(Long-CoM):
Long-CoM={M1,M2,…,MT},\text{Long-CoM} = \{ M_1, M_2, \ldots, M_T \}, Long-CoM={M1,M2,…,MT},
其中每个记忆单元 MtM_tMt 在时间步 ttt 时包含以下三个关键输出:
Mt={Resultreasoning,Resultreflection,Resultrefined reasoning}.M_t = \{ Result_{\text{reasoning}},\ Result_{\text{reflection}},\ Result_{\text{refined reasoning}} \}. Mt={Resultreasoning, Resultreflection, Resultrefined reasoning}.
这种结构确保 PANDA 能够保留所有决策阶段的完整轨迹——包括初始推理、反思分析以及反思后的决策结果。
在视频开始时,Long-CoM 为空,PANDA 依赖于 Short-CoM 的局部窗口记忆来进行初始推理与反思。随着更多视频片段被处理,Long-CoM 会逐渐积累轨迹,从而支持基于记忆一致性的推理与反思规划。
通过这种自我改进的记忆链机制,PANDA 能够利用历史经验指导后续推理与反思,使异常检测过程在时间推移中逐步变得更稳定、更准确。
4 实验
4.1 实验设置(Experiment Setup)
数据集(Datasets)
我们在四个基准数据集上评估 PANDA:UCF-Crime [17]、XD-Violence [16]、UBnormal [32] 和 CSAD。
它们分别代表三种不同的设置——多场景(multi-scenario)、开放集(open-set)以及复杂场景(complex scenario)。
-
UCF-Crime 是一个大规模数据集,包含 1900 个未裁剪的真实世界监控视频,涵盖 13 种异常事件类型,如打斗、虐待、偷窃、纵火、抢劫和交通事故。训练集包括 800 个正常视频和 810 个异常视频,测试集包含 150 个正常视频和 140 个异常视频。
-
XD-Violence 是另一个大规模数据集,专注于暴力检测。它包含 4754 个视频,来源包括监控视频、电影和 CCTV 片段,涵盖 6 类异常事件。训练集与测试集分别包含 3954 个和 800 个视频。
-
UBnormal 是一个合成的开放集视频异常检测数据集,包含 543 个视频,定义了 7 类正常事件与 22 种异常事件。其中 12 种异常类型在训练中未出现,使其成为评估模型在开放集条件下泛化能力的具有挑战性的基准。
-
CSAD 是本文构建的复杂场景异常检测基准数据集。该数据集包含 100 个视频(50 个正常与 50 个异常),样本来自 UCF-Crime、XD-Violence 与 UBnormal。CSAD 包含在复杂和退化环境中拍摄的视频,具有低分辨率、光照不足、高噪声水平以及长时间跨度异常等特征,旨在评估模型在复杂退化场景下的鲁棒性。
评估指标(Evaluation Metrics)
参照以往方法 [16, 17],我们在 UCF-Crime、UBnormal 和 CSAD 上报告帧级 ROC 曲线下的面积(AUC)。
对于 XD-Violence,我们采用 [16] 提出的平均精度(AP)指标来评估方法的有效性。
实现细节(Implementation Details)
我们采用 Langgraph [33] 构建完整的智能体框架,并使用 PyTorch [34] 在 A6000 GPU 上进行实验。
在感知与推理阶段,视觉语言模型(VLM)采用 Qwen2.5VL-7B [26],而规划与反思阶段的多模态大型语言模型(MLLM)采用 Gemini 2.0 Flash [25]。
为提高推理效率,输入视频以 1 FPS 采样,每个视频片段包含 s=5s=5s=5 帧,并在每个时间步进行推理。
PANDA 支持离线与在线两种模式:
- 在离线模式下,感知阶段从整个视频中均匀采样 M=300M=300M=300 帧;
- 在在线模式下,初始采样帧数为 M=10M=10M=10。
每种异常事件类型的知识条目数量设为 H=20H=20H=20。
最大反思轮数 r=3r=3r=3,短期记忆链长度 l=5l=5l=5,每次查询检索前 k=5k=5k=5 条异常规则。
更多实现细节(包括提示模板与工具使用方式)可见补充材料。
4.2 与当前最先进方法的比较(Comparison with State-of-the-Art Methods)
表 1 比较了 PANDA 与当前最先进的专业化视频异常检测(VAD)方法的性能,包括依赖训练与免训练两类方法。结果表明,PANDA 在所有四个数据集上显著优于现有的免训练基线方法,即便在在线模式下亦保持领先性能。
在 UBnormal 数据集中,由于采用了开放集评估协议(测试阶段的异常在训练中未出现),PANDA 同时超越了依赖训练与免训练方法,展示出卓越的泛化能力。
在本文提出的复杂场景基准 CSAD 上,传统方法在低质量或长时间异常条件下表现不佳,而 PANDA 展现出显著优势。其在多样化数据集与复杂条件下的卓越性能表明,PANDA 具备出色的鲁棒性与有效性,是一种适用于真实世界视频异常检测的通用解决方案。

4.3 分析结果(Analytic Results)

反思轮数 rrr 的分析(Analysis of reflection round rrr)
表 2(a) 展示了不同反思轮数 rrr 对 PANDA 性能的影响。实验结果表明,随着 rrr 从 1 增加到 5,性能逐渐提升。尽管 r=5r=5r=5 相比 r=3r=3r=3 带来轻微的性能增益,但由于多次工具调用与推理步骤会增加计算开销,因此在平衡效率与性能的考虑下,我们将 r=3r=3r=3 设为所有实验的默认值。
规则数量 kkk 的分析(Analysis of rules number kkk)
表 2(b) 分析了在基于 RAG 的异常策略规划过程中,不同检索规则数量 kkk 的影响。
当检索规则过少(例如 k=1k=1k=1)时,系统缺乏足够的上下文信息来支撑稳健推理,导致性能下降;
而当 kkk 过大时,会引入噪声或不相关的规则,从而稀释推理质量。
综合来看,当 k=5k=5k=5 时,PANDA 达到最优性能。
短期记忆长度 lll 的分析(Analysis of short CoM length lll)
表 2© 分析了在推理阶段,不同短期记忆长度 lll 对性能的影响。
当 l=5l=5l=5 时,PANDA 达到最佳性能。
若将记忆长度缩短至 l=1l=1l=1,由于时间信息不足,模型无法有效利用近期推理轨迹,导致性能显著下降;
相反,当 l=9l=9l=9 时,过长的记忆会引入历史噪声,干扰当前的决策过程,从而造成性能退化。
消融实验(Ablation Study)
表 3 展示了针对 PANDA 各核心能力的消融实验结果,包括自适应场景感知策略规划(Planning)、工具增强的自我反思(Reflection)以及记忆链(Memory)。
第三行作为基线模型,仅基于用户定义的查询进行直接推理,而不包含规划、反思或记忆模块。结果显示,该基线模型性能相对较低,AUC 为 75.25%。
当加入 Planning 能力后,AUC 显著提升 +5.12%,表明场景感知、基于 RAG 的规则检索与上下文感知策略规划在 PANDA 中起到了关键作用。
进一步加入 Reflection 模块后,性能提升 +2.26%,说明在工具增强的帮助下,自我反思机制有效扩展了模型在复杂、模糊场景下的解决能力。
最后,加入 Memory 模块后,性能再提升 +2.26%,验证了记忆链设计的有效性。该机制使 PANDA 能够跨时间积累经验并用于优化决策。

综上,每个模块都在提升 PANDA 的泛化性与稳定性方面发挥了重要作用。各模块间的协同整合,使 PANDA 成为具备高适应性与可靠性的代理型 AI 工程师,能够实现通用化视频异常检测。
有关每个模块对应的详细实验,请参阅附录 C.1 小节。
定性结果(Qualitative Results)
图 4 展示了来自 UCF-Crime 测试集的可视化示例,用以说明 PANDA 的推理–反思过程。
图左显示异常分数随时间变化的曲线;图右展示 PANDA 的内部推理与反思阶段。
当模型遇到不确定性、无法确定异常是否存在时,它会进入反思阶段:
首先分析“不足原因”(Insufficient Reason),然后调用外部工具获取补充信息以支持决策。
该案例表明,PANDA 具备逐步自我优化与动态工具调用的能力,能够在复杂的真实世界视频异常检测场景中高效工作。
更多可视化示例参见补充材料。

5 结论(Conclusion)
本文提出了 PANDA,一种面向通用视频异常检测(generalized VAD)的代理型 AI 工程师,能够在面对多样化真实场景时无需训练数据或手工流水线即可运行。
PANDA 集成了四项核心能力:
- 自适应场景感知策略规划(self-adaptive scene-aware strategy planning),
- 目标驱动的启发式推理(goal-driven heuristic reasoning),
- 工具增强的自我反思(tool-augmented self-reflection),
- 自我改进的记忆链(self-improving chain-of-memory)。
这些模块协同工作,使 PANDA 能够自适应地检测各种动态、未知的异常。
在多场景、开放集与复杂场景等多个基准数据集上的广泛实验结果表明,PANDA 在无训练条件下仍展现出强大的泛化性与鲁棒性。
这些发现突显了 PANDA 作为一种通用视频异常检测解决方案在真实世界应用中的潜力。
