一种基于网格密度聚类算法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于网格密度聚类算法

一种基于网格密度聚类算法   摘要:提出了一种基于网格密度的聚类算法(DGCA)。该算法主要利用网格技术去除数据集中的部分孤立点或噪声数据,对类的边缘节点使用一种边缘节点判断函数进行提取,最后利用相近值的方法进行聚类。实验表明,DGCA算法能够很好地识别出孤立点或噪声,聚类结果可以达到一个较高的精度。   关键词:网格聚类;边界点;网格密度   中图分类号:TP312文献标识码:A文章编号:1672-7800(2012)012-0056-02   0引言   聚类是把一组数据按照相似性归成若干类别,它的目的是使得属于同一类别的个体之间的距离尽可能地小而不同类别上的个体间的距离尽可能地大。聚类的结果可以得到一组数据对象的集合,称其为簇或类。簇中的对象彼此相似,而与其它簇中的对象相异。迄今为止,已经提出了许多聚类算法,大体上这些算法可以分为基于距离的方法、基于层次的方法、基于密度的方法、基于网格的方法和基于模型的方法等。   基于网格的聚类算法首先将d维数据空间的每一维平均分割成等长的区间段, 即把数据空间分割成一些网格单元。若一个网格单元中所含数据量大于给定的值,则将其定为高密度单元;否则将其视为低密度单元。如果一个低密度网格单元的相邻单元都是低密度的,则视这个低密度单元中的节点为孤立点或噪声节点。网格聚类就是这些相邻的高密度单元相连的最大集合。   1基本概念   1.1相近值   网格单元内节点之间的相近值是利用节点间的距离来计算的。节点间的相近值越大,它们就越相似。即对这些网格单元内的节点进行聚类时,它们属于同一个类的可能性就越大。   定义1节点集:设P=(U,K),我们用P表示n条记录的集合。   U={U1,U2,…,Un}代表网格单元内的节点集   K={K1,K2,…,Kr}代表网格单元内节点的属性   其中,i,i∈(1,2,…,n),kim,m∈(1,2,…,r)代表节点Ui的第m个属性Km,因此,用Km代表一个r维的向量(ki1,ki2,…,kir),i∈(1,2,…,n)。   定义 2 相异值:任意两个节点Ui与Uj之间的相异值定义如下:D(i,j)=∑rm=1|kim-kjm|,i, j=1,2,…,n(1)定义 3 相近值:任意两个节点Ui与Uj之间的相近值定义如下:S(i,j)=MaxDf-D(i,j)(2)其中,MaxDf=Max1≤i,j≤nD(i, j)代表网格单元中节点间的最大相异值。   1.2边缘节点判断函数   在传统的网格聚类算法中,将与高密度单元相邻的低密度单元中的节点作为孤立点或噪声数据丢弃,这样会丢失一些有用的边缘节点。为提高聚类的精度,在DGCA算法中引入边缘节点判断函数Minf(i),其定义如下:Minf(i)=(MaxSim1≤j≤n(i,j)+aveSim(i))/2(3)其中,MaxSim1≤j≤n(i,j)=max{j︱S(i,j),1≤j≤n},aveSim(i)=1n∑nj=1S(i,j)   边缘节点函数Borderf(i),其定义如下:Borderf(i)=1hd∑hdi=1S(i,l)(4)其中,hd表示高密度单元中节点的个数。   边缘节点处理的方法是:如果一个高密度网格单元的相邻网格单元中有低密度单元,就使用边缘节点函数Borderf(i)检查这些低密度单元中的节点i,如果Borderf(i)的值大于等于设定的边缘节点判断函数值Minf(i),那么判定节点i是此高密度单元的边界点,即i与此高密度单元中的节点属于一类。这样就可以将有用的边缘节点提取出来,从而提高聚类的质量。   2DGCA聚类算法   DGCA聚类算法的基本思想:①将所有节点集U映射到数据空间相应的网格单元中;②根据用户输入的密度测试值MinPts判断每个网格单元是低密度还是高密度网格单元,如果是高密度网格单元,则对其相邻的低密度网格单元中的节点,利用Minf(i)判断各个节点是否为该高密度网格的边缘节点,如果是即提取边缘节点,如果不是就把该节点认为是孤立点或噪声数据;③根据用户输入的相近测试值MinSim,对去除孤立点或噪声数据后的节点,使用相近值方法进行聚类,即如果任意两个节点的相近值S(i, j)大于或等于给定的测试值MinSim,就把这两个数据对象视为同一个类中的数据。   DGCA算法如下:   输入:Z,MinPts,MinSim   输出:类,孤立点或噪声数据   步骤1:根据用户输入的Z值将整个数据空间X划分成Zr个网格单元。   步骤2:将节点集U映射到网格单元中。   步骤3:逐一扫描每个网格单元,并记录每个网格单元中的节点个数cell[q].count(1≤q≤Zr)。   步骤4:根据密度阈值将网格单元分为高密度单元和低密度单元。   步骤5:考虑每个高

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档