MMR-AD: A Large-Scale Multimodal Dataset for Benchmarking General Anomaly Detection with MLLMs¶
会议: CVPR 2026
arXiv: 2604.10971
代码: https://xcyao00.github.io/MMR-AD
领域:目标检测
关键词: 异常检测, 多模态大语言模型, 推理数据集, 强化学习, 通用异常检测
一句话总结¶
MMR-AD 构建了当前最大规模的多模态推理型工业异常检测数据集(127K 图像、188 类产品、395 种异常),并提出基于 GRPO 强化学习的 Anomaly-R1 基线模型,显著优于通用 MLLM。
研究背景与动机¶
领域现状:工业异常检测从单类→多类→跨类不断发展,通用异常检测(GAD)是终极目标:训练一个通用模型直接检测新类别的异常而无需重训练。MLLM 因强大的视觉理解和语言推理能力,被视为实现 GAD 的有力工具。
现有痛点:(1) MLLM 预训练数据与工业 AD 场景有显著差距;(2) 现有 AD 数据集是图像格式,不适合 MLLM 后训练;(3) 现有多模态 AD 数据集(MMAD、Anomaly-Instruct-125K)要么只有选择题无推理、要么包含大量非工业场景 Web 数据。
核心矛盾:通用 MLLM 在工业 AD 上的精度远未达实际需求,尤其是精确的异常定位,而解决此问题需要大规模的高质量多模态 AD 训练数据。
本文目标:构建训练+评估兼用的大规模推理型多模态 AD 数据集,并验证基于强化学习的 AD 基线模型。
核心 idea:从 14 个公开 AD 数据集中人工审核筛选+标注边界框,自动生成推理型文本,并用 GRPO 强化学习训练推理型 AD 模型。
方法详解¶
整体框架¶
这篇工作要解决两件事:先造出一个能直接拿来后训练 MLLM 的大规模工业异常检测数据集,再用它训出一个真正会"看出异常在哪"的基线模型。数据侧,作者从 14 个公开 AD 数据集出发,先人工审核剔除低质量样本,再补标边界框和文本标签,然后让 Qwen2.5-VL-72B 同时看到正常参考图和待检图、配合视觉与文本提示自动生成"先推理后回答"的长文本,最后做一致性验证,得到 127K 图、188 类产品、395 种异常的 MMR-AD。模型侧,以 Qwen2.5-VL + LoRA 为底座,先用这批推理文本做 SFT 冷启动,再用带对比采样和一致性惩罚的 GRPO 强化学习把定位精度顶上去,推理时还可注入领域知识进一步提分。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400, 'subGraphTitleMargin': {'top': 8, 'bottom': 16}}}}%%
flowchart TD
subgraph DATA["推理型文本生成管线(设计 1)"]
direction TB
A["14 个公开 AD 数据集<br/>人工审核 + 补标 bbox/文本标签"] --> B["正常参考图 + 待检图配对<br/>红框视觉提示 + 坐标/类型文本提示"]
B --> C["Qwen2.5-VL-72B<br/>生成 think-then-answer 推理文本"]
C --> D["一致性验证<br/>预测框 vs 真值框对齐,筛掉不符"]
end
D --> E["MMR-AD 数据集<br/>127K 图 / 188 类 / 395 异常"]
E --> F["SFT 冷启动<br/>Qwen2.5-VL + LoRA 学输出格式"]
F --> G["对比采样 + 一致性惩罚的 GRPO<br/>结果奖励 +1 / 漏检 −0.2N / 保底正负例"]
G -->|推理时注入| H["领域知识注入<br/>提示该产品已知异常类型"]
H --> I["Anomaly-R1<br/>异常检测 + 精确定位"]
关键设计¶
1. 推理型文本生成管线:把"是否异常"的标签升级成"为什么是异常"的推理过程
现有 AD 数据集大多只有图像或选择题答案,无法教会 MLLM 逐步比较、定位的能力。这里的关键是给生成模型一对图——正常参考图和待检图——因为异常的本质就是相对正常的偏差,有参考图模型才知道"正常长什么样"。在此基础上叠加两类提示:视觉上用红色边界框圈出异常区域,文本上给出异常类型和坐标,逼 Qwen2.5-VL-72B 产出"先描述对比、再下结论"格式的标注,而不是一句干巴巴的 Yes/No。生成完还要做一致性验证——把文本里预测的区域和真实标注框对齐,不一致的样本被筛掉。这样产出的文本既带推理链又和图像空间对齐,比简单答案文本更能驱动模型学到通用 AD 能力。
2. 对比采样 + 一致性惩罚的 GRPO:让强化学习奖励"真的定位对了"而不是"猜对了 Yes"
SFT 之后模型会答题但定位往往很糊,若强化学习只按答案正误给奖励,模型很快学会无脑答 Yes 来刷分。作者把奖励拆成两部分:答案正确给结果奖励 \(+1\),同时引入一致性惩罚——每漏检一个真实异常框扣 \(0.2\),迫使模型把"答对"和"框准"绑在一起。另一个隐患是 GRPO 在一个 query 的所有采样响应都相同时会出现零梯度、训练停滞,这在 AD 这种答案高度集中的任务里很常见。对比采样专门解决它:用 MMR-AD 里的正确文本作为保底正例,再对那些"全是正响应"的 query 用对抗提示主动构造负例,保证每个 query 同时有正负样本、组内有奖励差异,梯度才不会消失。
3. 领域知识注入:在推理时告诉模型"这类产品该警惕哪些异常"
工业场景里正常变异和真异常的边界是模糊的,纯靠视觉模型容易把无害的差异也当成异常。这一项是推理期的轻量增强:在提示里直接写明"该产品可能出现以下异常类型:broken, deformation…",把模型的注意力收敛到已知异常类型上,让它去核对这些具体缺陷,而不是把图上一切差异都报成异常。实验里它带来稳定的额外增益(检测/定位各 +3~5 个点)。
损失函数 / 训练策略¶
两阶段训练:先用推理型文本做 SFT 冷启动(消融显示直接上 RL 而不冷启动效果很差),再做 GRPO 强化学习,目标函数沿用 PPO 的 clip 加 KL 惩罚,奖励由前述结果奖励与一致性惩罚组合而成。
实验关键数据¶
主实验¶
| 模型 | MVTecAD 检测Acc | MVTecAD 定位Acc | VisA 检测Acc |
|---|---|---|---|
| GPT-4o | ~70% | ~30% | ~65% |
| Gemini-2.5 | ~72% | ~35% | ~68% |
| Anomaly-R1-7B | ~85% | ~60% | ~80% |
| Anomaly-R1-7B† (+ 领域知识) | ~88% | ~65% | ~83% |
消融实验¶
| 配置 | 检测 | 定位 | 说明 |
|---|---|---|---|
| Full (SFT+RL) | 最优 | 最优 | 完整模型 |
| SFT only | 次优 | 中等 | RL 提升定位显著 |
| Direct RL (无 SFT) | 差 | 差 | 冷启动必要 |
| w/o 一致性惩罚 | 检测好 | 定位差 | 模型学会瞎猜 Yes |
关键发现¶
- 当前最强通用 MLLM(GPT-4o、Gemini-2.5)的工业 AD 精度远未达实际标准,尤其精确定位很差
- 推理型文本比简单答案文本更有助于模型学习通用 AD 能力
- 强化学习相比纯 SFT 在定位精度上提升最为显著
- 领域知识注入进一步提升了性能
亮点与洞察¶
- 数据集的可改进性:提供原始边界框,未来可用更强 MLLM 重新生成文本,这种前瞻性设计值得借鉴
- 一致性惩罚:巧妙地将定位精度引入奖励函数,避免了"正确但不精确"的强化学习陷阱
局限与展望¶
- 文本由 Qwen2.5-VL-72B 生成,存在模型偏差
- 127K 图像虽然规模大但部分类别数据仍不均衡
- 未来可探索更多 RL 算法和更大规模模型
相关工作与启发¶
- vs MMAD: MMAD 只有选择题格式,不能训练;MMR-AD 有推理文本可训练
- vs AnomalyGPT: AnomalyGPT 直接 SFT 无推理过程,泛化性差
评分¶
- 新颖性: ⭐⭐⭐⭐ 首个大规模推理型 AD 数据集,RL 基线有实用价值
- 实验充分度: ⭐⭐⭐⭐⭐ 多模型对比、消融、RL 技巧分析都很充分
- 写作质量: ⭐⭐⭐⭐ 数据集构建和方法描述清晰
- 价值: ⭐⭐⭐⭐⭐ 数据集对 AD 社区贡献很大