arXiv在2021年10月21日上传的论文**“Generalized Out-of-Distribution Detection: A Survey“,作者来自新加坡的南洋理工大学(NTU)和美国的威斯康星大学Madison分校**。
OOD检测对确保机器学习系统的可靠性和安全性至关重要,例如,在自动驾驶中,希望驾驶系统在检测以前从未见过异常场景或目标并且无法做出安全决策时,要发生警报并将控制权移交给人。(安全员)
OOD检测已经开发了大量的方法,从基于分类、基于密度到基于距离的方法。同时,其他几个问题在动机和方法论方面都与OOD检测密切相关,包括:异常检测(AD,anomaly detection)、新颖性检测((ND,novelty detection)、开放集识别(OSR,open set recognition)、和异常值检测(OD,outlier detection)、尽管有不同的定义和问题设置,这些问题经常使大家感到困惑。
该技术提出了一个广义的OOD检测的通用框架,包括上述五个问题,即:AD、ND、OSR、OOD检测和OD,这五个问题可以看作该框架的特例和子任务。
现有的机器学习模型大多基于封闭世界假设进行训练的,其中假设测试数据是来自与训练数据相同的分布,称为:in-distribution (ID)。然而,当模型部署在开放世界场景中,测试样本可能是OOD,分布漂移可能是由语义漂移(例如:OOD样本来自不同的类),或**Covariate shift(**例如、来自不同域的OOD样本)引起,这里主要讨论语义漂移检测的。
综述聚焦于计算机视觉和基于深度学习方法,基本分成4个类:
- 基于密度的方法
- 基于重建的方法
- 基于分类的方法
- 基于距离的方法。
如图是本文提出的广义OOD检测框架:包括 anomaly 检测 (AD), novelty 检测 (ND), open set 识别 (OSR), out-of- distribution 检测 (OOD)和outlier 检测 (OD) 。
异常检测(AD)
-
AD旨在检测在测试期间偏离预定义正态性的任何异常样本。 偏差可能由于covariate shift或语义漂移而发生,同时假设其他分布漂移不存在。 这带来两个子任务:感官 AD 和语义 AD。
-
感官AD 检测 covariate shift 的测试样本,基于正态性来自相同协变量分布的假设。语义 AD 检测有标签漂移的测试样本,基于正态性来自相同的语义分布(类别)假设,即正态性应该只属于一个类。
-
感官AD 仅关注具有相同或相似语义的目标,并识别其表面的观测差异。 具有感官差异的样品被识别为感官异常。 示例应用包括对抗防卫、biometrics和艺术品的伪造识别、图像取证、工业检查等。一种流行的现实世界 AD 基准是用于工业检测的 MVTec。
-
与感觉 AD 相比**,语义 AD 只关注语义漂移**,不存在covariate shift。 实际应用的一个例子是犯罪监控。 特定类的活跃图像爬虫也需要语义 AD 方法来确保收集的图像纯度。
新颖性检测(ND)
ND旨在检测不属于任何训练类别的任意测试样本。 检测的新样本通常是为未来的建设性程序准备,例如更专业的分析,或模型本身的步进学习(incremental learning)。 根据训练类数目,ND 包含两种不同的设置: 1)只一个类的新颖性检测(one-class ND); 2)多个类新颖性检测(multi-class ND)。 值得注意的是,尽管有很多in-distribution(ID)类,但多个类 ND 的目标只是将新样本与in-distribution区分开来。 一个类ND和多个类 ND 都被表述为二元分类问题。
真实世界的 ND 应用包括视频监控、行星探索和步进学习。
开放集识别(OSR)
OSR要求多分类器,
- 同时准确分类来自已知的已知类,的测试样本,以及
- 同时检测来自,未知的未知类的测试样本。
- OSR通常支持真实世界图像分类器的稳健部署,其拒绝开放世界的未知样本。
OOD检测
OOD检测旨在检测相对训练数据不重复标签的测试样本,形式上,OOD检测设置中的测试样本来自in-distribution(ID)语义飘移分布, 这个in-distribution(ID)数据可以包含单个类或多个类。 当训练中存在多个类时,OOD 检测不应损害其in-distribution(ID)数据分类能力。
OOD检测的应用通常属于安全-紧要的情况,例如、自动驾驶、在构建算法基准时,OOD数据集不应该与in-distribution(ID)数据集有标签重叠。
异常值检测(OD)
-
OD旨在检测由于covariate shift或语义漂移与给定观察集中其他样本明显不同的样本。
-
虽然OD主要应用于数据挖掘任务,但也用于现实世界的计算机视觉应用,如视频监控和数据集清理。 数据集清理的应用,OD通常用作主要任务的预处理步骤,例如从开放集噪声标签中学习、微监督学习(webly supervised learning)和开放集半监督学习。
-
如图是广义OOD检测框架的实例问题设置概览:
尽管 OSR 和实际使用具有关联性,但仍然存在一些限制,比如在训练期间不允许额外的数据,以及对理论开放风险界限的必要保证。这些限制排除了更注重有效性改进但可能违反 OSR 约束的方法。另一方面,OOD 检测包含更广泛的学习任务和解决方案空间。
有趣的是**,异常值检测(OD)任务可以被视为广义 OOD 检测框架中的异常值**,因为异常值检测器(OD)是给定所有观察值,而不是遵循训练-测试方案。此外,在最近的深度学习领域很少看到这个主题的文章发表。然而,从直观上讲异常值也属于一种OOD。
相关领域题目由如下5个领域:
- 带拒绝的学习
- 域自适应和域泛化。
- 新颖性发现
- 零样本学习
- 开放世界识别(持续学习)
总结
慢慢的将OOD检测,全部都搞透彻,研究OOD的策略及其深入研究OOD的识别方案,用到了在进行补充与全部将其搞定都行啦的理由与打算。