当前位置:网站首页>[论文翻译] Recent Advances in Open Set Recognition: A Survey
[论文翻译] Recent Advances in Open Set Recognition: A Survey
2022-06-10 23:43:00 【xiongxyowo】
[论文地址][TPAMI 21]
省略了论文的图表部分
Recent Advances in Open Set Recognition: A Survey
Abstract
在现实世界的识别/分类任务中,受各种客观因素的限制,在训练识别器或分类器时,通常很难收集训练样本来穷尽所有的类别。一个更现实的情况是开放集识别(OSR),在训练时存在对世界的不完全了解,在测试时未知的类可以提交给算法,这就要求分类器不仅要对看到的类准确分类,还要有效地处理未看到的类。本文对现有的开放集识别技术进行了全面的调查,涵盖了从相关定义、模型的表示、数据集、评价标准和算法比较等各个方面。此外,我们简要分析了OSR和其相关任务之间的关系,包括Zero-Shot、One-Shot(Few-Shot)识别/学习技术、带有拒绝选项的分类等等。此外,我们还回顾了开放世界的识别,它可以被看作是OSR的自然延伸。重要的是,我们强调了现有方法的局限性,并指出了这一领域中一些有前途的后续研究方向。
I. Introduction
在一个常见的封闭集(或静态环境)假设下:训练和测试数据来自相同的标签和特征空间,传统的识别/分类算法已经在各种机器学习(ML)任务中取得了巨大的成功。然而,更现实的场景通常是开放的、非稳定的,如无人驾驶、故障/医疗诊断等,未见的情况会意外出现,这大大削弱了这些现有方法的鲁棒性。为了应对这一挑战,人们探索了一些相关的研究课题,包括终身学习、迁移学习、领域自适应、Zero-Shot、One-Shot,开放集识别/分类,等等。
基于Donald Rumsfeld著名的"There are known knowns"的说法,我们进一步扩展了[22]所断言的基本识别类别,我们重申,识别应该考虑以下四个基本类别的类别:
- 1)Known Known Classes (KKC). 即具有显式标记的阳性训练样本(也作为其他KKC的阴性样本)的类,甚至具有相应的侧面信息,如语义/属性信息等。
- 2)Known Unknown Classes (KUC). 即有标签的阴性样本,不一定被归入有意义的类,如背景类,universum类等等。
- 3)Unknown Known Classes (UKC). 即在训练中没有可用样本的类,但在训练中可以获得它们的侧面信息(如语义/属性信息)。
- 4)Unknown Unknown Classes (UUC). 即在训练期间没有任何相关信息的类:不仅没有见过,而且在训练期间也没有任何侧面信息(例如,语义/属性信息等)。
图1给出了一个使用t-SNE从真实数据分布中可视化KKC、KUC和UUC的例子。请注意,由于UKC和UUC的主要区别在于它们的侧面信息是否可用,我们在此只对UUC进行可视化。传统的分类法只考虑KKC,而包括KUC将导致具有明确的"其他类"的模型,或用未分类的阴性物训练的检测器。与传统的分类法不同,Zero-Shot Learning更注重对UKC的识别。俗话说:没有任何关于过去与未来关系的假设,预测是不可能的。ZSL利用KKC和UKC之间共享的语义信息来实现这种识别。事实上,假设测试样本只来自UKC是相当有限制性的,也是不切实际的,因为我们通常对KKC或UKC都一无所知。另一方面,自然界中的物体频率遵循长尾分布,意味着KKC比UKC更常见。因此,一些研究人员开始关注更广泛的Zero-Shot Learning,其中测试样本来自KKC和UKC。作为一个与ZSL密切相关的问题,当训练期间的UKC样本数量有限时,单次/少数次学习(Few-Shot Learning)可以被视为ZSL的自然扩展。与G-ZSL类似,在测试中同时考虑KKC和UKC的FSL的更现实的设置,即广义FSL(G-FSL),也变得越来越流行。与(G-)ZSL和(G-)FSL相比,开放集识别(OSR)可能面临更严重的挑战,因为只有KKC,没有任何其他侧面信息,如属性或UUC的有限数量的样本。
开放集识别描述了这样一种情况:在训练中未见过的新类(UUC)出现在测试中,要求分类器不仅要准确地对KKC进行分类,还要有效地处理UUC。因此,当测试样本来自某个UUC时,分类器需要有一个相应的拒绝选项。图2给出了传统分类和OSR问题的比较演示。应该指出的是,在文献中已经有很多关于带有拒绝选项的分类的工作。虽然在某种意义上是相关的,但这项任务不应该与开放集识别相混淆,因为它仍然在封闭集假设下工作,而相应的分类器由于其低置信度而拒绝识别输入样本,避免将一个类别的样本分类为另一个类别的成员。
此外,通常用于异常检测的单类分类器似乎适合OSR问题,其中训练数据的经验分布被建模,使其可以在特征空间的所有方向与周围的开放空间(远离已知/训练数据的空间)分离。流行的单类分类方法包括单类SVM和支持向量数据描述(SVDD),其中单类SVM以最大余量将训练样本与特征空间的原点分开,而SVDD以最小体积的超球包围训练数据。请注意,在单类设置中,将多个KKC视为一个,显然忽略了这些KKC之间的判别信息,导致性能不佳。即使像[37]中提出的那样,每个KKC由一个单独的单类分类器来建模,其新颖性检测性能也相当低。因此,有必要专门针对OSR问题,特别是多类OSR问题,重建有效的分类器。
作为总结,表1列出了开放集识别与其上述相关任务之间的差异。事实上,OSR已经在许多框架、假设和名称下被研究过。在人脸识别的评价方法研究中,Phillips等人提出了一个典型的开放集身份识别框架,而Li和Wechsler又从评价的角度看待开放集人脸识别,提出了开放集转换置信机-k近邻(TCM-kNN)方法。是Scheirer等人首次将开放集识别问题形式化,并提出了初步的解决方案-1-对集机,在建模中加入了开放空间风险项,以说明超出KKC合理支持的空间。之后,开放集识别引起了广泛的关注。请注意,在最近关于ZSL的调查中提到了OSR,然而,它并没有被广泛地讨论。与[10]不同的是,我们在这里提供一个关于OSR的全面回顾。
本文的其余部分组织如下。在接下来的三节中,我们首先给出了基本符号和相关定义(第2节)。然后,我们从建模的角度对现有的OSR技术进行分类,对于每个类别,我们详细回顾了表2中给出的不同方法(第3节)。最后,我们在第四节中回顾了开放世界识别(OWR),它可以被看作是OSR的自然延伸。此外,第5节报告了常用的数据集、评估标准和算法比较,而第6节强调了现有方法的局限性,并指出了该领域一些有希望的研究方向。最后,第7节给出了一个结论。
II. Basic Notation and Related Definition
这一部分简要回顾了[21]中描述的形式化的OSR问题。正如[21]中所讨论的,远离已知数据的空间(包括KKC和KUC)通常被认为是开放空间 O \mathcal {O} O。所以将这个空间中的任何样本标记为一个任意的KKC不可避免地会产生风险,这被称为开放空间风险 R O R_\mathcal {O} RO。由于UUC在训练中是不可知的,所以通常很难对开放空间风险进行定量分析。另外,[21]给出了 R O R_\mathcal {O} RO的定性描述,它被形式化为开放空间 O \mathcal {O} O与整体测量空间 S o S_o So相比的相对度量。 R O ( f ) = ∫ O f ( x ) d x ∫ S o f ( x ) d x R_\mathcal {O}(f) = \frac{\int _\mathcal {O}f(x)dx}{\int _{S_o}f(x)dx} RO(f)=∫Sof(x)dx∫Of(x)dx 其中 f f f表示可测量的识别函数。 f ( x ) = 1 f(x)=1 f(x)=1表示KKC中的某个类别被识别,否则 f ( x ) = 0 f(x)=0 f(x)=0。在这样的形式化下,我们将开放空间中的样本越是标记为KKC, R O R_\mathcal {O} RO就越大。
此外,作者在[21]中还正式引入了对某一特定问题或数据宇宙的开放性概念。
定义1(定义在[21]中的开放性) 让 C T A C_{TA} CTA、 C T R C_{TR} CTR和 C T E C_{TE} CTE分别代表待识别的类集、训练时使用的类集和测试时使用的类集。那么相应的识别任务 O O O的开放性为: O = 1 − 2 × ∣ C TR ∣ ∣ C TA ∣ + ∣ C TE ∣ O = 1 - \sqrt{\frac{2\times |C_{\text{TR}}|}{|C_{\text{TA}}| + |C_{\text{TE}}|}} O=1−∣CTA∣+∣CTE∣2×∣CTR∣
其中 ∣ ⋅ ∣ |\cdot| ∣⋅∣表示相应集合中的类的数量。
较大的开放性对应于更多的开放问题,而当开放性等于0时,问题是完全封闭的。 注意[21]没有明确给出 C T A C_{TA} CTA、 C T R C_{TR} CTR和 C T E C_{TE} CTE之间的关系。在大多数现有的工作中, C T A = C T R ⊆ C T E C_{TA}=C_{TR} \subseteq C_{TE} CTA=CTR⊆CTE这个关系默认成立。此外,[82]中的作者特别给出了以下关系。 C T A ⊆ C T R ⊆ C T E C_{TA} \subseteq C_{TR} \subseteq C_{TE} CTA⊆CTR⊆CTE,其中包含前一种情况。然而,这样的关系对定义1来说是有问题的。考虑下面这种简单的情况。 C T A ⊆ C T R ⊆ C T E C_{TA} \subseteq C_{TR} \subseteq C_{TE} CTA⊆CTR⊆CTE,并且 ∣ C T A ∣ = 3 |C_{TA}|=3 ∣CTA∣=3, ∣ C T R ∣ = 10 |C_{TR}|=10 ∣CTR∣=10, C T E = 15 C_{TE}=15 CTE=15。那么我们将有 O < 0 O<0 O<0,这显然是不合理的。事实上, C T A C_{TA} CTA应该是 C T R C_{TR} CTR的一个子集,否则就没有意义了,因为人们通常不会用在 C T R C_{TR} CTR上训练的分类器来识别不在 C T R C_{TR} CTR中的其他类。直观地说,一个特定问题的开放性应该只取决于KKC在 C T R C_{TR} CTR中的知识和UUC在 C T E C_{TE} CTE中的知识,而不是 C T A C_{TA} CTA、 C T R C_{TR} CTR和 C T E C_{TE} CTE它们三个。因此,在本文中,我们重新校准了开放性的公式: O ∗ = 1 − 2 × ∣ C TR ∣ ∣ C TR ∣ + ∣ C TE ∣ O^\ast = 1 - \sqrt{\frac{2\times |C_{\text{TR}}|}{|C_{\text{TR}}| + |C_{\text{TE}}|}} O∗=1−∣CTR∣+∣CTE∣2×∣CTR∣ 与公式(2)相比,公式(3)只是一个相对更合理的形式来估计开放性。其他的定义也可以抓住这个概念,而且有些定义可能更精确,因此值得进一步探讨。考虑到开放空间风险和开放度的概念,OSR问题的定义可以给出如下。
定义2(开放集识别问题) 设V为训练数据,让 R O R_\mathcal {O} RO、 R ε R_{\varepsilon } Rε分别表示开放空间风险和经验风险。那么,开放集识别的目标是找到一个可测量的识别函数 f ∈ H f\in \mathcal {H} f∈H,其中 f ( x ) > 0 f(x)>0 f(x)>0意味着正确的识别,并且 f f f是通过最小化以下开放集风险来定义的: arg min f ∈ H { R O ( f ) + λ r R ε ( f ( V ) ) } \arg \min_{f\in \mathcal {H}}\left\lbrace R_\mathcal {O}(f) + \lambda _rR_{\varepsilon }(f(V))\right\rbrace argf∈Hmin{ RO(f)+λrRε(f(V))} 其中 λ r \lambda _r λr是一个正则化常数。公式(4)中表示的开放集风险平衡了经验风险和允许识别函数空间上的开放空间风险。虽然上面提到的这个初始定义比较理论化,但它为后续的OSR建模提供了重要的指导,导致了一系列的OSR算法,这些算法将在下一节详细介绍。
III. A Categorization of OSR Techniques
尽管Scheirer等人将OSR问题形式化,但一个重要的问题是如何将公式(1)纳入建模。在统计学习中使用生成性模型和判别性模型之间有一个持续的辩论,对每一种模型的价值都有争论。然而,正如在[22]中所讨论的,开放集识别引入了这样一个新的问题,除非施加一些约束条件,否则无论是判别模型还是生成模型都无法直接解决存在于开放空间的UUC。因此,在一些约束条件下,研究人员分别从判别式和生成式的角度对OSR的建模进行了探索。接下来,我们主要从这两个角度回顾现有的OSR模型。
根据建模形式,这些模型可以进一步分为四类(表2)。从判别模型的角度看,基于传统ML(TML)和基于深度神经网络(DNN)的方法;从生成模型的角度看,基于实例和非实例生成的方法。对于每个类别,我们通过关注其相应的代表性作品来回顾不同的方法。此外,图3给出了这些方法之间的联系的全貌,同时还列出了几个可用的软件包的链接(表3),以方便相关研究人员的后续研究。接下来,我们首先从判别模型的角度进行回顾,大多数现有的OSR算法都是从这个角度进行建模的。
A. Discriminative Model for OSR
Traditional ML Methods-Based OSR Models
如上所述,传统的机器学习方法(如SVM、稀疏表示、最近邻居等)通常假设训练和测试数据来自相同的分布。然而,这样的假设在OSR中已经不成立了。为了使这些方法适应OSR的情况,人们做出了许多努力。
SVM-Based 支持向量机(SVM)已经成功地应用于传统的分类/识别任务。然而,当UUC在测试过程中出现时,其分类性能将显著下降,因为它通常在封闭集假设下为KKC划分过度占用的空间。如图2b所示,一旦UUC的样本落入为某些KKC划分的空间,这些样本将永远不会被正确分类。为了克服这个问题,许多基于SVM的OSR方法已经被提出。
利用定义2,Scheirer等人提出了1-versus-Set机,它在建模中加入了一个开放空间风险项,以说明KKC合理支持范围之外的空间。具体来说,他们增加了另一个超平面,与SVM在分数空间中获得的分离超平面平行,从而导致特征空间中的一个板块。线性内核板块模型的开放空间风险定义如下: R O = δ Ω − δ A δ + + δ + δ Ω − δ A + p A ω A + p Ω ω Ω R_{\mathcal {O}} = \frac{\delta _{\Omega } - \delta _A}{\delta ^{+}} + \frac{\delta ^{+}}{\delta _{\Omega } - \delta _A} + p_A\omega _A + p_{\Omega }\omega _{\Omega } RO=δ+δΩ−δA+δΩ−δAδ++pAωA+pΩωΩ 其中 δ A \delta _A δA和 δ Ω \delta _{\Omega } δΩ表示相应超平面的边际距离, δ + \delta ^{+} δ+是考虑所有正数据所需的分离度。此外,用户指定的参数 p A p_A pA和 p Ω p_{\Omega } pΩ是用来权衡边际空间 ω A \omega _A ωA和 ω Ω \omega _{\Omega } ωΩ之间的重要性。在这种情况下,出现在两个超平面之间的测试样本将被标记为适当的类别。否则,它将被视为非目标类或被拒绝,这取决于它位于板块的哪一侧。与1-vs-Set机类似,Cevikalp在传统SVM的基础上对正/目标类的样本增加了另一个约束条件,提出了最佳拟合超平面分类器(BFHC)模型,直接在特征空间形成板块。此外,BFHC还可以通过使用内核技巧扩展到非线性情况,更多细节请读者参考[63]。
尽管上面提到的板块模型减少了每个二元SVM的KKC区域,但每个KKC所占据的空间仍然是无界的。因此,开放空间的风险仍然存在。为了克服这一挑战,研究人员进一步寻求新的方法来控制这一风险。
Scheirer等人将非线性核纳入一个解决方案中,通过只对有限度量的集合进行正面标记,进一步限制开放空间的风险。他们制定了一个紧凑消减概率(CAP)模型,其中类成员的概率随着点从已知数据到开放空间的移动而消减。具体来说,他们提出了一个Weibull校准的SVM(W-SVM)模型,该模型结合了用于分数校准的统计极值理论(EVT)和两个分离的SVM。第一个SVM是作为条件器使用的单类SVM CAP模型:如果由单类SVM预测的输入样本x的后验估计 P O ( y ∣ x ) P_O(y|x) PO(y∣x)小于阈值 δ r \delta _r δr,该样本将被直接拒绝。否则,它将被传递给第二个SVM。第二个是通过拟合的Weibull累积分布函数的二元SVM CAP模型,产生相应的正KKC的后验估计值 P η ( y ∣ x ) P_ \eta(y|x) Pη(y∣x)。此外,它还通过反向Weibull拟合得到相应的负KKC的后验估计值 P ψ ( y ∣ x ) P_ \psi(y|x) Pψ(y∣x)。定义了一个指标变量:如果 P O ( y ∣ x ) > δ r P_O(y|x)>\delta_ r PO(y∣x)>δr,则 ι y = 1 \iota _y = 1 ιy=1,否则 ι y = 0 \iota _y = 0 ιy=0,所有KKC Y的W-SVM识别是: y ∗ = arg max y ∈ Y P η ( y ∣ x ) × P ψ ( y ∣ x ) × ι y subject to P η ( y ∗ ∣ x ) × P ψ ( y ∗ ∣ x ) ≥ δ R \begin{aligned} &y^{*}=\arg \max _{y \in \mathcal{Y}} P_{\eta}(y \mid x) \times P_{\psi}(y \mid x) \times \iota_{y} \\ &\text { subject to } P_{\eta}\left(y^{*} \mid x\right) \times P_{\psi}\left(y^{*} \mid x\right) \geq \delta_{R} \end{aligned} y∗=argy∈YmaxPη(y∣x)×Pψ(y∣x)×ιy subject to Pη(y∗∣x)×Pψ(y∗∣x)≥δR 其中 δ R \delta _R δR是第二个SVM CAP模型的阈值。阈值 δ r \delta _r δr和 δ R \delta _R δR是根据经验设定的,例如, δ r \delta _r δr被固定为作者指定的0.001,而 δ R \delta _R δR则建议根据具体问题的开放程度来设定: δ R = 0.5 × openness \delta_{R}=0.5 \times \text { openness } δR=0.5× openness 此外,W-SVM被进一步用于KDDCUP’99数据集的开放集入侵识别。更多关于开放集场景下入侵检测的工作可以在[97]中找到。直观地说,如果任何KKC的阳性数据都被准确地建模而没有过度拟合,我们就可以拒绝一大组UUC(甚至在不完全类知识的假设下)。基于这一直觉,Jain等人援引EVT对决策边界的阳性训练样本进行建模,并提出了PI-SVM算法。PI-SVM也采用了基于阈值的分类方案,其中对应阈值的选择采取了W-SVM中的相同策略。
请注意,虽然W-SVM和PI-SVM通过基于阈值的分类方案有效地限制了开放空间的风险,但它们的阈值选择也给出了一些注意事项。首先,它们假设所有的KKC都有相同的阈值,这可能是不合理的,因为特征空间中的类别分布通常是未知的。其次,建议根据问题的开放性来设置拒绝阈值。然而,相应问题的开放性通常也是未知的。
为了解决这些问题,Scherreik等人引入了概率开放集SVM(POS-SVM)分类器,它可以根据经验确定定义2下每个KKC的唯一拒绝阈值。POS-SVM不是将RO定义为开放空间和类定义空间的相对度量,而是分别为开放空间风险 R O R_O RO和经验风险 R ε R_{\varepsilon} Rε选择概率表示(详情参见[64])。此外,作者还采用了一种新的OSR评价指标,即Youden指数,它结合了真阴性率和召回率,将在第5.2节详细介绍。最近,为了解决滑动窗口视觉对象检测和开放集识别任务,Cevikalp和Triggs使用了[98]的准线性 "多面体圆锥 "函数系列来定义正的KKC的接受区域。这种选择提供了一个方便的紧凑型和凸型区域形状的系列,用于区分相对较好的局部正向KKC和更广泛的负向KKC,包括负向KKC和UUC。
Sparse Representation-Based. 近年来,基于稀疏表示的技术在计算机视觉和图像处理领域得到了广泛的应用。特别是,基于稀疏表示的分类器获得了很多关注,它通过寻求测试样本在训练方面的最稀疏表征来识别正确的类别。SRC及其变体基本上还是在封闭集的假设下,所以为了使SRC适应开放环境,Zhang和Patel提出了基于稀疏表示的开放集识别模型,简要地称为SROSR。
SROSR使用EVT对匹配和非匹配重建误差分布的尾部进行建模,这是因为OSR的大部分判别信息都隐藏在这两个误差分布的尾部。这个模型由两个主要阶段组成。一个阶段通过使用EVT对误差分布的尾部进行建模,将OSR问题简化为假设检验问题,另一个阶段首先计算测试样本的重建误差,然后根据两个尾部分布融合置信度分数来确定其身份。
正如[67]中所报告的,尽管SROSR的表现优于许多有竞争力的OSR算法,但它也包含一些局限性。例如,在人脸识别任务中,SROSR会在数据集包含姿势、光照或分辨率的极端变化的情况下失败,在这种情况下,SRC所要求的自我表现力特性不再成立了。此外,为了获得良好的识别性能,训练集需要足够广泛,以跨越测试集可能出现的条件。请注意,虽然目前只有SROSR是基于稀疏表示提出的,但开发基于稀疏表示的OSR算法仍然是未来工作的一个有趣课题。
Distance-Based 与上面提到的其他传统ML方法类似,基于距离的分类器在开放集的情况下通常不再有效。为了应对这一挑战,Bendale和Boult通过在最近类均值(NCM)分类器的基础上进行扩展,建立了一种用于开放集识别的最近非出错者(NNO)算法。NNO根据测试样本和KKC的平均值之间的距离进行分类,当所有分类器都拒绝一个输入样本时,它就拒绝该样本。需要强调的是,这种算法可以根据人工标注的数据动态地增加新的类别。此外,作者还引入了开放世界识别的概念,详见第四节。
此外,在传统近邻分类器的基础上,Ju´nior等人引入了一个开放集版的近邻分类器(OSNN)来处理OSR问题。与那些直接使用最相似类的相似度分数的阈值的工作不同,OSNN对两个最相似类的相似度分数的比率应用了一个阈值,这被称为最近邻距离比率(NNDR)技术。具体来说,它首先找到测试样本s的最近邻居t和u,其中t和u来自不同的类,然后计算出比率: Ratio = d ( s , t ) / d ( s , u ) \text{Ratio} = d(s,t)/d(s,u) Ratio=d(s,t)/d(s,u) 其中 d ( x , x ′ ) d(x,x′) d(x,x′)表示样本x和x′在特征空间中的欧几里得距离。如果比值小于或等于预先设定的阈值,s将被归类为与t相同的标签,否则就被认为是UUC。
OSNN本质上是多类的,这意味着它的效率不会随着可用于训练的类数的增加而受到影响。此外,NNDR技术也可以毫不费力地应用于其他基于相似性分数的分类器,例如,最优路径森林(OPF)分类器。其他指标也可以用来替代欧氏指标,甚至考虑的特征空间也可以是一个转换的空间,正如作者所建议的那样。需要注意的是,OSNN的一个局限性是,仅仅选择两个来自不同类别的参考样本进行比较,使得OSNN容易受到异常值的影响。
Margin Distribution-Based 考虑到大多数现有的OSR方法几乎没有考虑到数据的分布信息,并且缺乏强大的理论基础,Rudd等人提出了一个理论上合理的分类器–极值机(EVM),它源于边际分布的概念。人们探讨了边际分布的各种定义和用途,涉及的技术有:最大化平均或中位边际,采取加权组合边际,或优化边际平均和方差。利用边际分布本身可以提供比软边际SVM所提供的更好的误差界限,这在某些情况下可以转化为减少实验误差。
作为边际分布理论的延伸,从每类的表述到样本的表述,EVM是以相对于参考点的样本半距分布为模型。具体来说,它得到了以下定理。
T h e o r e m 1 Theorem 1 Theorem1 假设我们得到了一个正样本 x i x_i xi和足够多的负样本 x j x_j xj,这些样本来自定义良好的类分布,产生了成对的边际估计值 m i j m_{ij} mij。假设存在一个连续的非退行性边际分布。那么 x i x_i xi的边际距离最小值的分布是由Weibull分布给出的。
由于定理1对任何一个点 x i x_i xi都成立,每个点都可以估计自己与边缘的距离分布,从而得出:
C o r o l l a r y 1 ( Ψ D e n s i t y F u n c t i o n ) Corollary 1 (\Psi Density Function) Corollary1(ΨDensityFunction) 鉴于定理1的条件, x ′ x′ x′被包含在 x i x_i xi所估计的边界内的概率为: Ψ ( x i , x ′ , κ i , λ i ) = exp − ( ∥ x i − x ′ ∥ λ i ) κ i \Psi (x_i,x^{\prime },\kappa _i,\lambda _i) = \exp ^{-\left(\frac{\Vert x_i-x^{\prime }\Vert }{\lambda _i}\right)^{\kappa _i}} Ψ(xi,x′,κi,λi)=exp−(λi∥xi−x′∥)κi 其中 ∥ x i − x ′ ∥ \left\|x_{i}-x^{\prime}\right\| ∥xi−x′∥是 x ′ x′ x′与样本 x i x_i xi的距离, κ i , λ i \kappa_{i}, \lambda_{i} κi,λi分别是对最小的 m i j m_{ij} mij进行拟合得到的Weibull形状和尺度参数。
P r e d i c t i o n Prediction Prediction 一旦EVM被训练出来,新样本 x ′ x′ x′与 C l C_l Cl类相关的概率,即 P ( C l ∣ x ′ ) P^(Cl|x′) P(Cl∣x′),可以通过公式(9)得到,从而得到以下决策函数: y ∗ = { arg max l ∈ { 1 , … , M } P ^ ( C l ∣ x ′ ) if P ^ ( C l ∣ x ′ ) ≥ δ "unknown" Otherwise y^{*}= \begin{cases}\operatorname{arg~max}_{l \in\{1, \ldots, M\}} \hat{P}\left(\mathcal{C}_{l} \mid x^{\prime}\right) & \text { if } \hat{P}\left(\mathcal{C}_{l} \mid x^{\prime}\right) \geq \delta \\ \text { "unknown" } & \text { Otherwise }\end{cases} y∗={ arg maxl∈{ 1,…,M}P^(Cl∣x′) "unknown" if P^(Cl∣x′)≥δ Otherwise 其中, M M M表示训练中的KKC数量, d e l t a delta delta表示概率阈值,它定义了KKC和无支持的开放空间之间的边界。
EVM源于边际分布和极值理论,有很好的解释,可以进行非线性无核可变带宽增量学习,并进一步利用它来探索开放集人脸识别和入侵检测。需要注意的是,它也有一些局限性,如[71]中报道的,其中一个明显的局限性是,当KKC和UUC的几何形状不同时,使用KKC的几何形状是有风险的。为了解决这些限制,Vignotto和Engelke进一步提出了依靠EVT的近似值的GPD和GEV分类器。
O t h e r T r a d i t i o n a l M L M e t h o d s − B a s e d Other Traditional ML Methods-Based OtherTraditionalMLMethods−BasedFei和Liu利用基于中心的相似性(CBS)空间学习,为OSR场景下的文本分类提出了一种新的解决方案,而Vareto等人通过结合散列函数、部分最小二乘法和全连接网络,探索了开放集人脸识别并提出了HPLS和HFCN算法。Neira等人采用了综合思想,将不同的分类器和特征结合起来,解决OSR问题。我们请读者参考[72]、[73]、[74]以了解更多细节。由于目前大多数传统的机器学习分类方法都是在封闭集假设下进行的,因此,将它们适应于开放和非平稳的环境是很有吸引力的。
Deep Neural Network-Based OSR Models
由于强大的学习表示能力,深度神经网络(DNN)在视觉识别、自然语言处理、文本分类等各种任务中获得了巨大的好处。DNN通常遵循典型的SoftMax交叉熵分类损失,这不可避免地会产生归一化问题,使其本身具有封闭集的性质。因此,DNN在处理UUC的样本时,经常做出错误的预测,甚至过于自信。[112], [113]中的工作表明,DNN很容易受到 "愚弄 "和 "垃圾 "图像的影响,这些图像在视觉上与期望的类别相差甚远,但却产生了高置信度的分数。为了解决这些问题,研究人员已经研究了不同的方法。
Bendale和Boult用OpenMax层取代了DNN中的SoftMax层,提出了OpenMax模型作为实现开放集深度网络的第一个解决方案。具体来说,首先用正常的SoftMax层训练一个深度神经网络,使交叉熵损失最小。采用最近类平均值的概念,然后将每个类表示为平均激活向量,激活向量的平均值(仅针对正确分类的训练样本)在该网络的倒数第二层。接下来,计算训练样本与相应类别MAV的距离,并用于拟合每个类别的独立Weibull分布。此外,激活向量的值根据Weibull分布的拟合分数进行重新分配,然后用于计算UUC的伪激活值。最后,通过对这些新的重新分布的激活向量再次使用SoftMax计算KKC和(伪)UUC的类概率。
正如在[75]中所讨论的,OpenMax有效地解决了对愚弄/垃圾和不相关的开放集图像的识别挑战,但它不能识别对抗性图像,这些图像在视觉上与训练样本没有区别,但被设计成使深度网络产生高置信度但不正确的答案。Rozsa等人也分析并比较了使用SoftMax层的DNN与OpenMax的对抗性稳健性:尽管OpenMax提供的系统比SoftMax对传统攻击的脆弱性要小,但它同样容易受到直接作用于深度表征的更复杂的对抗性生成技术的影响。因此,对抗性样本仍然是开放集识别的一个严重挑战。此外,使用与MAV的距离,OpenMax中的交叉熵损失函数并不能直接激励在MAV周围投影类样本。除此之外,测试中使用的距离函数在训练中没有使用,可能导致该空间的测量不准确。为了解决这一局限性,Hassen和Chan学习了一种基于神经网络的开放集识别表示。在这种表示法中,来自同一类别的样本相互封闭,而来自不同类别的样本则相距较远,这就导致UUC的样本在KKC中占据了较大的空间。
此外,Prakhya等人继续沿用OpenMax的技术路线,探索开放集文本分类,而Shu等人用1比1的最后一层sigmoids取代了SoftMax层,提出了深度开放分类器(DOC)模型。Kardan和Stanley提出了竞争性超完整输出层(COOL)神经网络,以规避神经网络在远离训练数据的区域的过度泛化问题。基于无重神经网络提供的精心设计的类似距离的计算,Cardoso等人提出了用于开放集识别的tWiSARD算法,该算法在[82]中得到进一步发展。最近,考虑到可用的背景类(KUC),Dhamija等人将SoftMax与新颖的Entropic Open-Set和Objectosphere损失相结合,解决OSR问题。Yoshihashi等人提出了用于开放集识别的分类-重建学习算法(CROSR),该算法利用潜在表征进行重建,并在不损害KKCs分类准确性的情况下实现稳健的UUCs检测。Oza和Patel使用具有新颖训练和测试方法的类条件自动编码器,提出了用于OSR的C2AE模型。与上述工作相比,Shu等人更关注发现拒绝样本中隐藏的UUCs。相应地,他们提出了一个联合开放分类模型,其中有一个子模型用于分类一对实例是否属于同一类别,其中子模型可以作为聚类的距离函数来发现拒绝样本中的隐藏类别。
Remark
从判别模型的角度来看,几乎所有现有的OSR方法都采用了基于阈值的分类方案,识别器在决策时要么拒绝输入样本,要么使用经验设定的阈值将输入样本归类到某个KKC。因此,阈值起着关键作用。然而,目前,对它的选择通常取决于来自KKC的知识,由于缺乏来自UUC的可用信息,这不可避免地产生了风险。事实上,由于KUCs的数据往往唾手可得,我们可以充分利用它们来减少这种风险,并进一步提高这些方法对UUCs的稳健性。此外,有效地对数据分布的尾部进行建模,使得EVT在现有的OSR方法中被广泛使用。然而,令人遗憾的是,它没有提供选择拟合尾部大小的原则性方法。此外,由于视觉类别中的物体频率通常遵循长尾分布,一旦KKC和UUC中的稀有类在测试中同时出现,这种分布拟合将面临挑战。
B. Generative Model for Open Set Recognition
在本节中,我们将从生成模型的角度回顾OSR方法,其中这些方法可以根据其建模形式进一步分为基于实例生成的方法和基于非实例生成的方法。
Instance Generation-Based OSR Models
对抗性学习(AL)作为一种新的技术获得了惊人的成功,它采用了生成模型和判别模型,其中生成模型学习生成可以愚弄判别模型的样本作为非生成的样本。由于AL的特性,一些研究者还试图用AL技术生成的UUC来说明开放空间。
Ge等人使用条件生成对抗网络(GAN)来合成UUC的混合物,提出了生成OpenMax(G-OpenMax)算法,该算法可以对生成的UUC提供明确的概率估计,使分类器能够根据KKC和生成的UUC的知识来定位决策边际。显然,在他们的设定中,这种UUC只限于原始KKC空间的一个子空间中。此外,正如文献[86]所报道的,尽管G-OpenMax在单色数字数据集中有效地检测了UUCs,但它在自然图像上没有明显的性能改进。
与G-OpenMax不同,Neal等人引入了一种新的数据集增强技术,称为反事实图像生成(OSRCI)。OSRCI采用编码器-解码器GAN架构,生成接近KKC但不属于任何KKC的合成开放集实例。他们进一步将OSR问题重新表述为带有一个包含这些新生成样本的额外类别的分类。与[87]精神相似,Jo等人采用GAN技术生成假数据作为UUC的数据,以进一步提高UUC分类器的稳健性。Yu等人提出了用于OSR的对抗性样本生成(ASG)框架。ASG可以应用于除神经网络之外的各种学习模型,同时它不仅可以生成UUC数据,而且必要时还可以生成KKCs数据。此外,Yang等人借用了典型的GAN网络中的生成器来产生与目标样本高度相似的合成样本作为自动否定集,同时重新设计了判别器,以便与UUC一起输出多个类别。然后他们探索了基于微多普勒信号的开放集人类活动识别。
Remark 由于大多数基于实例生成的OSR方法往往依赖于深度神经网络,它们似乎也属于基于DNN的方法。但是请注意,这两类方法的本质区别在于UUC的样本是否在学习中生成。此外,AL技术并不仅仅依赖于深度神经网络,如ASG。
Non-Instance Generation-Based OSR Models
Dirichlet过程(DP)被视为分布上的分布,是一个随机过程,作为定义在混合物成分数量上的非参数先验,被广泛地应用于聚类和密度估计问题。这种模型不过分依赖训练样本,并能随着数据的变化实现适应性变化,使其自然地适应OSR的情况。
Geng和Chen对层次化Dirichlet过程(HDP)稍作修改,将HDP改编为OSR,并提出了基于集体决策的OSR模型(CD-OSR),它可以解决批量和单个样本的问题。CD-OSR首先在训练阶段执行一个共同聚类过程,以获得适当的参数。在测试阶段,它使用高斯混合模型(GMM)将每个KKC的数据建模为一组CD-OSR,其成分/子类的数量未知,而整个测试集作为一个集体/批次,以同样的方式处理。然后在HDP框架下对所有的组进行共聚类。共聚类后,可以得到一个或多个代表相应类别的子类。因此,对于一个测试样本,它将被标记为适当的KKC或UUC,这取决于它被分配的子类是否与相应的KKC有关。
值得注意的是,与之前的OSR方法不同,CD-OSR不需要定义阈值来确定KKC和UUC之间的决策边界。相反,它引入了一些阈值用来控制相应类中的子类数量,而且这种阈值的选择已经在实验中表明了更大的通用性(详情参见[91])。此外,CD-OSR可以为测试中出现的UUC提供明确的建模,自然会产生一个新的类发现函数。请注意,这样的新发现只是在子类层面。此外,采用集体/批次决策策略使得CD-OSR考虑了其他现有方法明显忽略的测试样本之间的相关性。此外,正如文献[91]所报道的那样,CD-OSR目前只是作为开放集识别的概念性证明,在集体决策方面还存在很多局限性。例如,CD-OSR的识别过程在某种程度上似乎有懒惰学习的味道,当其他批次的测试数据到来时,共同聚类过程将被重复,导致较高的计算开销。
Remark 基于实例生成的OSR模型的关键是生成有效的UUC样本。尽管这些现有的方法已经取得了一些成果,但生成更有效的UUC样本仍然需要进一步研究。此外,数据自适应特性使得(分层)Dirichlet过程自然适合处理OSR任务。由于目前只有[91]使用HDP进行了初步探索,因此这一研究思路也值得进一步探讨。此外,OSR的集体决策策略也是一个很有前途的方向,因为它不仅考虑了测试样本之间的相关性,而且还提供了发现新类别的可能性,而其他现有的OSR方法所采用的单样本决策策略不能做这样的工作,因为它不能直接告诉被拒绝的单个样本是离群者还是来自新类别。
IV. Beyond Open Set Recognition
请注意,现有的开放集识别确实是在开放的情况下,但不是增量的,并且不能随着类的数量而优雅地扩展。另一方面,虽然在类增量学习(C-IL)中假设新的类(UUC)是增量出现的,这些研究主要集中在如何使系统能够纳入后来的新类的训练样本,而不是处理识别UUC的问题。为了共同考虑OSR和CIL任务,Bendale和Boult将现有的开放集识别(定义2)扩展为开放世界识别(OWR),其中一个识别系统应该执行四个任务:检测UUC,选择哪些样本来标记以添加到模型中,标记这些样本,以及更新分类器。具体来说,作者给出了以下定义:
定义3(开放世界识别) 让 K T ∈ N + \mathcal{K}_{T} \in \mathbb{N}^{+} KT∈N+是时间 T T T的KKC的标签集,让零标签(0)为(暂时)将数据标记为未知而保留。因此, N \mathbb{N} N包括KKC和UUC的标签。基于定义2,开放世界识别的解决方案是一个元组 [ F , φ , ν , L , I ] [F, \varphi, \nu, \mathcal{L}, I] [F,φ,ν,L,I],其中包括:
1.一个多类开放集识别函数 F ( x ) : R d ↦ N F(x): \mathbb{R}^{d} \mapsto \mathbb{N} F(x):Rd↦N使用 i i i个每类可测量的识别函数 f i ( x ) f_i(x) fi(x)的向量函数 φ ( x ) \varphi(x) φ(x),也使用一个新奇性检测器 ν ( φ ) : R i ↦ [ 0 , 1 ] \nu(\varphi): \mathbb{R}_{i} \mapsto[0,1] ν(φ):Ri↦[0,1]。我们要求 i ∈ K T i \in \mathcal{K}_{T} i∈KT的每类识别函数 f i ( x ) ∈ H : R d ↦ R f_{i}(x) \in \mathcal{H}: \mathbb{R}^{d} \mapsto \mathbb{R} fi(x)∈H:Rd↦R是管理开放空间风险的开放集函数,如公式(1)。新颖性检测器 ν ( φ ) : R i ↦ [ 0 , 1 ] \nu(\varphi): \mathbb{R}^{i} \mapsto[0,1] ν(φ):Ri↦[0,1]确定识别函数矢量的结果是否来自于UUC。
2.一个标记过程 L ( x ) : R d ↦ N + \mathcal{L}(x): \mathbb{R}^{d} \mapsto \mathbb{N}^{+} L(x):Rd↦N+应用于时间T的新的未知数据 U T U_T UT,产生标记数据 D T = { ( y j , x j ) } D_{T}=\left\{\left(y_{j}, x_{j}\right)\right\} DT={ (yj,xj)},其中 y j = L ( x j ) , ∨ x j ∈ U T y_{j}=\mathcal{L}\left(x_{j}\right), \vee x_{j} \in U_{T} yj=L(xj),∨xj∈UT。假设标注发现了m个新的类,那么KKC的集合就变成 K T + 1 = K T ∪ { i + 1 , … , i + m } \mathcal{K}_{T+1}=\mathcal{K}_{T} \cup\{i+1, \ldots, i+m\} KT+1=KT∪{ i+1,…,i+m}。
3.一个增量学习函数 I T ( φ ; D T ) : H i ↦ H i + m I_{T}\left(\varphi ; D_{T}\right): \mathcal{H}^{i} \mapsto \mathcal{H}^{i+m} IT(φ;DT):Hi↦Hi+m来可扩展地学习和增加新的可测量函数 f i + 1 ( x ) … f i + m ( x ) f_{i+1}(x) \ldots f_{i+m}(x) fi+1(x)…fi+m(x),每个函数都管理开放空间风险,到可测量识别函数的向量 φ \varphi φ。
关于更多细节,我们请读者参考[68]。理想情况下,所有这些步骤都应该是自动化的。然而,[68]目前只推测了由人类标记获得的标签的监督学习,并提出了NNO算法,该算法已在第3.1.1节讨论过。
Remark 作为OSR的自然延伸,OWR面临着更加严峻的挑战,这就要求它不仅要有处理OSR任务的能力,还要有最小的停机时间,甚至要不断学习,这在某种程度上似乎有终身学习的味道。此外,尽管关于OWR已经取得了一些进展,但仍有很长的路要走。
V. Datasets, Evaluation Criteria, and Experiments
A. Datasets
在开放集识别中,目前大多数现有的实验通常是在各种重铸的多类基准数据集上进行的,在相应的数据集中,一些不同的标签被随机选择为KKC,而其余的则为UUC。这里我们列出了一些常用的基准数据集和它们的组合。
L E T T E R LETTER LETTER 有来自26个类的总共20,000个样本,其中每个类有大约769个样本,有16个特征。为了将其重新用于开放集识别,随机选择了10个不同的类作为训练用的KKC,而其余的则作为UUC。
P E N D I G I T S PENDIGITS PENDIGITS 共有来自10个类的10,992个样本,其中每个类有大约1,099个样本,有16个特征。同样地,5个不同的类被随机选择为KKC,其余的为UUC。
C O I L 20 COIL20 COIL20 共有来自20个物体的1,440幅灰色图像(每个物体72幅)。每张图像被下采样为16×16,即特征维度为256。按照[91],我们通过主成分分析(PCA)技术将维度进一步降低到55,保留了95%的样本信息。随机选择10个不同的对象作为KKC,而其余的作为UUC。
Y A L E B YALEB YALEB 扩展的耶鲁大学B(YALEB)数据集共有来自38个个体的2,414张正面图像。每个人都有大约64张图像。这些图像被裁剪并归一化为32×32。按照[91],我们还使用PCA将其特征维度减少到69。与COIL20类似,我们随机选择了10个不同的类作为KKCs,而其余的则作为UUCs。
M N I S T MNIST MNIST 由10个数字类组成,每个类包含6,313到7,877个单色图像,特征维度为28×28。按照[87],随机选择6个不同的类作为KKC,而其余4个类作为UUC。
S V H N SVHN SVHN 有10个数字类,每个类包含9,981到11,379张彩色图像,特征维度为32×32。按照[87],随机选择6个不同的类作为KKC,而其余4个类作为UUC。
C I F A R 10 CIFAR10 CIFAR10 共有6,000幅来自10个自然图像类别的彩色图像。每张图像有32×32的特征维度。按照文献[87],随机选择6个不同的类作为KKC,而其余4个类作为UUC。为了将这个数据集扩展到更大的开放性,[87]进一步提出了CIFAR+10、CIFAR+50数据集,将CIFAR10中的4个非动物类作为KKC,而从CIFAR1005中分别选择10和50个动物类作为UUC。
T i n y − I m a g e n e t Tiny-Imagenet Tiny−Imagenet 共有200个类,每个类有500张图像用于训练,50张用于测试,这些图像来自Imagenet ILSVRC 2012数据集[144],并向下取样至32×32。按照[87],随机选择20个不同的类作为KKC,而其余180个类作为UUC。
B. Evaluation Criteria
在本小节中,我们总结了一些常用的开放集识别的评价指标。对于评价OSR情况下的分类器,一个关键的因素是将UUC的识别考虑在内。让 T P i TP_i TPi、 T N i TN_i TNi、 F P i FP_i FPi和 F N i FN_i FNi分别表示第 i i i个KKC的真正、真负、假正和假负,其中 i ∈ { 1 , 2 , . . . , C } i\in\{1,2,...,C\} i∈{ 1,2,...,C}, C C C表示KKC的数量。此外,让 T U TU TU和 F U FU FU分别表示UUC的正确和错误拒绝。那么我们可以得到以下评价指标。
Accuracy for OSR 作为评价封闭集假设下的分类器的常见选择,准确度 A \mathcal {A} A通常被定义为: A = ∑ i = 1 C ( T P i + T N i ) ∑ i = 1 C ( T P i + T N i + F P i + F N i ) \mathcal {A} = \frac{\sum _{i=1}^C(TP_i + TN_i)}{\sum _{i=1}^C(TP_i + TN_i + FP_i + FN_i)} A=∑i=1C(TPi+TNi+FPi+FNi)∑i=1C(TPi+TNi) 对OSR场景 A O \mathcal {A} _{O} AO的准确性的一个微不足道的扩展是,正确的反应应该包含对KKC的正确分类和对UUC的正确拒绝: A O = ∑ i = 1 C ( T P i + T N i ) + T U ∑ i = 1 C ( T P i + T N i + F P i + F N i ) + ( T U + F U ) \mathcal {A}_{\text{O}} = \frac{\sum _{i=1}^C(TP_i + TN_i) + TU}{\sum _{i=1}^C(TP_i + TN_i + FP_i + FN_i) + (TU + FU)} AO=∑i=1C(TPi+TNi+FPi+FNi)+(TU+FU)∑i=1C(TPi+TNi)+TU 然而,由于 A O \mathcal {A} _{O} AO表示的是KKC的正确分类和UUC的正确拒绝之和,它不能客观地评价OSR模型。考虑以下情况:当拒绝性能起主导作用时,测试集包含大量的UUC样本,而只有少量的KKC样本, A O \mathcal {A} _{O} AO仍然可以达到一个高值,尽管事实上识别器对KKC的分类性能确实很低,反之亦然。此外,[69]还给出了一个新的OSR准确度指标,称为归一化准确度(NA),它将KKC的准确度(AKS_和UUC的准确度(AUS)加权计算: NA = λ r AKS + ( 1 − λ r ) AUS \text{NA}=\lambda _r\text{AKS} + (1-\lambda _r)\text{AUS} NA=λrAKS+(1−λr)AUS 其中 AKS = ∑ i = 1 C ( T P i + T N i ) ∑ i = 1 C ( T P i + T N i + F P i + F N i ) , AUS = T U T U + F U \text{AKS} = \frac{\sum _{i=1}^C(TP_i + TN_i)}{\sum _{i=1}^C(TP_i + TN_i + FP_i + FN_i)}, \ \text{AUS} = \frac{TU}{TU+FU} AKS=∑i=1C(TPi+TNi+FPi+FNi)∑i=1C(TPi+TNi), AUS=TU+FUTU λ r , 0 < λ r < 1 \lambda _r, 0<\lambda _r<1 λr,0<λr<1是一个常数。
F-Measure for OSR 广泛应用于信息检索和机器学习的F值,被定义为精度P和召回率R的谐波平均值: F = 2 × P × R P + R F = 2 \times \frac{P\times R}{P + R} F=2×P+RP×R 请注意,当使用F值来评估OSR分类器时,不应该把测试中出现的所有UUC视为一个额外的简单类,并以与多类封闭集情况相同的方式获得F。因为一旦进行这样的操作,UUC样本的正确分类就会被认为是真阳性分类。然而,这样的真阳性分类是没有意义的,因为我们没有UUC的代表性样本来训练相应的分类器。通过修改只针对KKC的精确度和召回率的计算,[69]给出了一个相对合理的OSR的F-measure。以下公式详细说明了这些修改,其中公式(14)和(15)分别用于计算宏观F-measure和微观F-measure,由公式(13)计算: P m a = 1 C ∑ i = 1 C T P i T P i + F P i , R m a = 1 C ∑ i = 1 C T P i T P i + F N i P_{ma}=\frac{1}{C}\sum _{i=1}^C\frac{TP_i}{TP_i+FP_i}, R_{ma}=\frac{1}{C}\sum _{i=1}^C\frac{TP_i}{TP_i+FN_i} Pma=C1i=1∑CTPi+FPiTPi,Rma=C1i=1∑CTPi+FNiTPi P m i = ∑ i = 1 C T P i ∑ i = 1 C ( T P i + F P i ) , R m i = ∑ i = 1 C T P i ∑ i = 1 C ( T P i + F N i ) P_{mi}=\frac{\sum _{i=1}^CTP_i}{\sum _{i=1}^C(TP_i+FP_i)}, R_{mi}=\frac{\sum _{i=1}^CTP_i}{\sum _{i=1}^C(TP_i+FN_i)} Pmi=∑i=1C(TPi+FPi)∑i=1CTPi,Rmi=∑i=1C(TPi+FNi)∑i=1CTPi 请注意,尽管在公式(14)和(15)中精度和召回率只考虑了KKC,但 F N i FN_i FNi和 F P i FP_i FPi也考虑了假UUC和假KKC,将假阴性和假阳性考虑在内(详见[69])。
Youden’s Index for OSR 由于F值对TN的变化是不变的,而TN是OSR性能的一个重要因素,Scherreik和Rigling转向尤登指数 J J J,定义如下: J = R + S − 1 J = R + S - 1 J=R+S−1 其中 S = T N / ( T N + F P ) S=TN/(TN+FP) S=TN/(TN+FP)代表真阴性率。尤登指数可以表示一个算法避免失败的能力,它在 [ − 1 , 1 ] [-1,1] [−1,1]中是有界的,更高的值表示一个算法对失败的抵抗力更强。此外,当 J = 0 J=0 J=0时,分类器是无信息的,而当 J < 0 J<0 J<0时,它倾向于提供更多的错误信息而不是正确信息。
此外,为了克服对模型参数和阈值敏感性的影响,[87]采用了ROC曲线下的面积(AUROC)和封闭集的准确性作为评价指标,该指标将OSR任务视为新颖性检测和多类识别的结合。需要注意的是,虽然AUROC对评价模型有很好的作用,但对于OSR问题,我们最终需要做出决定(一个样本属于哪个KKC或UUC),因此这种阈值似乎必须确定。
Remark 目前,F-measure和AUROC是最常用的评价指标。由于OSR问题面临新的情况,新的评价方法值得进一步探索。
C. Experiments
本小节在第5.1节中提到的流行的基准数据集上定量评估了一些有代表性的OSR方法。此外,这些方法在非深度和深度特征的分类方面进行了比较。
OSR Methods Using Non-Depth Feature 使用非深度特征的OSR方法通常在LETTER、PENDIGITS、COIL20、YALEB数据集上进行评估。其中大多数采用基于阈值的策略,建议根据具体问题的开放性来设置阈值。然而,我们通常对OSR场景中的UUC没有预先了解。因此,这样的设置似乎是不合理的,本文对此进行了重新校准,即只根据训练中的KKC来确定决策阈值,一旦在训练中确定,其数值在测试中就不再变化。为了有效地确定相应模型的阈值和参数,我们参照[69]、[91]引入一个评估协议,具体如下。
E v a l u a t i o n P r o t o c o l Evaluation Protocol EvaluationProtocol 如图4所示,数据集首先被分为拥有KKC的训练集和包含KKC和UUC的测试集。训练集中出现的2/3的KKC被选为 "KKC"模拟,而剩下的则是 "UUC"模拟。因此,训练集被分为一个仅包含 "KKC"的拟合集F和一个包括"封闭集 “模拟和"开放集"模拟的验证集V。封闭集"模拟只拥有KKCs,而"开放集"模拟包含"KKCs"和"UUCs”。请注意,在训练阶段,所有的方法都是用F进行训练,并在V上进行评估。具体来说,对于每个实验,我们:
- 1.从相应的数据集中随机选择 Ω \Omega Ω不同的类作为KKC进行训练。
- 2.随机选择每个KKC中60%的样本作为训练集。
- 3.选择步骤2中剩余的40%的样本和其他类别的样本(不包括 Ω \Omega ΩKKC)作为测试集。
- 4.随机选择 [ ( 2 / 3 Ω + 0.5 ) ] [(2/3\Omega+0.5)] [(2/3Ω+0.5)]类作为训练集的"KKC"进行拟合,其余类作为"UUC"进行验证。
- 5.从每个"KKC"中随机选择60%的样本作为拟合集F。
- 6.选择步骤5中剩余的40%的样本作为"封闭集"模拟,而步骤5中剩余的40%的样本和"UUCs"中的样本作为"开放集"模拟。
- 7.用F训练模型并在V上验证它们,然后找到合适的模型参数和阈值。
- 8.使用micro-F-measure评估5个随机类分区的模型。
请注意,这里的实验方案只是评价OSR方法的一个相对合理的形式。事实上,其他协议也可以用来评估,而且有些可能更合适,因此值得进一步探讨。此外,由于之前不同的论文经常采用不同的评价方案,在这里我们尽可能地遵循他们论文中的参数调整原则。此外,为了鼓励可重复的研究,我们请读者到我们的github了解数据集及其相应的类分区的细节。
在不同的开放度 O ∗ O* O∗下,表4报告了这些方法之间的比较,其中1-vs-Set、W-SVM(W-OSVM)、PI-SVM、SROSR、OSNN、EVM来自基于传统ML类别,CD-OSR来自基于非实例生成类别。
我们的第一个观察结果是,随着开放程度的提高,尽管基于阈值的方法(如W-SVM、PI-SVM、SROSR、EVM)在某些数据集上表现良好,但在其他数据集上也有性能明显下降的情况(例如,W-SVM在LETTER上表现良好,而在PENDIGITS上表现明显不足)。这主要是由于他们的决策阈值仅仅是根据KKC的知识来选择的,一旦UUC的样本落入某些KKC的划分空间,就会产生OSR风险。相比之下,由于HDP的数据适应特性,CD-OSR可以有效地对测试中出现的UUC进行建模,使得它目前在大多数数据集上取得了更好的性能,特别是对LETTER和PENDIGITS。
我们的第二个观察结果是。与其他方法相比,OSNN的性能在标准差方面波动很大,特别是对于LETTER,这可能是因为NNDR策略使其性能严重依赖于相应数据集的分布特征。此外,由于1-vs-Set的开放空间仍然是无界的,我们可以看到其性能随着开放度的增加而急剧下降。作为一个单类分类器的基准,W-OSVM在封闭集的情况下运行良好。然而,一旦场景转向开放集,其性能也会大幅下降。
总结。总的来说,基于HDP的数据适应特性,CD-OSR目前与其他方法相比表现相对较好。然而,CD-OSR也受到HDP本身的限制,比如难以应用于高维数据,计算复杂度高等。至于其他方法,它们也受到它们采用的基础模型的限制。例如,由于SRC在LETTER上的效果不好,因此SROSR在该数据集上获得的性能很差。此外,正如第3.1节中提到的,对于使用EVT的方法,如W-SVM、PI-SVM、SROSR、EVM,一旦KKC和UUC中的稀有类在测试中同时出现,它们就可能面临挑战。此外,还有必要指出的是,这一部分只是给出了这些算法在所有常用数据集上的比较,在一定程度上可能无法完全描述它们的行为。
OSR Methods Using Depth Feature 使用深度特征的OSR方法通常在MNIST、SVHN、CIFAR10、CIFAR+10、CIFAR+50、Tiny-Imagenet上进行评估。由于他们中的大多数遵循了[87]中定义的评估协议,并且没有提供源代码,与[3]、[148]类似,我们在此只与他们公布的结果进行比较。表5总结了这些方法之间的比较,其中SoftMax、OpenMax、CROSR和C2AE属于基于深度神经网络的类别,而G-OpenMax和OSRCI属于基于实例生成的类别。
我们的第一个观察结果是。首先,所有方法在MNIST上的表现都是相当的,这主要是因为MNIST上的结果几乎是饱和的。第二,与SoftMax、OpenMax、G-OpenMax和OSRCI等早期方法相比,CROSR和C2AE目前在基准数据集上取得了更好的性能。它们成功的主要原因也许是:对于CROSR来说,训练网络进行联合分类和重建KKC,使得为KKC学习的表征更具有辨别力和紧密性(使得KKC获得更紧密的分布区域);对于C2AE来说,将OSR分为封闭集分类和开放集识别,使得它可以避免在由SoftMax分数修改的单一分数下,同时执行这两个子任务(找到这样一个单一分数措施通常极具挑战性)。
我们的第二个观察结果是。作为最先进的基于实例生成的OSR方法,OSRCI目前在上述几乎所有的数据集上都没有赢得CROSR和C2AE(两种最先进的基于深度神经网络的OSR方法),这似乎有点违反直觉,因为OSRCI从UUC获得了额外的信息。但这恰恰表明(从另一个方面),基于实例生成的方法的性能仍有更大的改进空间,值得进一步探索,同时也显示了CROSR和C2AE中策略的有效性。
Remark 如前所述,由于使用EVT,OpenMax、CROSR、C2AE和G-OpenMax在测试中一起出现KKC和UUC中的稀有类时也可能面临挑战。此外,还值得一提的是,基于实例生成的方法与其他三类方法是正交的,也就是说,它可以与这些方法相结合,达到最佳效果。
VI. Future Research Directions
在这一节中,我们简要地分析和讨论了现有OSR模型的局限性,同时也指出了这一领域的一些有前景的研究方向,并在以下几个方面进行了详细说明。
A. About Modeling
首先,如图3所示,虽然几乎所有现有的OSR方法都是从鉴别性或生成性模型角度建模的,但一个自然的问题是:能否从混合生成性鉴别性模型角度构建OSR模型?请注意,就我们所知,目前还没有从这个角度出发的OSR工作,这值得进一步讨论。其次,OSR的主要挑战在于,传统的分类器在封闭场景下会潜入KKC的过度占用空间,因此一旦UUC的样本落入为KKC划分的空间,它们将永远无法被正确分类。从这个角度看,以下两个建模角度将是有希望的研究方向。
Modeling Known Known Classes 为了缓和上述空间占用过大的问题,我们通常期望在聚类方法的帮助下,为每个目标类获得更好的分辨力,同时将其限制在一个紧凑的空间内。为了达到这个目的,聚类和分类学习可以统一起来,以达到两全其美的效果:聚类学习可以帮助目标类获得更紧凑的分布区域(即有限的空间),而分类学习则为它们提供更好的辨别力。事实上,已经有一些工作将聚类和分类功能融合到一个统一的学习框架中。不幸的是,这些工作仍然是在一个封闭集的假设下。因此,需要做一些认真的努力来使它们适应OSR的情况,或者为OSR专门设计这种类型的分类器。
Modeling Unknown Unknown Classes 在开放集假设下,建立UUC模型是不可能的,因为我们只有来自KKC的可用知识。然而,适当放宽一些限制将使其成为可能,其中一种方法是通过对抗性学习技术生成UUC数据,在一定程度上说明开放空间,其中的关键是如何生成有效的UUC数据。此外,由于Dirichlet过程的数据自适应性,基于Dirichlet过程的OSR方法,如CD-OSR,也值得进一步探索。
B. About Rejecting
到目前为止,大多数现有的OSR算法主要关心的是有效地拒绝UUC,然而只有少数作品专注于拒绝样本的后续处理,这些作品通常采用事后策略。因此,将现有的开放集识别与新的类知识发现一起扩展将是一个有趣的研究课题。此外,据我们所知,拒绝选项的可解释性似乎还没有被讨论过,其中一个拒绝选项可能对应于一个低置信度的目标类、一个离群点或一个新的类,这也是一个有趣的未来研究方向。其他研究领域的一些相关工作可以在[116]、[151]、[152]、[153]、[154]中找到。
C. About the Decision
正如第3.2.2节中所讨论的,几乎所有现有的OSR技术都是专门为识别单个样本而设计的,即使这些样本是集体来的,如图像集识别。事实上,这样的决定并不考虑测试样本之间的关联性。因此,集体决策似乎是一个更好的选择,因为它不仅可以考虑到测试样本之间的相关性,而且还可以在同一时间发现新类。因此,我们期望未来的方向是通过采用这样的集体决策来扩展现有的OSR方法。
D. Open Set + Other Research Areas
由于开放集场景对于现实世界的分类/识别任务来说是一个比较实用的假设,它可以自然地与涉及分类/识别的各个领域相结合,如半监督学习、领域适应、主动学习、多任务学习、多视图学习、多标签图像分类问题等等。例如,[156]、[157]、[158]将这一方案引入领域适应,而[159]则将其引入语义实例分割任务。最近,[160]探讨了主动学习领域的开放集分类。值得一提的是,数据集NUS-Wide和MS COCO已经被用于研究多标签Zero-Shot学习,它们也适合研究多标签OSR问题。因此,许多有趣的工作都值得期待。
E. Generalized Open Set Recognition
OSR假定在训练中只有KKC的知识是可用的,这意味着我们还可以利用关于KKC的各种侧面信息。然而,大多数现有的OSR方法只是使用了KKC的特征级信息,而忽略了它们的其他侧面信息,如语义/属性信息、知识图谱、KUC的数据(如universum数据)等,这些信息对于进一步提高它们的性能也很重要。因此,我们给出了以下有希望的研究方向。
Appending Semantic/Attribute Information 通过对ZSL的探索,我们可以发现,很多语义/属性信息通常在KKC和未知类数据之间共享。因此,这些信息完全可以用来在OSR中"认知"UUC,或者至少为UUC的样本提供一个粗略的语义/属性描述,而不是简单地拒绝它们。请注意,这种设置与ZSL(或G-ZSL)中的设置不同,后者假设KKC和UUC的语义/属性信息在训练中是已知的。此外,表1的最后一行显示了这种差异。此外,一些相关的工作可以在[133]、[154]、[162]、[163]中找到。还有一些概念上类似的课题在其他研究界也有研究,如开放词汇的物体检索,开放世界的行人重识别或搜索目标,开放词汇的场景解析。
Using Other Available Side-Information 对于第6.1节中提到的过度占用空间问题,通过使用其他侧面信息如KUC数据(如universum数据)来尽可能地缩小其区域,随着这些KKC划分的空间减少,开放空间的风险也将降低。如图1所示,以数字识别为例,假设训练集包括感兴趣的类’1’、‘3’、‘4’、‘5’、‘9’;测试集包括所有的类’0’-‘9’。如果我们还有可用的universum数据-英文字母’Z’、‘I’、‘J’、‘Q’、‘U’,我们可以在建模中充分使用它们来扩展现有的OSR模型,进一步降低开放空间风险。因此,我们可以预见,未来的开放集识别将采用更加通用的设置。
F. Relative Open Set Recognition
虽然开放集场景无处不在,但也有一些现实世界的场景在实践中并非完全开放。这种场景下的识别/分类可以称为相对开放集识别。以医疗诊断为例,整个样本空间可以分为患病样本和健康样本两个子空间,在检测样本是否患病的这样一个层面上,确实是一个封闭集问题。然而,当我们需要进一步识别疾病的类型时,这自然会成为一个完整的OSR问题,因为在训练中未见过的新疾病可能会在测试中出现。目前,很少有作品共同探索这种新的混合场景。请注意,在这种情况下,主要目标是限制测试中出现的UUC的范围,同时在用KKCs建立的分类法上找到一个新样本的最具体的类别标签。一些相关的工作可以在[171]中找到。
G. Knowledge Integration for Open Set Recognition
事实上,对世界的不完全知识是普遍存在的,特别是对单一个体而言:你知道的东西并不意味着我也知道。例如,陆生物种(子知识集)显然是对海洋物种训练的分类器的开放集。俗话说,“两个脑袋不如一个脑袋”,因此,如何整合在每个子知识集上训练的分类器,以进一步降低开放空间的风险,将是未来工作中一个有趣而具有挑战性的课题,特别是对于这样一种情况:我们只能获得在相应的子知识集上训练的分类器,但由于数据隐私保护,这些子知识集却无法使用。这似乎在某种程度上具有具有多个源域和一个目标域(mS1T)的领域适应的味道。
VII. Conclusion
如上所述,在现实世界的识别/分类任务中,通常不可能对所有事物进行建模,因此OSR的场景无处不在。另一方面,尽管许多相关的算法已经被提出来用于OSR,但它仍然面临严重的挑战。由于目前还没有关于这一主题的系统总结,本文对现有的OSR技术进行了全面的回顾,涵盖了从相关定义、模型的表示、数据集、评价标准和算法比较等各个方面。需要注意的是,为了方便起见,本文对现有OSR技术的分类只是其中一种可能的方式,而其他方式也可以有效地进行分类,有些可能更合适,但不在我们这里的重点。
此外,为了避免读者混淆与OSR类似的任务,我们还简要分析了OSR与其相关任务之间的关系,包括Zero-Shot、One-Shot技术、带有拒绝选项的分类等等。除此之外,作为OSR的自然延伸,我们还回顾了开放世界的识别。更重要的是,我们分析和讨论了这些现有方法的局限性,并指出了这一领域中一些有前途的后续研究方向。
边栏推荐
- 阻塞队列 — DelayedWorkQueue源码分析
- What is MYCAT? Get to know you quickly
- ts+fetch实现选择文件上传
- 项目连接不到远程虚拟机The driver has not received any packets from the server.
- 网络工程师必修课防火墙安全区域及安全策略基础操作
- 快手处置超过5.4万个违规账号:如何打击平台上的违规账号
- Dual wing layout
- 适配器模式
- What are absolute and relative paths, and what are their advantages and disadvantages?
- Shengteng AI development experience based on target detection and identification of Huawei cloud ECS [Huawei cloud to jianzhiyuan]
猜你喜欢
![[network planning] 3.2 transport layer - UDP: connectionless service](/img/a8/74a1b44ce4d8b0b1a85043a091a91d.jpg)
[network planning] 3.2 transport layer - UDP: connectionless service

Volatile keyword for concurrent programming

图的最短路径问题 详细分解版

Loop structure statement

With a market value of 21.5 billion yuan, will the post-80s generation in Sichuan make TV history?
![[untitled] test](/img/6c/df2ebb3e39d1e47b8dd74cfdddbb06.gif)
[untitled] test

Slam Kalman filter & nonlinear optimization

Automated test series

Word在目录里插入引导符(页码前的小点点)的方法

SQL审核 | “云上”用户可以一键使用 SQLE 审核服务啦
随机推荐
Word删除页眉横线的方法
[network planning] 2.1.2 transport layer services that can be selected by the application
[no title] 66666
qt程序插件报错plugin xcb
Installation of phpstudy
阻塞队列 — DelayedWorkQueue源码分析
The JVM determines whether an object can be recycled
How to handle file cache and session?
day01
f‘s‘f‘s‘f‘s‘d
安全培训管理办法
BGP基础概念及IBGP基本配置
Detailed explanation of five types of load balancing principle scenarios
array_ column() expects parameter 1 to be array, array given
How word removes the header line
Go language channel understanding and use
Qt线程与界面
Block queue - delayedworkqueue Source Analysis
What is thread in concurrent programming
亿级搜索系统(优酷视频搜索)的基石,如何保障实时数据质量?v2020