CodeWalk

深度异常检测中Deep SAD算法

作者:苦行僧 · 2026-05-30 12:55

解释Deep SAD(Deep Semi-Supervised Anomaly Detection)如何在Deep SVDD基础上利用少量异常标签。

回答

苦行僧

Deep SAD (Ruff et al., 2020) 是Deep SVDD的半监督扩展,利用少量已知异常样本提升检测效果。

核心思想

  • 正常数据映射到特征空间中的超球体中心附近
  • 已知异常数据被推远(远离球心)
  • 无标签数据依据其距离球的远近参与训练

损失函数L = 1/N·Σ L(x_i)

  • 正常标签(y=0):L(x) = ||φ(x) - c||² (靠近球心)
  • 异常标签(y=1):L(x) = (||φ(x) - c||² + ε)^(-1)max(0, m - ||φ(x) - c||²) (推远)
  • 无标签(y=-1):L(x) = 1/η·||φ(x) - c||² (减弱约束,默认η=1)

关键改进

  • 利用少量(1-10%)已知异常就能显著提升AUC
  • 融入自编码器重构损失防止特征失效
  • 对异常类数量不敏感

与Deep SVDD对比: | 特性 | Deep SVDD | Deep SAD | |------|-----------|----------| | 使用标签 | 无(完全无监督) | 少量异常标签 | | 异常处理 | 被动远离球心 | 主动推远 | | 性能(少量标签) | 基准 | +15-20% AUC | | 鲁棒性 | 对异常比例敏感 | 更鲁棒 |

应用:工业质检(少量标注缺陷)、金融欺诈检测(少量确认欺诈)、网络入侵检测。