CN111309782A - 一种基于子空间的离群点检测算法 - Google Patents
一种基于子空间的离群点检测算法 Download PDFInfo
- Publication number
- CN111309782A CN111309782A CN202010085040.6A CN202010085040A CN111309782A CN 111309782 A CN111309782 A CN 111309782A CN 202010085040 A CN202010085040 A CN 202010085040A CN 111309782 A CN111309782 A CN 111309782A
- Authority
- CN
- China
- Prior art keywords
- attribute
- subspace
- data
- entropy
- information gain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于子空间的离群点检测算法,本发明对样本集的每个属性所携带的信息量进行计算,选择切割子空间的属性,然后确定切割点比切割点小的数据放入左子树,大的放入右子树,递归建树操作,直到当前子树只包含一个节点或者达到树高,将若干树集成森林。本发明相比于现有方法离群点检测性能有所提高,提高了算法检测精度。
Description
技术领域
本发明属于数据挖掘领域,具体涉及一种基于子空间的离群点检测算法。
背景技术
20世纪60年代以来,数据挖掘技术已经成为应用人工智能的一个重要分支。而离群点检测作为数据挖掘的一项重要任务,经过不断发展完善已经形成了许多针对不同任务的方法:1)基于密度的离群点检测算法,该方法试用于局部离群点。2)基于距离的离群点检测算法,该方法试用于检测全局离群点。3)基于集成的异常点检测,Liu等人提出了SCiForest和iForest算法,能够快速高效的检测大数据中的异常点。以上方法各自有其优缺点,因此不同的挖掘任务采用的方法也不尽相同。但上述算法不适合高维海量数据中检测离群点,因此本文提出了一种基于子空间的离群点检测算法。
发明内容
本发明的目的在于克服上述不足,提供一种基于子空间的离群点检测算法,该算法基于iForest算法改进,将改进后的算法命名为NIF。NIF算法通过引入信息增益公式计算属性信息量,通过信息量来选取切割维度,提高算法检测精度。
为了达到上述目的,本发明包括以下步骤:
步骤一,在有标签的数据D中随机选择Φ个样本作为根节点,根据信息增益方法选择切割子空间的属性T;
步骤二,计算属性T的熵;
步骤三,根据属性的熵计算属性T给聚类C或分类C带来的信息增益;
步骤四,通过熵的计算公式推得属性T与类别的信息增益公式;
步骤五,计算每个属性的信息增益值,构成新的属性子空间;
步骤六,新的属性子空间中随机选择一个属性p构成的超平面来切割空间,把小于p的数据放在当前节点的左孩子,把大于等于p的数据放在当前节点的右孩子;
步骤七:在孩子节点中递归构造新的孩子节点,直到满足以下条件中的一个:
1)孩子节点中只有一个数据;
2)孩子节点已到达限定高度;
3)当前子树的所有节点值的所有属性完全一致;
停止构造,完成检测。
步骤二中,子空间属性T的熵的计算公式如下:
其中,T为空间中某一属性,其可能的取值有n种分别为t1,t2…,tn,每一种取到的概率为p(ti)。
步骤三中,信息增益的计算公式如下:
Gain(T)=H(c)-H(C|T)
其中,C为分类类别,H(C)为类别的熵值。
H(C|T)包括两种情况,一种为属性T出现,标记为t,另一种为属性T不出现,标记为t',H(C|T)的计算公式为:
H(C|T)=p(t)H(C|t)+p(t′)H(C|t′)。
与现有技术相比,本发明对样本集的每个属性所携带的信息量进行计算,选择切割子空间的属性,然后确定切割点比切割点小的数据放入左子树,大的放入右子树,递归建树操作,直到当前子树只包含一个节点或者达到树高,将若干树集成森林。本发明相比于现有方法离群点检测性能有所提高,提高了算法检测精度。
附图说明
图1为iTree构建流程图;
图2为标签建设业务流程图;
图3为同数据集测试NIF和IF算法的ROC曲线图;其中(a)为arrhythmia数据集的ROC曲线图,(b)为optdigits数据集的ROC曲线图,(c)为mnist数据集的ROC曲线图,(d)为cardio数据集的ROC曲线图,(e)为speech数据集的ROC曲线图,(f)为Satimage-2数据集的ROC曲线图。
具体实施方式
下面结合附图对本发明做进一步说明。
参见图1,本发明具体方法包括以下步骤:
步骤一,将有标签的数据D随机选择Φ个样本作为根节点,然后根据信息增益方法选择切割子空间的属性。
步骤二,在信息增益中,衡量标准是看某一属性能够为分类带来多少信息,带来的信息越多,该属性越重要。对一个属性而言,系统有它和没它时信息量将发生变化,而前后信息量的差值就是这个属性给分类带来的信息量。所谓信息量,就是熵。有变量x,其可能的取值有n种,每一种取到的概率为pi,属性T熵的计算公式如下:
步骤三,T可能的变化越多,T所携带的信息量越大,熵也就越大。所以属性T给聚类C或分类C带来的信息增益为公式如下:
Gain(T)=H(c)-H(C|T)
步骤四,H(C|T)包含两种情况:一种是属性T出现,标记为t,一种是属性T不出现,标记为t',所以
H(C|T)=p(t)H(C|t)+p(t′)H(C|t′)
再由熵的计算公式便可推得属性与类别的信息增益公式。
步骤五,计算每个属性的信息增益值,构成新的属性子空间。从中随机选择一个属性p构成的超平面来切割空间,把小于p的数据放在当前节点的左孩子,把大于等于p的数据放在当前节点的右孩子。
步骤六:在孩子节点中递归构造新的孩子节点,直到满足以下条件中的一个:
1)孩子节点中只有一个数据(无法再继续切割);
2)孩子节点已到达限定高度;
3)当前子树的所有节点值的所有属性完全一致。
实施例:
在构建iTree过程中,选择合适的属性分割至关重要,其直接决定隔离树的性能。对iForest分割属性随机性较强的问题。NIF首先在构建iTree前,对样本集的每个属性所携带的信息量进行计算,选择切割子空间的属性,然后确定切割点比切割点小的数据放入左子树,大的放入右子树。递归建树操作,直到当前子树只包含一个节点或者达到树高。将若干树集成森林。
一组有标签的数据D,随机选择ф个样本作为根节点,然后根据信息增益方法选择切割子空间的属性。在信息增益中,衡量标准是看某一属性能够为分类带来多少信息,带来的信息越多,该属性越重要。对一个属性而言,系统有它和没它时信息量将发生变化,而前后信息量的差值就是这个属性给分类带来的信息量。所谓信息量,就是熵。有变量x,其可能的取值有n种,每一种取到的概率为pi,T熵的计算公式如下:
T可能的变化越多,T所携带的信息量越大,熵也就越大。所以属性T给聚类C或分类C带来的信息增益为:
Gain(T)=H(c)-H(C|T)
H(C|T)包含两种情况:一种是属性T出现,标记为t,一种是属性T不出现,标记为t'。因此,H(C|T)的计算方法如下:
H(C|T)=p(t)H(C|t)+p(t′)H(C|t′)
再由熵的计算公式便可推得属性与类别的信息增益公式。
通过信息增益公式来计算形成属性子空间。改进后得iTree(NiTree)算法伪代码如下所示:
NiTree算法:
为验证本发明的有效性,以下从UCI机器学习数据集中选用了6个来自于真实世界的数据,表1列出了各个数据集的统计特征:
表1实验数据集特征
数据集 | 数据量 | 维数 | 离群数据比例 |
arrhythmia | 452 | 279 | 15% |
optdigits | 5216 | 65 | 3% |
mnist | 7404 | 101 | 9.2% |
cardio | 1831 | 22 | 9.6% |
speech | 3686 | 401 | 1.65% |
Satimage-2 | 5803 | 37 | 1.2% |
实验结果:对改进算法进行性能评估。
算法有效性验证:用AUC指标来衡量离群点检测效果,并画出ROC曲线,计算AUC公式如下:
其中M和N分别是正样本的个数和负样本的个数,
Ranki表示i样本从小到大排序后的位置。Positiveclii表示把正样本的Ranki相加。
AUC的值就是ROC曲线下方的面积。AUC越接近1,说明算法性能越好。
默认子采样大小ф=256,建树棵数为100。用AUC指标来衡量离群点检测效果。AUC(Area under the Curve of ROC)是ROC曲线下方的面积。AUC是判断二分类预测模型优劣的标准。用NIF算法,以及传统的IF(iForest)算法对上述8个数据集做了实验,两个算法在相同数据集中的ROC曲线其如图3和表2所示。
表2不同数据集测试NIF和IF算法的AUC比较表
如图3和表2用UCI不同数据集来测试NIF和IF。由ROC曲线图可知,NIF算法的离群点检测的性能明显优于IF。
异常检测作为数据挖掘的重要分支,受到学术界的广泛关注。本文针对数据中存在的不相关属性导致算法性能降低的问题,做了改进,改进后的离群点检测性能有所提高。如表2所示,所以,下一步工作的目标是提高算法的运行效率。
本发明已经应用于金融数据诈骗检测,在信贷业务场景中,数据集的维度非常高,许多异常值检测方法难以取得满意的效果。在高维空间中,数据变得稀疏,当在全维度中分析时,真正的异常值被多个不相关维度的噪声效应掩盖。所以NIF算法适合运用于金融场景。
在Hive表中建设用户行为属性标签、用户互联网行为标签、用户消费标签、信用属性和征信查询次数等构建用户画像;对身份证、银行流水和房产信息等敏感数据做类别标签映射;用户外部信息、兴趣爱好和社会关系等定性信息进行定量描述。根据上述维度构建用户标签系统,标签建设业务流如图2所示。
标签建设完成后,以Lending club 2018Q1XX贷20万条数据进行脱敏化处理后,理论分析和实验表明NIF比IF识别效果更精确。
Claims (4)
1.一种基于子空间的离群点检测算法,其特征在于,包括以下步骤:
步骤一,在有标签的数据D中随机选择Φ个样本作为根节点,根据信息增益方法选择切割子空间的属性T;
步骤二,计算属性T的熵;
步骤三,根据属性的熵计算属性T给分类C带来的信息增益;
步骤四,通过熵的计算公式推得属性T与类别的信息增益公式;
步骤五,计算每个属性的信息增益值,按照信息增益值排序,筛选属性,构成新的属性子空间;
步骤六,新的属性子空间中随机选择一个属性p构成的超平面来切割空间,把小于p的数据放在当前节点的左孩子,把大于等于p的数据放在当前节点的右孩子;
步骤七:在孩子节点中递归构造新的孩子节点,直到满足以下条件中的一个:
1)孩子节点中只有一个数据;
2)孩子节点已到达限定高度;
3)当前子树的所有节点值的所有属性完全一致;
停止构造,完成检测。
3.根据权利要求1所述的一种基于子空间的离群点检测算法,其特征在于,步骤三中,信息增益的计算公式如下:
Gain(T)=H(C)-H(C|T)
其中,C为分类类别,H(C)为类别的熵值。
4.根据权利要求3所述的一种基于子空间的离群点检测算法,其特征在于,H(C|T)包括两种情况,一种为属性T出现,标记为t,另一种为属性T不出现,标记为t',H(C|T)的计算公式为:
H(C|T)=p(t)H(C|t)+p(t′)H(C|t′)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085040.6A CN111309782A (zh) | 2020-02-10 | 2020-02-10 | 一种基于子空间的离群点检测算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085040.6A CN111309782A (zh) | 2020-02-10 | 2020-02-10 | 一种基于子空间的离群点检测算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111309782A true CN111309782A (zh) | 2020-06-19 |
Family
ID=71148883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010085040.6A Pending CN111309782A (zh) | 2020-02-10 | 2020-02-10 | 一种基于子空间的离群点检测算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309782A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117688501A (zh) * | 2024-02-03 | 2024-03-12 | 南京创蓝科技有限公司 | 一种矫正空气质量预报系统的误差方法 |
-
2020
- 2020-02-10 CN CN202010085040.6A patent/CN111309782A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117688501A (zh) * | 2024-02-03 | 2024-03-12 | 南京创蓝科技有限公司 | 一种矫正空气质量预报系统的误差方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111833172A (zh) | 一种基于孤立森林的消费信贷欺诈行为检测方法及其系统 | |
CN105915555B (zh) | 网络异常行为的检测方法及系统 | |
CN105224872B (zh) | 一种基于神经网络聚类的用户异常行为检测方法 | |
CN110351301B (zh) | 一种http请求双层递进式异常检测方法 | |
CN114021799A (zh) | 风电场日前风电功率预测方法及系统 | |
CN110415107B (zh) | 数据处理方法、装置、存储介质及电子设备 | |
CN111695597B (zh) | 基于改进式孤立森林算法的信贷欺诈团伙识别方法和系统 | |
CN110826618A (zh) | 一种基于随机森林的个人信用风险评估方法 | |
CN112422531A (zh) | 基于CNN和XGBoost的网络流量异常行为检测方法 | |
CN111401149B (zh) | 基于长短期时域建模算法的轻量级视频行为识别方法 | |
CN105320764A (zh) | 一种基于增量慢特征的3d模型检索方法及其检索装置 | |
CN109783805B (zh) | 一种网络社区用户识别方法、装置和可读存储介质 | |
CN114897085A (zh) | 一种基于封闭子图链路预测的聚类方法及计算机设备 | |
Liu et al. | Detecting community structure for undirected big graphs based on random walks | |
CN111242028A (zh) | 基于U-Net的遥感图像地物分割方法 | |
CN111309782A (zh) | 一种基于子空间的离群点检测算法 | |
CN112597399A (zh) | 图数据处理方法、装置、计算机设备和存储介质 | |
CN113553326A (zh) | 电子表格数据处理方法、装置、计算机设备和存储介质 | |
Rahman et al. | An efficient approach for selecting initial centroid and outlier detection of data clustering | |
CN109828995B (zh) | 一种基于视觉特征的图数据检测方法、系统 | |
CN116541792A (zh) | 一种基于图神经网络节点分类进行团伙识别的方法 | |
CN114495137B (zh) | 票据异常检测模型生成方法与票据异常检测方法 | |
CN115348190A (zh) | 一种物联网设备检测方法、系统和设备 | |
WO2022183019A9 (en) | Methods for mitigation of algorithmic bias discrimination, proxy discrimination and disparate impact | |
CN115470834A (zh) | 基于标签传播矫正标签置信度的不准确标记的多标签学习算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200619 |
|
RJ01 | Rejection of invention patent application after publication |