该协议旨在通过整合结构化知识来改进弱监督视频异常检测。其目标是实现特定异常类型的分类,并为检测结果提供清晰、可解释的解释,超越简单的二元决策并提高透明度。
研究文章
该协议旨在通过整合结构化知识来改进弱监督视频异常检测。其目标是实现特定异常类型的分类,并为检测结果提供清晰、可解释的解释,超越简单的二元决策并提高透明度。
弱监督视频异常检测是一项关键技术,它仅依靠视频级标签来识别异常事件。然而,传统的多实例学习(MIL)方法依赖于粗粒度二进制监督。这种方法使得很难区分细粒度的异常类别。这些方法通常只关注最异常的片段,导致检测结果缺乏可解释性。为了克服这些局限性,本研究提出了一种结合结构化知识的特征建模方法。弱监督视频异常检测利用动态语义引导机制,将外部类别级信息与可学习提示相结合,在特征空间内生成语义信号。这些信号与基本异常检测模块提取的视觉证据对齐,产生两个互补的输出:用于量化异常事件严重程度的异常评分,以及与外部概念一致的语义描述,可用于通过预定义模板生成结构化和可解释的解释性文本。实验结果表明,所提方法在UCF-Crime数据集上的AUC为88.03%,在ShanghaiTech数据集上为98.23%,在细粒度异常分类任务中达到了87.05%的准确率。此外,生成的语义解释将弱监督检测从二元分类任务扩展到语义驱动的、可解释的异常分析框架。
视频异常检测 (VAD) 在公共安全和智能制造等领域发挥着至关重要的作用,它为手动监控的局限性提供了可扩展的解决方案1。特别是,弱监督视频异常检测(WS-VAD)因其对视频级标签的依赖而受到重视,大大减轻了手动标注的负担,同时提高了跨不同场景的通用性。尽管WS-VAD方法具有实际优势,但在精确识别异常事件的性质方面仍面临重大挑战2。现有模型经常检测异常的存在,但很难确定其确切类别或提供有意义的诊断信息 3,4。例如,在工业环境中,模型可能会将过热轴承产生的烟雾与无害的蒸汽排放混淆,或者错误地将正常的焊接火花视为火灾的早期迹象,这两者都会导致代价高昂的误判和不必要的停机。这些语义混淆源于当前WS-VAD方法的固有局限性5。二进制视频级标签仅指示是否存在异常,而无法深入了解其原因、位置和严重性。此外,主流的多实例学习(MIL)框架6使用简单的启发式7聚合剪辑级预测,无法捕获不同事件类型的细微语义。结果,学习到的视觉特征空间变得模糊,视觉上相似但语义上不同的现象(例如烟雾和蒸汽)映射得过于紧密,从而模糊了决策边界。
为了解决这些局限性,出现了两个主要的研究方向。一个侧重于通过改进的时间建模 4,5,8 或显着性引导的特征选择3 来增强 MIL 框架。尽管这些方法改进了异常定位,但它们在提供语义清晰度和可解释性方面仍然存在不足。另一个方向涉及通过集成预训练的多模态模型(例如 VadCLIP9)来调整视觉和语言表示。虽然这种策略显示出希望,但它往往无法充分利用语言的语义丰富性。这导致了跨模态关联的弱和决策过程的不透明,从而产生了两个核心缺陷。首先,由于特征语义模糊和外部知识不足,当前模型无法一致地区分异常类别。其次,决策过程包含一个黑匣子,没有对为什么特定事件被归类为异常的透明解释。尽管有些方法包含文本提示(例如,战斗、射击),但这些方法总是简单化且组织松散,缺乏语义深度和上下文理解。
为了解决这些差距,引入了一种新的WS-VAD方法,该方法将结构化的外部知识与可解释的决策机制相结合,这是更广泛的可解释人工智能(XAI)领域的核心目标10。该方法没有使用基本的类别名称作为提示,而是使用 Wikidata11 构建丰富的语义表示(称为语义概念云)。与依赖静态文本提示或简单类别标签的现有多模态方法(如 VadCLIP9 )不同,这些语义概念云封装了全面的上下文知识,包括从结构化知识图谱中提取的相关实体、属性和因果关系。这些概念云通过使用 BLIP 模型12 编码到语义锚点中,使系统能够访问细粒度的事件语义。语义锚定机制的关键创新在于它能够创建动态的、知识丰富的表示,以适应特定的异常上下文,而以前基于提示的方法使用缺乏上下文深度和语义关系的固定文本描述。为了进一步细化特征空间,显着性引导的对齐机制有选择地将这些锚点与最相关的视觉证据相关联。这种有针对性的对齐增强了特征的辨别能力,同时提高了检测结果的语义清晰度。更重要的是,所提出的方法支持透明的解释。一旦语义锚点与视觉证据保持一致,模型就会使用预定义的模板生成结构化的自然语言解释,明确解决异常的性质和理由。值得注意的是,该方法的实现依赖于特定的先决条件,包括使用预先提取的 I3D 视觉特征、访问外部知识库 (Wikidata) 以及预训练的 BLIP 编码器。因此,该框架在应用中最有益,在这些应用中,必须超越简单的二进制检测,而是对特定的异常类型进行分类,并为结果提供可解释的理由。
主要贡献如下。通过将外部知识与结构化可解释性相结合,开发了一种新的WS-VAD方法,以提高语义理解和决策透明度。引入一种基于语义嵌入的提示方法和上下文感知对齐机制,以克服纯视觉媒体与信息素养模型的局限性。结合了一个生成解释模块,使用语义锚点作为可解释的单元来产生连贯的文本基本原理。在UCF-Crime和ShanghaiTech数据集上进行的大量实验证明了所提方法的有效性,实现了较高的AUC分数(88.03% / 98.23%)和卓越的细粒度识别性能,并具有清晰且可解释的输出。
访问受限。请登录或开始试用以查看此内容。
本研究仅使用公开可用的数据集(UCF-Crime13 和 ShanghaiTech14)。所有视频均来自数据集的官方版本,这些数据集在数据集维护者提供的范围内对个人身份信息进行匿名化。作者没有进行额外的数据收集或人类受试者互动;因此,不需要新的 IRB 批准。数据使用符合相应数据集的许可和使用条款。
数据准备和特征提取
数据集准备:采用UCF-Crime13 (1,610列车/290测试视频)和ShanghaiTech14 (238列车/199测试视频)数据集。使用 FFmpeg 对视频进行预处理以确保可重复性,重新编码为 H.264,重新采样为 25 fps,并使用以下命令调整为 256 x 256 分辨率:ffmpeg -i v.mp4 -vf “fps=25,scale=256:256” -c:v libx264 -crf 23 -preset veryfast pre/。
特征提取:RGB特征由在动力学数据集16上预训练的I3D主干15提取。视频被分成不重叠的 16 帧剪辑;每个剪辑都被中央裁剪为 224 x 224 像素。倒数第二层激活被平均合并以获得每个剪辑的 1024-D 特征。在 PyTorch 中,这对应于通过 I3D 主干转发形状 [B, 3, T, H, W] 的张量,并应用adaptive_avg_pool3d然后进行展平。提取的特征与剪辑时间戳一起保存在 .npy 文件(每个视频一个)中,以实现精确的可重复性(种子 = 123)。对于每个视频,features///
模型架构和方法
基础检测:时态上下文融合
给定一个由特征矩阵 Z
RTx1024 表示的视频剪辑序列,时态上下文融合 (TCF) 模块首先通过三个学习的线性投影计算查询、键和值表示:
Q = ZWQ, K = ZWK, V = ZWV (1)
其中 WQ、WK、WV
RTx1024xd 是可训练参数(PyTorch:三个 nn.线性 (1024,d) 层)。段间亲和力为 S =
,合并了时间关系嵌入 (TRE),其中每个元素计算为 Rij = α exp (
) + β 。位置感知亲和力为
= S + R。 全局上下文映射 A = softmax()
聚合 V 以获得广域特征 G = AV。局部特征 L 是用深度一维卷积 (nn.Conv1d) 的内核大小为 3 的 Z。动态门 g = σ(MLP ([G;L])) 混合两者: U = g
G + (1 - g)
L .最后,应用层归一化和残差线性层生成 Y (Pytorch:LayerNorm+Linear+残差)。
基本检测:因果时间预测器
输出 Y 通过两个具有 GELU 和 dropout 的因果一维卷积(Pytorch:padding='causal' 或掩码 conv)以获得每个剪辑的异常 logit。应用 sigmoid 函数得到概率值
[0,1]T。
语义增强:利用外部知识进行提示学习
构建语义锚点:对于每个异常类 c,从 Wikidata11 中查询 Kc 概念,并使用 BLIP 的12文本编码器将每个概念短语编码为 ei
R768。类锚点是 l2 归一化平均值 Dc = 范数(
Σiei) 。为了减少噪声,删除了与类名余弦相似度低于0.2的概念,并保留了TF-IDF分数的top-M。
执行上下文相关分离:前景权重 αt = softmax(rst) 是根据基本检测器分数 st 计算的,背景权重 bt = softmax(r(1 - st))。加权特征是 ffg = Σtαzt 和 fbg = Σtbzt 。
对齐视觉和语义特征
定义对齐目标:在对齐步骤中,目标是最小化前景视觉特征与特征空间内异常类别的相应语义锚点之间的距离。创建一个语义指南集合,
包括 C 异常类别语义指南和一个标准正常语义指南。确定似然, P(Dk|v),视觉特征 v 对应于第 k 个语义指南 Dk。使用温度标度余弦相似度和 Softmax 归一化来计算,如式 (2) 所示。
(2)
交叉熵被最小化以将正对推在一起,将负对推开,将 τs 设置为可学习参数并将其初始化为 10。通过优化相关正样本对的可能性,同时降低相关负样本对的可能性来完成对齐。
基于模板的可解释性模块
基于具有外部知识的提示学习(PLE)增强特征表示,线性分类器生成每类的logits,随后通过softmax函数将其归一化为类概率;预测的异常类型被确定为概率最高的类别。同时,根据检测器输出计算出全局异常分数。为了确定严重性级别,将该分数与通过验证集上的网格搜索优化的三个预定义阈值进行比较。
默认阈值设置为θ高= 0.8,θ中=0.5,θ低=0.2。具体来说,如果分数大于θ高,则严重程度被标记为高;如果分数介于 θ中和 θ高之间,则标记为中;如果介于 θ低和 θ中之间,则标记为低;否则,它被标记为无。
在解释生成阶段,从预定义的模板库补充 文件 1 中选择与预测类型相对应的模板。该库包含多个模板变体,这些模板变体已由多个注释者17 交叉验证,以增强生成文本的多样性。如果模板库中存在预测类型,则随机选择相应的模板;否则,将使用未知类型的默认模板。最后,通过整合预测类型、全局异常评分、严重程度描述和所选模板,生成结构化的解释性文本。系统返回预测的异常类型、全局异常分数和生成的解释文本作为最终输出。结果如 图 2 所示。
所有阈值参数都使用验证集的网格搜索进行优化,并使用人工评估和自动指标对生成的解释的质量进行综合评估。结果如 表1所示。
模型训练和评估
训练:模型使用 Adam(lr 1 x 10-4,权重衰减 5 x 10-4)、批量大小 128、50 个纪元、lr 的余弦退火进行端到端训练。Python/Numpy/Pytorch 的随机种子设置为 123,并启用了 torch.backends.cudnn.deterministic=True。每5个epoch将检查点保存到checkpoints//epoch_XX.pt,并通过验证AUC选择最佳模型。所有实验均在配备 NVIDIA GeForce RTX 4060 Ti (16GB) GPU 的系统上进行,运行 Windows 11、Python 3.8.20、PyTorch 1.8.0 和 CUDA 11.1。ShanghaiTech数据集的每epoch训练时间约为30 s,UCF-Crime数据集的训练时间约为3.5 min。
损失:总体目标是 L = LMIL+ λ • L对齐。在验证集的集合{0.01,0.1,0.5,1,5,10}上扫描超参数λ,并固定最佳值以进行测试报告。前K MIL聚合见 图3 ,定义见式(3-4)。
(3)
(4)
评估:帧级 AUC 是按照先前 WS-VAD 工作 2,5 使用的标准协议计算的。对于UCF-Crime的细粒度类型识别,报告了IoU 0.1-0.5处的mAP和AVG mAP,如表2所示;每类AUC如图4所示,总体结果如表3和表4所示;嵌入可分离性和异常评分动态如图 4、图 5 和图 6 所示。
访问受限。请登录或开始试用以查看此内容。
为了进一步验证语义锚点的效用,进行了额外的实验来比较不同的提示模板(见 表 1)。使用维基数据增强语义原型的变体不仅实现了更高的 AUC 值,而且还使生成的解释的 BLEU-4 分数提高了 16.6 和 14.8。这些发现表明,提示的语义丰富性与文本解释的质量之间存在密切联系,证实解释生成过程通过利用丰富的语义结构超越了僵化的模板填充。
对异常类型的卓越细粒度识别
该协议的有效性在UCF-Crime数据集上的细粒度异常识别任务中得到了进一步证明。如 表 2 所示,该框架在所有 IoU 阈值上都优于 VADCLIP9 等同样针对细粒度识别的方法,达到了 11.88 的最高平均分。这一结果支持了该研究的核心前提:精确的语义对齐对于提高识别准确性至关重要。在较高的IoU阈值下,性能提升变得更加明显,凸显了所提出的显著性...
访问受限。请登录或开始试用以查看此内容。
这里介绍的协议通过将范式从简单的二元分类转变为语义基础的可解释分析,引入了弱监督视频异常检测的重大进步。该方法的意义在于它不仅能够识别是否发生了异常,还能够识别它是什么类型的异常以及模型为何得出该结论,从而解决了现有WS-VAD系统9,29中的主要限制。
设计选择和基本原理
该方法由三个相互关联的阶段组成:基本检测模块、语义增强模块和基于模板的可解释性模块。整体架构如图 1 所示。对于基本异常检测阶段,时间上下文融合 (TCF) 模块旨在熟练地捕获复杂的时间连接。当前的方法要么无法通过强调局部相互作用来有效模拟远程相互依赖3,要么通过依赖全局自注意力20来充...
访问受限。请登录或开始试用以查看此内容。
我们感谢航天宏卡智能科技(北京)有限公司提供的资金支持。
访问受限。请登录或开始试用以查看此内容。
| 姓名 | 公司 | 目录编号 | 评论 |
|---|---|---|---|
| BLIP模型 | Salesforce 研究 | ViT-B/16 | 用作文本编码器,用于创建语义锚点。 |
| GPU | NVIDIA | RTX 4060Ti | 用于训练模型 |
| I3D模型 | 谷歌DeepMind | 我已经用Kinetics和nbsp预先训练过; | 作为视频特征提取的骨干。 |
| Numpy | NumPy 开发团队 | 1.21.2 | 用于处理和处理数值数据阵列,如视频特征,然后再输入深度学习模型。 |
| PyTorch | Facebook人工智能研究 | 1.8.0 | 用于定义模型架构、实现自定义损耗函数以及运行反向传播以优化。 |
| 蟒 | Python 软件基础 | 3.8.20 | 用于编写所有用于数据处理、模型实现、训练和评估的脚本 |
| 上海科技数据集 | 上海科技大学 | 用于13个不同校园场景的培训和评估。 | |
| UCF-犯罪数据集 | 中佛罗里达大学 | 用于训练和评估13个异常类别。 | |
| 维基数据 | 维基媒体基金会 | 用作提示构建的外部知识图谱。 |
访问受限。请登录或开始试用以查看此内容。
申请许可以重复使用本 JoVE 文章的文本或图表
申请许可