深度学习论文: DMAD: Dual Memory Bank for Real-World Anomaly Detection
DMAD: Dual Memory Bank for Real-World Anomaly Detection
PDF: https://arxiv.org/pdf/2403.12362
PyTorch代码: https://github.com/shanglianlm0525/CvPytorch
PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks
1 概述
文章介绍了一种名为DMAD的新框架,用于图像异常检测。传统方法为每个对象训练一个独特的模型,但随着对象类别数量增加,这种方法导致了存储消耗的增加。UniAD采用多类设置,训练统一模型以节省存储。但无监督学习在异常检测中存在边界定义不准确的问题。利用现实世界中少量异常数据的半监督方法可提高性能。因此,作者提出DMAD框架,适用于统一半监督设置,通过双内存库处理两种情况,利用补丁特征编码器和多层感知器学习特征表示与异常分数映射,以更准确地检测异常。实验结果表明,DMAD在MVTec-AD和VisA数据集上的表现显著优于当前最先进的方法。
DMAD适用于半监督设置,也适用于没有标注异常的多类设置,适合现实世界中异常可能不易获取的情况。DMAD使用补丁特征编码器提取特征,并通过正常和异常Dual Memory bank建立统一决策边界。在无监督情况下,使用正常和异常特征融合生成的伪异常特征集作为abnormal memory bank。在半监督情况下,采用异常中心采样策略来扩充abnormal memory bank,以缓解数据不平衡问题。Dual Memory bank计算补丁特征与记忆银行中最近特征的距离和交叉注意力,形成正常和异常数据的知识库。最后,使用多层感知器(MLP)学习增强表示和异常分数之间的映射。
2 DMAD
本文介绍了一种名为DMAD的新框架,旨在应对现实世界的异常检测问题。在实际工业应用中,采用统一模型进行训练因其高度的兼容性和存储效率而备受青睐。DMAD框架针对两种情况进行了优化:一是适用于一般情况的统一设置,二是利用少量已标注异常数据的统一半监督设置,这取决于异常数据的可用性。
为了达成这一目标,DMAD框架包含了三个核心组件:补丁特征编码器、基于双内存库的知识增强模块以及异常分数映射器。该框架的目标是训练一个统一的神经网络,使其能够准确地区分正常与异常实例,并为异常分配更高的异常分数。通过有效结合正常数据和可访问的异常数据,DMAD在应对现实世界中的异常检测挑战时取得了显著的进展。
2-1 Patch Feature Encoder
补丁特征编码器由两部分组成:特征提取器 F Φ F_{Φ} FΦ 和可选的特征过滤操作 Filter。特征提取器用于从图像中提取特征,包括预训练的骨干网络和聚合操作。对于正常图像,直接提取其补丁特征。
随着系统运行,可将一些标注的异常数据用于训练 DMAD。对于异常图像,使用 Filter 操作从提取的特征中分离出异常部分,因为图像缺陷通常只占图像的小部分。通过双线性插值匹配特征分辨率,然后过滤异常部分,得到异常补丁特征。
这些特征之后会通过双重记忆银行进行增强。
2-2 Dual Memory Bank-based Knowledge Enhancement
Dual Memory Bank的构建,其中包括正常内存库 M n M_{n} Mn和异常内存库 M a M_{a} Ma。正常内存库存储正常模式,而异常内存库存储潜在的缺陷模式。对于一般统一设置,使用coreset采样算法从所有正常数据中提取补丁特征来构建 M n M_{n} Mn。对于 M a M_{a} Ma,如果没有可用的已标注异常,从DTD数据集中随机采样异常数据构建 M a M_{a} Ma。当可用的已标注异常变得可访问时,将观察到的已标注异常的过滤异常补丁特征集 M a s M_{a_{s}} Mas加入到 M a M_{a} Ma中。为了提取额外的知识,对于每个补丁正常特征,从 M n M_{n} Mn和 M a M_{a} Ma中识别最近邻特征,并计算特征与最近邻特征的距离和注意力矩阵。最后,将特征本身和两部分知识结合起来形成增强表示。这种方法有助于在异常检测中更有效地利用所有可用的信息,提高模型的性能。
2-3 Anomaly Score Mapper
异常分数映射器负责将增强的特征表示o映射到相应的异常分数S。为了实现这一映射,采用了多层感知器(MLP)Ψ来学习其中的映射关系,并利用铰链损失函数来优化网络结构。在一般统一(多类别)的场景中,采取特征增强策略来生成伪负样本,以丰富模型的训练数据。而当有已标注的异常样本可用时,引入一个包含三部分的铰链损失函数来进一步优化模型,其中λ1和λ2为可调节的超参数。这一工作有效地建立了增强表示与异常分数之间的关联模型,从而显著提升了异常检测的性能。
在一般统一设置中, λ1 = 1, λ2 = 0,而在统一半监督设置中,λ1 = 0.5, λ2 = 15。
2-4 Anomaly Detection and Localization
为了对测试图像进行精确的异常检测和定位,采用了经过训练的DMAD模型。首先,模型会为图像的每个补丁生成异常分数,并选择分数最高的前5个补丁,计算它们的平均分数作为整幅图像的异常级别评分。接着,为了得到更精细的像素级异常分数,采用双线性插值技术结合高斯平滑方法,对初步得出的分数进行优化和细化。这种方法不仅确保了异常定位的精确性,还能为异常提供更为准确的评分,从而极大地提高了异常检测的准确性和可靠性。
3 Experiments