AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com。
零样本异常检测(ZSAD)允许检测模型仅利用辅助数据进行训练,从而在没有任何目标数据集训练样本的情况下检测异常。这在因各种原因(如数据隐私问题)无法获取训练数据时非常关键。
然而,这项任务面临的挑战在于,模型需要能够跨不同领域泛化异常检测能力,尤其是前景对象、异常区域及背景特征(比如不同产品或器官上的缺陷或肿瘤)在不同应用中可能大相径庭。
为了改进 CLIP 模型,来自浙江大学、新加坡管理大学、哈佛大学的研究者联合提出 AnomalyCLIP,使其能在不同领域中更准确地进行零样本异常检测。AnomalyCLIP 的核心思想是学习一种与对象不相关的文本提示技术(object-agnostic learning),这种技术能够捕捉到图像中的一般性正常和异常特征,而不依赖于任何特定的前景对象,从而在多种语义的对象上实现泛化的异常识别。在 17 个来自不同领域(如缺陷检测和医疗成像)的真实世界异常检测数据集上进行的大规模实验证明, AnomalyCLIP 在跨域且高度多样化类别语义的数据中实现了卓越的零样本异常检测和分割能力。
论文名称:AnomalyCLIP: Object-agnostic Prompt Learning for Zero-shot Anomaly Detection
文章地址:https://arxiv.org/pdf/2310.18961.pdf
代码地址:https://github.com/zqhang/AnomalyCLIP
背景
传统的异常检测方法通常需要在特定应用领域内有可用的训练样本来学习检测模型。然而,在某些情况下,这个假设可能并不成立,比如访问训练数据会违反数据隐私政策,或者目标领域内根本就没有可用的训练数据。
图 1: 不同文本提示方法的结果对比。
由于不同应用场景中异常的视觉外观、前景对象和背景特征存在很大差异,例如不同产品表面的缺陷、不同器官上的病变或肿瘤,或者是工业缺陷与医学图像中肿瘤 / 病变的对比,我们需要能够针对这些变化进行准确零样本异常检测(ZSAD)的检测模型,这要求模型具有强大的泛化能力。
最近,大型预训练的视觉 - 语言模型(VLMs)在包括异常检测在内的多种视觉任务上展示了出色的零样本识别能力。特别是,通过使用数以百万计的图像 - 文本对进行预训练,CLIP 在强化各种下游任务的泛化能力方面发挥了巨大作用。然而,CLIP 这类 VLM 主要是为了学习前景对象的类别语义,而不是图像中的异常 / 正常模式,因此它们在理解视觉异常 / 正常性方面的泛化能力有限,导致在 ZSAD 性能方面表现不佳。
此外,当前使用的文本提示方法,如图 1d 和图 1e 所示,无论是手动定义的文本提示还是可学习的文本提示,往往会导致提示文本嵌入偏向于全局特征以实现有效的对象语义对齐,而忽略了通常表现在细节、局部特征中的异常。
方法介绍
AnomalyCLIP 旨在通过学习对象不相关的文本提示来让 CLIP 实现不同领域中的准确 ZSAD,从而捕获图像中的通用正常性和异常性,如图 2 所示。AnomalyCLIP 首先为 “正常” 和 “异常” 这两个广泛的类别设计了一个简单而普遍有效的可学习的文本提示模板,然后通过使用辅助数据,结合图像级别和像素级别的损失函数来让提示嵌入学习图像中存在的通用正常和异常模式。
这样,AnomalyCLIP 可以专注于图像中的异常区域而非对象的语义,使其能够零样本的识别出与辅助数据中相似的异常模式。如图 1a 和图 1b 所示,尽管辅助数据和目标数据中前景对象的语义完全不同时,但是其异常模式保持相似,例如金属螺母和板材上的划痕、晶体管和 PCB 的错位、不同器官表面的肿瘤 / 病变等。而 CLIP 的文本提示嵌入在不同领域间的泛化能力有限,如图 1c 所示。不同的是,AnomalyCLIP 学习到的对象不相关的文本提示嵌入能够有效地泛化,识别出跨领域图像中的异常,如图 1f 所示。AnomalyCLIP只需要微调一次,就能够泛化地捕捉不同对象、场景甚至跨领域的异常。其他的没有了。
图 2: AnomalyCLIP 框架图
实验结果
该研究在 17 个公开可用的数据集上进行了大量实验,涵盖了各种工业检测场景和医学成像领域(包括摄影、内窥镜和放射学),以评估 AnomalyCLIP 的性能。在工业检测方面,该研究考虑了 MVTec AD、VisA、MPDD、BTAD、SDD、DAGM 和 DTD-Synthetic 等数据集。在医学成像方面,该研究考虑了皮肤癌检测数据集 ISIC、结肠息肉检测数据集 CVC-ClinicDB 和 CVC-ColonDB、Kvasir、Endo、甲状腺结节检测数据集 TN3k、脑瘤检测数据集 HeadCT、BrainMRI、Br35H 和 COVID-19 检测数据集 COVID-19。最先进的 baseline 包括 CLIP、CLIP-AC、WinCLIP、VAND 和 CoOp。论文附录提供了有关方法和数据预处理的更多细节。
表 1:工业领域零样本异常检测性能比较。最佳性能以红色突出显示,次佳性能以蓝色突出显示。†表示结果来自原始论文。(除了 MVTec AD 数据集以外,其他所有结果均由 MVTec AD fine-tuining 得到)
各种工业检测领域的零样本异常检测性能
表 1 展示了 AnomalyCLIP 与五种 baseline 在七个工业缺陷数据集上的零样本异常检测结果,这些数据集具有非常不同的前景对象、背景和 / 或异常类型。AnomalyCLIP 在这些数据集上取得了优越的零样本异常检测性能,大部分情况下明显优于其他五种方法。CLIP 和 CLIP-AC 表现较差的原因在于 CLIP 的原始预训练侧重于对齐对象语义而非异常语义。WinCLIP 和 VAND 通过使用手动定义的文本提示获得了更好的结果。另外,CoOp 采用了可学习的提示来学习全局异常语义。然而,这些提示专注于全局特征,忽略了细粒度的局部异常语义,导致它们在异常分割上表现不佳。为了将 CLIP 适应于零样本异常检测,AnomalyCLIP 学习了对象不相关的文本提示,通过全局和局部上下文优化,专注于学习通用的异常 / 正常模式,使得模型能够有效识别全局和局部的异常。得到的提示还可以推广到来自不同领域的不同数据集。为了提供更直观的结果,该研究在图 3 中可视化了 AnomalyCLIP、VAND 和 WinCLIP 在不同数据集上的异常分割结果。与 VAND 和 WinCLIP 相比,AnomalyCLIP 可以对来自不同工业检测领域的缺陷进行更准确的异常分割。
图 3: AnomalyCLIP 分割结果
表 2:医疗领域零样本异常检测性能比较。最佳性能以红色突出显示,次佳性能以蓝色突出显示。请注意,医疗异常检测数据集往往不同时包含像素级和图像级标签,因此评估图像级和像素级医疗异常检测的数据集有所不同。
从缺陷数据集到多样化的医学领域数据集的泛化能力
为了评估模型的泛化能力,该研究进一步考察了 AnomalyCLIP 在 10 个不同器官、不同成像设备上的医学图像数据集上的零样本异常检测性能。表 2 展示了相关结果,其中包括 AnomalyCLIP、VAND 和 CoOp 等基于学习的方法,均使用 MVTec AD 数据进行fine-tuining。
值得注意的是,像 AnomalyCLIP 和 VAND 这样的方法在各种医学图像数据集上取得了令人满意的零样本异常检测性能,即使它们是使用缺陷检测数据集进行调优的。在所有这些方法中,由于其通过对象不相关的提示学习带来的强大泛化能力,AnomalyCLIP 是表现最佳的。
正如图 3 所示,AnomalyCLIP 能够准确检测出不同医学图像中的各种异常类型,例如摄影图像中的皮肤癌区域,内窥镜图像中的结肠息肉,超声图像中的甲状腺结节以及 MRI 图像中的脑肿瘤,其在定位异常病变 / 肿瘤区域方面的性能明显优于另外两种方法 WinCLIP 和 VAND。这再次证明了 AnomalyCLIP 在医学成像领域高度多样化的对象语义数据集中具有领先的零样本异常检测性能。