😊文章背景
题目:Harnessing Large Language Models for Training-Free Video Anomaly Detection
期刊:IEEE
检索情况:
作者:Luca Zanella; Willi Menapace; Massimiliano Mancini; Yiming Wang; Elisa Ricci
单位:University of Trento1 Fondazione Bruno Kessler2
发表年份: 16-22 June 2024
DOI:10.1109/CVPR52733.2024.01753
❓ 研究问题
传统的视频异常检测(VAD)主要面临三个大坑:
-
训练太麻烦:不管是有监督训练还是无监督训练都需要收集大量数据去训练模型。
-
数据难搞:监控视频涉及隐私,而且现实中异常事件发生频率很低,很难收集全 。
-
泛化性差:在这个场景训练好的模型,换个场景可能就废了 。
📌 研究目标
组合现成的 VLM(视觉语言模型) 和 **LLM(大语言模型),**提出了 LAVAD (LAnguage-based VAD) 方法 。
✨整体框架
作者设计了一个流水线,完全不需要训练,直接用现成的模型(Frozen models)来推理。
-
第一步:看图说话 (Captioning & Cleaning)
-
先用 BLIP-2 这种模型,把视频的每一帧画面转成文字描述(Caption)。
-
问题:生成的文字有时候是瞎说的(噪声)。
-
解决 :用 CLIP/ImageBind 算一下图文相似度,在一段视频里挑出跟画面最匹配的那个句子,把"胡言乱语"清洗掉 。
-
-
第二步:总结剧情 (Temporal Aggregation)
-
单看一帧画面很难判断是不是异常(比如一个人在跑,是在晨练还是在逃命?)。
-
作者把前后几秒的文字描述扔给 LLM (Llama-2),让它总结这几秒内发生了什么(Temporal Summary),加上了时间维度的上下文 。
-
-
第三步:让大模型打分 (Scoring)
-
这是最骚操作的一步。直接用 Prompt(提示词)问 LLM:
-
"假设你是执法机构,请根据这段描述,给场景打个分(0-1分),0是正常,1是可疑活动。" 。
-
LLM 靠自己的"常识"就能判断出"持枪"或"打架"是高分异常。
-
-
第四步:查漏补缺 (Refinement)
- 为了防止大模型偶尔看走眼,作者还用视觉特征把相似的视频片段聚在一起,如果画面长得像,分数也应该接近,以此平滑最终的异常分数 。
🧠 所用方法
一、 BLIP-2 模型
BLIP-2 (Bootstrapping Language-Image Pre-training) 的核心思想是"借用大佬的脑子。它发现现成的大语言模型(LLM)已经很聪明了,只是看不见东西。
-
它的创新 :它设计了一个轻量级的组件叫 Q-Former。
-
工作流程:
-
用一个冻结的视觉模型(ViT)看图。
-
Q-Former 把看到的视觉特征"翻译"成 LLM 能听懂的 token(虽然人类看不懂这些中间token)。
-
把翻译好的 token 喂给冻结的大语言模型(LLM)。
-
LLM 以为自己读到了一段话,于是顺势续写出:"A cat sitting on a sofa"。
-
二、 Q-Former
1. 核心任务:信息"瓶颈" (Information Bottleneck)
Q-Former 的设计非常巧妙,它故意设计得很轻量(参数少),卡在巨大的"视觉模型"和巨大的"语言模型"中间。
-
输入端 :面对的是视觉模型(Image Encoder)输出的海量图片特征。
-
输出端 :给大语言模型(LLM)喂的是少量、精简的特征(Visual Tokens)。
Q-Former 强迫自己只提取图片里"跟文本最相关"的信息,把背景里的那些无用噪点(比如墙角的灰尘、无关的路人)都过滤掉。
2. 秘密武器:可学习查询向量 (Learnable Queries)
这是 Q-Former 最天才的地方。它不被动地接收图片信息,而是主动去"查"。
-
设定 :Q-Former 内部初始化了一组固定的向量(比如 32 个),我们叫它 Learnable Queries(可学习的查询)。
-
比喻 :你可以把这 32 个 Queries 想象成 32 个拿着空白笔记本的记者。
-
工作流程:
-
进入现场:这 32 个记者进入"图片特征空间"。
-
交叉注意力 (Cross-Attention):它们通过 Cross-Attention 机制,在图片特征里到处看。有的记者专门负责记录"颜色",有的负责记录"动作",有的负责"物体"。
-
填满笔记:记者们把看到的信息填进自己的向量里。
-
交作业:最后,这 32 个填满信息的向量(Visual Tokens),就是 Q-Former 的输出。
-
结果:原本巨大的图片数据,被压缩成了这 32 个精华向量。LLM 只要读懂这 32 个向量,就能知道图里有啥。
3. 三大训练任务
为了让 Q-Former 能够精准地"翻译"图片,BLIP-2 让它在预训练时做了三份试卷:
-
图文对比 (Contrastive Learning):让 Q-Former 判断这张图和这句话是不是一对。(这就给了它类似 CLIP 的能力,能算相似度)
-
图文生成 (Image-grounded Text Generation):给一张图,让 Q-Former 辅助生成对应的描述文本。
-
图文匹配 (Image-Text Matching):更细粒度的二分类任务,判断图文是否匹配。
4.对本论文意义?
LAVAD 这篇论文之所以能成,全靠 Q-Former 的两个特性:
-
生成能力:它能把视频帧变成文字,让后面的 LLM 有东西可读 。
-
对齐能力 (Alignment) :论文中清洗字幕 (Caption Cleaning) 和 分数修正 (Refinement) 两个步骤,都需要计算"画面"和"文字"像不像 4。因为 Q-Former 已经把视觉特征映射到了和文本一致的空间,所以可以直接算余弦相似度(Cosine Similarity)。
✅ 启示
-
Pipeline 思维 :现在的趋势不是非要自己从头炼一个网,而是如何巧妙地串联现成的大模型(VLM + LLM)来解决特定问题。
-
Prompt Engineering:注意文中是怎么问 LLM 的(角色扮演:"你是个警察"),这能显著提高模型输出的准确性 。
-
清洗数据很重要:直接用多模态模型的输出通常会有噪声,文中设计的"图文匹配清洗"步骤是提分的关键 (Ablation Study 证明如果不清洗,性能掉很多)。