离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

你是否也曾迷惑于「离群检测,异样检测,新类检测,开集辨别,散布外检测」之间错综复杂的关系?你是否也想要解决开放世界的问题却不知道从哪个任意入手?不知道利用什么方法解决问题?这篇最新综述将让你对开放世界畛域有全新的认识!

在开放世界中分类是验证模型安全性的重要方式,也是一个真正能够商用落地的模型不可避免要面对的问题。传统的分类模型都是在一个封闭的世界中举行训练,即假设尝试数据和训练数据都来自同样的散布(称作散布内,in-distribution)。例如我们利用一组猫、狗照片训练一个猫、狗分类器。然而,部署的模型在实际使用中总是会遇到一些不属于封闭世界种别的图片,例如老虎。或者也会遇到一些和训练图片视觉上大相径庭的照片,例如卡通猫。模型应当如何去处理这些不属于训练散布的图片(即散布外样本,out-of-distribution),是开放世界畛域所关注的问题。

开放世界畛域中时常能够见到如下几个任意:

OD: Outlier Detection, 离群检测

AD: Anomaly Detection, 异样检测

ND: Novelty Detection, 新类检测

OSR: Open Set Recognition, 开集辨别

OOD Detection: Out-of-Distribution Detection, 散布外检测

它们之间虽然各有千秋,却又有千丝万缕的联系。虽然现有工作也有尝试着将自己的任意和别的任意举行区分,但是各任意之间也不统一,使得整个畛域都缺乏对各个任意准确的界说。让外界甚至参与者都对各个任意的具体目标困惑。

为了解决这个问题,一篇名为《Generalized Out-of-Distribution Detection: A Survey》的综述解决了这些困惑,将以上五个任意归纳进一个「广义 · 散布外检测」(Generalized OOD Detection)的大框架内。至此,这些任意都能举行准确的定位,而它们之间的关系也顿时清晰可辨。

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

论文地址:https://arxiv.org/abs/2110.11334

项目主页:https://github.com/Jingkang50/OODSurvey

准备工作

为了方便理解「广义散布外检测框架」,我们需要了解以下两个概念:

Covariate Shift:表层统计层面上的散布变化,简称统计偏移。

Semantic Shift:深层语义层面上的散布变化,简称语义偏移。

规范地讲,如果我们用 X 代表图片像素空间的变量,用 Y 代表图片语义空间的变量,这样我们可以用 P(X,Y)来表示一组图片的散布。

像素空间散布 P(X)的偏移就是 Covariate Shift,可能来源于对抗样本或者画风的变化。

语义空间散布 P(Y)的偏移就是 Semantic Shift,可能来源于新种别的加入。

下图生动地展现了这两种散布偏移:

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

广义散布外检测(Generalized OOD Detection)

在进修到「统计偏移」和「语义偏移」这两个概念之后,我们可以利用下图来认识各个任意在框架中的位置。任意的定位使用四个维度:

(1)偏移类型:任意需要检测出表层统计偏移或深层语义偏移; 

(2)散布内数据种别数:散布内数据包含一个类或多个类;

(3)对散布内样本的处理:是否需要对散布内样本举行分类;

(4)是否遵循“训练 – 尝试模式”:Transductive 进修需要利用所有样本举行决策;Inductive 进修则遵循训练 – 尝试模式,目的是得到一个单独可用的模型。

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

根据上图,“异样检测”AD 分为两个子任意,即 Sensory AD 和 Semantic AD,即 “感知上的异样检测” 和“语义上的异样检测”。

感知上的异样检测(Sensory AD)需要辨别出具有统计偏移的样本,无论散布内样本种别数。

语义上的异样检测(Semantic AD)需要辨别出具有语义偏移的样本,并要求散布内只有单类。

「新类检测」ND 也分为两个子任意。他们都需要辨别出具有语义偏移的样本,但是根据散布内样本种别的不同分为「单类的新类检测」(One-Class ND)和「多类的新类检测」(Multi-Class ND)。

「开集辨别」OSR 同样需要辨别出具有语义偏移的样本,但是相比于 ND,它只关心散布内是多种别的情况,并且要求对散布内样本举行正确的分类。

「散布外检测」(OOD Detection)同样需要辨别出具有语义偏移的样本,但是相比 OSR,它还包含了散布内是单类的情况。因此,OOD Detection 可以理解成一个包含 Semantic AD, Novelty Detection, OSR 的超级大类。

对各个任意的具体介绍

AD: Anomaly Detection, 异样检测

背景:当人们提起异样(Anomaly)时,心中其实已经形成了一个 “正常” 的概念。例如,要创建一个 “热狗 / 非热狗检测器”,我们将“热狗” 的概念界说为正常,将不符合的界说为异样,也就是非热狗。

请注意,在这种情况下,热狗是一个统一的概念,无论热狗的大小、酱汁、面包类型、价格、香肠的来源等可能存在差异。任何其他物体,如牛排、米饭,以及非食物物体,如猫和狗,都被视为异样。

同时,现有的异样检测平时会对目标环境有所限制。例如,“热狗 / 非热狗检测器”会采用 “检测器只会接触真实照片” 的假设,尝试时不会存在卡通或素描图。这使得在检测统计偏移时避免了语义偏移的出现。另一个现实的例子是工业缺陷检测,它针对的只是一组特定的产品装配线。这使得在检测统计偏移时避免了语义偏移的出现。换句话说,“开放世界”假设平时不是完全 “开放” 的。然而,“非热狗”或 “缺陷” 其实已经形成了一个巨大的未知空间,也早已打破了 “封闭世界” 的假设。

综上所述,异样检测任意的主要特征是其统一地界说了“正常”,并且假设一个相对封闭的限制。

界说:异样检测(Anomaly Detection, AD)的任意旨在找出尝试集结所有偏离 “预设的正常样本” 的异样样本。这种偏移可能是来源于 covariate shift 或者 semantic shift。该任意平时假设另一种偏移类型不存在。这两种不同的样本偏移类型对应着 “异样检测” 的两个子任意:“感知上的异样检测”sensory AD 和“语义上的异样检测”semantic AD。

Sensory AD,即 “感知上的异样检测”。该任意希望辨别出由 covariate shift 导致的异样样本。此处我们假设所有预界说好的“正常” 样本都具有同一种像素空间散布,并且整个尝试集的样本空间不存在语义上的偏移,即尝试集的所有样本都来自同一个种别。总的来说, “Sensory AD”旨在检测出同一个种别的所有尝试样本中具有 “异样” 像素空间散布的样本。

Semantic AD,即 “语义上的异样检测” ,该任意希望辨别出由 semantic shift(label shift)导致的异样样本。此处我们假设所有预界说好的“正常” 样本都具有相同的语义散布,即来自同一个种别,并且整个尝试集的样本空间具有相同的像素空间散布。总的来说,“Semantic AD”旨在检测出同种像素空间散布的所有尝试样本中非 “正常” 种别的样本。

应用:

Sensory AD:工业检测,对抗样本防御,活体检测,艺术品的伪造辨别,伪证辨别等。

Semantic AD:视频监控,数据筛选等。

ND: Novelty Detection, 新类检测

背景:“Novelty”这个词平时指的是未知的、新颖的、有趣的东西。虽然新类检测的目标与异样检测相似,但是它们之间有三个显著不同:

在动机方面,新类检测平时不会像异样检测那样将 “新类” 样本视为错误、恶意、应当丢弃的。反之,该任意会将它们视为进修资源,以积极的进修态度供未来使用。例如新野生动物检测器,检测到的新类可供生物学界举行研讨。

新类检测主要侧重于语义转移。它有一个可互相替换的名字:“novel class detection”。

新类检测去除了散布内样本只能属于一个类的限制。训练集可以出现一个或多个类。

界说:新类检测(Novelty Detection, ND)的任意旨在找出尝试集结不属于训练集结任何种别的 “新类” 样本,检测到的 “新类” 样本平时会为下一步增量进修(incremental learning) 提供更多的进修样本,或者作为全新的类型举行探索研讨。

基于训练集结的种别数量,“新类检测”可被分为两个子类型: “单类新类检测”(One-class ND);以及 “多类新类检测”(Multi-class ND)。尽管“多类新类检测” 的训练集样本中包含多个种别,其目的只是将尝试集结的 “新类” 样本与 “散布内” 样本区分开。因此,“单类新类检测”和 “多类新类检测” 的本质都是二分类问题。

应用:视频监控,行星探索,增量进修

OSR: Open Set Recognition, 开集辨别

背景:在封闭世界中训练的机器进修模型平时将属于未知种别的尝试样本错误地分类为具有高置信度的 已知种别。一些文献将模型这种过度自信的行为称为“模型的傲慢”。因此,OSR 于 2013 年被提出,旨在解决这个问题。

界说:“开集辨别”(Open Set Recognition, OSR)要求多分类器同时达到如下两个要求:

对尝试集结属于 “已知种别“的图片举行准确分类;“已知种别” 代表训练集结存在的种别。

检测出”未知”种别, “未知种别”不属于训练集结任何种别。

OOD Detection: 散布外检测

背景:类似的,鉴于深度进修模型平时会对来自不同语义散布的样本举行过度自信地分类,散布外检测畛域应运而生,要求模型在保证分类性能的同时,拒绝语义偏移的样本,以保证可靠性和安全性。

界说:“散布外检测”任意和新类辨别类似,都是在找出尝试集结不属于训练集结任何种别的 “新类” 样本。但是在新类辨别的基础上,同时完成多分类任意。相比于 “开集辨别”,“散布外检测” 的训练集可以是单种别的也可以是多种别的。

备注:虽然当前学界的大多数论文都将 “out-of-distribution” 理解为“out-of-label/semantic-distribution”,但一些散布外检测的工作也考虑检测 covariate shift(统计偏移)。它们声称 covariate shift 平时会导致模型性能显着下降,因此需要模型举行辨别和丢弃。然而,尽管在某些特定(平时是高风险)任意上检测 covariate shift 是合理的,例如由一家医院训练的医疗诊断模型应该更加保守地对来自其他医院、具有 covariate shift 的图像举行决策,但这个目标与另一个畛域 out-of-distribution generalization(畛域泛化)似乎有所冲突。综述原文对 out-of-distribution detection 和 out-of-distribution generalization 做了详细的讨论,欢迎大家阅读原文。但是无论如何,检测语义偏移一直是散布外检测任意的主流。

OD: Outlier Detection, 离群检测

背景:根据维基百科,outlier 是指与其他观测结果显着不同的数据点。不同于之前任意需要检测与训练数据散布不同的尝试样本,离群检测则是直接处理所有观察结果,旨在从受污染的数据集结找出异样。由于离群检测不遵循“训练 – 尝试模式”,而其方法平时依赖于所有观察结果,因此解决此问题的方法平时是 Transductive 传导进修而不是 Inductive 归纳进修。

界说:“离群检测”(Outlier Detection, OD)的任意旨在检测出给定数据集结与其他样本显著不同的样本,其中这种不同既可以来源于 covariate shift 也可以来源于 semantic shift。

应用:数据清洗

至此,该研讨希望读者对以上五个任意的异同有了更加深入的理解。下图用图片案例的方式再次比较这些任意。

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

方法论

该研讨全面总结了解决 「广义散布外检测」中各个任意的方法。由于它们的目标大体相同,它们的解法自然也相似。研讨发现它们的解法基本分为四大类:

Density-based Methods 基于密度估计的方法

Reconstruction-based Methods 基于重构的方法

Classification-based Methods 基于分类的方法

Distance-based Methods 基于距离的方法

欢迎大家参考综述原文举行参考,同时欢迎大家在综述的 GitHub 主页提 issue/pr 举行补充。文尾附上了方法论的目录。

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

挑战和展望

最终研讨人员总结了目前该畛域的问题、挑战和发展方向。

挑战 1: 建立正确并且规范的评价指标

挑战 2: 不需要额外数据的散布外检测

挑战 3: 散布内分类和散布外检测的权衡

挑战 4: 建立有现实意义并且大规模的数据集

展望 1: 框架中不同任意互相借鉴及比较

展望 2: 散布外检测和散布外泛化的结合

展望 3: 散布外检测和开集噪声标签进修的结合

展望 4: 期待举行更多的理论研讨

详情参考原文。该研讨希望开放世界畛域能够发展地更好,并且希望更多研讨者能够关注并投身到这个人工智能的重要问题上。

写在最后

笔者是在商汤新兴创新事业群(EIG)研讨中心实习时开始接触 “开放世界辨别” 畛域。我们为了更好地解决具体业务问题,团队会将业务问题抽象成学术问题举行深挖和充分的研讨。探索得到的思考,洞察,和新方法不仅形成了顶会论文,也直接在业务上举行落地。实习结束后,笔者也被 EIG 研讨中心直推至 MMLab 举行深造,目前仍然和 EIG 研讨中心保持紧密合作,共同在开放世界辨别的畛域探索新颖,有效,可落地的扎实工作。

EIG 研讨中心也荟聚了众多顶尖的人工智能技术人才,有若干名校博士、顶会论文作者、openmmlab 开源项目主要贡献者。大家秉承着敢为人先的理念,致力于人工智能赋能百业,创新氛围浓厚。

目前团队正招募全职研讨员(工作地点:香港),希望入职后能够:

– 从产品中抽象研讨问题,并将研讨成果转化到产品

– 推动前沿的深度进修进展,课题包括:开放世界辨别、视频 OCR、文档关键信息提取、半监督检测、分割等,应用方向包括:多模态视频理解、智能制造视觉检测、遥感

– 在顶级会议和期刊上发表关键研讨成果

– 成为内部研发工具箱和开源项目的贡献者

平时我们期望候选人是:

– STEM 博士,在所在的科研畛域(不限于 AI 相关畛域)有突出成果,能够独立举行新的研讨课题,或者,本科以上学历,在 AI 畛域发表过至少一篇一作论文或在知名的 AI 竞赛中获得过前五名的成绩。

– 对人工智能充满热情并有很强的自我驱动力

– 具有较强的 Python 编码能力(了解 ML/DL 框架者优先)

我们能够提供:

– 与研讨和产业界丰富经验的研讨员和工程师团队合作的宽松环境

– 卓越的研发环境,包括多年积累的领先技术和内部研发工具箱

– 论文研讨会、技术培训和个性化指导

– 海量的计算资源,有 1000 多个 GPU 的集群可供使用

– 有竞争力的 package

– 可以与我们在全球的联合实验室合作,表现优异的同学有推荐读博的机会

请感兴趣的同学通过 wayne.zhang (at) sensetime.com 联系我们!期待与你的合作!

附录

离群?异样?新类?开集?散布外检测?一文搞懂其间异同!

给TA打赏
共{{data.count}}人
人已打赏
AI

阿里云贾扬清:用4S标准带领团队锻造大数据+AI产品体系「阿里灵杰」

2021-10-21 16:19:00

AI

引入多感官数据进修,华人学者Ruohan Gao摘得2021 UT-Austin最佳博士论文奖

2021-10-27 16:51:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索