跳转至

Dual Distillation for Few-Shot Anomaly Detection

会议: ICLR 2026
arXiv: 2603.01713
代码: https://github.com/ttttqz/D24FAD (有)
领域: 医学图像 / 异常检测 / 少样本学习
关键词: 少样本异常检测, 双蒸馏, 教师-学生, 自蒸馏, 医学影像

一句话总结

提出双蒸馏框架 D24FAD,结合 query 图像上的教师-学生蒸馏(TSD)和 support 图像上的学生自蒸馏(SSD),辅以学习权重机制(L2W)自适应评估 support 重要性,在 APTOS 眼底数据集上仅用 2-shot 达到 100% AUROC。

研究背景与动机

  1. 领域现状:医学影像的异常检测面临标注稀缺的挑战,少样本异常检测利用极少量正常样本(2-8张)定义"正常",检测偏离正常的异常。
  2. 现有痛点:现有方法要么只用教师-学生蒸馏(忽略 support 的直接参考),要么只做 support 匹配(忽略预训练知识的迁移),两种信息来源未被联合利用。
  3. 核心矛盾:教师-学生蒸馏提供通用的正常-异常判别能力,但不知道"什么是这个域的正常";support 匹配提供域特定的正常参考,但缺乏通用的判别能力。两者应互补。
  4. 本文要解决什么? 如何同时利用预训练知识和少量正常样本来检测异常?
  5. 切入角度:设计双路径蒸馏——TSD 从教师学通用判别,SSD 从 support 学域特定模式。
  6. 核心idea一句话:教师-学生蒸馏学"什么是异常"(通用知识),学生自蒸馏学"什么是正常"(域特定知识)。

方法详解

整体框架

冻结预训练编码器(教师),可训练学生编码器。Query 图像同时通过教师和学生,TSD 损失让学生学习教师的特征;Support 图像通过学生编码器,SSD 损失让学生产出的 query 特征与 support 特征对齐。推理时看哪些位置学生与教师/support 不一致即为异常。

关键设计

  1. 教师-学生蒸馏(TSD):
  2. 做什么:让学生模型从预训练教师模型学习通用特征
  3. 核心思路:最小化学生 query 特征与教师 query 特征的逐位置余弦距离。正常区域的特征容易对齐,异常区域难以对齐——对齐残差即为异常分数。
  4. 设计动机:预训练编码器的特征空间编码了"自然图像的正常",异常会导致学生无法复现教师的输出。

  5. 学生自蒸馏(SSD):

  6. 做什么:让学生的 query 特征与 support(正常参考)特征对齐
  7. 核心思路:对 K 个 support 图像计算学生特征,最小化 query 和每个 support 特征之间的余弦距离,取均值。正常 query 应与正常 support 相似,异常 query 不相似。
  8. 设计动机:SSD 提供了域特定的"什么是正常"的信号,单独使用 SSD 就已经很强(90%+ AUROC),说明 support 参考是关键信息。

  9. 学习权重机制(L2W):

  10. 做什么:自适应评估每个 support 样本的重要性
  11. 核心思路:用缩放点积注意力计算 query 对每个 support 的权重 w = softmax(z_query * phi(z_support)^T / sqrt(C)),加权 SSD 损失。
  12. 设计动机:不同 support 样本对不同 query 的参考价值不同,自适应加权比均匀加权更精准。

损失函数

L = lambda * L_TSD + L_SSD_L2W,lambda = 0.1(TSD 权重较低,SSD 主导)。

实验关键数据

主实验(AUROC %)

数据集 K-shot InCTRL MVFA D24FAD
HIS 2 71.8 76.4 94.2
LAG 4 71.1 77.2 96.2
APTOS 2 89.5 86.1 100.0
RSNA 4 81.4 87.4 97.9
Brain Tumor 4 91.8 93.7 95.3

消融实验

配置 HIS (2-shot) APTOS (2-shot)
TSD only 66.1% 58.2%
SSD only 90.0% 92.7%
SSD + TSD 94.3% 100.0%
SSD + TSD + L2W 96.7% 100.0%

关键发现

  • SSD 是核心组件(单独 90%+),TSD 是增强(+4-13%)
  • L2W 平均提升 1.91%,峰值 6.81%
  • 推理速度 29.2 FPS,比 MVFA 快 2 倍
  • WideResNet-50 是最佳骨干,过大模型(Swin-B)反而不好

亮点与洞察

  • 双蒸馏的互补性:TSD 学通用知识 + SSD 学域特定知识,概念简单但效果出色。lambda=0.1 说明域特定信号比通用信号更重要。
  • 在医学影像上表现惊人:APTOS 100% AUROC 只用 2-shot,说明该框架非常适合视觉差异明显的医学异常检测。

局限性 / 可改进方向

  • 仅支持图像级异常检测,不支持像素级定位
  • Support 样本质量直接影响结果,如果 support 中包含异常样本会灾难性失败
  • Lambda = 0.1 是固定的,自适应调整可能更好
  • 仅在医学影像上验证,工业缺陷检测等其他领域未测试

相关工作与启发

  • vs MVFA: MVFA 用多视角特征对齐,D24FAD 用双蒸馏,思路不同但效果更好
  • vs InCTRL: 基于元学习的少样本异常检测,D24FAD 更简单且性能更强

评分

  • 新颖性: ⭐⭐⭐⭐ 双蒸馏框架简洁优雅,但各组件并非全新
  • 实验充分度: ⭐⭐⭐⭐⭐ 5个医学数据集 + 多 shot 设置 + 骨干消融
  • 写作质量: ⭐⭐⭐⭐ 方法描述清晰
  • 价值: ⭐⭐⭐⭐⭐ 在医学少样本异常检测上达到惊人性能