- 博主简介:努力学习的22级计算机科学与技术本科生一枚🌸
- 博主主页: @Yaoyao2024
- 往期回顾: 【论文精读】上交大、上海人工智能实验室等提出基于配准的少样本异常检测框架超详细解读(翻译+精读)
- 每日一言🌼: 不管前方的路有多苦,只要走的方向正确,不管多么崎岖不平,都比站在原地更接近幸福。
—— 宫崎骏《千与千寻》
前言
“来自上海交通大学 MediaBrain 团队和上海人工智能实验室智慧医疗团队等的研究人员提出了一种基于配准的少样本异常检测框架RegAD,本篇论文在RegAD基础上提出了一种新颖的少样本异常检测方法,称为CAReg,通过学习通用的跨类别配准技术,仅使用每个类别的正常图像进行训练,从而实现了对新类别的无需微调的模型应用,提高了异常检测的准确性和效率。
- 论文题目:Few-Shot Anomaly Detection via Category-Agnostic Registration Learning
- 论文链接:https://arxiv.org/pdf/2406.08810
- 代码链接:https://github.com/Haoyan-Guan/CAReg.git
- 作者:Chaoqin Huang, Haoyan Guan等
🪧创新点:
- 引入了一种类别无关的异常检测模型:通过将异常检测建模为一个配准+比较 的任务,模型可以在不需要了解图像类别的情况下进行异常检测。通过特征级别的配准,模型可以将不同类别的图像进行比较,从而实现跨类别的异常检测。
- 提出了一种基于Siamese网络和空间变换网络的特征配准模块:通过特征级别的配准,模型可以将不同类别的图像进行对齐,从而提高模型的泛化能力和鲁棒性。
💐基本原理:
本文的基本原理是提出了一种少样本异常检测(Few-Shot Anomaly Detection,FSAD)方法,该方法旨在使用少量的正常图像来检测异常图像:
-
少样本设定:本文的方法基于少量正常图像的支持集。这些正常图像用于估计目标类别的正态分布,从而帮助检测在测试阶段出现的异常图像。
-
配准(Registration):利用配准网络对支持集的图像进行配准,以提取配准特征。这些特征用于建立目标类别的正态分布。
-
正态分布估计: 通过估计支持集中正常图像的特征分布来构建正态分布。本文介绍了三种流行的正态分布估计方法:
PaDim
、OrthoAD
和PatchCore
。这些方法用于估计每个图像补丁位置的均值和协方差矩阵,进而建立多变量高斯分布。 -
增强选择模块:提出了一种基于
Wasserstein距离
的数据增强选择机制,以选择最适合每个类别的数据增强方法。这些增强方法有助于扩展支持集,增强分布估计的鲁棒性。 -
异常检测:在推理阶段,将测试图像的配准特征与估计的正态分布进行比较。使用特定的距离函数(例如马氏距离或L2距离)来计算异常得分,高异常得分表示测试图像中的异常区域。
与RegAD的改进:
💐实验结果:
本文的实验主要围绕在工业缺陷检测领域中,针对少样本学习(Few-Shot Learning, FSL)场景下的异常检测(Anomaly Detection, AD)任务展开。研究者首先介绍了两个主要的工业AD数据集:MVTec AD数据集和MPDD数据集,分别包含了工业缺陷检测的图像数据。其中,MVTec AD数据集具有挑战性,包含15个类别,共计3629张训练图像和1725张测试图像,而MPDD数据集则专注于捕获金属部件制造过程中的缺陷,比MVTec AD更加复杂和具有挑战性。
实验设置方面,研究者采用了留一验证(leave-one-out) 的设置,将一个指定的目标类别用于测试,而将数据集中其余的类别用于训练。实验旨在评估模型在面对未见过的类别时的AD性能,从而评估模型在训练过程中对所有类别的泛化能力。为了创建具有挑战性的少样本学习环境,所有与目标类别对应的数据都被排除在训练集之外,在测试过程中,只有极少量来自目标类别的正常样本被提供。
在对比方法和基线方面,本文考虑了两种最先进的FSAD方法作为基线模型,分别是TDG和DiffNet。研究者还对这些方法进行了扩展,通过预训练过程利用来自多个类别的数据,得到了TDG+和DiffNet+。此外,为了展示CAReg在FSAD中超越普通分布估计器的有效性,还考虑了三种最先进的统计学基础的正态分布估计方法,分别是PaDiM、OrthoAD(OAD)和PatchCore(PC)。
Abstract——摘要
翻译
大多数现有的异常检测方法需要为每个类别建立一个专用模型。这种模式尽管结果有前景,但计算成本高昂且效率低下,无法满足现实应用的需求。受人类通过将查询图像与已知正常图像进行比较来检测异常的启发,本文提出了一种新颖的少样本异常检测(FSAD)框架。利用来自各种类别的正常图像训练集,将旨在对齐相同类别正常图像的配准作为自监督类别无关表示学习的代理任务。在测试时,提供一张图像及其相应的支持集(由来自同一类别的几张正常图像组成),通过比较测试图像的匹配特征与其相应的支持图像特征来识别异常。这种设置使模型能够推广到新的测试类别。据我们所知,这是第一种无需对新类别进行模型微调的 FSAD 方法,使单个模型能够应用于所有类别。大量实验证明了所提方法的有效性。特别是,它在 MVTec 和 MPDD 基准上分别将当前最先进的 FSAD 方法提高了 11.3% 和 8.3%。源代码可在https://github.com/Haoyan - Guan/CAReg 获A
精读
研究背景和动机:
- 异常检测的重要性和应用场景:异常检测(AD)在缺陷检测、自动驾驶和医疗诊断等领域有广泛应用。由于收集详尽的异常样本具有挑战性,大多数研究采用仅使用正常样本的无监督学习范式,通过对正常样本的特征分布建模,将不符合该分布的图像视为异常。
- 现有方法的局限性:现有 AD 方法大多遵循 “每个类别一个模型” 的范式,需要为每个类别训练一个单独的模型,这在实际应用中数据收集负担重。少样本异常检测(FSAD)虽被提出,但早期方法仍遵循每个类别一个模型的学习范式。
- 本文的创新思路:受人类检测异常方式的启发,探索 FSAD 的 “一个模型适用于所有类别” 范式,即训练一个类别无关的 AD 模型。通过将图像转换到一个坐标系中(配准)来处理对象可能出现在不同位置、方向或姿态的问题,将异常检测建模为一个比较任务,使其与类别无关。
1. Introduction—引言
翻译
异常检测(AD)由于在缺陷检测 [^1]、自动驾驶 [2,3] 和医疗诊断 [4,5] 等领域的广泛应用,近年来受到了越来越多的关注。由于收集详尽的异常样本具有挑战性,近期的研究主要采用仅使用正常样本的无监督学习范式。一种典型的解决方案是对正常样本的特征分布进行建模,不符合该分布的图像被视为异常 [6 - 14]。
大多数现有的 AD 方法遵循 “每个类别一个模型” 的范式,为每个类别训练一个单独的模型,如图 1(a)所示。这样的过程需要数百或数千张图像,在现实场景中往往难以获得。为了减轻这种数据收集的负担,少样本异常检测(FSAD)被提出,在预训练模型的微调过程中,每个类别只有几张正常图像可用 [15,16]。早期的尝试包括利用各种变换来扩充少样本数据 [15] 或引入一个更轻量级的模型来估计正态分布 [16] 以避免过拟合。然而,上述方法仍然遵循每个类别一个模型的学习范式。
受人类检测异常方式的启发,本文探索了一种用于 FSAD 的 “一个模型适用于所有类别” 范式,即训练一个类别无关的 AD 模型。为了在图像中找到异常,人类只需将其与一个正常的示例进行比较并识别出任何差异。这种方法不需要知道图像的类别,因为比较自然是类别无关的。因此,我们将异常检测建模为一个比较任务,使其与类别无关。为了处理对象可能出现在不同位置、方向或姿态的问题,图像首先通过一种配准形式 [17 - 19] 转换到一个坐标系中,以便于比较。
图 1(b)展示了用于 FSAD 的类别无关匹配(CAReg)框架的概述。采用一个包含三个空间变换网络块 [21] 的孪生神经网络 [20] 进行配准。为了更好的鲁棒性,我们在特征层面进行配准,而不是逐像素的图像配准 [19]。特征级配准损失,是图像级逐像素配准损失的一种宽松版本,用于最小化同一类别图像特征的余弦距离。训练后的模型具有跨不同类别进行配准的能力,并且能够在测试时直接用于新类别。异常是通过比较新测试类别图像的匹配特征与其相应的支持集(来自目标类别的几张正常图像)来检测的。比较过程首先根据支持集估计正态分布,这可以通过基于统计的正态分布估计器 [22] 来实现,然后将测试样本拟合到正态分布中。落在正态分布之外的样本被视为异常。
Tips:上述“香草”是翻译错误,其实就算指普通的异常检测;“少发”就是指小样本异常检测
我们在两个用于工业缺陷检测的具有挑战性的基准数据集 MVTec [23] 和 MPDD [24] 上验证了所提出的 CAReg 框架的有效性。CAReg 在 2 - shot
、4 - shot
和 8 - shot
场景下的 AUC 指标上分别比最先进的 FSAD 方法 [15,16] 在 MVTec 上提高了 9.6%、12.4% 和 11.9%,在 MPDD 上提高了 7.1%、9.1% 和 8.8%。我们还对三种最先进的正态分布估计方法:PaDim [22]、OrthoAD [25] 和 PatchCore [26] 进行了实验。我们的实验结果表明,CAReg 能够提高所有三种正态分布估计方法的平均 AUC,在 MVTec 上,对于 PaDim、OrthoAD 和 PatchCore 分别提高了 10.9%、15.4% 和 8.5%,在 MPDD 上分别提高了 12.1%、4.4% 和 8.0%。下面我们总结主要贡献:
- CAReg 是第一个用于 FSAD 的一个模型适用于所有类别的框架,训练时不需要异常图像,测试时不需要参数微调。
- 特征配准被用作训练异常检测模型的代理任务,这表明在不同类别和数据集之间的泛化能力有所提高。CAReg 在标准基准数据集上的异常检测和异常定位任务中优于最先进的 FSAD 方法。
- 与我们之前在 ECCV 2022 [27] 作为口头报告提出的 RegAD 方法相比,所提出的方法有以下技术改进:
- CAReg 被设计为一个用于 FSAD 的框架,除了我们之前工作中使用的 PaDim 之外,还可以灵活地采用各种正态分布估计器。
- CAReg 引入了一个改进的特征配准模块来提高模型的鲁棒性。不是仅以一张图像作为配准参考,而是使用来自每个类别的累积特征作为配准参考。
- 提出了一种基于 Wasserstein 距离的方法,用于在正态分布估计阶段灵活、自动地 选择最适合的数据增强方式,提高了 FSAD 场景中不同类别分布特征的适应性。
- 报告了更多实验结果,用于评估性能以及通过消融研究评估方法。
本文其余部分组织如下。第二节回顾了与 AD 和少样本学习相关的现有工作。第三节阐述了 FSAD 的问题。第四节描述了用于 CAReg 的类别无关的配准训练。第五节描述了一个将 CAReg 与多个正态分布估计器结合的 AD 系统。第六节展示了在几个真实世界数据集上的实验结果,表明了我们的方法在少样本异常检测和异常定位方面的有效性。最后,第七节得出结论。
精读
- 研究背景介绍
- 异常检测的应用与挑战
- 异常检测(AD)在缺陷检测、自动驾驶和医疗诊断等领域应用广泛,所以受到了很多关注。
- 收集详尽的异常样本很困难,所以近期研究主要采用仅用正常样本的无监督学习范式,通过对正常样本的特征分布建模来检测异常,不符合该分布的图像视为异常。
- 现有方法的范式及局限
- 大多数现有的AD方法遵循“每个类别一个模型”的范式,每个类别都要单独训练一个模型,这需要大量图像,在现实中很难获取。
- 为解决数据收集负担问题,提出了少样本异常检测(FSAD),在预训练模型微调时每个类别只有几张正常图像可用。早期的FSAD方法尝试通过变换扩充数据或引入轻量级模型估计正态分布来避免过拟合,但仍遵循每个类别一个模型的学习范式。
- 异常检测的应用与挑战
- 本文创新思路
- 提出新范式:受人类检测异常方式启发,探索FSAD的“一个模型适用于所有类别”范式,即训练一个类别无关的AD模型。
- 将异常检测建模为比较任务:人类检测异常是将物体与正常样本比较,不依赖类别信息。所以将异常检测设计成比较任务,使其与类别无关。
- 解决对象位置等问题:为处理对象在图像中位置、方向和姿态不同的问题,采用配准形式将图像转换到一个坐标系中,以便比较。
- 类别无关匹配(CAReg)框架介绍
- 框架概述
- 采用包含三个空间变换网络块的孪生神经网络进行配准。
- 在特征层面进行配准,用特征级配准损失最小化同一类别图像特征的余弦距离,提高鲁棒性。
- 训练后的模型能跨类别配准,测试时可直接用于新类别。
- 异常检测流程
- 通过比较新测试类别图像的配准特征与其相应的支持集(来自目标类别的几张正常图像)来检测异常。
- 比较过程先根据支持集用基于统计的正态分布估计器估计正态分布,再将测试样本拟合到正态分布中,分布外的样本视为异常。
- 框架概述
- 实验验证与贡献总结
- 实验验证
- 在MVTec和MPDD两个工业缺陷检测基准数据集上验证了CAReg框架的有效性。
- 在不同shot场景下,CAReg在AUC指标上比现有FSAD方法有显著提高,对三种正态分布估计方法的平均AUC也有提高。
- 主要贡献总结
- CAReg是第一个用于FSAD的一个模型适用于所有类别的框架,训练无需异常图像,测试无需参数微调。
- 特征配准作为代理任务提高了模型泛化能力,CAReg在异常检测和定位任务中优于现有FSAD方法。
- 与之前的RegAD方法相比,CAReg有多项技术改进,包括可灵活采用多种正态分布估计器、改进特征配准模块、基于Wasserstein距离选择数据增强方式以及报告更多实验结果。
- 实验验证
2. Related Work—相关工作
2.1 异常检测——Anomaly Detection
翻译
异常检测(AD)[28] 有广泛的应用,包括静止图像 AD [7 - 10] 和异常人类行为检测 [29 - 34]。本文的重点是工业缺陷检测 [23,24],涵盖图像级异常检测和像素级异常定位。与监督方法相比,无监督 AD 的主要挑战在于缺乏训练标注,无论是在图像级还是像素级。模型预计仅使用正常实例进行训练,排除异常情况。无监督 AD 研究可以大致分为两类:基于单类分类的 AD 方法和基于自监督学习的 AD 方法。
单类分类基于的 AD 方法通过开发一个正常数据实例的模型,然后评估新实例是否符合这个规范框架来检测异常。这些策略假定正常数据可以被紧凑模型 [35 - 37] 封装,异常情况不符合这些模型。为了更准确地定义正常数据的分布,传统方法实施了一系列统计技术 [13,38 - 41]。OC - SVM
[13] 利用一个核函数将特征投影到一个空间,在这个空间中正常实例具有正值。Deep SVDD [14,40] 采用了类似的框架,但集成了一个深度卷积神经网络来减少包含正常数据表示的超球体的体积。
近年来,单类分类在 AD 中的进展越来越依赖于来自预训练网络的特征嵌入,将这些特征嵌入作为正常性的稳健指标。各种正态分布的统计估计器 [22,25,26] 有助于确定特征行为的显著偏差,将其标记为异常。像马氏距离 [22] 这样的度量经常被用来计算异常分数。像 [22,26,42] 这样的技术通过利用在 ImageNet 数据集 [43] 上预训练的模型取得了显著的成功。然而,仅仅依赖于 ImageNet 预训练有其局限性。本文引入特征配准作为一种新的代理任务,它增强了特征聚合和泛化能力,从而提高了异常检测性能。
基于自监督学习的 AD 方法通过自监督利用代理任务进行模型训练 [9,10,44 - 50]。图像重建是一种流行的代理任务,广泛应用于各种数据类型,如图像 [6 - 8,51 - 58]、视频 [59,60]、图 [61] 和时间序列 [62]。这些模型在正常数据上进行训练,通过显著的重建误差来识别异常。其他方法包括 GeoTrans,它使用几何图像变换来创建一个自标记数据集,将变换分类作为代理任务 [9,46]。CutPaste [63] 引入了局部数据增强来检测小缺陷,通过学习对这些修改进行分类。ARNet [10] 通过一个图像恢复框架增强像素级语义特征,利用变换从损坏的输入中学习。其他方法如 FYD [12] 采用非对比学习作为代理任务,使用粗到细的对齐从正常图像中提取判别特征,以获得更紧凑的正常样本分布。知识蒸馏在 US [47] 和 MKD [11] 等方法中被使用,其中学生网络通过回归到教师网络的特征来学习,教师网络通常是一个在 ImageNet 上预训练的模型。当学生和教师的输出特征之间存在明显差异时,就检测到异常。与这些方法不同,本文引入配准作为一种自监督任务,专门针对 FSAD 场景,该场景仅依赖于几张正常样本。
精读
- 异常检测的应用与分类研究方向介绍
- 应用领域:异常检测(AD)应用广泛,包括静止图像AD、异常人类行为检测等,本文重点是工业缺陷检测,涵盖图像级和像素级的异常检测与定位。
- 研究分类:无监督AD研究主要分为基于一类分类的AD方法和基于自监督学习的AD方法,这是由于无监督AD缺乏训练标注,只能用正常实例训练模型。
- 基于一类分类的AD方法阐述
- 基本原理:通过开发正常数据实例模型,评估新实例是否符合规范框架来检测异常,假定正常数据可被紧凑模型封装,异常不符合。
- 传统方法:为更准确定义正常数据分布,传统方法用一系列统计技术,如OC - SVM利用核函数投影特征,Deep SVDD集成深度卷积神经网络减少超球体体积。
- 进展与局限:近年来一类分类在AD中的进展依赖预训练网络特征嵌入作为正常性指标,用统计估计器确定偏差计算异常分数,像利用ImageNet预训练的一些技术取得成功,但仅依赖ImageNet预训练有局限,本文引入特征配准作为新代理任务来提高性能。
- 基于自监督学习的AD方法阐述
- 基本原理:通过自监督利用代理任务训练模型,不同方法采用不同代理任务。
- 常见代理任务及方法
- 图像重建:广泛应用于多种数据类型,通过正常数据训练,以重建误差识别异常。
- 其他方法:如GeoTrans用几何变换创建数据集并以变换分类为代理任务;CutPaste引入局部数据增强检测小缺陷;ARNet通过图像恢复框架增强特征;FYD用非对比学习提取特征;知识蒸馏方法中,学生网络回归教师网络(通常是ImageNet预训练模型)特征,差异大时检测异常。
- 本文特色:本文引入 配准作为自监督任务,针对仅依赖几张正常样本的FSAD场景,区别于其他基于自监督学习的AD方法。
2.2 少样本学习——Few-shot Learning
翻译
少样本学习(FSL)解决了在可用图像有限的情况下使模型适应新类别的任务。FSL 方法可以大致分为度量学习 [64 - 66]、生成 [67 - 69] 和优化 [70 - 72] 方法。度量学习方法旨在构建特征空间,以找到测试图像与已知类之间的最接近距离。生成方法涉及设计生成模型来产生新的类别图像,从而弥合少样本差距。优化方法识别不同类别之间的共性,并根据这些共性为新类别使用优化模型。在本文中,CAReg
基于度量学习来解决 FSAD 的挑战。挑战在于使用仅有的几张正常样本检测训练数据集中未见过的新类别图像异常。关键是使模型与类别无关,所提出的配准技术提供了这种能力,允许跨类别进行泛化。与之前关于 FSL 的工作不同,训练数据和支持集只包含正(正常)例,没有任何负(异常)例。
精读
- 少样本学习的任务及方法分类介绍
- 任务描述:少样本学习(FSL)的任务是在可用图像有限的情况下让模型适应新类别。
- 方法分类:FSL方法大致分为度量学习、生成和优化方法。度量学习构建特征空间找距离;生成方法设计生成模型产生新类别图像;优化方法识别类别共性并为新类别用优化模型。
- CAReg在FSAD中的应用及特点
- 应用方法:本文中CAReg基于度量学习解决FSAD挑战,即检测训练集中未见过的新类别图像异常。
- 关键特点:关键是使模型类别无关,通过配准技术实现跨类别泛化。并且与之前FSL工作不同,训练数据和支持集只有正常例,无异常例。
2.3 少样本异常检测——Few-shot Anomaly Detection
翻译
工业 AD 场景中的 FSAD [73 - 75] 利用有限数量的正常样本作为支持集来检测和定位未见过类别的异常。这个复杂的任务超越了简单的 AD,包括细粒度的缺陷定位,比传统的一类分类 [76] 和分布外检测 [77,78] 中更广泛的图像级决策带来了更大的挑战。
传统的 FSAD 方法,如 TDG [15] 和 DiffNet [16],经常使用每个类别一个模型的策略。TDG 使用一个层次生成模型来创建多尺度补丁特征,通过各种变换提高支持集中正常图像的多样性。相反,DiffNet 使用一个预训练模型在多个尺度上提取描述性特征,并使用一个归一化流从几张支持图像中估计异常分布。
近年来 FSAD 的发展正朝着类别无关的技术方向转变,这些技术在不需要参数微调的情况下提高了特征的鲁棒性和泛化能力。例如,RegAD [27] 使用一个类别无关的策略在新类别中进行异常检测和定位。在此基础上,RFR [73] 使用对抗损失(在域适应中常见)来对齐源域和目标域之间的特征分布,提高了模型的泛化能力。PACKD [74] 通过将来自教师网络的类别特定信息整合到学生网络中,进一步提高了泛化能力,利用从少样本正常样本生成的原型指导学习过程。PromptAD [75] 引入了一个双分支框架,通过文本提示使用关于异常行为的先验知识,利用多模态数据解决视觉信息差距并提高 AD 性能。本文通过引入类别无关配准机制来训练模型的主干,将其转变为一个灵活的、即插即用的工具,增强了 FSAD 的特征鲁棒性和泛化能力,这是朝着在工业环境中更具适应性和广泛适用的 AD 方法迈出的重要一步。
精读
- FSAD任务的特点与挑战
- 任务描述:在工业AD场景中,FSAD利用少量正常样本作为支持集检测和定位未见过类别的异常,包括细粒度缺陷定位,比传统的一类分类和分布外检测的图像级决策更具挑战性。
- 传统FSAD方法介绍
- 方法策略:传统方法如TDG和DiffNet常采用每个类别一个模型的策略。
- 具体方法
- TDG用层次生成模型创建多尺度补丁特征,通过变换提高支持集正常图像多样性。
- DiffNet用预训练模型提取多尺度描述性特征,用归一化流从支持图像估计异常分布。
- FSAD技术发展趋势
- 趋势介绍:近年来FSAD朝着类别无关技术发展,无需参数微调提高特征鲁棒性和泛化能力。
- 具体方法及改进
- RegAD用类别无关策略检测和定位新类别异常。
- RFR用对抗损失对齐源域和目标域特征分布提高泛化能力。
- PACKD整合教师网络类别信息到学生网络,用原型指导学习提高泛化能力。
- PromptAD用双分支框架结合文本提示知识和多模态数据提高AD性能。
- 本文贡献:本文引入类别无关注册机制训练模型主干,增强FSAD特征鲁棒性和泛化能力,是重要进步。
3. Problem Formulation——问题阐述
翻译
训练集 T t r a i n = { T 1 , ⋯ , T n } T_{train} = \{T_{1}, \cdots, T_{n}\} Ttrain={T1,⋯,Tn}仅由来自 n n n个类别的正常样本组成,其中 T i ( i = 1 , ⋯ , n ) T_{i}(i = 1, \cdots, n) Ti(i=1,⋯,n)是第 i i i类的子集。测试样本由来自第 t t t类( t ∈ { n + 1 , ⋯ , N } , N > n t \in \{n + 1, \cdots, N\}, N > n t∈{n+1,⋯,N},N>n)的测试图像 I t e s t I_{test} Itest及其相应的支持集 S t S_{t} St组成, S t S_{t} St包含来自第 t t t类的 K K K个正常样本。请注意,在测试时,模型处理训练数据中未见过的新类别。对于FSAD,我们的目标是仅使用几张正常图像来检测新类别测试样本中的异常,因此在本文中 K K K被设置为一个较小的数,如2、4或8。
关键挑战可以总结为:
(i)
T
t
r
a
i
n
T_{train}
Ttrain仅包括正常图像,没有任何图像级或像素级注释;
(ii)测试图像类别和训练图像类别完全不相交;
(iii)每个测试类别仅提供几张正常图像。
精读
- 数据描述
- 训练集:明确训练集 T t r a i n = { T 1 , ⋯ , T n } T_{train} = \{T_{1}, \cdots, T_{n}\} Ttrain={T1,⋯,Tn}的构成,即由 n n n个类别的正常样本组成,每个 T i T_{i} Ti是第 i i i类的子集。
- 测试样本:测试样本包含来自新类别( t ∈ { n + 1 , ⋯ , N } , N > n t \in \{n + 1, \cdots, N\}, N > n t∈{n+1,⋯,N},N>n)的测试图像 I t e s t I_{test} Itest以及相应的支持集 S t S_{t} St,支持集有 K K K个来自该类别的正常样本, K K K在文中常设置为2、4或8。
- 关键挑战分析
- 无标注信息:训练集只有正常图像,无图像级或像素级注释,这增加了模型学习的难度,因为没有明确的异常信息可供参考。
- 类别不相交:测试图像类别和训练图像类别完全不同,模型需要在没有见过测试类别的情况下进行异常检测,要求模型具有很强的泛化能力。
- 样本数量少:每个测试类别只有几张正常图像,有限的样本数量可能导致模型过拟合,难以准确学习到该类别的特征模式,从而影响异常检测的准确性。
4. Catagory-Agnostic Rgistration Training——类别无关匹配训练
本节描述如何利用配准作为代理任务训练一个类别无关的图像编码器。对于每个训练批次,我们随机采样一个训练图像 I a I_{a} Ia以及一个由来自与 I a I_{a} Ia相同类别的 k k k个其他图像 B = { I b } b = 1 k B = \{I_{b}\}_{b = 1}^{k} B={Ib}b=1k组成的支持集。
第4.1节介绍类别无关编码器的架构,在卷积残差块中插入空间变换模块以实现配准。
第4.2节介绍特征配准模块。
4.1 Architecture of the Category-Agnostic Encoder——类别无关编码器的架构
翻译
如图2所示,使用一个残差卷积网络[79]作为特征提取器。遵循[12,22],仅保留ResNet的前三个卷积残差块,即 C 1 C_{1} C1、 C 2 C_{2} C2和 C 3 C_{3} C3,丢弃最后一个卷积块以确保输出特征保留足够的空间信息。为了使具有不同方向的图像能够对齐,在每个卷积残差块中插入一个采用空间变换网络(STN)[21]的空间变换模块。具体来说,如图2所示,对于训练图像 I a I_{a} Ia和支持图像集 B B B,由卷积残差块 C i C_{i} Ci提取的一对输入特征 f i , a s f_{i,a}^{s} fi,as和 f i , B s = { f i , b s } b = 1 k f_{i,B}^{s} = \{f_{i,b}^{s}\}_{b = 1}^{k} fi,Bs={fi,bs}b=1k,利用一个定位网络生成用于特征配准的仿射变换矩阵 Θ i , a \Theta_{i,a} Θi,a和 { Θ i , b } b = 1 k \{\Theta_{i,b}\}_{b = 1}^{k} {Θi,b}b=1k。为了对输入特征进行扭曲,逐点变换为: ( x i s y i s ) = S i ( f i s ) = Θ i ( x i t y i t 1 ) = [ θ 11 θ 12 θ 13 θ 21 θ 22 θ 23 ] ( x i t y i t 1 ) \left(\begin{array}{c}x_{i}^{s} \\ y_{i}^{s}\end{array}\right)=S_{i}\left(f_{i}^{s}\right)=\Theta_{i}\left(\begin{array}{c}x_{i}^{t} \\ y_{i}^{t} \\ 1\end{array}\right)=\left[\begin{array}{lll}\theta_{11} & \theta_{12} & \theta_{13} \\ \theta_{21} & \theta_{22} & \theta_{23}\end{array}\right]\left(\begin{array}{c}x_{i}^{t} \\ y_{i}^{t} \\ 1\end{array}\right) (xisyis)=Si(fis)=Θi xityit1 =[θ11θ21θ12θ22θ13θ23] xityit1 ,其中 ( x i t , y i t ) (x_{i}^{t}, y_{i}^{t}) (xit,yit)是输出特征 f i t f_{i}^{t} fit的目标坐标, ( x i s , y i s ) (x_{i}^{s}, y_{i}^{s}) (xis,yis)是输入特征 f i ∗ f_{i}^{*} fi∗中同一点的源坐标, Θ i \Theta_{i} Θi是仿射变换矩阵集。然后使用一个网格生成器和一个可微采样器[21]生成相应的输出特征 f i , a t f_{i,a}^{t} fi,at和 f i , B t f_{i,B}^{t} fi,Bt。定位网络的架构与[21]中使用的相同。
总体而言,对于卷积块
C
i
C_{i}
Ci的输出特征,模块
S
i
S_{i}
Si(包含一个定位网络、一个网格生成器和一个可微采样器)用于学习映射。
精读
- 特征提取器的选择与设置
- 网络选择:采用残差卷积网络作为特征提取器,这种网络结构在图像特征提取方面具有良好的性能。
- 卷积块保留:遵循相关研究[12,22],只保留ResNet的前三个卷积残差块 C 1 C_{1} C1、 C 2 C_{2} C2和 C 3 C_{3} C3,去掉最后一个卷积块。这样做的目的是确保输出特征能保留足够的空间信息,空间信息对于后续处理图像中不同位置和方向的物体特征非常重要。
- 空间变换模块的引入
- 目的:为了使不同方向的图像能够对齐,在每个卷积残差块中插入空间变换网络(STN)构成的空间变换模块。
- 操作过程
- 生成仿射变换矩阵:对于训练图像 I a I_{a} Ia和支持图像集 B B B,卷积残差块 C i C_{i} Ci提取的输入特征 f i , a s f_{i,a}^{s} fi,as和 f i , B s f_{i,B}^{s} fi,Bs,通过定位网络生成用于特征配准的仿射变换矩阵 Θ i , a \Theta_{i,a} Θi,a和 { Θ i , b } b = 1 k \{\Theta_{i,b}\}_{b = 1}^{k} {Θi,b}b=1k。
- 特征扭曲变换:利用生成的仿射变换矩阵对输入特征进行逐点变换,公式为 ( x i s y i s ) = S i ( f i s ) = Θ i ( x i t y i t 1 ) = [ θ 11 θ 12 θ 13 θ 21 θ 22 θ 23 ] ( x i t y i t 1 ) \left(\begin{array}{c}x_{i}^{s} \\ y_{i}^{s}\end{array}\right)=S_{i}\left(f_{i}^{s}\right)=\Theta_{i}\left(\begin{array}{c}x_{i}^{t} \\ y_{i}^{t} \\ 1\end{array}\right)=\left[\begin{array}{lll}\theta_{11} & \theta_{12} & \theta_{13} \\ \theta_{21} & \theta_{22} & \theta_{23}\end{array}\right]\left(\begin{array}{c}x_{i}^{t} \\ y_{i}^{t} \\ 1\end{array}\right) (xisyis)=Si(fis)=Θi xityit1 =[θ11θ21θ12θ22θ13θ23] xityit1 ,明确了输入特征和输出特征坐标之间的变换关系。
- 生成输出特征:使用网格生成器和可微采样器[21]根据变换后的坐标生成相应的输出特征 f i , a t f_{i,a}^{t} fi,at和 f i , B t f_{i,B}^{t} fi,Bt。
- 模块功能总结
- 模块 S i S_{i} Si(包含定位网络、网格生成器和可微采样器)的主要功能是学习映射,即学习如何将输入特征通过一系列变换操作转换为合适的输出特征,以满足后续特征配准和异常检测等任务的需求。
4.2 Feature Registration Module——特征配准模块
翻译
给定从训练图像提取的配对最终变换输出特征 f 3 , a t f_{3,a}^{t} f3,at和从支持图像集提取的 f 3 , B t = { f 3 , b t } b = 1 k f_{3,B}^{t} = \{f_{3,b}^{t}\}_{b = 1}^{k} f3,Bt={f3,bt}b=1k,我们利用一个连体网络((Siamese network))[80]进行特征配准,如图3所示。该架构采用一个参数共享的编码器 E E E,应用于多个输入,后面跟着一个预测头 P P P。训练采用SimSiam[20]使用的方法,以避免在没有负对优化时出现的坍缩问题。令 p a ≜ P ( E ( f 3 , a t ) ) p_{a} \triangleq P(E(f_{3,a}^{t})) pa≜P(E(f3,at))和 z B ≜ m e a n ( E ( { f 3 , b t } b = 1 k ) ) z_{B} \triangleq mean(E(\{f_{3,b}^{t}\}_{b = 1}^{k})) zB≜mean(E({f3,bt}b=1k)),其中 m e a n ( ⋅ ) mean(\cdot) mean(⋅)是对样本的平均操作,应用一个负余弦相似度损失: D ( p a , z B ) = − p a ∥ p a ∥ 2 ⋅ z B ∥ z B ∥ 2 \mathcal{D}(p_{a}, z_{B}) = -\frac{p_{a}}{\parallel p_{a}\parallel _{2}} \cdot \frac{z_{B}}{\parallel z_{B}\parallel _{2}} D(pa,zB)=−∥pa∥2pa⋅∥zB∥2zB,其中 ∥ ⋅ ∥ 2 \|\cdot\|_{2} ∥⋅∥2是 L 2 L_{2} L2范数。类似地,对于特征 p B ≜ m e a n ( P ( E ( { f 3 , b t } b = 1 k ) ) ) p_{B} \triangleq mean(P(E(\{f_{3,b}^{t}\}_{b = 1}^{k}))) pB≜mean(P(E({f3,bt}b=1k)))和 z a ≜ E ( f 3 , a t ) z_{a} \triangleq E(f_{3,a}^{t}) za≜E(f3,at),应用对称相似度损失: D ( p B , z a ) = − p B ∥ p B ∥ 2 ⋅ z a ∥ z a ∥ 2 \mathcal{D}(p_{B}, z_{a}) = -\frac{p_{B}}{\parallel p_{B}\parallel _{2}} \cdot \frac{z_{a}}{\parallel z_{a}\parallel _{2}} D(pB,za)=−∥pB∥2pB⋅∥za∥2za。
与[27]不同,在[27]中仅使用一张图像作为参考,为了提高鲁棒性,
z
B
z_{B}
zB和
p
B
p_{B}
pB是通过累积来自多个参考的特征而产生的累积特征(AF)。为了防止坍缩解,一旦预测头
P
P
P应用于一个分支,如图3所示,对另一个分支应用停止梯度操作。最后,定义一个对称化的特征配准损失为:
L
=
1
2
(
D
(
p
a
,
s
g
(
z
B
)
)
+
D
(
p
B
,
s
g
(
z
a
)
)
)
\mathcal{L}=\frac{1}{2}(\mathcal{D}(p_{a}, sg(z_{B}))+\mathcal{D}(p_{B}, sg(z_{a})))
L=21(D(pa,sg(zB))+D(pB,sg(za))),其中
s
g
(
⋅
)
sg(\cdot)
sg(⋅)是停止梯度操作。利用特征级比较相对于直接图像级比较固有的鲁棒性和优越性能[22],本研究在特征层面进行配准以直接获取配准特征,而不是逐像素的图像级配准方法。
讨论: 对于特征配准网络的模型架构,除了采用ResNet的前三个卷积块并去除全局平均池化外,在特征配准模块中,使用一个卷积编码器和预测器架构来替代SimSiam[20]中的MLP架构。因此,特征保留了相对完整的空间信息。对于所提出的特征配准损失函数(公式4),我们在每个空间像素上平均余弦相似度得分。由于在异常定位中需要像素级的异常分数图,所以在最终特征中保留空间信息非常重要。与[12,20]不同,在[12,20]中使用来自一个小批次的相同图像或一张图像的两种增强作为对比表示学习的输入,所提出的方法利用不同的图像作为输入,并通过STN学习变换矩阵进行特征配准。
精读
- 连体网络结构及训练方法
- 网络结构:利用Siamese network 网络进行特征配准,其架构包含参数共享的编码器 E E E和预测头 P P P。编码器应用于多个输入(从训练图像和支持图像集提取的特征)。
- 训练方法:采用SimSiam的方法训练,避免无负对优化时的坍缩问题。通过定义 p a ≜ P ( E ( f 3 , a t ) ) p_{a} \triangleq P(E(f_{3,a}^{t})) pa≜P(E(f3,at))和 z B ≜ m e a n ( E ( { f 3 , b t } b = 1 k ) ) z_{B} \triangleq mean(E(\{f_{3,b}^{t}\}_{b = 1}^{k})) zB≜mean(E({f3,bt}b=1k)),并应用负余弦相似度损失 D ( p a , z B ) = − p a ∥ p a ∥ 2 ⋅ z B ∥ z B ∥ 2 \mathcal{D}(p_{a}, z_{B}) = -\frac{p_{a}}{\parallel p_{a}\parallel _{2}} \cdot \frac{z_{B}}{\parallel z_{B}\parallel _{2}} D(pa,zB)=−∥pa∥2pa⋅∥zB∥2zB以及对称相似度损失 D ( p B , z a ) = − p B ∥ p B ∥ 2 ⋅ z a ∥ z a ∥ 2 \mathcal{D}(p_{B}, z_{a}) = -\frac{p_{B}}{\parallel p_{B}\parallel _{2}} \cdot \frac{z_{a}}{\parallel z_{a}\parallel _{2}} D(pB,za)=−∥pB∥2pB⋅∥za∥2za来进行训练监督。
- 与其他方法的区别及优势
- 参考特征的不同:与[27]相比,不是仅用一张图像作为参考,而是通过累积来自多个参考的特征得到 z B z_{B} zB和 p B p_{B} pB(累积特征AF),提高了鲁棒性。
- 防止坍缩的操作:为防止坍缩解,当预测头 P P P应用于一个分支时,对另一个分支应用停止梯度操作,并定义对称化的特征配准损失 L = 1 2 ( D ( p a , s g ( z B ) ) + D ( p B , s g ( z a ) ) ) \mathcal{L}=\frac{1}{2}(\mathcal{D}(p_{a}, sg(z_{B}))+\mathcal{D}(p_{B}, sg(z_{a}))) L=21(D(pa,sg(zB))+D(pB,sg(za)))。
- 配准层面的优势:利用特征级比较的优势,在特征层面进行配准直接获取注册特征,而非逐像素的图像级配准。这种方式更具鲁棒性和优越性能。
- 模型架构和损失函数的特点
- 模型架构特点:在特征配准网络的模型架构上,采用ResNet的前三个卷积块并去除全局平均池化,在特征配准模块中使用卷积编码器和预测器架构替代SimSiam中的MLP架构,使得特征保留相对完整的空间信息。
- 损失函数特点:所提出的特征配准损失函数在每个空间像素上平均余弦相似度得分。这是因为异常定位需要像素级的异常分数图,所以保留空间信息在最终特征中至关重要。
- 输入数据的差异:与[12,20]不同,所提方法利用不同的图像作为输入,并通过STN学习变换矩阵进行特征配准,而[12,20]使用来自一个小批次的相同图像或一张图像的两种增强作为对比表示学习的输入。
补充:Siamese network
连体网络(Siamese network)是一种神经网络架构,在很多领域都有应用,特别是在涉及到比较或匹配任务的场景中。以下是关于暹罗网络的一些关键信息
1. 基本结构
- 连体网络包含两个或多个相同结构的子网络(通常称为分支),这些子网络共享相同的参数。例如在图像匹配任务中,一个子网络处理一幅图像,另一个子网络处理另一幅图像。
2. 工作原理
- 特征提取:每个子网络对其输入的数据(例如图像)进行特征提取。由于子网络结构相同且参数共享,它们对不同输入会学习到相似的特征表示方式。
- 特征比较:提取特征之后,会对这些特征进行比较。比较的方式可以根据具体任务而定,常见的是计算特征之间的某种距离度量(如欧氏距离、余弦距离等)。这个距离值可以作为衡量输入数据之间相似性或差异性的指标。
3. 应用场景
- 图像相似性判断:判断两张图像是否相似,例如在人脸识别中判断两张人脸图像是否为同一人,或者在图像检索中找到与给定图像相似的其他图像。
- 目标跟踪:在视频中跟踪某个目标,通过比较不同帧中目标的特征来确定其位置变化。
- 文本相似性分析:也可应用于文本领域,判断两段文本的相似程度。
在上述论文中,暹罗网络被用于特征配准任务(给定从训练图像提取的配对最终变换输出特征 f 3 , a t f_{3,a}^{t} f3,at和从支持图像集提取的 f 3 , B t = { f 3 , b t } b = 1 k f_{3,B}^{t} = \{f_{3,b}^{t}\}_{b = 1}^{k} f3,Bt={f3,bt}b=1k进行特征配准),通过其特定的结构和训练方式来实现对特征的有效配准和比较。
5. Anomoly Detection——异常检测
为了检测异常,我们首先使用由几张正常图像组成的支持集估计目标类别的正态分布(第5.1节)。由于从样本集估计分布的任务在统计学中已被广泛研究,我们为此目的采用了最近基于统计的估计器。考虑到支持集大小有限带来的挑战,我们提出一个增强自动选择模块(第5.2节)来选择一组最优的数据增强方式,这些增强方式可以在估计过程中应用于支持图像。然后,我们将测试样本与估计的正态分布进行比较以产生一个异常分数(第5.2节)。这个异常分数表明测试样本偏离估计正态分布的程度,并作为AD的一种度量。
5.1 Normal Distribution Estimation——正态分布估计
翻译
假设配准可以在不需要任何参数微调的情况下跨不同类别进行泛化,可以将配准网络直接应用于目标类别的支持集 S S S。假设一幅图像被划分为一个 ( i , j ) ∈ [ 1 , W ] × [ 1 , H ] (i, j) \in [1, W] \times [1, H] (i,j)∈[1,W]×[1,H]位置的网格,其中 W × H W×H W×H是注册特征的分辨率。三个STN模块的输出在每个相应的补丁位置 ( i , j ) (i, j) (i,j)进行连接,并使用上采样来匹配它们的大小,以产生聚合特征 f i j f_{ij} fij。 F r e g = { f i j k , k ∈ [ 1 , K ] , i ∈ [ 1 , W ] , j ∈ [ 1 , H ] } F_{reg} = \{f_{ij}^{k}, k \in [1, K], i \in [1, W], j \in [1, H]\} Freg={fijk,k∈[1,K],i∈[1,W],j∈[1,H]}表示 K K K个支持图像的注册特征集。目标类别的正态分布 D n o r m D_{norm} Dnorm用一个基于统计的估计器 D n o r m ≜ E n o r m ( F r e g ) \mathcal{D}_{norm} \triangleq \mathcal{E}_{norm}(F_{reg}) Dnorm≜Enorm(Freg)估计。
下面简要介绍可以采用的三种流行的估计器。这些估计器在图4中说明。
PaDim
:PaDim估计器[22]采用多元高斯分布 N ( μ i j , ∑ i j ) N(\mu_{ij}, \sum_{ij}) N(μij,∑ij)作为正态分布 D n o r m , i j D_{norm,ij} Dnorm,ij,其中 μ i j \mu_{ij} μij和 ∑ i j \sum_{ij} ∑ij是与补丁位置 i , j i,j i,j对应的特征 F r e g F_{reg} Freg的均值和协方差。为了使样本协方差矩阵满秩且可逆,向协方差中引入一个正则化项 ϵ I \epsilon I ϵI: ∑ i j = 1 K − 1 ∑ k = 1 K ( f i j k − μ i j ) ( f i j k − μ i j ) T + ϵ I \sum_{ij}=\frac{1}{K - 1}\sum_{k = 1}^{K}(f_{ij}^{k}-\mu_{ij})(f_{ij}^{k}-\mu_{ij})^{T}+\epsilon I ∑ij=K−11∑k=1K(fijk−μij)(fijk−μij)T+ϵI。每个可能的补丁位置都与一个多元高斯分布 D n o r m = ( D n o r m , i j ) 1 ≤ i ≤ W , 1 ≤ j ≤ W D_{norm} = (D_{norm,ij})_{1\leq i\leq W, 1\leq j\leq W} Dnorm=(Dnorm,ij)1≤i≤W,1≤j≤W相关联。OrthoAD
:为了降低内存成本并加速PaDim估计器的计算,OrthoAD[25]利用输入特征的低秩嵌入。使用一个半正交矩阵 W ∈ R D × D ′ W \in \mathbb{R}^{D×D'} W∈RD×D′[81],其中 D ′ D' D′是一个常数且 D ′ ≪ D D' \ll D D′≪D,估计的正态分布可以有一个低秩近似,其中低秩样本均值被替换为 W T μ i j ∈ R D ′ W^{T}\mu_{ij} \in \mathbb{R}^{D'} WTμij∈RD′,低秩样本协方差被替换为 W T ∑ i j W ∈ R D ′ × D ′ W^{T}\sum_{ij}W \in \mathbb{R}^{D'×D'} WT∑ijW∈RD′×D′。PatchCore
:为了进一步降低内存成本同时在测试时保持名义信息,PatchCore[26]使用核心集采样[82]来构建一个最大代表性的记忆库 M M M,它存储来自所有正常样本的邻域感知特征。正态分布 D n o r m D_{norm} Dnorm用Coreset ( F r e g ) (F_{reg}) (Freg)近似,其中Coreset(·)是一个迭代贪婪近似[82]以减少内存项的数量(详细算法在附录中)。
复杂度分析:上述三种分布估计器的复杂度分析总结在图4中。可以看出,与PaDim相比,OrthoAD由于对正态分布
D
n
o
r
m
D_{norm}
Dnorm的低秩近似,显著降低了内存成本。PatchCore的分布建模复杂度是三种估计器中最小的。
精读
-
什么是正态分布
正态分布(Normal Distribution)也称为高斯分布(Gaussian Distribution),是一种非常常见且重要的概率分布。它的概率密度函数图像呈钟形曲线,具有以下一些特点:- 对称性:正态分布的曲线关于均值(平均数)对称。这意味着在均值左右两侧,数据出现的概率是相等的。例如,如果一个班级学生的考试成绩服从正态分布,那么平均分左右两边成绩分布的形状是一样的。
- 集中性:大部分数据集中在均值附近。离均值越远,数据出现的概率越小。比如在生产的产品尺寸中,如果符合正态分布,那么大多数产品的尺寸会接近平均尺寸。
-
背景知识
- 首先要理解配准网络和正态分布估计的目的。配准网络是为了让不同的图像(在这里是同一类别的支持集图像)在特征上能够更好地对齐,以便后续比较。而正态分布估计是为了找出正常样本所遵循的一种统计规律,这样当有测试样本时,可以看它是否符合这个规律来判断是否异常。
-
图像划分与特征提取
- 我们把一幅图像划分成一个网格,就像把一幅大的拼图分成很多小的方块一样。这个网格的每个位置用 ( i , j ) (i, j) (i,j)表示,它的范围是从 ( 1 , 1 ) (1, 1) (1,1)到 ( W , H ) (W, H) (W,H),这里的 W W W和 H H H就决定了网格的大小,也就是我们所说的匹配特征的分辨率。
- 然后有三个STN模块,这些模块会对图像进行处理,提取出每个小方块(补丁位置)的特征。对于每个补丁位置 ( i , j ) (i, j) (i,j),三个STN模块都会输出一些特征信息。
-
特征连接与聚合
- 把三个STN模块在每个补丁位置 ( i , j ) (i, j) (i,j)输出的特征进行连接,就好像把三根不同颜色的绳子在每个小方块处系在一起。
- 因为这些连接后的特征可能大小不一样,所以我们使用上采样的方法让它们的大小都匹配起来,这样就得到了一个在每个补丁位置都有统一大小特征的集合,我们把它叫做聚合特征 f i j f_{ij} fij。
- 我们有 K K K个支持图像,每个支持图像都经过这样的处理,所以最后得到的 F r e g F_{reg} Freg就是所有支持图像在各个补丁位置的聚合特征的集合。
-
正态分布估计
- 有了 F r e g F_{reg} Freg这个特征集之后,我们就可以用基于统计的估计器来估计目标类别的正态分布 D n o r m D_{norm} Dnorm了。这个估计器就像是一个聪明的小机器,它会根据 F r e g F_{reg} Freg中的特征信息,按照它内部设定的算法(不同的估计器有不同的算法,比如前面提到的PaDim、OrthoAD和PatchCore)来计算出这个类别正常样本所遵循的正态分布。例如,它可能会计算出这个正态分布的均值和方差等参数,从而确定这个正态分布的形状和位置。这样当有测试样本时,就可以把测试样本在各个补丁位置的特征和这个估计出的正态分布进行比较,看看测试样本是否符合这个正态分布,如果不符合,就可能被判断为异常。
5.2 Augmentation Selection Module——增强选择模块
翻译
异常检测方法将数据增强作为扩展数据集的重要工具,特别是在FSAD场景中[15,63]。然而,增强的影响,特别是在哪里以及使用什么数据增强,尚未得到充分探索。本文不是简单地将数据增强应用于支持和测试图像,而是表明通过扩展支持集,增强在正态分布估计过程中起着非常重要的作用。我们只增强支持集,这也降低了计算成本。可能的增强组合产生一个更大的增强支持集。我们对这样一个增强支持集进行正态分布估计。
除了使用与RegAD[27]一致的增强外,我们还进一步提出一个基于Wasserstein距离的数据增强选择机制,以便为每个类别灵活选择最合适的增强。根据类别之间不同的视觉特征,去除可能损害图像主要属性的增强是有意义的。给定支持集 s s s及其具有第 c c c种增强的增强集 S c S_{c} Sc,分别用 N ( μ i j , ∑ i j ) N(\mu_{ij}, \sum_{ij}) N(μij,∑ij)和 N ( μ c , i j , ∑ c , i j ) N(\mu_{c,ij}, \sum_{c,ij}) N(μc,ij,∑c,ij)表示由估计器在位置 ( i , j ) (i, j) (i,j)估计的正态分布。在位置 ( i , j ) (i, j) (i,j)两个分布之间的Wasserstein距离[83]定义为: W c , i j = ∥ μ − μ c ∥ 2 2 + T r ( ∑ + ∑ c − 2 ( ∑ 1 2 ∑ c ∑ 1 2 ) 1 2 ) \mathcal{W}_{c,ij}=\parallel \mu-\mu_{c}\parallel _{2}^{2}+Tr\left(\sum+\sum_{c}-2\left(\sum^{\frac{1}{2}}\sum_{c}\sum^{\frac{1}{2}}\right)^{\frac{1}{2}}\right) Wc,ij=∥μ−μc∥22+Tr(∑+∑c−2(∑21∑c∑21)21),其中我们省略了右边所有变量的下标 ( ⋅ ) i j (\cdot)_{ij} (⋅)ij以简化符号。为了关注前景,对式(6)中的Wasserstein距离进行重新加权并在不同特征补丁位置 ( i , j ) (i, j) (i,j)求和: W c ′ = ∑ i j ( ∥ μ i j − μ c , i j ∥ 2 ⋅ W c , i j ) \mathcal{W}_{c}'=\sum_{ij}\left(\parallel \mu_{ij}-\mu_{c,ij}\parallel _{2}\cdot \mathcal{W}_{c,ij}\right) Wc′=∑ij(∥μij−μc,ij∥2⋅Wc,ij),其中 W c , i j W_{c,ij} Wc,ij是从式(6)中获得的补丁位置 ( i , j ) (i, j) (i,j)的Wasserstein距离得分, w c ′ w_{c}' wc′表示所有补丁位置的Wasserstein距离得分的加权和。假设前景上样本均值的 L 2 L_{2} L2差异较大,通过重新加权,背景区域的Wasserstein距离预计较小,而与对象相关的前景则突出显示。给定一组 n n n种增强的Wasserstein距离 { W c ′ } c = 1 n \{W_{c}'\}_{c = 1}^{n} {Wc′}c=1n,设一个阈值为这些距离的平均值, δ ≜ 1 n ∑ c W c ′ \delta \triangleq \frac{1}{n}\sum_{c}W_{c}' δ≜n1∑cWc′,然后从增强集中去除Wasserstein距离高于此阈值的增强。剩余的增强组合在一起共同增强支持集。请注意,所提出的增强选择管道仅用于正态分布估计阶段。由于在推理阶段不使用数据增强,所以推理的效率不受影响。
精读
- 数据增强在异常检测中的作用及本文思路
- 数据增强的重要性与未充分探索的问题:数据增强是异常检测中扩展数据集的重要工具,尤其在FSAD场景中。但增强的影响,如在哪里以及用什么增强未被充分探索。
- 本文的思路:本文强调通过扩展支持集,增强在正态分布估计过程中有重要作用,且只增强支持集以降低计算成本,对增强后的支持集进行正态分布估计。
- 基于Wasserstein距离的数据增强选择机制
- 选择机制的提出:除使用与RegAD一致的增强外,提出基于Wasserstein距离的选择机制,为每个类别灵活选合适增强。
- Wasserstein距离的计算与处理
- 定义距离公式:给定支持集及其增强集,在位置 ( i , j ) (i, j) (i,j)估计的正态分布分别为 N ( μ i j , ∑ i j ) N(\mu_{ij}, \sum_{ij}) N(μij,∑ij)和 N ( μ c , i j , ∑ c , i j ) N(\mu_{c,ij}, \sum_{c,ij}) N(μc,ij,∑c,ij),定义Wasserstein距离 W c , i j = ∥ μ − μ c ∥ 2 2 + T r ( ∑ + ∑ c − 2 ( ∑ 1 2 ∑ c ∑ 1 2 ) 1 2 ) \mathcal{W}_{c,ij}=\parallel \mu-\mu_{c}\parallel _{2}^{2}+Tr\left(\sum+\sum_{c}-2\left(\sum^{\frac{1}{2}}\sum_{c}\sum^{\frac{1}{2}}\right)^{\frac{1}{2}}\right) Wc,ij=∥μ−μc∥22+Tr(∑+∑c−2(∑21∑c∑21)21)。
- 重新加权与求和:为关注前景,对距离重新加权并在不同位置求和得 W c ′ = ∑ i j ( ∥ μ i j − μ c , i j ∥ 2 ⋅ W c , i j ) \mathcal{W}_{c}'=\sum_{ij}\left(\parallel \mu_{ij}-\mu_{c,ij}\parallel _{2}\cdot \mathcal{W}_{c,ij}\right) Wc′=∑ij(∥μij−μc,ij∥2⋅Wc,ij)。
- 选择增强的方法:根据一组增强的加权Wasserstein距离 { W c ′ } c = 1 n \{W_{c}'\}_{c = 1}^{n} {Wc′}c=1n,设阈值为平均值 δ ≜ 1 n ∑ c W c ′ \delta \triangleq \frac{1}{n}\sum_{c}W_{c}' δ≜n1∑cWc′,去除距离高于阈值的增强,剩余增强组合增强支持集。
- 机制的应用范围:该增强选择管道仅用于正态分布估计阶段,推理阶段不使用数据增强,不影响推理效率。
5.3 . Anomaly Scoring at Inference——推理时的异常评分
翻译
在推理过程中,我们将测试图像的配准特征与其相应的正态分布进行比较以检测异常:超出正态分布的测试样本被视为异常。给定一个测试图像
I
t
e
s
t
I^{test}
Itest和估计的正态分布
D
n
o
r
m
D_{norm}
Dnorm,设
f
i
j
f_{ij}
fij为
I
t
e
s
t
I^{test}
Itest在补丁位置
(
i
,
j
)
(i, j)
(i,j)的配准特征,补丁位置
(
i
,
j
)
(i, j)
(i,j)的异常分数公式为:
d
i
j
=
D
i
s
t
(
f
i
j
,
D
n
o
r
m
)
d_{ij} = Dist(f_{ij}, D_{norm})
dij=Dist(fij,Dnorm)
其中
D
i
s
t
(
⋅
,
⋅
)
Dist(\cdot, \cdot)
Dist(⋅,⋅)是特征与其相应正态分布之间的距离函数。距离矩阵
d
=
(
d
i
j
)
1
≤
i
≤
W
,
1
≤
j
≤
H
d=(d_{ij})_{1\leq i\leq W, 1\leq j\leq H}
d=(dij)1≤i≤W,1≤j≤H形成一个异常图,高分区域表示异常区域。对于异常定位,应用三个与三个STN模块对应的逆变换矩阵,以重新匹配空间变换特征的区域和原始图像,从而获得最终的异常分数图
d
f
i
n
a
l
d_{final}
dfinal。图像级别的异常分数是这个异常图的最大值。
为了确保异常评分函数与分布估计器之间的一致性,为每个估计器定义一个相应的距离函数。
- PaDim:采用马氏距离,
D i s t ( f i j , D n o r m ) = ( f i j − μ i j ) T ( ∑ i j − 1 ) ( f i j − μ i j ) Dist(f_{ij}, D_{norm}) = \sqrt{(f_{ij}-\mu_{ij})^{T}(\sum_{ij}^{-1})(f_{ij}-\mu_{ij})} Dist(fij,Dnorm)=(fij−μij)T(ij∑−1)(fij−μij)
其中 μ i j \mu_{ij} μij和 ∑ i j \sum_{ij} ∑ij是正态分布 D n o r m D_{norm} Dnorm在位置 ( i , j ) (i, j) (i,j)的均值和协方差。注意,在公式 ( 9 ) (9) (9)中,计算协方差矩阵 ∑ i j − 1 ∈ R D × D \sum_{ij}^{-1} \in \mathbb{R}^{D\times D} ∑ij−1∈RD×D的逆具有 O ( H W D 3 ) O(HW D^{3}) O(HWD3)的计算复杂度,这限制了对大维度多尺度特征的有效计算。 - OrthoAD: D i s t ( ⋅ , ⋅ ) Dist(\cdot, \cdot) Dist(⋅,⋅)定义与公式 ( 9 ) (9) (9)相同,但在低秩情况下,其中特征 f i j f_{ij} fij、样本均值 μ i j \mu_{ij} μij和样本协方差 ∑ i j \sum_{ij} ∑ij分别被替换为它们的低秩对应物,即 W T f i j W^{T}f_{ij} WTfij、 W T μ i j W^{T}\mu_{ij} WTμij和 ( W T ∑ i j W ) − 1 (W^{T}\sum_{ij}W)^{-1} (WT∑ijW)−1,计算复杂度因此立方地降低到 O ( H W D ′ 3 ) O(HW D^{\prime3}) O(HWD′3),其中 D ′ ≪ D D' \ll D D′≪D。
- PatchCore:在PatchCore估计器下将正态分布表述为一个记忆库,距离函数
D
i
s
t
(
⋅
,
⋅
)
Dist(\cdot, \cdot)
Dist(⋅,⋅)定义为测试图像的补丁特征与其在正态补丁特征库
D
n
o
r
m
D_{norm}
Dnorm中相应的最近邻记忆
m
∗
m^{*}
m∗之间的最小
L
2
L_{2}
L2距离,即
D i s t ( f i j , D n o r m ) = ∥ f i j − m ∗ ∥ 2 Dist(f_{ij}, D_{norm}) = \parallel f_{ij}-m^{*}\parallel _{2} Dist(fij,Dnorm)=∥fij−m∗∥2
其中使用最近邻搜索来获得最优 m ∗ = arg m i n m ∈ D n o r m ∥ f i j − m ∥ 2 m^{*}=\arg min_{m\in D_{norm}}\left\|f_{ij}-m\right\|_{2} m∗=argminm∈Dnorm∥fij−m∥2。对公式 ( 10 ) (10) (10)应用一个重新加权函数 [ 26 ] [26] [26]以获得考虑邻域补丁的最终异常图。由于需要遍历 D n o r m D_{norm} Dnorm中的 γ K H W \gamma KH W γKHW个记忆项,计算复杂度为 O ( γ K H 2 W 2 D 2 ) O(\gamma KH^{2}W^{2}D^{2}) O(γKH2W2D2)。
精读
- 异常检测的总体思路
- 在推理阶段,通过比较测试图像的配准特征和其对应的正态分布来检测异常,超出正态分布的测试样本被判定为异常。
- 异常分数的计算
- 异常分数公式:对于测试图像 I t e s t I^{test} Itest在补丁位置 ( i , j ) (i, j) (i,j)的配准特征 f i j f_{ij} fij,其异常分数 d i j d_{ij} dij由公式 d i j = D i s t ( f i j , D n o r m ) d_{ij} = Dist(f_{ij}, D_{norm}) dij=Dist(fij,Dnorm)计算,其中 D i s t ( ⋅ , ⋅ ) Dist(\cdot, \cdot) Dist(⋅,⋅)是特征与正态分布之间的距离函数。
- 异常图的形成:所有补丁位置的距离值构成距离矩阵 d = ( d i j ) 1 ≤ i ≤ W , 1 ≤ j ≤ H d=(d_{ij})_{1\leq i\leq W, 1\leq j\leq H} d=(dij)1≤i≤W,1≤j≤H,形成异常图,高分区域表示可能存在异常。
- 异常定位:为了实现异常定位,应用与三个STN模块对应的逆变换矩阵,将空间变换特征区域与原始图像重新匹配,得到最终的异常分数图 d f i n a l d_{final} dfinal,图像级别的异常分数取该图的最大值。
- 不同估计器的距离函数
- PaDim估计器
- 距离函数:采用马氏距离 D i s t ( f i j , D n o r m ) = ( f i j − μ i j ) T ( ∑ i j − 1 ) ( f i j − μ i j ) Dist(f_{ij}, D_{norm}) = \sqrt{(f_{ij}-\mu_{ij})^{T}(\sum_{ij}^{-1})(f_{ij}-\mu_{ij})} Dist(fij,Dnorm)=(fij−μij)T(∑ij−1)(fij−μij),其中 μ i j \mu_{ij} μij和 ∑ i j \sum_{ij} ∑ij是正态分布 D n o r m D_{norm} Dnorm在位置 ( i , j ) (i, j) (i,j)的均值和协方差。
- 计算复杂度问题:计算协方差矩阵 ∑ i j − 1 ∈ R D × D \sum_{ij}^{-1} \in \mathbb{R}^{D\times D} ∑ij−1∈RD×D的逆具有 O ( H W D 3 ) O(HW D^{3}) O(HWD3)的计算复杂度,这对大维度多尺度特征的有效计算造成限制。
- OrthoAD估计器
- 距离函数:与PaDim的公式形式相同,但在低秩情况下,特征 f i j f_{ij} fij、样本均值 μ i j \mu_{ij} μij和样本协方差 ∑ i j \sum_{ij} ∑ij分别替换为 W T f i j W^{T}f_{ij} WTfij、 W T μ i j W^{T}\mu_{ij} WTμij和 ( W T ∑ i j W ) − 1 (W^{T}\sum_{ij}W)^{-1} (WT∑ijW)−1。
- 计算复杂度优势:计算复杂度立方地降低到 O ( H W D ′ 3 ) O(HW D^{\prime3}) O(HWD′3),其中 D ′ ≪ D D' \ll D D′≪D。
- PatchCore估计器
- 距离函数:将正态分布视为记忆库,距离函数定义为测试图像补丁特征与记忆库中最近邻记忆 m ∗ m^{*} m∗之间的最小 L 2 L_{2} L2距离,即 D i s t ( f i j , D n o r m ) = ∥ f i j − m ∗ ∥ 2 Dist(f_{ij}, D_{norm}) = \parallel f_{ij}-m^{*}\parallel _{2} Dist(fij,Dnorm)=∥fij−m∗∥2,通过最近邻搜索找到 m ∗ = arg m i n m ∈ D n o r m ∥ f i j − m ∥ 2 m^{*}=\arg min_{m\in D_{norm}}\left\|f_{ij}-m\right\|_{2} m∗=argminm∈Dnorm∥fij−m∥2。
- 考虑邻域补丁:对公式应用重新加权函数 [ 26 ] [26] [26]以考虑邻域补丁得到最终异常图。
- 计算复杂度:由于需要遍历记忆库中的 γ K H W \gamma KH W γKHW个记忆项,计算复杂度为 O ( γ K H 2 W 2 D 2 ) O(\gamma KH^{2}W^{2}D^{2}) O(γKH2W2D2)。
- PaDim估计器
6.Experiments——试验
A. 数据集和实验设置
- MVTec AD数据集[23]:这是一个具有挑战性的工业缺陷检测数据集,包含15个类别,共有3629张训练图像和1725张测试图像。按照传统的AD设置,训练期间只提供无缺陷的正常图像。测试集中包含各种缺陷的图像以及无缺陷(正常)的图像。给出了73种不同的异常类型,平均每个类别有5种。该数据集中的5个类别涵盖不同类型的随机(如皮革、瓷砖和木材)或规则(如地毯和网格)纹理,另外10个类别是各种类型的物体。为有缺陷的图像区域提供了像素级的真实标签。
- MPDD AD数据集[24]:提供了在金属部件涂装过程中拍摄的6个类别的图像。与MVTec不同,它特别关注在不同观察条件下的缺陷检测,例如不同的空间方向和位置、不同的光照条件以及非均匀的背景。因此,它比MVTec更具挑战性和复杂性。与MVTec类似,测试图像中存在各种类型的缺陷,涵盖了涂装行业和金属制造中可能出现的各种场景。我们在表I中总结了这两个工业AD数据集的主要差异。
数据集 | MVTec | MPDD |
---|---|---|
类别 | 10个物体和5个纹理表面 | 6类金属部件 |
位置 | 居中 | 位置不同且有旋转 |
背景 | 均匀单色 | 有反射或阴影 |
物体数量 | 一个 | 多个 |
运动模糊 | 无 | 有 |
可变性 | 低 | 高 |
- 实验设置:FSAD的实验是在留一法设置下进行的。在这种配置下,选择一个指定的目标类别进行测试,而数据集中的其余类别用于训练。这种方法的目的是在面对未见过的类别时评估AD性能,从而评估模型在训练期间未见过的所有类别上的泛化能力。为了创建一个具有挑战性的少样本学习环境,将与目标类别对应的所有数据从训练集中排除。在测试期间,在支持集中只提供目标类别中极其有限数量的正常样本。我们进行了10次独立实验,每次随机选择一个不同的支持集。选择后,每个实验的支持集固定,以保持一致性并便于与最先进的方法进行比较,产生了10种不同的结果。报告的性能指标是这10次试验的平均结果。
B. 竞争方法和基线
- 在本研究中,将两种最先进的FSAD方法TDG[15]和DiffNet[16]作为基线模型。使用这些方法的官方源代码来训练类别相关的模型。此外,通过预训练过程将这些方法扩展为利用多个类别的数据,得到方法TDG + 和DiffNet +。TDG + 使用来自多个类别的数据对变换分类器进行预训练,使用的是普通的AD方法GeoTrans[9]。DiffNet + 对归一化流进行预训练,归一化流是正态分布估计器。还考虑了RFR[73]、PACKD[74]和PromptAD[75]。
- 为了证明CAReg相对于FSAD的正态分布估计器的有效性,将三种最先进的基于统计的正态分布估计方法PaDiM[22]、OrthoAD[25]和PatchCore[26]作为基线。
- CAReg还与一些最先进的普通AD方法进行比较,包括GANomaly[54]、ARNet[10]、MKD[11]、CutPaste[63]、FYD[12]、PaDiM[22]、PatchCore[26]和CflowAD[42]。这些方法由于使用整个正常数据集进行训练,因此作为FSAD性能的上限,而FSAD方法仅使用少量正常样本。
C. 评估协议和模型配置
- 评估协议:使用接收者操作特征曲线下面积(AUC)指标来量化模型性能。对于异常检测和异常定位,分别考虑图像级和像素级的AUC。该指标广泛用于AD性能评估。
- 模型配置和训练细节:对于注册骨干网络,采用在ImageNet上预训练的ResNet - 18[79]架构。特征注册模块由一个编码器和一个预测器组成,与先前工作[12]、[20]中使用的类似。编码器包括三个 1 × 1 1×1 1×1卷积层,预测器包括两个 1 × 1 1×1 1×1卷积层。从ResNet骨干网络中移除池化操作,以保留注册特征中的空间信息。模型在单个NVIDIA GTX 3090 GPU上进行训练。图像被调整为 224 × 224 224×224 224×224像素的分辨率。应用先前工作[15]、[27]中使用的标准图像增强方法。模型参数更新50个epoch,初始学习率为0.0001,使用余弦学习率调度器的单个周期进行更新。批次大小设置为32,使用的优化器是动量SGD。对于正态分布估计器,PatchCore的采样比例γ默认设置为0.1,OrthoAD的低秩常数 D ′ D' D′默认设置为100。
D. 与最先进的FSAD方法比较
- 表II展示了在MVTec和MPDD数据集上的比较结果。结果表明,两种扩展方法TDG + 和DiffNet + 与未使用多个类别数据训练的相应原始版本相比,仅取得了有限的改进(TDG +:≤3.8%,DiffNet +:≤2.1%)。然而,所提出的类别无关注册训练方法(CAReg)与它的三个基线方法PaDim[22]、OrthoAD[25]和Patchcore[26]相比,有显著的改进。在 K = 2 , 4 , 8 K = 2,4,8 K=2,4,8的少样本场景下,CAReg在MVTec上分别优于PaDim 10.8%、11.2%和10.7%,在MPDD上分别优于15.2%、14.1%和17.0%。此外,与当前最先进的方法Patchcore相比,CAReg在MVTec上平均AUC提高了4.4%、4.9%和3.8%,在MPDD上提高了8.8%、7.9%和7.4%(以及7.4%)。MVTec的单个类别结果显示在表III中,MPDD的结果显示在表IV中。
- 在类别无关注册训练后,CAReg无需任何参数微调即可进行测试。相比之下,其他为每个类别使用单独模型的方法在每个实验中只关注优化单个类别的性能。因此,对于CAReg来说,要在每个类别上都取得最佳结果可能具有挑战性。然而,当对所有类别和所有shot场景的结果进行平均时,CAReg在MVTec上始终优于PaDim、OAD和PC的相应基线,分别提高了10.9%、8.5%和4.4%。CAReg在MVTec的15个类别中也表现出最低的性能标准差。例如,当 K = 8 K = 8 K=8时,CAReg在三个估计器(PaDim、OrthoAD和PatchCore)上达到的标准差分别为10.54%、9.52%和6.34%,明显低于相应的基线方法,这表明所提出的方法在不同类别上的泛化能力有所提高。此外,CAReg在MVTec数据集上,当 K = 8 K = 8 K=8时,AUC达到了令人印象深刻的95.1%,与Metaformer[8]相比,提高了约7%。虽然Metaformer由于在训练期间使用了额外的大规模数据集(MSRA10K[84])而具有优势,但CAReg在不依赖此类额外数据的情况下证明了其有效性。
- 对于FSAD的实际应用,将预训练模型适应目标类别所需的时间(称为适应时间)是一个重要因素。对于TDG + 和DiffNet +,微调过程非常耗时,因为它涉及到多个epoch的参数更新。而对于CAReg,由于像PaDim、OrthoAD和PatchCore这样的统计估计器可以在对支持图像进行推理后直接使用,无需参数微调,因此适应速度明显更快。结果是,在比较方法中,CAReg实现了最快的适应速度,使其在实际应用中更实用和高效。当对MVTec和MPDD上的FSAD,在 K = 2 , 4 , 8 K = 2,4,8 K=2,4,8时的适应时间进行平均时,PaDim + CAReg实现了最快的适应速度(4.47s),相比之下,DiffNet为357.75s,TDG + 为1559.76s。
- 为了解释支持集的分布对模型性能的影响,我们报告了在10个支持集中每个类别上PC和PC + CAReg的标准差(以百分比表示),如表III和表IV所示(较小字体)。我们提出的方法CAReg显著降低了不同支持集导致的性能方差。这种稳定性在MPDD数据集中尤为明显,与MVTec数据集相比,不同的支持集在MPDD数据集中对性能的影响更为显著,因为MVTec数据集本身具有较低的基线标准差。通过对多个集合的结果进行平均,我们提高了研究结果的可靠性和稳健性,从而增强了结果的可信度。
E. 与最先进的普通AD方法比较
- 虽然普通AD方法由于使用整个训练数据集并为每个类别训练单独的模型而具有固有优势,但使用PaDim估计器的CAReg仍然取得了有竞争力的性能,如表V所示。考虑了最先进的普通AD方法GANomaly[54]、ARNet[10]、MKD[11]、CutPaste[63]、FYD[12]、PaDiM[22]、PatchCore[26]和CflowAD[42]。即使在MVTec中只有4张支持图像时,使用相同ResNet - 18骨干网络的CAReg(AUC为89.2%)优于MKD(87.7%)。当支持图像数量增加到128时,CAReg取得了令人印象深刻的AUC为95.9%。同样,在MPDD数据集上,当有128张支持图像时,CAReg(AUC为83.2%)超过了使用更深骨干网络(WRN50)的PatchCore(82.1%)。
F. 消融研究
- 进行消融研究以调查CAReg中使用的四个关键组件的重要性:(1)应用于支持集的数据增强(DA),(2)多个类别上的特征注册聚合训练(FR),(3)空间变换网络(STN),以及(4)累积特征注册(AF)。这些模块基于系统的实验过程进行组合。我们进行了广泛的消融研究,以单独和综合地评估每个组件的影响。
- 特征注册聚合训练:表VI表明,在MVTec上,对于 K = 2 , 4 , 8 K = 2,4,8 K=2,4,8,特征注册(FR)模块使AUC分别提高了3.3%、2.9%和2.6%,在MPDD上分别提高了4.3%、1.8%和1.7%。这些结果表明,多个类别上的特征注册聚合训练增强了模型对新类别的泛化能力。而且,无论是否存在数据增强(DA),注册聚合训练(FR)的有效性都很明显。
- 空间变换模块:空间变换网络(STN)的使用能够进行大规模变换,从而改善特征注册。例如,如表VI所示,在MVTec上,STN模块使AUC从89.3%提高到91.2%( K = 8 K = 8 K=8),在MPDD上从64.8%提高到71.9%( K = 8 K = 8 K=8)。此外,STN模块在像素级定位方面也表现出相当的性能。然而,需要注意的是,当使用STN时,需要进行逆变换操作以将变换后的特征与原始图像重新对齐,这可能会导致一些像素级的不精确性。为了研究变换的自由度对性能的影响,我们对不同的STN版本进行了实验,结果显示在附录中的表XI中。值得注意的是,对于MVTec数据集,涉及旋转 + 尺度变换的STN表现出最佳性能。这一观察结果与该数据集中大多数物体位于中心位置,导致空间位置相似的事实相符。因此,在STN中包含平移变换对性能提升没有显著贡献,并且
- 累积特征注册:与RegAD[27]不同,RegAD是在两个单独的图像之间进行注册,CAReg引入了一种创新方法,将一个图像注册到一组图像上,从而增强了注册过程的稳健性。如表VI所示,在MVTec上,对于 K = 2 , 4 , 8 K = 2,4,8 K=2,4,8,累积特征(AF)注册使异常定位的AUC分别提高了1.0%、0.4%和0.4%,在MPDD上分别提高了0.5%、0.7%和0.1%,证实了该方法的有效性。
- 数据增强和选择方法:在测试期间对支持集应用数据增强对于提高性能至关重要。如表VI所示,在MPDD上,对于 K = 2 , 4 , 8 K = 2,4,8 K=2,4,8,数据增强使AD的AUC分别提高了1.2%、0.5%和0.6%,在MVTec上分别提高了6.8%、6.9%和6.9%。使用默认的数据增强方法,如旋转、平移、翻转和灰度化,遵循[15]和[27]中的实践。然而,像cutpaste和mixup这样的数据增强方法由于可能模拟异常而被排除。为了探索适合每个类别的数据增强方法,我们对10种数据增强方法进行了实验:灰度化、翻转、大/小角度旋转、大/小尺度平移、亮度、高斯模糊、中心裁剪和mixup。使用了三种选择方法:(i)与RegAD[27]一致的增强方法,(ii)所有增强方法,以及(iii)我们提出的基于Wasserstein距离的选择方法。在六个类别上进行了实验,包括三个物体(胶囊、药丸、牙刷)和三个纹理(地毯、皮革、瓷砖)。
- 图5显示了使用基于Wasserstein距离的方法对每个类别进行选择的结果。表VII表明,我们的方法尽管使用较少的增强方法,但优于使用所有增强方法,突出了选择合适增强方法的重要性。数据增强对物体和纹理有不同的影响。对于三个物体,使用适当的增强方法性能显著提高,而对三个纹理的选择影响较小。这种对纹理影响较小可能是由于难以通过简单的增强方法改变其特征分布。值得注意的是,仅使用四种固定的增强方法(灰度化、翻转、小角度旋转、小尺度平移)就能取得相当的结果,特别是对于瓷砖,效果最佳。
- 为了进一步评估数据增强选择,我们还包括了使用KL和JS距离的结果,与Wasserstein距离一起进行比较。表VII中的比较表明,KL和JS距离通常比RegAD的增强方法表现更好,并且与基于Wasserstein距离的方法表现相似或略差。这表明KL和JS距离可能是有前途的替代方法,具有竞争力的性能。此外,我们还解决了关于非独立增强示例可能导致假阳性率增加的担忧。如表VIII所示,全面评估表明,我们的增强策略有趣地将MVTec上的假阳性率(FPR)从5.44%降低到2.65%,在MPDD上从29.3%降低到19.8%(平均
K
=
2
K = 2
K=2,详细信息在附录中的表XII中)。这种降低主要是由于我们的增强选择模块,旨在丰富数据集,同时避免降低图像质量的偏差或微影。通过精心选择有益的增强方法,我们既保持了数据集的完整性,又提高了模型的整体性能。
G. 跨数据集泛化
- 在实际应用中,FSAD方法需要在测试图像与训练图像有很大差异时也能准确执行。为了评估CAReg在这种情况下的泛化能力,我们进行了实验,将网络在一个数据集上进行训练,在另一个数据集上进行测试。对于这些跨数据集泛化实验,我们使用了MVTec和MPDD数据集,因为它们在类别、背景和可变性方面有显著差异(如表I所示)。结果显示在表IX中。这些结果有效地表明,与在原始数据集上训练相比,改变训练数据集对性能的影响很小。例如,当使用PC估计器评估MVTec上的性能时,从原始训练数据转换到MPDD(与MVTec相比,类别和样本数量都明显较少的数据集),AUC仅降低了0.8%。相反,当在MPDD上进行评估时,在MVTec上训练模型会提高性能。一个
H. 可视化分析
- 图6提供了定性分析结果,以展示类别无关注册特征
- 图6提供了定性分析结果,以展示类别无关注册特征训练方法的有效性及其对异常检测和定位性能的影响。使用PaDim正态分布估计器时,CAReg产生的异常定位(列e)与地面真值(GT)(列j)相比,比其相应的基线(列c)更接近。同样,使用PatchCore正态分布估计器时,CAReg产生的结果(列i)比其相应的基线(列g)更接近GT。这些可视化结果说明了通过在多个类别上进行特征注册聚合的训练过程的有效性,从而提高了异常定位的性能。
- 在图7中,使用t - SNE[85]对MVTec测试集上提取的特征进行可视化,每个点代表一个正常图像。很明显,经过特征注册训练后,每个类别内的特征变得更加紧凑。同时,不同类别的特征更好地分离。更紧凑的特征分布是理想的,因为它提高了每个类别正态分布估计的准确性。这种特征的更好分离有助于更好地区分正常和异常样本,从而提高AD性能。总体而言,可视化结果提供了类别
7. Conclusion——结论
本文介绍了一种用于少样本异常检测(FSAD)的新颖训练方法CAReg,通过学习跨不同类别的通用配准技术,仅使用每个类别的正常图像,使模型能够准确地将测试图像与其对应类别(来自未见过的新类别)的支持图像进行配准,无需重新训练或参数微调。实验结果表明,CAReg在标准基准数据集上的异常检测和异常定位任务中优于现有FSAD方法,即使与使用大量数据训练的异常检测方法相比也具有竞争力。它显著提高了FSAD的准确性和效率,展示了其在现实世界异常检测应用中的高潜力。
References——引用
这里给出部分引用的链接,全部引用文章还请参照原论文
- [17] L. G. Brown, “A survey of image registration techniques,” ACM computing surveys (CSUR), vol. 24, no. 4, pp. 325–376, 1992:
- 论文链接
- L. G. Brown, “图像配准技术综述”,《ACM 计算调查》(ACM computing surveys (CSUR)),第 24 卷,第 4 期,第 325–376 页,1992 年。
- [18] B. Zitova and J. Flusser, “Image registration methods: A survey,” Image and Vision Computing, vol. 21, no. 11, pp. 977–1000, 2003:
- [论文链接]
- B. Zitova 和 J. Flusser, “图像配准方法综述”,《图像与视觉计算》(Image and Vision Computing),第 21 卷,第 11 期,第 977–1000 页,2003 年。(https://www.sciencedirect.com/science/article/abs/pii/S0262885603001379)
- [19] H. Peng, P. Chung, F. Long, L. Qu, A. Jenett, A. M. Seeds, E. W. Myers, and J. H. Simpson, “Brainaligner: 3d registration atlases of drosophila brains,” Nature Methods, vol. 8, no. 6, pp. 493–498, 2011:
- 论文链接
- H. Peng, P. Chung, F. Long, L. Qu, A. Jenett, A. M. Seeds, E. W. Myers 和 J. H. Simpson, “果蝇大脑的三维配准图谱:脑对齐器”,《自然方法》(Nature Methods),第 8 卷,第 6 期,第 493–498 页,2011 年。
论文[20]
-
中文名:《探索简单孪生表示学习》
-
主要内容:
- 突破传统条件的发现:孪生网络在无监督视觉表示学习的近期模型中是常见结构,以往这类模型需要使用负样本对、大批次以及动量编码器等条件来最大化同一图像的两个增强版本之间的相似性以避免解的崩塌。但该论文报告了令人惊讶的实验结果,即简单的孪生网络即使不使用上述这些条件,也可以学习到有意义的表示。
- 防止解崩塌的关键:实验表明对于所使用的损失函数和结构,确实存在解崩塌的情况,但停止梯度(stop-gradient)操作在防止崩塌方面起着至关重要的作用。作者提供了关于停止梯度含义的假设,并通过概念验证实验进行了验证。
- 提出的方法及效果:提出了“Simsiam”方法,该方法在ImageNet和下游任务上取得了有竞争力的结果。作者希望这一简单的基线能够促使人们重新思考孪生架构在无监督表示学习中的作用。
-
该论文的链接为:
论文[21]
-
中文名:《空间变换网络》
-
主要内容:
- 提出新的可学习模块:卷积神经网络是强大的模型类别,但在对输入数据的空间不变性方面存在计算和参数效率上的不足。该论文引入了一个新的可学习模块——空间变换器(Spatial Transformer),它能够明确地允许在网络内对数据进行空间操作。
- 模块的优势及作用:这个可微分的模块可以插入到现有的卷积架构中,使神经网络能够根据特征图本身的条件对特征图进行主动的空间变换,无需额外的训练监督或对优化过程进行修改。使用空间变换器的模型能够学习到对平移、缩放、旋转以及更一般的扭曲的不变性,在多个基准测试和多种变换类别上取得了最先进的性能。
-
该论文的链接为:arXiv链接。
论文[22]
-
中文名:《Padim:用于异常检测和定位的补丁分布建模框架》。
-
主要内容:
- 提出创新框架:此论文提出了 Padim 框架,旨在解决异常检测和定位问题。该框架基于对图像补丁分布的建模,利用深度学习技术实现高效的异常检测和精准的定位。
- 工作原理:通过预训练的深度神经网络提取图像补丁的特征,然后对正常样本的补丁特征分布进行建模。在检测阶段,将测试样本的补丁特征与正常分布进行比较,若差异较大则判定为异常,并根据差异的具体情况进行异常定位。
- 优势特点:Padim 框架具有较高的准确性和鲁棒性,能够适应不同类型的异常情况。同时,它可以有效地处理大规模图像数据,提高异常检测和定位的效率。
论文链接:由于不清楚具体的数据库来源,无法直接给出确定的论文链接。通常可以在学术数据库如 SpringerLink、IEEE Xplore、arXiv 等平台上搜索论文标题来查找该论文。
补充: 基于配准特征正态分布的异常检测与单类分类将特征映射到特征空间进行异常检测的区别
1. 特征处理方式
- 基于配准特征正态分布的异常检测
- 配准过程:
- 首先利用配准网络对图像进行处理。例如,将图像划分为网格,通过STN模块提取特征并进行连接、上采样等操作得到聚合特征,然后基于这些特征估计正态分布。这个过程中,配准操作旨在使同一类别的图像在特征层面更好地对齐,以便更准确地估计该类别的正态分布。
- 强调不同图像之间的特征配准,以适应不同类别数据在特征分布上的差异,使得模型能够处理未见过的类别数据而无需重新训练。
- 正态分布估计:
- 通过多种方式估计正态分布,如PaDim采用多元高斯分布并对协方差进行特殊处理,OrthoAD利用低秩嵌入,PatchCore使用核心集采样等。这些方法都是基于配准后的特征来确定目标类别正常样本所遵循的正态分布规律。
- 配准过程:
- 单类分类将特征映射到特征空间的异常检测
- 特征映射:
- 主要是将输入数据的特征通过某种映射方式(通常是由神经网络学习得到的映射)转换到一个特征空间。这个过程重点在于学习一种有效的特征表示,使得同一类别的数据在这个特征空间中能够聚集在一起,而与其他类别数据区分开来。
- 可能不会涉及到像配准网络这样专门针对图像对齐的操作,而是更侧重于通过神经网络的学习能力找到一种通用的特征映射方式,以实现对不同类别数据的区分。
- 异常判断依据:
- 在特征空间中,通常通过判断测试样本的特征与该类别在特征空间中的中心或典型区域的距离来确定是否为异常。例如,如果一个测试样本的特征距离该类别在特征空间中的中心区域较远,就可能被判定为异常。这种判断方式相对较为直接,基于特征空间中的距离度量。
- 特征映射:
2. 异常检测的依据
- 基于配准特征正态分布的异常检测
- 与正态分布比较:
- 通过将测试样本的配准特征与估计出的正态分布进行比较来检测异常。具体地,计算测试样本在各个补丁位置的特征与正态分布之间的距离(如使用不同的距离函数,如PaDim的马氏距离等),如果距离超出一定范围(根据距离函数和阈值设定),则判定为异常。
- 这种方法基于对正态分布的统计假设,即正常样本应该符合估计出的正态分布,而异常样本则偏离这个分布。
- 与正态分布比较:
- 单类分类将特征映射到特征空间的异常检测
- 基于特征空间距离:
- 主要依据测试样本在特征空间中的位置与该类别正常样本所占据区域的关系来判断异常。通常会设定一个距离阈值或者使用一些基于密度的方法(如判断在特征空间中某区域的样本密度是否过低)来确定测试样本是否为异常。
- 这里的异常判断更侧重于样本在特征空间中的相对位置,而不是与某种特定的分布模型(如正态分布)进行比较。
- 基于特征空间距离:
3. 模型的泛化能力和对新类别数据的处理
- 基于配准特征正态分布的异常检测
- 泛化能力优势:
- 由于采用了配准网络和基于统计的正态分布估计方法,模型在一定程度上能够更好地处理新类别数据。配准网络可以使模型适应不同类别图像在特征上的差异,而正态分布估计方法可以根据少量的正常样本快速估计出该类别的特征分布规律,从而对新类别数据进行异常检测。
- 例如,在工业缺陷检测中,对于新出现的产品类别,模型可以通过配准网络对其图像进行处理,并基于少量正常样本估计正态分布,进而检测异常。
- 泛化能力优势:
- 单类分类将特征映射到特征空间的异常检测
- 对新类别数据的挑战:
- 对于新类别数据,可能需要重新训练模型或者使用一些迁移学习的方法来适应新类别。因为模型是基于已有的类别数据学习到的特征空间映射关系,对于新类别可能不适用。
- 例如,如果在一个图像分类任务中,新出现了一种植物类别,原有的基于特征空间的单类分类模型可能无法直接对其进行准确的异常检测,需要对模型进行调整或重新训练。
- 对新类别数据的挑战:
存在的问题
上述论文中提到的方法具有一些潜在的缺点,具体分析如下:
1. 配准假设的局限性
- 跨类别泛化假设的不确定性
- 论文方法假设配准可以在不需要任何参数微调的情况下跨不同类别进行泛化。然而,在实际应用中,不同类别之间可能存在较大的差异,例如不同类别的物体在形状、纹理、颜色分布等方面可能有显著不同。这种差异可能导致配准网络无法很好地适应所有类别,使得估计出的正态分布不够准确,从而影响异常检测的效果。
- 对类别差异的适应性挑战
- 尽管配准网络和相关操作试图处理类别差异,但对于一些具有特殊特征或复杂结构的类别,现有的配准方法可能无法完全捕捉到其特征的本质差异,进而影响模型对这些类别的异常检测性能。
2. 数据增强的复杂性及潜在问题
- 增强选择的不完全性
- 虽然提出了基于Wasserstein距离的数据增强选择机制,但数据增强本身是一个复杂的过程,可能存在一些未考虑到的因素。例如,某些类别可能对特定的数据增强方式有独特的敏感性,而当前的选择机制可能无法完全适应这些特殊情况。可能存在一些增强方式虽然在整体上符合选择标准,但对于某些特定类别中的一些微妙特征可能会产生不利影响,从而影响异常检测的准确性。
- 计算成本与效果的平衡
- 只增强支持集的策略在一定程度上降低了计算成本,但可能无法充分利用数据增强对所有类别数据的潜在优势。对于一些类别,可能需要更广泛的数据增强方式来提高模型对其特征的学习能力,但这可能会增加计算成本,目前的方法在计算成本和增强效果之间的平衡可能不是最优的。
3. 计算复杂度方面的问题
- 部分估计器的高复杂度
- 如PaDim估计器在计算协方差矩阵逆时具有较高的计算复杂度( O ( H W D 3 ) O(HW D^{3}) O(HWD3)),这在处理大维度多尺度特征时会导致计算效率低下。这种高复杂度可能限制了方法在大规模数据或对实时性要求较高的场景中的应用,例如在工业生产线上需要快速检测产品异常时,可能无法满足实时性要求。
- 内存成本与效率的考量
- 虽然OrthoAD和PatchCore在一定程度上考虑了内存成本,但对于一些资源受限的设备或大规模数据处理场景,内存成本仍然可能是一个问题。例如,PatchCore使用核心集采样构建记忆库,但在处理大量数据时,记忆库的构建和维护可能会消耗大量内存资源,影响方法的整体效率。
4. 噪声的潜在影响
- 对特征提取的干扰
- 在实际应用场景中,图像数据往往包含噪声。噪声可能会干扰配准网络对图像特征的提取过程。例如,在工业缺陷检测中,图像可能由于拍摄设备的局限性、环境光线的干扰等因素存在噪声。这些噪声可能会使提取出的特征不准确,进而影响到后续的配准操作和正态分布估计。
- 对正态分布估计的偏差
- 由于噪声的存在,基于有噪声的特征估计出的正态分布可能会产生偏差。如果测试样本也受到类似噪声的影响,那么在将测试样本的特征与估计的正态分布进行比较时,可能会导致错误的异常检测结果。例如,噪声可能会使正常样本的特征看起来更接近异常区域,或者使异常样本的特征看起来更符合正常的分布,从而降低异常检测的准确性。
5. 多角度变换对配准的挑战
- 复杂的变换情况
- 实际场景中的物体可能会呈现出多角度的变换,如在工业零部件检测中,零部件可能在不同的角度和位置被拍摄。这种多角度的变换可能会使配准网络难以准确地将不同视角下的图像进行配准。即使论文中使用了空间变换网络(STN)等技术,但对于一些复杂的多角度变换情况,可能仍然无法保证完全准确的配准效果。
- 配准准确性的影响
- 不准确的配准会导致提取的特征不能很好地反映物体的真实特征分布。例如,如果配准错误地将不同角度下的关键特征对齐错误,那么在估计正态分布时,就会基于错误的特征信息,从而影响到异常检测的准确性。而且,多角度变换可能会增加数据的复杂性,使得配准网络需要更多的训练数据和更复杂的训练过程来适应这种变化,但论文中可能没有充分考虑到这一点。