基于聚类离群因子和相互密度的离群点检测算法

合集下载

离群点的判定

离群点的判定

离群点的判定摘要本文首先对离群点进行了定义,离群点(outlier)是指数值中,远离数值的一般水平的极端大值和极端小值。

因此,也称之为歧异值,有时也称其为野值。

深入了解了形成离群点的原因,并建立数学模型来找出一维、n维数据中的离群点,主要利用聚类的离群挖掘法。

针对问题一,考虑到数据的杂乱性,先对数据进行排序,由于在实际生活中我们需要处理的数据量往往比较多,离群点的个数也不确定,就考虑对数据进行分类处理,利用离群值跳跃度比较大的特点,采用斜率比较的方法进行分类,在分类的过程中我们就会很容易的发现离群点。

最后再对完成分类的数据进行分析。

完成分类的数据往往差距更小,可以近似的认为数据服从正态分布,利用正态分布的性质可以找出每类数据中的离群点,这样就找出了数据中所有的离群点。

针对问题二,我们主要采用具体的数据绘制具体的图形来分析存在的离群点,并说明离群点带来的影响。

针对问题三,我们主要利用基于聚类的离群挖掘方法,先利用一趟算法对数据集进行聚类;然后再计算每个簇的离群因子,并按离群因子对簇进行排序,最终确定离群簇,也即确定离群对象。

确定算法以后再利用具体的数据进行检测,看该模型是否可行。

关键词:数据的分类处理聚类的离群挖掘方法(CBOD)一、问题重述A题:离群点的判定离群点(outlier)是指数值中,远离数值的一般水平的极端大值和极端小值。

因此,也称之为歧异值,有时也称其为野值。

形成离群点的主要原因有:首先可能是采样中的误差,如记录的偏误,工作人员出现笔误,计算错误等,都有可能产生极端大值或者极端小值。

其次可能是被研究现象本身由于受各种偶然非正常的因素影响而引起的。

例如:在人口死亡序列中,由于某年发生了地震,使该年度死亡人数剧增,形成离群点;在股票价格序列中,由于受某项政策出台或某种谣传的刺激,都会出现极增,极减现象,变现为离群点。

不论是何种原因引起的离群点对以后的分析都会造成一定的影响。

从造成分析的困难来看,统计分析人员说不希望序列中出现离群点,离群点会直接影响模型的拟合精度,甚至会得到一些虚伪的信息。

数据科学中的异常检测与离群点检测技术

数据科学中的异常检测与离群点检测技术

数据科学中的异常检测与离群点检测技术异常检测与离群点检测在数据科学中扮演着重要的角色。

随着大数据和机器学习的快速发展,异常检测和离群点检测技术也变得越来越重要。

在本文中,我将介绍异常检测与离群点检测的概念、方法和应用,并探讨它们在数据科学中的重要性。

一、引言数据科学是一个多学科领域,通过数据挖掘、机器学习和统计学等技术,致力于从数据中获取知识和洞察。

在进行数据分析和建模的过程中,检测异常值和离群点是至关重要的。

异常值和离群点可能是数据输入错误、设备故障、欺诈行为等潜在问题的迹象,因此及时发现并处理它们对数据质量和模型性能至关重要。

二、异常检测与离群点检测的概念异常检测和离群点检测的目标是一样的,即发现数据中的异常或不正常的情况。

异常值是指与其他观察值相比明显不同的观察值,而离群点则是指在整体数据中呈现极端值的观察值。

两者的区别在于异常值可能在特定情境下并不罕见,而离群点通常是极罕见的情况。

三、异常检测的方法在数据科学中,有许多方法用于异常检测,以下是一些常用的方法:1.基于统计的方法:基于数据的分布、均值和标准差等统计量进行检测。

2.基于距离的方法:通过计算数据点之间的距离来检测异常值,如K最近邻算法。

3.基于聚类的方法:将数据点聚类为多个群组,然后找出不属于任何群组或属于小群组的数据点。

4.基于密度的方法:通过计算数据点周围的密度来检测异常值,如局部异常因子算法。

5.机器学习方法:利用监督学习和无监督学习模型进行异常检测,例如支持向量机和集成学习算法。

四、离群点检测的方法与异常检测类似,离群点检测也包括多种方法:1.基于统计的方法:计算数据点到数据的中心或边界的距离来检测离群点。

2.基于距离的方法:使用距离度量来衡量数据点的相对位置,例如局部离群因子算法。

3.基于聚类的方法:将数据点聚类为多个群组,然后找出孤立的群组或包含极少数据点的群组。

4.基于密度的方法:通过计算数据点周围的密度来检测离群点,例如LOF算法。

基于离群点检测的K-means算法

基于离群点检测的K-means算法

基于离群点检测的K-means算法冷泳林;张清辰;赵亮;鲁富宇【摘要】K-means算法以其简单、快速的特点在现实生活中得到广泛应用。

然而传统K-means算法容易受到噪声的影响,导致聚类结果不稳定,聚类精度不高。

针对这个问题,提出一种基于离群点检测的K-means算法,首先检测出数据集中的离群点,在选择初始种子的时候,避免选择离群点作为初始种子。

然后在对非离群点进行聚类完成后,根据离群点到各个聚类的距离,将离群点划分到相应的聚类中。

算法有效降低离群点对K-means算法的影响,提高聚类结果的准确率。

实验表明,在聚类类别数给定的前提下,在标准数据集UCI上该算法有效降低离群点对K-means算法的影响,提高了聚类的精确率和稳定性。

%K-means algorithm is widely used in real life for its simple and rapid characteristics .However , traditional K-means algorithm is affected by outliers , leading to the instability of the clustering results and low accuracy of the clustering .For this problem , the paper proposes a novel K -means algorithm based on outliers detection .The presented algorithm firstly detects outliers from the given dataset , which can avoid selecting outli-ers as the initial seed .After clustering all the objects which are not outliers , the algorithm allocates every outlier to the corresponding cluster according to distance between the outlier and different clusters .The presented algo-rithm reduces the impact of outliers on traditional K -means algorithm and improves the clustering accuracy .For the given number of categories of the clusters and in the standard UCI data sets ,the experimental results indicate that thealgorithm is effective , reduces the influence of outlier on the K -means algorithm , improving the accura-cy and stability of the cluster .【期刊名称】《渤海大学学报(自然科学版)》【年(卷),期】2014(000)001【总页数】6页(P34-38,48)【关键词】聚类;K-means算法;离群点;UCI数据集【作者】冷泳林;张清辰;赵亮;鲁富宇【作者单位】渤海大学高职学院,辽宁锦州 121001; 大连理工大学软件学院,辽宁大连 116621;大连理工大学软件学院,辽宁大连 116621;大连理工大学软件学院,辽宁大连 116621;渤海大学高职学院,辽宁锦州 121001【正文语种】中文【中图分类】TP3110 引言聚类是将物理或抽象对象的集合分成由类似的对象组成多个类的过程,即“物以类聚,人以群分”.聚类是数据挖掘中的一类重要技术,是分析数据并从中发现有用信息的一种有效手段.它将数据对象分组成为多个类或簇,使得同一簇中的对象之间具有较高的相似度,而不同簇中的对象差别很大〔1〕.聚类已经广泛应用于模式识别、空间数据分析、经济学等领域.聚类分析既可以作为单独的工具发现数据集中隐含的相关知识,又可以作为其他数据挖掘分析方法的预处理过程,其已经成为数据挖掘领域的一个重要的研究方向.目前常用的聚类算法包括划分法、层次法、基于密度的方法、基于网格的方法和基于模型的方法等.其中,基于划分方法思想的K-means算法以其简单、快速并有效处理大规模数据等诸多特点,成为现实应用最为广泛的聚类算法.K-means算法〔2,3〕适合聚类大型数据集,特别是当样本分布呈现类内团聚状时,可以达到很好的聚类结果.但是,在有噪声数据影响时,K-means聚类算法结果易受初始聚类中心影响,导致聚类结果不稳定.K-means算法过度依赖初始条件的缺点影响了该算法的聚类效果并制约了其应用范围.当前许多学者致力于改进K-means算法的聚类中心选取方法,如基于均值-标准差选取方法〔4〕,基于近邻密度选取方法〔5〕, 基于密度参数的选取方法〔6〕等,然而这些算法没有充分考虑离群点对聚类的影响,导致最后聚类精度提高不明显.针对这个问题,本文提出一种基于离群点检测的K-means算法,算法将离群点检测引入传统K-means算法,首先检测出数据集中的离群点,在选择初始种子的时候,避免选择离群点作为初始种子.在对非离群点进行聚类完成后,根据离群点到各个聚类的距离,将离群点划分到相应的聚类中.算法有效降低离群点对K-means算法的影响,提高聚类结果的准确率.实验表明,在聚类类别数给定的前提下,通过标准UCI数据库进行实验比较,在保留噪声数据的同时,该算法有效提高聚类精度.1 相关理论和技术1.1 基于距离的离群点检测离群点是指明显偏离数据集中其他数据对象的数据点,人们怀疑这些点是由不同机制产生的〔7〕.离群点检测是数据挖掘领域中的一项重要挖掘技术.它可以发现数据集中小部分偏离了大多数数据行为或数据模型的异常数据.目前常用的离群点检测方法包括基于统计分布、基于距离、基于密度和基于偏差等方法〔8〕.其中,基于距离的离群点检测方法无需了解数据集的分布模型,适用于任何可以计算对象间距离的数据集,而且计算简单,因此本文采用该算法检测离群点.如果对象o在数据集S〔9〕中有大于p部分的对象与它的距离都大于d,那么就将对象o称为数据集S上的DB(p,d)离群点.基于距离的离群点的定义适用于任意维度的数据集,其中参数p表明与离群点的距离大于d的对象所占数据集的最小比例〔10〕.基于距离的离群点检测方法可以简便的定制对象间的距离函数,欧氏距离计算函数就是其中的一种.欧氏距离的定义如下:其中m为数据对象的维(属性)数,xij表示第i个对象的第j属性的值.基于距离的离群点检测算法主要步骤如下:1.随机选取一个数据对象.2.计算其他数据对象与选取的数据对象间的欧氏距离,如果与之距离大于d的数据对象的比例大于p,则判定该数据对象为离群点.3.选取下一个不重复数据对象.4.重复2,直到所有数据对象都被选到.1.2 传统K-means算法传统K-means算法的基本思想是〔11〕:随机地选择k个对象,每个对象初始代表了一个聚类中心;对剩余的每个对象根据其与各个聚类中心的距离,将它赋给最近的聚类;然后重新计算每个聚类的平均值,作为新的聚类中心.不断重复这个过程,直到准则函数收敛.收敛函数E定义为:其中:E是数据集所有对象与它所在的聚类中心的平方误差的总和,E越大说明对象与聚类中心的距离越大,聚类内的相似度越低,反之E越小说明聚类内的相似性越高. 为聚类内的一个数据对象;是聚类Ci的聚类中心,k是聚类个数,Ci是第i个聚类.K-means算法步骤如下:1.随机选择k个数据对象,每个对象作为初始聚类中心.2.计算每个数据对象与聚类中心的距离,根据距离将对象划分到距离最近的聚类.3.重复计算每个聚类中对象的平均值,更新聚类中心.4.重复2和3,直到准则函数E收敛.2 基于离群点检测的K-means算法基于离群点检测的K-means算法的基本思想是:首先利用基于距离的离群点检测方法检测数据集的离群点,然后在非离群点中随机选择k个数据点作为聚类的初始种子,利用传统K-means算法对非离群点进行聚类,最后将离群点划分到相应到聚类中.算法的思想如图1所示.图1 基于离群点检测的K-means算法算法具体步骤如下:1.随机选取一个数据对象.2.计算其他数据对象与选取的数据对象间的欧氏距离,如果与之距离大于d的数据对象的比例大于p,则判定该数据对象为离群点.3.选取下一个不重复数据对象.重复2,直到将所有离群点检测出为止.4.在非离群点中随机选取k个数据对象作为初始聚类种子.5.计算每个非离群点数据对象与聚类中心的距离,根据距离将对象划分到距离最近的聚类.6.重复计算每个聚类中对象的平均值,更新聚类中心.7.重复5和6,直到准则函数E收敛.8.计算每个离群点数据对象与聚类中心的距离,根据距离将其划分到最近的聚类. 算法描述如下:输入:n个数据对象集S 和聚类数k;输出:k个聚类中心Zj及k个聚类数据对象集合Cj;Beginfor r=1 to n //取数据集S中的各个数据对象begincount=0;for any q!=r //数据集中除了当前对象的其他对象beginend//离群点集A={a1,a2,...,ai};M=S-A; //在S中去除数据集A中的数据对象,生成数据集M;k_means( M , k ); //执行传统的K_means算法;for r=1 to i dobeginfor q=1 to jEnd.3 结果与分析本文将传统的K-means算法和基于离群点检测的K-means算法进行实验对比.为了测试本文算法的有效性,实验选择专用于测试聚类算法性能的UCI数据库中的Iris数据集,Diabetes数据集和Wine数据集作为实验数据集.分别用传统聚类算法与本文提出的算法对3组数据集进行测试.本文实验环境为:CPU为E4500(2.20 GHz)、内存为1.99 GB、操作系统为Windows XP,编程语言为Java.实验结果一:随机选择一批数据分别利用传统K-means聚类算法与本文改进的K-means算法对其进行聚类,结果示意图如图2所示.图2 聚类结果示意图由图2可知,传统K-means算法没有充分考虑离群点的影响,导致最后聚类结果不精确.本文在选择初始聚类中心时,避免选择离群点作为初始聚类中心,首先对非离群点进行聚类,最后根据离群点到与各个聚类的距离将其分配到相应的聚类中.本文有效避免离群点对聚类结果的影响,聚类精度高于传统K-means算法.实验结果二:利用传统K-means算法与本文改进的K-means算法分别对3组数据进行6次实验,对实验结果进行统计,平均准确率如表1所示.表1 传统K-means算法与本文算法聚类平均精度比较IrisDiabetesWine传统k-means算法0.79530.61880.9563本文算法0.83090.64840.96716次实验准确率统计曲线如图3所示.Iris聚类结果曲线 Diabetes聚类结果曲线Wine聚类结果曲线图3 实验结果统计曲线从表1与图3可以看出,传统K-means算法的最高准确率与本文算法的平均准确率接近,但平均准确率明显低于本文改进的K-means算法.另外,传统K-means算法容易受到噪声影响,导致聚类结果不稳定,当不选择离群点作为初始种子时,聚类结果较好,否则聚类效果很差.本文避免选择离群点作为初始种子,因此聚类效果稳定,聚类精度高于传统K-means聚类算法.4 结论聚类分析是数据挖掘领域中常用的数据分析方法,目前聚类分析的主流方法有很多,其中基于划分的K- means算法以其简单、快速并有效处理大规模数据等诸多优点,成为最经典并应用最广泛的聚类方法之一.然而传统K-means算法容易受到离群点的影响,导致聚类结果不稳定、聚类精度低,影响了该算法的聚类效果并制约了其应用范围.本文针对这个问题提出基于离群点检测的K-means算法,将离群点检测引入传统K-means算法,避免选择离群点作为初始聚类中心.在对非离群点进行聚类之后,根据离群点到各个聚类的距离,将其分配到相应的聚类之中.实验结果表明,算法在聚类精度上明显高于传统K-means算法.参考文献:【相关文献】〔1〕Stalling W. Operating systems: internals and design principles(4th Edition)〔M〕.New Jersey, Prentice-Hall, 2001.〔2〕MacQueen J. Some methods for classification and analysis of multivariate observations〔C〕. Proceedings of the 5th Berkeley Symposium on Mathematical Statistics and Probability. Berkeley: University of California Press, 1967.〔3〕张玉芳,毛嘉莉,熊忠阳. 一种改进的K-means算法〔J〕. 计算机应用, 2003,8(23):31-34. 〔4〕张文君,顾行发,陈良富,等. 基于均值-标准差的K均值初始聚类中心选取方法〔J〕. 遥感学报,2006,10(5):715-721.〔5〕Shehroz S Khan, Amir Ahmad. Cluster center initialization algorithm for K-Means clustering〔J〕. Pattern Recogintion Letters(S0167-8655),2004,25(11):1293-1320.〔6〕韩凌波,王强,蒋正锋,等. 一种基于改进的K-means初始聚类中心选取算法〔J〕. 计算机工程与应用,2010,46(17):150-153.〔7〕Elio L, Edgar A. Parallel algorithms for distance-based and density-based outliers 〔C〕.Proc of International Conference on IEEE. 2005: 767-776.〔8〕Kriegel H P, Schubert M, Zimek A. Angle-based outlier detection in high-dimensional data〔C〕. Proceedings of the 14th ACM SIGKDD international conference on knowledge discovery and data mining. ACM,2008:444-452.〔9〕张秀梅,王涛.模糊聚类分析方法在学生成绩评价中的应用〔J〕. 渤海大学学报:自然科学版,2007,28(2):169-172.。

cblof 公式

cblof 公式

cblof 公式CBLOF是一种基于局部离群因子(Local Outlier Factor)的离群点检测算法。

它被广泛应用于异常检测领域,可以帮助我们发现数据集中的异常值。

CBLOF算法的核心思想是通过计算每个数据点的离群因子来判断其是否为离群点。

离群因子是通过比较数据点与其邻近点的密度来计算得出的。

具体而言,CBLOF算法首先将数据集划分为若干个子集,然后计算每个子集中每个数据点的局部离群因子。

最后,根据每个数据点的局部离群因子来判断其是否为离群点。

CBLOF算法的输入参数包括数据集、子集数量和邻近点数量。

数据集是指待检测的数据集,子集数量是指将数据集划分为多少个子集,邻近点数量是指计算离群因子时考虑的邻近点的个数。

这些参数的选择对算法的效果有重要影响,需要根据实际情况进行调整。

CBLOF算法的输出结果是每个数据点的离群因子和离群点得分。

离群因子表示数据点与其邻近点的密度比值,离群点得分表示数据点的离群程度。

离群点得分越高,表示数据点越有可能是离群点。

CBLOF算法的应用非常广泛。

在金融领域,CBLOF算法可以用于检测金融交易中的异常行为,帮助银行和证券公司发现潜在的欺诈行为。

在制造业领域,CBLOF算法可以用于检测设备故障和生产异常,提高生产效率和产品质量。

在网络安全领域,CBLOF算法可以用于检测网络攻击和异常流量,保护网络安全。

CBLOF算法的优点是可以提供精确的离群点检测结果,并且不受数据分布的影响。

它适用于各种数据类型和数据分布,对于高维数据和大规模数据集也有较好的表现。

此外,CBLOF算法还可以根据实际需求进行调整和扩展,提高算法的性能和适用性。

然而,CBLOF算法也存在一些局限性。

首先,算法的计算复杂度较高,对于大规模数据集可能会面临计算效率的问题。

其次,算法对于参数的选择较为敏感,不同的参数设置可能会导致不同的检测结果。

此外,CBLOF算法在处理数据集中存在较多异常值的情况下可能会受到影响,需要结合其他算法进行处理。

NLOF:一种新的基于密度的局部离群点检测算法

NLOF:一种新的基于密度的局部离群点检测算法

l o ws : t h e k n o wn i n f o r ma t i o n i s u s e d a s mu c h a s p o s s i b l e t O o p t mi i z e t h e n e i g h b o r h o o d q u e r y o p e r a t i o n o f a d j a c e n t o b — j e c t s i n t h e p r o c e s s o f n e i g h b o r h o o d s ar e c h i n g o f a d a t a o b j e c t . T h i s me t h o d i s a d o p t e d i n n e i g h or b h o o d c o mp u t i n g nd a
过聚类 算法 D 】 3 S C A N对数据集进行预 处理 , 得到初 步的异 常数据 集。然后 利 用 L 0 F算 法 中计 算局部异 常 因子 的方
法计算初步异 常数据 集 中对 象的局部异 常程度 。在 计算数据对 象的局部异 常 因子 的过 程 中, 引入去一 划分信息 熵增
量, 用去 一划分信 息熵差确定属性 的权 重 , 对属性 的权值 做具体 的量化 , 在 计算各 对 象之 间的距 离时采 用加权 距 离。
b a s e d o u t l i e r d e t e c t i n g a l g o r i t h m ( NLOF a l g o r i t m ) wa h s i n t r o d u c e d . Th e ma i n i d e a o f t h e NL OF a l g o r i t m h i s a s ol f —

基于聚类分析局部离群点挖掘改进算法的研究与实现

基于聚类分析局部离群点挖掘改进算法的研究与实现

Zh o Zh yn Ch n a s e g a an ig e g Ch ng h n
( colfC m ue Si c a dTcnlg , ne n e ooy D n haU i sy S ag a 12 C i r e h ei 2 a)
Ke wo d y rs
D t n n L c u l rfc o K・ itn e n ih o r C u tra ay i aa mi i g o a o te tr l i a d s c eg b u l s n lss a e
而且 还 能 更 好地 达 到 解 析 目的 。 关 键 词 数 据 挖 掘 局 部 离 群 因子 K- 离 邻 域 聚 类 分 析 距
ON M PRoVED I ALGoRI TH FOR LoCAL oUTLI ER I NG M NI BAS ED oN CLUS TER ANALYS S AND TS I PLEM ENTATI I I M oN
p s e g rfo d ts to uo ai a ec le tn y tm fr i ta i t tt e i a s n e w a a e fa tm tc f r o lc ig s se o al r nst ha h mpr v d lo t m an mi e o tt ule s d s r i te l o e ag r h c n u he o tir e e vng atn— i to r fe tv l a d c n aS c e e t a sn i et r i n mo e efc iey, n a l O a hiv he p r ig a ms b te .
t i e c o .t Lcl ul rat rd ent nfr ulr f a betaget el a uao eur acl Ite ms ndt t n e . oa ote c riaga e f io te o t ojc, ra da c cltni r i dt c u ̄ea o ei c i f o s di i o o i d a l i s q e ol lh

outlier检测 统计方法

outlier检测 统计方法

outlier检测统计方法
Outlier检测是指识别数据集中与其余数据明显不同的观测值。

在统计学和数据分析中,outlier通常被认为是异常值,可能是由
于测量误差、实验误差或者真实的变异性。

有许多统计方法可以用
来检测outlier,下面我将从几个角度来介绍一些常见的方法。

1. 基于离群点得分的方法,这类方法通过计算每个数据点的离
群点得分来识别离群点。

常见的方法包括Z得分、学生化残差、Grubb's测试等。

这些方法基于假设数据符合正态分布,因此对非
正态分布的数据可能不够准确。

2. 基于距离的方法,这类方法基于数据点之间的距离来识别离
群点,例如K近邻算法、LOF(局部离群因子)算法等。

这些方法适
用于多维数据集,并且不受数据分布的影响。

3. 基于聚类的方法,这类方法将数据点聚类,然后识别不属于
任何簇的数据点作为离群点。

DBSCAN(基于密度的聚类算法)和OPTICS(基于密度的空间聚类算法)是常用的基于聚类的离群点检
测方法。

4. 基于模型的方法,这类方法使用统计模型来描述数据,然后识别与模型不符的数据点作为离群点。

例如,基于高斯混合模型的离群点检测方法可以识别不符合高斯分布的数据点。

总的来说,选择合适的离群点检测方法取决于数据的特征、数据分布、离群点的定义以及分析的目的。

在实际应用中,通常需要结合多种方法来全面检测离群点,以确保结果的准确性和可靠性。

希望这些信息对你有所帮助。

基于网格聚类技术的离群点挖掘算法

基于网格聚类技术的离群点挖掘算法

究内容 ,其 目的是发现数据集 中行为异常的少量数据对 象 这 些技术都需要对于异常情况作出快速而敏感的检测 ,这 些
都为离群点 的挖掘提供了潜在的应用背景。 离群点挖掘可以描述 如下 : 对于给定 的一个 N个数据 点 或对象 的集合 ,及预期的离群点的数 目 k ,是指发现与 剩余 的数据相 比是有显著异常 的或不一致 的头 k个对象。 近年来 , 基于数据挖掘思想 的离群点挖掘研究取得 了一系列重 要的成 果和挖掘 方法 ,例如基于 深度的方法 、基于距离 的方法”、 J 。 基于密度 的方法H。其 巾基于密度 的离群点检测算法 L F4 J O『 是 目前离群点数据挖掘中 的常用算法之一 。 由于离群点 的数 目只 占整个数据集 的-d 部分,因此可 , 以考虑在计算 L F值之 前, 用聚类 方法把不可能成为离群 O 采 点的点集提 前删 除,然后对剩下 的点集作进一步检测 ,选出 符合条件 的点作为结果。为此 ,本文在现有的 L OF算法基础 上 ,提 出 了一 种基 于 阱格 聚 类技术 的离群 点挖 掘算法 (n a
CAO n q YU n , UN Zh h i Ho g i, La S i u
( . p rm e t fElcr ncEn ie r g Na t n o ain l l g , no g2 6 0 ; 1 De at n e to i gn ei . n o gV c t a l e Na tn 2 0 7 o n o Co e
把非离群点集筛选 出来删除掉 ,然后再对剩下的可能 成为离 群点 的点集做进一 步考 察,这样一 方面可 以减少大部分不必 要的计算 ,节省算法 的运行 时间 ,另一方面 ,避 免了算法第 2步在使用 L F方法判 断离群点时 , O 对参数 MiPs 择要求 n t选 高的不足 ;( )该 算法对相邻单元的 定义和 网格的划分加以 2 改进 ,能更合理有效地对 阿格进行划 分,且能根据 数据信 息 自动生成划分间隔参数 ,体现 了算法在性能上的改进;( ) 3 该算法适用于处理大数据集 和高 维数据集 。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Vol. 25 No. 9Sep. 2 0 19第25卷第9期2 0

19

年9

计算机集成制造系统Computer Integrated Manufacturing

Systems

D"I:10. 13196/j.

cims. 2019.

09. 018

基于聚类离群因子和相互密度的离群点检测算法

张忠平12

,邱敬仰1,刘 丛1,朱梦凡1,

章德斌3

(1燕山大学信息科学与工程学院,河北秦皇岛

066004;

2.燕山大学河北省计算机虚拟技术与系统集成重点实验室,河北秦皇岛066004;

3.河北省教育考试院,河北石家庄

050000)

摘 要:针对大多基于聚类的离群点检测算法往往需要人工输入参数,对于不同的数据集很难选择一个合适 参数的问题,将无参数的基于自然邻居的离群点检测算法的自然邻居搜索算法和密度峰值聚类算法相结合,

提出

一种基于聚类离群因子和相互密度的离群点检测算法$该算法使用相互密度和1密度构造决策图,将1密度异常 大的样本点作为聚类中心进行聚类,最后根据聚类的离群因子找出离群聚类边界检测离群点,

该算法不需要人工

输入参数$在模拟数据集和真实数据集下进行了实验,证明了所提算法能很好地进行聚类和离群数据的挖掘$ 关键词:离群点;数据挖掘;聚类离群因子;相互密度;1密度中图分类号:TP311 文献标识码:

A

Outlier detection based on cluster outlier factor and mutual densityZHANGZhongping1& , QlUJingyang1 , LlUCong1 , ZHUMengfan1 , ZHANG Debin5(1. School of Information Science and Engineering, Yanshan University, Qinhuangdao 066004, China;

2. The Key Laboratory for Computer Virtual Technology and System Integration of HebeiProvince&Qinhuangdao066004

&China

3'HebeiEducationExaminationsAuthority&Shijiazhuang050000&China

)

Abstract: Most outlier detection algorithms based on clustering often need to input parameters artificially, which was dificulttoselectasuitableparameterfordiferentdatasets.Tosolvethisproblem, anoutlierdetectionalgorithm basedonclusteroutlierfactorand mutualdensitywasproposedbycombiningthenaturalneighborsearchalgorithm

of NOF algorithm with DPC algorithm. The mutual density and 2 density was used to construct

decision graph, and

thed5t5pointswithg5mm5-density5nom5louslyl5rgeindecisiongr5ph weretre5ted5sclustercenters.According totheClusterOutlierF5ctor(COF),thebound5ryofoutlierclusterw5sdetectedtofindthep5r5meter5utom5tic5l- ly.Theexperimentsshowedth5ttheproposed methodcould5chievegoodperform5nceinclustering5ndoutlierde- tection.Keywords:outlier; data mining; cluster outlier factor; mutual density; y density

1问题的提出

离群点检测作为数据挖掘中的一个重要分支,在 很多领域中得到应用,如信息安全)]*、金融欺诈检 测⑵、医疗与公共卫生检测卩4、气象预测等5 $离群 点检测的核心思想是:首先在数据中创建一个正常模 式,然后为每个点偏离这个正常模式的程度赋予一个 离群因子匚6*,其聚焦点在于发掘数据中偏离正常数据 模式的数据点,进而挖掘出更加有价值的信息。目前,国内外学者在离群点检测领域的研究十分

活跃,提出了很多优秀的算法,传统研究方法大致可

以分为基于分布的、基于深度的、基于距离的、基于密 度的和基于聚类的5种⑴,近年也有新的检测算法提

出,如将数据属性作为上文有关信息,给出一种基于

收稿日期:2018-01-22 ;修订日期:2018-06-19 $ Received 22 Jan. 2018 ;accepted

09 June 201

&第9期

张忠平等:基于聚类离群因子和相互密度的离群点检测算法

2315

微粒群算法的上下文有关的离群数据挖掘算法。每 种类型的离群点检测算法都有自身的优势和不足。

基于分布的算法中认为偏离正常分布或概率模 型的点为离群点⑻,

在已知数据集分布的情况下能够

快速高效地挖掘出离群点。但是该算法不适用于高 维数据集和数据集分布未知的情况;基于距离「9的勺方

法认为如果数据集中有超过化方%个的数据对象距离

目标点的距离大于dmin,则目标点被认为是离群点$

基于距离的方法因其简单、高效而被广泛应用

,但是

该算法只能检测出全局离群点,无法检测出局部离群 点;基于微粒群算法的上下文的离群数据挖掘算 法)0*可以有效提高离群数据的可解释性$但是该 算法随着数据规模变大,所包含的离群点个数可能增 加,同时由于迭代次数不变,可能导致挖掘精度降低; 基于密度「**勺勺方法很好地解决了上述方法的不足, 如基于密度的局部离群因子检测(Loal Outlier Fac­tor, LOF)「12*算法、使用不稳定因子的健壮离群点检 测INS(INStability factor)算法、使用对称邻域关系 排列异常值 INFLO (INFLuenced Outlierness )算 法)4*但是这些方法需要参数,离群点检测的准确性 受到参数的限制$为解决该问题,提出了无参数的基 于自然邻居的离群点检测(Ntual Outlier Factor, NOF)算法)5*该方法可以在不同的数据集下自适应 获取自然邻居的数量虹从而确定怡邻域和反怡邻域, 将怡邻域和反怡邻域的并集称作影响空间,将数据对 象所处影响空间的可达密度的平均值和自身局部密 度的比值定义为该点的自然离群因子NOF,根据 NOF值的大小确定数据点的离群程度$以上基 密 的 法都 将离群点作为 离 常模式的单独的点进行处理,因此要扫描所有数据 集,然后通过对离群因子排序来检测离群点$由此 可见,对于很多正常点,基于密度的离群点检测算法 要重复多次扫数据描集,但其离群因子值的计算是 没有必要的$为解决基于密度的方法存在的问题, 提出了基于聚类的方法)6*,该方法可以对原始数据 集进行筛选,只计算那些处在聚类边界的数据的离 群程度,文献)7]将偏离正常聚类的一个小簇作为 离群聚类,文献)8]提出了基于累积全V的子空间离群点 法 SODCH(subspace outlier de­tection algorithm based on cumulative holoentropy for clustering),利用k-means对子空间进行聚类, 根据累计全V检测离群点,大大提高了算法处理数 据的粒度,该算法具有很高的效率,但是基于聚类的 离群点检测方法通常需要引入新的参数$文献[19] 针对^-means聚类算法存在的缺点,提出一种基于 粒子群的 < 均值聚类算法,该算法有较好的全局收 敛性,能有效克服传统的<-means算法易陷入局部 最小值的问题。例如文献[20]提出的密度峰值聚类 法 DPC(Clustering byfastsearch andfind of Density Peaks),该算法数据点的局部密度q和5密 度构建如图1所示的决策图,5密度和局部密度Q 异常大的点作为聚类中心,聚类中心位于决策图的 右上侧区域,然后根据数据点和密度大于自身的最 近邻居属于同一聚类这个理念,对剩余的样本点进 行聚类,从而实现一步完成聚类,该聚类算法效率很

高,但是该方法面临两个问题:

(1) 需要引入参数必(裁剪距离),R距离直接

数据 象 密 该 法的

数R的影响十分敏感

,而且

DPC算法很难获取合

适的必参数$

(2) 当决策欺诈(decision graph fraud)现象[17]出

现时,根据决策图将5

密度和局部密度奇异大的点确

定为聚类的中心,可能产生错误的聚类中心。如图2 所示为一个&形状的聚类,决策图如图1所示,图2

中有两个2密度和局部密度奇异大的数据点,如果将

这两个数据点作为聚类的中心进行聚类,则将原来的 聚类分割为两个聚类,此时聚类的边界相互交织,聚 类的边界密度就会很大,该算法就会将很多数据点当

做离群点进行处理,因此决策欺诈会降低DPC算法

的聚类和离群点检测准确性以及可靠性$

为解 上 法 的 问 题 文提出 一 基

聚类离群因子和相互密度的离群点检测(Cluster Outlier Factor ,

COF)算法

,该算法不需要人工输

入参数$

首先

,引入

NOF算法中相互邻居搜索的

相关文档
最新文档