服务于离群点检测的无监督特征选择值-特征层次耦合模型

Unsupervised Feature Selection for Outlier Detection by Modelling Hierarchical Value-Feature Couplings

名词解释: 

Coupled Unsupervised Feature Selection, CUFS:耦合无监督特征选择

Dense Subgraph-based Feature Selection, DSFS:基于密集子图的特征选择,CUFS的实例化

Recursive Backward Elimination,  REB:反向递归消除法

Minimum Description Length, MDL:最小描述长度

摘要:针对复杂的特征交互、不平衡数据中相关特征与噪声/冗余特征的混合以及无类标签的情况,文章提出了一种新的耦合无监督特征选择框架CUFS,用于过滤分类数据中的噪声或冗余特征,服务于后续的离群点检测。CUFS通过学习和集成特征值耦合和特征耦合来量化特征的离群分数(或相关性)。这种值-特征耦合保留固有数据特征,并将相关特征与那些噪声/冗余特征区分开来。CUFS进一步实例化为一个无参数的基于密集子图的特征选择方法,称为DSFS。文章证明了DSFS保留了2阶近似最优特征子集。对15个真实数据集的广泛评估结果表明,DSFS获得了平均46%的特征缩减率,并使三种不同类型的基于模式的离群点检测方法实现了明显更好的AUC改进和/或比原始特征集的执行速度快几个数量级。与其他特征选择竞争者相比,这三种基于DSFS的检测平均实现了超过20%的AUC改进。

1 Introduction

2 Related Work

离群点检测大多都是基于距离的方法、基于聚类的方法以及基于密度的方法,它们都需要距离或相似度度量,因此受限于维度灾难而无法很好地处理大量不相关或含噪声的数据集。

为处理数据的离散特性,一般会用到三类方法:基于关联规则的方法、基于信息论的方法和基于概率的方法。当数据集有较多的噪声特征时,这些方法会受到误导从而得到不那么准确的结果;同时时间复杂度(平方)也不具有优势。

现有的特征选择方法侧重于回归、分类和聚类,很少有专门为离群点检测而设计的,尤其是无标签数据集。虽然有[18]和[5]:[18]假设罕见类具有强自相似性,[5]没有考虑特征的交互作用。

3 The CUFS Framework

CUFS构建并集成两个层次耦合,特征值耦合和特征耦合。通过学习特征值内耦合和特征值间耦合,计算特征值层次上的离群分数,构造以离群分数为边权重的值图。然后把值图提供给特征级耦合分析,通过聚合值级离群值来构建特征图。如图1:

 A. Value Graph Construction

定义1 Value Coupling: the couplings in a vlaue \nu

VC=\left (f,\delta \left ( \cdot \right ),\eta \left ( \cdot ,\cdot \right ) \right )

其中f代表特征,\small \delta \left ( \cdot \right ) 代表关于特征内值相互作用的离群分数(如基于众数频率或相似性的偏差函数),\small \eta \left ( \cdot,\cdot \right ) 代表关于其余特征相互作用的离群分数(如值的共现频率、条件概率或值相关量化函数)。通过所有特征值的值耦合建立值图来表示它们之间的关系。

定义2 Vlaue Graph

\small G=< V,A,g\left ( \delta \left ( \cdot \right ),\eta \left ( \cdot ,\cdot \right ) \right )>

其中\small value \ v \ \epsilon \ V代表一个节点,加权邻接矩阵 \small A\left ( v,v^{'} \right ) 的条目由联合函数 \small g\left ( \cdot ,\cdot \right ) 决定,\small g\left ( \cdot ,\cdot \right ) 由\small \delta \left ( v \right ),\eta \left ( v, v^{'} \right ),\forall v, v^{'} \ \epsilon \ V组成。

将值耦合映射到值图的好处:利用值图的属性(如自我中心网络、最短路径、节点中心度或随机漫步距离)来推断更深层的值交互、特征交互。

B. Feature Graph Construction

 特征耦合来自值耦合,以获取值到特征的交互。

定义3 Feature Coupling: the couplings within feature \small f

\small FC=\left ( dom\left ( f \right ) ,\delta^{*} \left ( \cdot \right ),\eta ^{*}\left ( \cdot ,\cdot \right )\right )

其中 \small dom\left ( f \right ) 是特征\small f的域,\small \delta ^{*}\left ( \cdot \right ) 根据 \small \delta \left ( \cdot \right ) 的值计算\small f的离群度,\small \eta ^{*}\left ( \cdot ,\cdot \right ) 则是根据\small \eta \left ( \cdot ,\cdot \right ) 的值来计算。

定义4 Feature  Graph

\small G=< F,A^{*},h\left ( \delta^{*}\left ( \cdot \right ) ,\eta ^{*}\left ( \cdot ,\cdot \right )\right )>

其中特征 \small f \ \epsilon \ F 代表一个节点,加权邻接矩阵 \small A^{*}\left ( f, f^{'} \right ) 由 \small h\left ( \cdot ,\cdot \right ) 决定,\small h\left ( \cdot ,\cdot \right ) 由\small \delta^{*} \left ( f \right ),\eta^{*} \left ( f, f^{'} \right ), \forall f, f^{'} \ \epsilon \ F组成。

利用特征图以及现有的图挖掘算法、理论(如密集子图挖掘、图分区、频繁图模式挖掘)为离群点检测识别出最相关的特征子图。

C. Feature Subset Selection

目标:找到特征图的一个子图,保留离群值高的特征节点,并尽量减少保留特征之间的冗余。

特征子图搜索:搜索策略、目标函数(即子图评价标准);搜索策略一般有枚举搜索、序列前向/后向搜索、随机搜索。目标函数一般是:\small max\left ( J\left ( S \right ) \right ) ,\small J\left ( \cdot \right ) 为评价特征子集离群值的函数。如图1所示,在子集搜索过程中,需要不断迭代和更新值图和特征图,才能获得最优子集。

4 The CUFS Instance: DSFS

指定构造值图的三个函数\small \ \ \delta , \ \eta ,\ g \以及构造特征图的三个函数 \small \delta^{*} , \ \eta^{*} ,\ h \,实例化CUFS框架。DSFS采用递归反向消除搜索,以子图密度为目标函数。

 A. Specifying Function \small \delta, \ \eta and \small g for the Value Graph

定义5 Intra-feature Value Outlierness \small \delta: the intra-feature outlierness \small \delta \left ( v \right )  of a feature value \small v \ \epsilon \ dom\left ( f \right )

\small \delta \left ( v \right )=\frac{freq\left ( m \right )-freq\left ( v \right )+\epsilon }{freq\left ( m \right )}

其中\small m为特征\small f的众数,\small freq\left ( \cdot \right ) 为频率计数函数,\small \epsilon =\frac{1}{N} 。特征值频率越偏离众数频率,该值就越离;使用 \small \epsilon =\frac{1}{N} 来评估众数的离群值。\small \delta \left ( v \right ) 使得不同频率分布的值的离群分数具有可比性。

定义6 Inter-feature Value Outlierness \small \eta: the inter-feature outlierness \small \eta \left ( v, v^{'} \right ) of a value \small v \ \epsilon \ dom\left ( f \right ) and another value \small v^{'} \ \epsilon \ dom\left ( f^{'} \right )

\small \eta \left ( v, v^{'} \right )=\delta \left ( v \right )conf\left ( v, v^{'} \right )\delta \left ( v^{'} \right )

\small conf\left ( v, v^{'} \right )=\frac{freq\left ( v, v^{'} \right )}{freq\left ( v^{'} \right )}

其中 \small \delta \left ( v \right )conf\left ( v, v^{'} \right ) 可以理解为值\small v^{'}的离群分数和值\small v的耦合,即与离群值的相关性越高离群分数越高。例如,与平均体重相比,将肥胖者作为离群值,如果一个人有一个超重的朋友,那他/她变胖的机率会增加57%。

定义7 Edge Weighing Function \small g for Value Graph \small G: the edge weight of the value Graph \small G, the entry \small \left ( v, v^{'} \right ) of the weight matrix \small A

\small A\left ( v, v^{'} \right )=g\left ( v, v^{'} \right )=\left\{\begin{matrix} \delta \left ( v \right ), \ \ \ \ \ \ \ \ v=v^{'}\\ \\ \eta \left ( v, v^{'} \right ), \ \ otherwise \end{matrix}\right.

\small \delta \left ( \cdot \right ) \ \epsilon \ \left ( 0,1 \right )\small \eta \left ( \cdot ,\cdot \right ) \ \epsilon \ \left [ 0,1 \right ](这里不会取到1,公式打不出来),因此 \small \delta \left ( v \right )\eta \left ( v, v^{'} \right )\delta \left ( v^{'} \right ) \ \epsilon \ \left [ 0,1 \right ] (这里不会取到1)。如果节点 \small v 和 \small v^{'} 没有关联,则边权重为0。

值图 \small G 的属性如下:

(1)\small G 是一个自环有向图,且\small A \left ( v, v^{'} \right ) \neq A\left ( v^{'},v \right ) and \ A\left ( v,v \right )\neq 0 。

(2)邻接矩阵\small A 为离群值矩阵,项越大,值节点的离群分数越大。

B. Specifying Function \small \delta ^{*}, \ \eta ^{*} and \small h for the Feature Graph

假设特征内值和特征间值离群值是线性相关,通过求和来估计总的离群值。

定义8 Intra-feature Outlierness \delta ^{*}: the intra-feature outlierness of a feature f \ \epsilon \ F

\delta ^{*}\left ( f \right )=\sum_{v\epsilon dom\left ( f \right )}^{}\delta \left ( v \right )

定义9 Inter-feature Outlierness \eta ^{*}: the iner-feature outlierness of a feature f w.r.t. feature f^{'}

\eta^{*}\left ( f, f^{'} \right )=\sum_{v\epsilon dom\left ( f \right ),v^{'}\epsilon dom\left ( f^{'} \right )}^{}\eta \left ( v, v^{'} \right )

g一样,权重矩阵A^{*}使用特征内离群值作为对角项,特征间离群值作为非对角项的函数h

定义10 Edge Weighting Function h for Feature Graph G^{*}: the edge weight \small A^{*}\left ( f, f^{*} \right ) of the feature graph G^{*}, i.e., the entry \small \left ( f, f^{'} \right ) of \small A^{*}\small f

\small A^{*}\left ( f, f^{*} \right )=h\left ( f, f^{*} \right )=\left\{\begin{matrix} \delta ^{*}\left ( f \right ), \ \ \ \ \ \ \ \ \ f=f^{'}\\ \\ \eta ^{*}\left ( f, f^{'} \right ), \ otherwise \end{matrix}\right.

将 \small \delta ^{*}, \eta ^{*} 归一化到相同的范围 \small \left [ 0,1 \right ] ,使得\small A^{*}中的条目具有可比性,便于特征子图搜索。

特征图 \small G^{*} 的属性如下:

(1)\small G^{*} 具有自环,\small \delta ^{*}\left ( \cdot \right )> 0, \ \eta ^{*}> 0 。

(2)\small G^{*} 是一个无向图,即 \small A^{*}\left ( f, f^{'} \right )=A^{*}\left ( f^{'}, f\right ) for \ \forall f^{'},f \ \epsilon \ F 。

(3) 邻接矩阵\small A^{*} 为特征离群分数矩阵,表示了特征的离群程度以及联系。值越大代表越离群。

(4)特征内与特征间的离群分数都较高时,特征节点 \small f 的边总权重较大。

C. The Search Strategy

目标:找到与离群点检测相关度最高的特征子集,即离群分数最高的特征子集;代入特征图 \small G^{*} 也就是权重较大的边。考虑到特征的离群分数还取决于它的耦合特征,设计了最大关联目标函数\small max\left ( J\left ( S \right ) \right )来搜索最相关的特征子集 \small S :

\small max \ \frac{1}{\left | S \right |} \ \sum_{f\epsilon S}^{} \sum_{f^{'}\epsilon S}^{ } A^{*}\left ( f, f^{'} \right )

由于搜索空间为\small 2^{D},对高维数据来说精确搜索的计算量是极大的;文章选择反向递归消除法RBE来搜索近似最优子集。

D. Theoretical Analysis

1)Approxiamtion:

定义11 Subgraph Density:用我们计算出的平均权重来代替边的总数定义子图密度

\small den\left ( S \right )=\frac{vol\left ( S \right )}{\left | S \right |}

\small vol\left ( S \right )=\frac{\sum_{f\epsilon S}^{}\sum_{f^{'}\epsilon S}^{}A^{*}\left ( f, f^{'} \right )}{2}

引理1 Equivalence to the Densest Subgraph Discovery:

我们的最大关联目标函数等价于计算 \small den\left ( S \right ) 的最大值,即特征图 \small G^{*} 的最密集子图。 

证明:\small max\left ( J\left ( S \right ) \right ) 等价于 \small 2 \ den\left ( s \right ) ,因此可以把最密集子图 \small G^{*} 看作是 \small max\left ( J\left ( S \right ) \right ) 的最精确解\small S

即具有二次时间复杂度的RBE搜索可以简化为具有线性时间复杂度的过程,结合密集子图发现定理,进一步证明了在加权图 \small G^{*} 上的RBE搜索可以获得2阶近似最优特征子集。

引理2 Search Strategy Equivalence:RBE算法中每次迭代都会去除一个权重最小的特征节点。

 证明:对于特征节点 \small f 有最小的权重,且此次迭代中 \small \sum_{f^{'}\epsilon F\setminus f}^{}\sum_{f^{''}\epsilon F\setminus f}^{}A^{*}\left ( f^{'}, f^{''} \right ) 为最大值;又因为\small \frac{1}{\left | F\setminus f^{'} \right |}  等价于\small \forall f^{'}\epsilon F,去除特征节点 \small f 可以得到最大的 \small J\left ( \cdot \right ) 。

所以并不需要在每次迭代中都对每个特征递归计算,而是每次去掉权重最小的特征节点来达到结果,避免了重复计算以及循环,同时也降低时间复杂度为线性。

定理1 2-Approximation:RBE搜索得到的特征子集S为2阶近似最优子集

证明:设 \small Sopt 为最密集子图的特征节点集,根据引理1给出 \small den\left ( S \right )\geqslant \frac{den\left ( Sopt \right )}{2} ,可以得到:

 \small den\left ( Sopt \right )=\frac{vol\left ( Sopt \right )}{\left | Sopt \right |}\geqslant \frac{vol\left ( Sopt \right )-d\left ( f \right )}{\left | Sopt \right |-1}, \ \forall f \ \epsilon \ Sopt

 \small d\left ( f \right )=\sum_{f^{'}\epsilon Sopt}^{}A^{*}\left ( f, f^{'} \right )

移项可以得到:\small d\left ( f \right )\geqslant den\left ( Sopt \right ),\forall f \ \epsilon \ Sopt

\small Sopt中每个节点的权重至少为 \small den\left ( Sopt \right ) 。

 设 \small T_{i} 为删除第i个节点后剩下的特征节点集,\small T_{j} 为\small Sopt中第一个节点 \small f 被去除后的集合,即\small T_{j-1} 包含了\small Sopt全部节点,因此 \small d\left ( f \right )\geqslant den\left ( Sopt \right ),\forall f \ \epsilon \ T_{j-1} 。根据引理2得:

\small 2vol\left ( T_{j-1} \right )\geqslant den\left ( Spot \right )\left | T_{j-1} \right |+\sum_{f\epsilon T_{i-1}}^{}A^{*}\left ( f, f \right )

同时除以 \small 2\left | T_{j-1} \right | 得到:

\small \frac{vol\left ( T_{j-1} \right )}{\left | T_{j-1} \right |}\geqslant \frac{den\left ( Sopt \right )}{2}+\frac{\sum_{f\epsilon T_{j-1}}^{}A^{*}\left ( f, f \right )}{2\left | T_{j-1} \right |}

相应地, \small den\left ( T_{j-1} \right )=\frac{vol\left ( T_{j-1} \right )}{\left | T_{j-1} \right |}\geqslant \frac{den\left ( Sopt \right )}{2}

2)Handling Noisy Features:

当 \small \delta 和 \small \eta 较高时,值节点的离群分数较高。给定一个出现频率低但被正常对象包含的噪声特征值,频率低会导致特征内离群分数 \small \delta 较高。然而这些噪声值往往频繁出现或被包含在正常对象中,因此假定它们与正常值有着更强的耦合,跟离群值有弱耦合甚至无耦合。另一方面,真正的离群值因为频率低且与其他离群值有较强的耦合,\small \delta 和 \small \eta 都比较高,所以总的离群分数通常会远高于噪声特征值。因为特征内特征间离群分数与特征内值特征间值离群分数线性相关,所以相关特征的离群分数通常也远高于噪声特征。因此,在RBE迭代最大化 \small J\left ( \cdot \right ) 的过程中,噪声特征会被去除而相关特征被保留下来。

3)Handling Redundant Features:

许多冗余特征一般与离群点检测弱相关,当它们与强相关特征结合对识别离群点的促进非常有限或者没有。即它们的特征内离群分数很高,但特征间离群分数很低,所以总体特征离群分数较低,不会被保留在 \small S 中,\small S 中所有特征都具有较高的离群分数。

E. The DSFS Algorithm

步骤1-7构建值图 \small G,步骤8-13构建特征图 \small G^{*},步骤14-19找特征子图 \small S,其中步骤16-17为RBE算法中的2-5。

DSFS的步骤1-7只需扫描一次数据集就可以得到特征值内和特征值间的离群分数,即时间复杂度为 \small O\left ( N \right ) 。为了生成值图和特征图,需要两次循环,即为 \small O\left ( D^{2} \right ) 。而且计算都是比较简单的乘法和赋值,即便是在高维数据中也能快速完成。

5 Experiments and Evaluation

A. Data Sets

使用15个公开的真实世界数据集,涵盖了不同的领域如入侵检测、图像物体识别、广告和营销、人口数据、生态信息等。其中11个数据集直接从高度不平衡的数据转换而来,将最小的类是为离群值,其余为正常值。对于其他四个数据集,Probe和U2R来自KDDCUP99,集合了多种类型的探测,将提权攻击是为离群值;还有两个数据集Mushroom和Optdigits通过将小类中的一小部分采样视为离群值,将两个平衡分类数据集转换成具有5%离群值的数据集。删除仅有一个特制的特征,缺失值替换为众数。

B. Baselines and Settings

首先比较MarP、Comprex(COMP)、FPOF三种离群点检测器对无监督离群点检测的有效性和效率。

MarP:一种基于概率的方法,使用单个特征特征值的边际概率的倒数作为离群分数,这种方法无参数且具有关于特征数量的线性时间复杂度。

COMP:一种基于信息论的方法,将MDL和信息增益相结合,对特征进行自动划分,并基于特征组建立编码表,将压缩代价高的视为离群值,这种方法无参数,具有关于特征数量的二次时间复杂度。

FPOF:一种基于关联规则的方法,使用频繁项集的频率倒数作为离群分数,具有关于特征数量指数级的时间复杂度。设置最小支持度\small supp=0.1,最大序列长度为5。

将DSFS与基于熵的特征加权方法(用ENFW表示)通过上面三种离群点检测器进行比较。特征加权方法只为特征分配权重,为了方便比较,选取前k个特征,即DSFS选择出来的特征子集应有k个特征。

DSFS、ENFW、FPOF、MarP使用Weka实现;COMP使用MATLAB实现。

C. Performance Evaluation Method

使用AUC来衡量检测器的有效性:三种离群点检测器都给每个数据对象进行离群评分,使用Mann- Whitney-Wilcoxon无参秩和检验的排名计算AUC。AUC值越高则检测精度越好。

在同一数据集上进行训练和评价,类标签仅用于AUC计算。同时记录特征选择和离群点检测的时间,不包括数据加载与输出结果的运行时间,评估其效率。

引入两个数据指标来描述数据基本特征:

(1)Feature noise level \small \kappa _{nos}:每个特征通过MarP计算AUC,把AUC小于0.5的特征归为噪声特征,输出噪声特征所占百分比 \small \kappa _{nos} 。

(2)Feature redundancy level \small \kappa _{rdn}:如果特征对应的AUC大于0.5,就会被保留(冗余特征需要是相关特征)。使用成对的特征与其单个的特征来比较AUC,若AUC差异小于0.1,则认为一个特征对另一个特征是冗余的,输出冗余组合所占的百分比\small \kappa _{rdn}

D. Findings and Analysis

(1)Large Average Feature Reduction Rate

把DSFS选择出的特征集记做 \small D^{'} ,缩减率记做 \small RED=\frac{D- D^{'}}{D}\left ( % \right ) 。在15个数据集上表现出13%到97%的 \small RED ,平均达到了46%。\small \kappa _{nos} 和 \small \kappa _{rdn} 表明,几乎所有数据集都有很大比例的噪声或冗余特征,使得三种离群点检测器的有效性和效率降低,因此正确的特征选择对于检测器处理复杂的数据尤为重要。

表二(如下图):不同特征数据集的特征选择结果。数据集按 \small \kappa _{nos} 进行排序,中间的水平线大致将具有较多噪声特征(\small \kappa _{nos}> 35%)与其他数据集分开。\small N表示数据集中数据条目数量,\small D表示数据集特征数量。

(2)Improving Three Different Types of Pattern-based Outlier Detectors in AUC and/or Efficiency

平均来看,MarP*、COMP*和FPOF*分别在AUC上有7%、4%、4%的提升并且平均仅使用54%的特征。其中MarP*、COMP*分别在数据集aPascal上提升42%、33%,FPOF*在数据集Census上提升18%。但是在UCI数据集上几乎没有改进,我们可以理解为是由于UCI数据集更简单。

从效率上看,MarP*、COMP*和FPOF*在运行时受益于高缩减特征子集要快几个数量级。例如FPOF*在数据集CT上运行速度要比FPOR快上6个数量级。DSFS还使COMP和FPOF能够对高维数据集进行离群点检测,如有1555个特征的数据集AD,有87个特征的Sylva。更明显的好处是结合DSFS的MarP对比COMP、FPOF不仅有着有竞争力的AUC性能,还节省几个数量级的运行时间。

在高特征噪声水平数据中(90%\small \kappa _{nos}的BM、81%的aPascal、78%的Sylva、58%的Census、49%的CelebA以及38%的CMC),DSFS成功地去除大量的噪声特征,为离群点检测器提供更干净的数据集,达到更有效的结果,并且在效率上也有显著的提升。但对于特征缩减率较小的数据集,选定的特征子集保留了大量的噪声特征,很难与相关特征分离,因此对AUC的改善很有限。这表明在强噪声特征和离群点鉴别特征混合较深时,我们得到的离群分数会比真正的离群特征要高,DSFS很难将它们区分。

在高冗余特征水平的数据集中(78%\small \kappa _{rdn}的AD以及22%的CT),DSFS生成了比较大的特征缩减子集,分别去除了97%和87%的特征。尽管这种大规模的特征缩减可能会导致AUC极小的损失,如CT数据集上的1%,但离群点检测器通过使用更小的特征集获得了数量级的加速。另一方面,使用DSFS的MarP(MarP*)只使用了数据集AD原始特征的3%,获得了6%的AUC加速。

对于数据集U2R、SF、MRM、Probe和LINK,它们的特征减少率都大于 \small \kappa _{nos} 和 \small \kappa _{rdn} 之和。应该考虑到的事,\small \kappa _{nos} 和 \small \kappa _{rdn} 只是我们的保守估计,真实特征噪声和冗余水平可能远高于估计值。这也可以解释为什么使用DSFS的检测器与不使用检测的检测器可以有同样好或者有竞争力的表现。

(3)Defeating the Feature Weighting-based Contender

两种特征选择方法ENFW和DSFS在三种检测器上的表现如表IV。

平均而言,与使用ENFW相比,使用DSFS的MarP、COMP和FPOF分别在AUC上有24%、26%、24%的改善。其中使用DSFS的MarP在数据集aPascal上比ENFW提高91%,使用DSFS的COMP在数据集CT上比ENFW提高94%,使用DSFS的FPOF在数据集aPascal上比ENFW提高91%。

如表IV所示,只要数据集包含噪声特征,DSFS几乎在所有数据集的表现逗比ENFW好得多。这主要是因为ENFW独立评估特征,错误的将噪声特征作为相关特征,DSFS基于嵌入在特征内/特征间的耦合来估计特征的离群分数,因此可以更好的过滤噪声特征。

例外的情况是有39个特征的数据集CelebA和有6个特征的Chess,这是因为DSFS和ENFW都无法去除足够数量的噪声特征。因此使用DSFS或ENFW与不使用任何一种的探测器表现出来的性能几乎相同。这也是特征间复杂交互给离群点检测带来的挑战。

(4)Good Scalability

 

图2以ENFW为基准,显示来DSFS的可扩展性。DSFS的时间复杂度和数据量成线性关系,与特征数量成二次关系,尽管它的运行速度比ENFW慢,但它在数据量和特征数量方面仍然具有很好的可扩展性。对于有1024000条目的数据集,DSFS可以在1秒内完成;对于有1028个特征的高维数据集,DSF说的执行时间不超过20秒。

6 Conclusions

本文提出了一种新的灵活的无监督离群点检测特征选择框架CUFS,可以有效的获取混合量噪声/冗余特征的相关特征中低层次的交互。同时进一步将CUFS的无参实例化DSFS,DSFS将CUFS的优势与图策略相结合,证明了由DSFS选择的特征子集达到了2阶近似。

广泛的评估显示,平均而言:

(1)DSFS在15个具有不同级别噪声水平和冗余水平特征的数据集上达到了46%的特征缩减率;

(2)DSFS使三种不同类型的离群点检测器Marp、COMP和FPOF对比不使用DSFS的检测器分别达到了7%、4%、4%的AUC提升。

特别是在高噪声水平的数据集上,DSFS能够去除大部分噪声特征,从而提高AUC。此外,通过处理特征子集较小的数据集,COMP和FPOF的执行速度要比原始完整特征数据集快几个数量级。

与特征选择器ENFW相比,DSFS在大多数有噪声特征的数据集上表现更好,平均改善超过20%的AUC。

DSFS的时间复杂度与数据量成线性关系,它能够在1秒内完成包含1024000个条目的数据集的离群点检测;虽然它的时间复杂度与特征数量成二次关系,但能够在20秒内执行完含有1280个特征数量的数据集;可以很好的扩展数据量和特征数量。

之后将更加深入了解相关特征与噪声/冗余特征之间的复杂交互来增强CUFS以及DSFS,以应对具有高噪声特征和极不平衡数据带来的挑战。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中有多种方法可以进行离群点检测,下面介绍其中的几种常用方法: 1. 基于统计模型的方法 基于统计模型的方法主要是通过对数据的分布进行建模来检测离群点。常用的统计模型包括正态分布、t分布、Chisquare分布等。比如,我们可以使用均和标准差来检测数据是否偏离正态分布。具体代码如下: ```python import numpy as np from scipy.stats import norm # 生成一组数据 data = np.random.randn(1000) # 计算均和标准差 mu, std = norm.fit(data) # 指定阈进行离群点检测 threshold = 3 outliers = data[np.abs(data - mu) > threshold * std] print(outliers) ``` 2. 基于距离的方法 基于距离的方法主要是通过计算数据点之间的距离来检测离群点。常用的距离度量包括欧式距离、马哈拉诺比斯距离等。比如,我们可以使用k近邻算法来检测离群点。具体代码如下: ```python from sklearn.neighbors import LocalOutlierFactor # 生成一组数据 data = np.random.randn(1000, 2) # 使用k近邻算法进行离群点检测 clf = LocalOutlierFactor(n_neighbors=20, contamination=0.1) y_pred = clf.fit_predict(data) # 获取离群点的索引 outliers = np.where(y_pred == -1)[0] print(outliers) ``` 3. 基于聚类的方法 基于聚类的方法主要是通过将数据点分为多个簇来检测离群点。常用的聚类算法包括K-means、DBSCAN等。比如,我们可以使用DBSCAN算法来检测离群点。具体代码如下: ```python from sklearn.cluster import DBSCAN # 生成一组数据 data = np.random.randn(1000, 2) # 使用DBSCAN算法进行离群点检测 clf = DBSCAN(eps=0.5, min_samples=5) y_pred = clf.fit_predict(data) # 获取离群点的索引 outliers = np.where(y_pred == -1)[0] print(outliers) ``` 以上三种方法都有其优缺点,具体使用哪种方法需要根据具体情况进行选择

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值