系列文章目录
记忆常态:记忆引导的非监督异常检测知识蒸馏 ICCV
文章目录
摘要
知识提炼(KD)是无监督异常检测(AD)中的一个重要研究方向。假设学生在训练数据中不断地产生典型模式的表示,称为“正态性,”教师和学生模型之间的表示差异被识别为异常。然而,它却存在着“常态遗忘”问题。在没有异常的数据上训练,学生仍然很好地重构了异常的异常表示,并且对训练中也出现的正态数据中的精细模式很敏感。为了缓解这个问题,我们引入了一个新的记忆引导的知识提取(MemKD)框架,该框架在检测异常时自适应地调整学生特征的正态性。具体地说,我们首先提出了一种正态性回忆记忆(NR Memory),通过回忆存储的正态性信息来增强学生生成特征的正态性。在这个意义上,表征将不呈现异常,并且精细模式将被很好地描述。随后,我们使用常态嵌入学习策略来促进NR记忆的信息学习。它构造了一个正常的样本集,使得NR Memory能够记忆无异常数据中的先验知识,并在以后从查询特征中调用它们。综合实验验证了MemKD算法在5个基准测试上的有效性。
一、Introduction
近年来,异常检测(AD)因其广泛的应用而引起越来越多的关注,仅举几例,缺陷检测[23],医疗诊断[34]和
视频监控[10]。异常样本的缺乏使得它更具挑战性,它通常被表述为一个无监督学习问题,只依赖于正常数据。
图1.左:基于范式的当前知识提炼。右:我们的方法采用记忆来增强学生生成特征的正态性,并通过正态性嵌入学习策略(虚线)来学习正态信息。
由于异常数据在训练阶段不可用,因此直接的选择是将正常数据与给定目标进行比较。为了实现这一点,提出了基于存储体的技术[6,24,32]。他们利用内存库来存储ImageNet [9]预训练网络提取的正常表示。然后,这些特征用于测量正态分布,离群值被认为是异常的。然而,为了计算异常图,他们需要通过复杂的公式搜索整个内存库,这会随着训练集大小的增加而增加计算复杂度。
基于重建的方法[17,11,19]在概念上很简单,并且已经被广泛探索用于该任务。期望正常样本的重构误差低于异常样本的重构误差,并且可以通过对输入样本和检索样本之间的差异进行阈值化来检测异常。然而,它们可能无法从潜在表示中重建微妙的细节,从而导致无异常数据的大重建误差。
最近的努力倾向于探索知识蒸馏(KD)[13],而不是在无监督AD的特征级别(图1中的左侧部分)检测异常。假设学生在训练的正常数据中不断产生典型的模式,这被称为“正常”,教师和学生(T-S)网络中的特征之间的差异被用于异常检测。然而,这一假设并不总是可靠的,学生们会遭受“常态遗忘”的问题。例如,学生仍然产生异常的异常表示,导致T-S之间的轻微特征差异。最后,该模型未能检测到三轴电缆中的轴向缺失(图2的第1行)。此外,T-S之间的容量差异更有可能使学生无法捕获无异常数据中的精细模式,并对它们给出不一致的特征,变得敏感。如图2的最后两行所示,即使在正常训练数据中出现了类似的模式,微小的灰尘和不重要的纹理也被认为是异常的。
图2.MVTec AD上的“常态遗忘”[23]。作为参考,我们显示了每个测试样本的训练集中的相似图像。与RD [8]相比,我们的MemKD能够准确地定位“电缆”上的“缺失电缆”,并抑制对正常数据中的精细模式(“拉链”上的微小灰尘和“瓶子”上的精细纹理)的响应,这些模式也出现在训练数据中。
为了解决上述问题,我们考虑如何将正常的信息整合到学生生成的功能,使异常不会呈现在表示和精细的模式也可以描述。我们从人类的记忆过程中汲取灵感,将视觉线索与记忆的知识联系起来,以实现这一目标。
根据以上的直觉,我们提出了一个新的记忆引导的知识提取(MemKD)框架来处理学生的“常态遗忘”问题,如图1的右边部分所示。具体地说,我们设计了一个正态性回忆记忆(NR记忆),以自适应地调整学生特征的正态性。它存储了正态性信息,并从查询特征中调用正态性信息,以增强正态性。然后,采用正态性嵌入学习策略,引导记忆学习无异常数据的先验知识。该策略使NR记忆器能够记忆正态性,并通过相关信息的处理将其整合到查询特征中。综合实验和可视化结果说明了MemKD算法的正确性。总而言之,主要贡献有三:
·在基于知识蒸馏的异常检测器中,我们发现了学生的“常态遗忘”问题,并提出了一种新的记忆引导的知识蒸馏框架来解决这个问题。
·我们设计了NR记忆来回忆正常信息,以加强学生网络中的特征常态性。此外,我们还设计了一个正常嵌入学习策略,以促进记忆正常信息的无异常数据
·所提出的方法优于其最先进的竞争对手在五个广泛使用的基准,广泛的实验进一步验证了其有效性。
2. Related Work
2.1. Unsupervised Anomaly Detection
异常数据的稀缺性使得异常检测成为一个无监督的学习问题。为此,提出了各种技术,其中最相关的方法是基于知识蒸馏和记忆库。
基于知识蒸馏的方法通过从具有无异常数据的预先训练的教师进行特征蒸馏来训练学生网络,并且假设从他们生成的特征对于异常是不一致的。为了提高它们的区分度,US [1]集成了几个在不同尺度上对正常数据进行训练的模型,而MKD [28]在预先训练的专家网络的各个阶段提取特征。为了避免T-S的结构相似性阻碍异常的表示能力,RD [8]而是在教师模型的输出上构建学生,并针对教师在不同阶段的输出。然而,基于KD的方法面临着学生网络的“常态遗忘”问题。因此,我们试图通过引入一种新的常态回忆记忆模块来减轻它。
基于记忆体的方法利用来自预训练的深度神经网络的表示来对正态分布进行建模。为了实现这一点,SPADE [5]提出了语义金字塔异常检测框架,以估计目标和正常之间的密集像素级对应关系来检测异常。PaDiM [6]提出了一种用于补丁分布建模的新范例,该范例使用预先训练的网络进行补丁嵌入,并且不同语义级别之间的相关性被认为是识别异常的线索。PatchCore [24]还构建了一个存储库来存储标称补丁特征,用于在给定的目标特征和正常特征之间进行比较。
图3.拟议MemKD框架概述。它由实线表示的异常检测路径和虚线表示的常态嵌入学习路径(仅用于训练阶段)组成。我们首先设计NR记忆模块,以加强查询特征 F S i FS_i FSi在学生第i阶段的正态性。然后构造一个标准样本集E,用于指导存储模块从无异常数据中记忆先验知识。圈加表示串联运算。最好用彩色观看。
注意,预先训练的模型可能高估异常特征的正态性,CFA [18]提出将面片表示适应于目标数据集,并提出耦合超球特征适应框架。与传统的存储训练数据的方法不同,该方法将训练数据的正态性提取到NR Memory中,大大减少了存储所需的内存消耗(见表1)。(3)第三节。
2.2. Memory Module for AD
存储器模块[12]引起了广泛的关注,并已被引入自动编码器(AE)[17],以从正常训练数据中编码不同的正常模式。MemAE [10]提出了内存增强AE来抑制模型的泛化能力。记忆项被设置为网络的一部分,以自动学习用于重建的正常模式。LMN [22]扩展了它,并通过聚合来自编码器的信息来更新训练和测试中的内存项。LND [20]设计了一个轻量级原型单元来自适应地生成普通原型,而不是通过反向传播来学习记忆项。DA [15]将MemAE推广到逐块模块,以最大化重建误差之间的差距。与上述基于AE的方法相比,我们特别设计了一种新的基于键值结构的NR存储器和一种用于知识提取的正规嵌入学习策略。通过这种学习策略,自然联想记忆器可以有效地记忆正常信息,并从查询特征中回忆起它们。
3. Preliminaries
假设存在一个训练集 S t r a i n \mathcal{S}_{train} Strain和一个测试集 S t e s t \mathcal{S}_{test} Stest,训练集 S t r a i n \mathcal{S}_{train} Strain中有足够的无异常样本,测试集 S t e s t \mathcal{S}_{test} Stest中有正常样本和异常样本,它们属于同一类别,并且来自同一分布。此任务的目标是学习 S t r a i n \mathcal{S}_{train} Strain模型,以便检测和定位 S t e s t \mathcal{S}_{test} Stest中的异常。在这项工作中,我们采用知识蒸馏的无监督AD和简要描述如下。
3.1. Knowledge Distillation for Anomaly Detection
在无监督AD的背景下,在训练过程中暴露于正常样本的学生模型预计将产生不断的无异常表示,并且教师和学生(T-S)网络中特征之间的差异为异常检测提供了必要的证据。
形式上,给定输入图像 I ∈ R C × H × W I \in \mathbb{R}^{C\times H\times W} I∈RC×H×W(C,H和W是I的通道,高度和宽度),利用冻结的预训练教师网络T从多个级别提取I的特征,表示为 { F T i } i = 1 K ∈ \{F_{T_{i}}\}_{i=1}^{K} \in {FTi}i=1K∈ R C i × H i × W i \mathbb{R}^{C_i\times H_i\times W_i} RCi×Hi×Wi,其中索引i表示第i阶段。然后,需要一个可学习的学生网络S来重建它们。令 { F S i } i = 1 K ∈ R C i × H i × W i \{F_{S_{i}}\}_{i=1}^{K} \in \mathbb{R}^{C_{i}\times H_{i}\times W_{i}} {FSi}i=1K∈RCi×Hi×Wi为重构特征。为了优化学生,测量 F S i F_{S_{i}} FSi和 F T i F_{T_{i}} FTi之间的余弦距离[28]:
其中
f
l
a
t
(
⋅
)
:
R
C
i
×
H
i
×
W
i
→
R
C
i
H
i
W
i
\mathrm{flat}(\cdot) : \mathbb{R}^{C_i\times H_i\times W_i} \to \mathbb{R}^{C_iH_iW_i}
flat(⋅):RCi×Hi×Wi→RCiHiWi是向量化函数,并且
∥
⋅
∥
2
\|\cdot\|_{2}
∥⋅∥2是l2范数。最后,通过累积
d
(
F
S
i
,
F
T
i
)
d(F_{S_{i}},F_{T_{i}})
d(FSi,FTi)给出从教师到学生的知识蒸馏的监督:
其中K是用于蒸馏的级数。
在测试时,首先计算异常图
s
i
∈
R
H
i
×
W
i
s_{i} \in \mathbb{R}^{H_{i}\times W_{i}}
si∈RHi×Wi,该异常图被定义为第i阶段的
F
S
i
F_{S_{i}}
FSi和
F
T
i
F_{T_{i}}
FTi之间的像素级相似度:
其中Sim(·,·)是余弦相似度。
s
i
(
h
,
w
)
s_{i}(h,w)
si(h,w)然后被上采样到H×W,并且逐像素累加以形成输入图像的最终异常图
M
∈
R
H
×
W
M\in\mathbb{R}^{H\times W}
M∈RH×W:
其中Up(·)表示双线性上采样,g(·)表示高斯滤波器操作[24]。异常图中的分数越大,意味着该位置的异常概率越高,异常图中的最大值被定义为图像级异常分数[28,8,24]。
虽然仅仅在正常数据上训练的学生网络预计会产生不断的无异常表示,但它仍然存在“正常遗忘”问题,该问题仍然会产生异常表示,并且对正常数据中的精细模式敏感。为此,我们设计了常态回忆记忆模块来缓解这一问题。
4. Memory-guided Knowledge Distillation
基于KD的AD方法的主要问题在于缺乏一种机制,该机制为学生提供正常信息作为推理,以产生不断的无异常表示。因此,我们考虑如何将正常信息整合到学生生成的功能。
所提出的框架的总体架构如图3所示。当获得由学生生成的查询特征
F
S
i
F_{S_{i}}
FSi时,目标是经由常态回忆记忆(NR记忆)回忆常态信息。然后
F
S
i
F_{S_{i}}
FSi通过存储器模块以生成归一化特征
F
S
i
R
F_{S_i}^{R}
FSiR
,稍后与查询FSi连接以给出
F
M
i
R
F_{M_i}^{R}
FMiR。下一阶段的学生网络编码
F
M
i
R
F_{M_i}^{R}
FMiR以经由等式(1)计算与
F
T
i
+
1
F_{T_{i+1}}
FTi+1的相似性。(一).
此外,我们还采用了一种常态嵌入学习(NEL)策略来帮助NR Memory在训练过程中学习正常数据中的先验知识。首先建立一个正常的样本集E与N个随机采样的无异常图像。然后,教师将E编码为样本特征 F T i E = { F T i E n } n = 1 N F_{T_i}^E = \{F_{T_i}^{E_n}\}_{n=1}^N FTiE={FTiEn}n=1N,称为正规嵌入,以训练存储器模块,使得可以从查询特征 F S i F_{S_{i}} FSi调用学习的知识。
4.1. Normality Recall Memory Module
NR存储器模块的目的是自适应地调节学生特征的正态性。为了模拟从查询特征中回忆记忆的先验知识的过程,我们将NR Memory设计为L个键值对 M = { ( k l , v l ) ∣ k l ∈ R C , v l ∈ R C } l = 1 L \mathbb{M}=\{(k_{l},v_{l})|k_{l}\in\mathbb{R}^{C}, v_{l}\in\mathbb{R}^{C}\}_{l=1}^{L} M={(kl,vl)∣kl∈RC,vl∈RC}l=1L.关键项负责基于查询生成动态权重,以便召回存储在值项中的正常信息。图4(a)示出了其详细结构。
图4.(a)申报NR存储器和(B)MemAE [10]中存储器模块的结构。
具体地,给定查询特征 F S i ∈ R C i × H i × W i F_{S_i}\in\mathbb{R}^{C_i\times H_i\times W_i} FSi∈RCi×Hi×Wi,首先将其展平为 F ^ S i ∈ R C i × H i W i \hat{F}_{S_{i}}\in\mathbb{R}^{C_{i}\times H_{i}W_{i}} F^Si∈RCi×HiWi,并计算位置 F ^ S i ( : , j ) \hat{F}_{S_{i}}(:,j) F^Si(:,j)与每个关键项kl之间的余弦相似度,以给出相似度向量 w k l , j ∈ R L w_{k_l,j}\in\mathbb{R}^L wkl,j∈RL:
其中d(·,·)是余弦相似度。权重
w
k
l
,
j
w_{k_{l},j}
wkl,j控制需要调用多少相关的正态性以用于在该定位处的积分。然后,我们通过
w
k
l
,
j
w_{k_{l},j}
wkl,j聚合值
v
l
v_l
vl以获得归一化特征
F
ˉ
S
i
∈
R
C
i
×
H
i
W
i
\bar{F}_{S_{i}}\in\mathbb{R}^{C_{i}\times H_{i}W_{i}}
FˉSi∈RCi×HiWi:
最后,
F
ˉ
S
i
\bar{F}_{S_{i}}
FˉSi被重新整形为
F
S
i
R
∈
R
C
i
×
H
i
×
W
i
F_{S_i}^R\in\mathbb{R}^{C_i\times H_i\times W_i}
FSiR∈RCi×Hi×Wi,它进一步与
F
S
i
F_{S_{i}}
FSi连接,形成下一阶段学生网络的输入。
由于键和值扮演不同的角色,每个 k i k_i ki应该尽可能独立于每个 v j v_j vj。因此,提出了成对正交损耗:
4.2. Normality Embedding Learning
为了保证NR记忆能够记忆和回忆正常的信息,我们采用了一种常态嵌入学习策略来建模这个过程。在训练过程中,我们在每次迭代时从训练集中随机抽样N张正常图像,以构建正常样本集E = { E 1 , E 2 , … , E N } \{E_{1},E_{2},\ldots,E_{N}\} {E1,E2,…,EN}。然后,教师T将它们编码为第i阶段的特征,如 F T i E = { F T i E 1 , F T i E 2 , … , F T i E N } \mathbb{F}_{T_{i}}^{E} = \{F_{T_{i}}^{E_{1}},F_{T_{i}}^{E_{2}},\ldots,F_{T_{i}}^{E_{N}}\} FTiE={FTiE1,FTiE2,…,FTiEN},其中 F T i E n ∈ R C i × H i × W i F_{T_i}^{E_n} \in \mathbb{R}^{C_i\times H_i\times W_i} FTiEn∈RCi×Hi×Wi,称为正规嵌入。通过范例的使用,虚拟现实中保持了常态的基本信息,并能有效地回忆。
具体地,每个样本特征 F T i E n F_{T_{i}}^{E_{n}} FTiEn首先被平坦化为 F ^ T i E n ∈ R C i × H i W i \hat{F}_{T_{i}}^{E_{n}}\in\mathbb{R}^{C_{i}\times H_{i}W_{i}} F^TiEn∈RCi×HiWi,并且测量位置 F ^ T i E n ( : , j ) \hat{F}_{T_{i}}^{E_{n}}(:,j) F^TiEn(:,j)与 v l v_l vl之间的余弦相似性。利用相似性,我们通过softmax激活获得权重 w v l , j ∈ R L w_{v_{l},j}\in\mathbb{R}^{L} wvl,j∈RL:
权重
w
v
l
,
j
w_{v_{l},j}
wvl,j决定需要使用多少存储的常态来检索
F
T
i
E
n
F_{T_{i}}^{E_{n}}
FTiEn。因此,通过聚合
v
l
w
i
t
h
w
v
l
,
j
v_{l}\mathrm{~with~}w_{v_{l},j}
vl with wvl,j来给出重构的
F
ˉ
T
i
E
n
\bar{F}_{T_{i}}^{E_{n}}
FˉTiEn:
为了确保
v
l
v_l
vl从这些正态嵌入中记忆正态信息,我们使用正态记忆损失来最小化它们的差异:
由于当前样本与N个正态样本不同,因此嵌入在vl中的正态性的先验知识在来自等式1的约束下更一般。(十)、
最后,总损失函数被公式化为:
其中λ1和λ2是平衡超参数。
讨论应当强调的是,所提出的存储器在几个方面不同于[10](图4(B))。首先,[10]是基于AE的,而我们的是针对KD设计的。其次,我们将NR Memory定义为键值结构来模拟召回过程,并设计了NEL策略来指导从正常数据中学习一般先验知识,这比它们的机制更全面。因此,该方法取得了较好的效果。结构差异如图4所示,实验比较如表4所示。图3和图7。
5. Experiments
5.1. Dataset
基于此方法,我们在5个基准测试数据上进行了性能比较,MVTec AD [23]、VisA [35]、MPDD [16]、MVTec 3DAD [2]和眼康[4]。MVTec AD是一个经过充分研究的异常检测基准,包含15类5000多张图像。异常主要表现在各种构造变化上。VisA是迄今为止最大的工业异常检测数据集,由12个对象的10,821张高分辨率彩色图像组成。异常类型包括地表缺陷和构造缺陷。MPDD是专门收集在喷漆金属零件制造过程中产生的缺陷的,它拥有6个类别,约1300幅图像。对象具有不同的空间方向、光强度和不均匀的背景。MVTec 3D-AD包括3D传感器从10个对象类别中捕获的4,147个扫描,每个类别都提供RGB和点云数据。缺陷主要存在于几何结构上。Eyecandies拥有10类15000幅合成图像,并提出了复杂纹理、自遮挡和镜面反射等挑战。它为每个图像提供曲面法线贴图和深度。
5.2. Implementation Details.
评估指标。采用AUROC和AUPR/AP两个指标来衡量异常检测和定位的能力。对于本地化,还计算PRO [1]。实作详细数据。所有实验均使用Pytorch进行。对于MVTec 3D-AD和Eyecandies数据集,我们仅将彩色图像用于实验。在训练过程中,图像被调整为256 × 256,Adam被用作优化器,学习率为0.005。我们用批量大小16训练模型100个时期,并且不应用任何增强。N、L、λ1和λ2分别设定为16、50、0.1和0.1。除非另有说明,否则教师网络是ImageNet [9]预先训练的WideResNet 50。遵循通常的实践[24,8],来自前三个阶段的特征被用于异常检测,因此K = 3。我们选择RD [8]作为基准模型,并将三个记忆模块插入学生的最后三个阶段,并随机初始化它们。
5.3. Main Results
异常检测和定位。选项卡.图1显示了在(a)MVTec AD [23]、(B)VisA [35]和(c)MPDD [16]基准测试上的异常检测和定位的比较结果。由于MemKD通过调用正态信息来增强特征的正态性,因此它改进了基于知识提取的方法(例如,ST和RD)的异常检测率,MVTec AD分别为1.2%和0.4%,VisA分别为1.6%和1.1%,MPDD分别为2.7%和2.0%。此外,MemKD的性能也优于基于存储体的同类产品,例如:CFA和补丁核心。合理的是,从正态数据学习的先验知识比存储在存储器库中的先验知识更一般,因此所得到的特征可以更好地描述用于检测的正态分布。在没有访问正常信息的机制的情况下,规范化流和基于重构的方法给出较差的结果。此外,MemKD在这些基准测试中也取得了领先的异常定位性能,尤其是在MPDD数据集上。尽管在P-AUC上略落后于PatchCore(0.4%),但在更具挑战性的P-AP和P-PRO上,它分别比第二好的方法高出4.0%和3.9%,这意味着定位小异常和大异常的性能更好。
我们还在两个3D异常检测数据集上评估了MemKD:MVTec 3D-AD [2]和Eyecandies [4],其中一些异常仅在RGB图像中不可察觉。采用彩色图像,仅报告图像级AUC。定量结果列于表中。2.值得注意的是,所提出的方法仍然优于其他方法,并分别提高了1.6%和2.7%的基线。所有实验结果表明了该方法的有效性和提高学生特征的正态性对于基于KD的异常检测的实质意义.
复杂性分析。我们从推理时间(在英特尔i7上为秒)和内存库MPDD [16]数据集的内存消耗(MB)的角度来衡量模型复杂性。选项卡.3总结了研究结果。基于记忆库的方法存储来自训练集的正常特征,并在测试时将它们与目标的表示进行比较。虽然它们推理速度快、性能好,但内存消耗大。相比之下,我们的MemKD仅在有限的内存使用量(0.3MB)下表现更好,额外消耗的时间(0.02s)可忽略不计。
讨论我们的重点是提高基于KD的方法的有效性,其主要的时间消耗在于S-T的传播。如何有效地降低这一问题是一个值得关注的问题,我们把它作为我们未来的工作。
表1.(a)MVTec AD [23]、(B)VisA [35]和(c)MPDD [16]基准的异常检测和定位的定量结果。我们报告了每种方法的图像AUC ↑、图像AP ↑、像素AUC ↑、像素AP ↑和像素PRO ↑。最佳结果以粗体突出显示。
5.4. Ablation Study
我们进行了全面的消融研究,以探索每个组件对MVTec AD的有效性。更多消融研究可参见补充材料。
关键部件研究。该方法的关键元素包括NR记忆模块、成对正交损失LOrth和正态记忆损失LNM。我们调查他们和报告的数值结果表。第4(a)段。基线(第一行)依赖于香草知识蒸馏架构,具有较差的性能。简单地使用NR内存与LOrth给轻微的改善。然而,使用LNM获得了更多的性能增益(I-AUC为0.7% vs 0.3%,P-AUC为0.2% vs 0.1%,P-PRO为0.4% vs 0.2%)。将它们结合起来可以获得最佳结果,并且它们对图像级异常检测的影响比像素级定位更显著。
研究记忆项目的数量。项目数控制从正态数据存储的正态量。选项卡.4(B)研究了其对不同阶段的影响。
表2.(a)MVTec 3D-AD [2]和(B)Eyecandies [4]数据集的无监督异常检测的定量结果。我们报告了RGB数据的图像级AUROC(%)。突出显示了达到最高AUROC的方法。
表3.MPDD上内存条的平均推理时间(秒)和内存消耗(MB)的比较[16]。
首先,记忆和回忆常态对于异常检测和定位都是有益的。更多的正态性存储有助于获得更好的性能。相反,较大的数目可能引入更多的参数,并导致优化困难。最后,我们提高L1并降低L3,导致I-AUC性能下降,P-PRO性能略有改善。为了获得更高的IAUC,本文将它们都设为50。NR记忆的推广研究。除了逆向蒸馏范例[8],我们还将所提出的框架应用于正向蒸馏[28]架构。因此,我们开发了WideResNet 50作为教师,而普通ResNet 50作为学生。补充材料中包括具体的体系结构。选项卡.5列出了结果。该方法提高了不同蒸馏模式的综合性能,具有良好的推广能力。
5.5. Visualization Analysis
异常定位。为了直观地说明所提出方法的性能,我们在图5中可视化了(a)MVTec AD [23]和(B)MVTec 3DAD [3]基准的异常图。尽管在训练过程中异常数据不可用,但我们的MemKD仍然可以在两个数据集中的异常图像上准确地定位各种大小的异常。然而,如图5(B)的最后两列所示,仅用RGB图像难以检测到具有几何异常的异常图像。更多的模式可能有助于解决这一问题。我们将在以后探讨它。
图5.异常定位的定性结果。从上到下:RGB图像、地面实况和预测异常图。所提出的MemKD定位了两个基准中微小且显著的异常。然而,仅从RGB数据((B)中的最后两列)不能察觉到一些异常。最好用彩色观看。
回忆一下常态。NR存储器中的k1被设计为分配用于聚集v1中存储的正常信息的权重。为了全面地说明这一点,我们在图6中显示了调用正态性之前(B)和之后(A)的特征距离的统计。在查询关键字之前,测试集中异常特征与平均正态特征之间的平均距离(Anomalous-B)大于正态特征与平均正态特征之间的平均距离(NormalB)。一旦执行召回操作,这些距离一致地减小,并且异常A的平均距离下降保持较大,这意味着通过分配用于召回存储的信息的权重,异常数据的特征正态性确实增加。学会了常态。我们还采用t-SNE [29]来可视化在MVTec AD [23]数据集上学习到的正态性,如图7所示。这里的每个点代表价值项vl。可以观察到,MemAE [10]的正态分布呈现类别间和类别内紊乱。相反,NEL策略促进了正常信息的学习,并使每个类别内的大多数值项变得紧凑。在每个范畴中,为了处理不同的正态模式,扩展了一些项。
6. Conclusion
本文提出了一种新颖的用于无监督异常检测的记忆引导知识蒸馏框架,它可以处理学生网络的“常态遗忘”问题。我们首先设计了一个正常召回记忆,自适应调节正常的学生功能,通过召回正常和异常数据的查询功能的正常信息。为了引导记忆器记忆正态数据的先验知识,我们采用了正态嵌入学习策略,使NR记忆器能够通过处理相关信息来整合正态性。因此,该方法在五个基准测试中取得了令人满意的结果。
图6.在(B)和(A)调用正态性之前和之后的特征距离的统计。距离(y轴)指的是测试集中异常(或正常)特征和平均正常特征之间的l2范数。NR记忆增加了特征正态性并一致地减小了距离。
图7.来自(a)MemAE和(B)拟议NR记忆模块的数值项的t-SNE可视化[29]。通过正态性记忆损失学习的项目在每个类别内都是紧凑的。