版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑一种基于密度的聚类的算法-设计应用将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异目前,它已成为数据挖掘研究领域中一个非常活跃的研究方向。聚类分析技术在模式识别、数据分析、图像处理和市场研究等许多领域得到了广泛的应用。
许多算法被设计用来聚类数值类型的数据。但是,应用可能要求聚类其他类型的数据,如二元类型(binary),分类/标称类型(categorical/nominal),序数型(ordinal)数据,或者这些数据类型的混合。其主要思想是:只要临近区域的密度(对象或数据点的数目)超过某个阈值就继续聚类。样的方法可以用来过滤噪声和孤立点数据,发现任意形状的类。
DBSCAN算法利用类的高密度连通性可以快速发现任意形状的类,但是当处理的数据量较大时,一般的聚类算法不能满足在线聚类这一特点,计算复杂度高,速度慢。
1DBSCAN算法
DBSCAN(Density-BasedSpatialClusteringofApplacationswithNoise)是一个比较有代表性的基于密度的聚类算法。与划分和层次聚类方法不同,它将簇定义为密度相连的点的集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚类。DBSCAN算法具有足够高密度的区域划分为一类,并可以在带有噪声的空间数据库中发现任意形状的聚类
DBSCAN算法提出了一些新的定义:
DBSCAN算法是基于密度的聚类算法,它将类看作是数据空间中被低密度区域分割开的高密度对象区域。在该算法中,发现一个聚类的过程是基于这样的事实:一个聚类能够被其中的任意一个对象所确定。其基本思想是:考察数据库D中的某一个点P,若P是点,则通过区域查询得到该点的邻域,邻域中的点和P同属于一个类,这些点将作为下一轮的考察对象,并通过不断地对种子点进行区域查询来扩展它们所在的类,直至找到一个完整的类。
2M-DBSCAN算法
2.1在线聚类
由于处理数据量较大,性处理完毕不但运算量大,复杂度高,而且对存储空间的需求量大,因此本文提出一种在线式聚类算法,可以动态增加聚类数目。
算法的原理是:随着输入样本数据的不断增加,实时动态地增加聚类个数或调整聚类中心及聚类半径,在形成的任意一个聚类中,聚类中心与属于此聚类的样本点的相似度都不小于一个阈值dthr,dthr的选取将直接影响到聚类数目。
将在线式聚类算法引入后,算法的描述如下:
(1)积累一小段时间内的数据,进行归一化压缩,进行相似度计算,得到相似度矩阵;
(2)通过对相似度矩阵进行比较分析,找出邻域密度的数据点作为个初始类的中心c1;
(3)对尚未加入此类的数据点xi,比较与类中心的距离是否大于给定阈值dthr,若是,则加入此类,否则创建一个新类cj;
(4)处理完这一小段数据后,对新到来的一个数据点进行与(3)相同的做法,确定其类别;
(5)直到没有数据到来为止,输出聚类结果。
2.2改进的算法
DBSCAN算法在对类的划分时采用的方法是:比较此数据点到各类中心的距离,若小于某阈值,则属于此类。可见阈值的选择直接影响类的划分及类的数目。但是如图1所产生的聚类模块[3]所示,这种方法带来的问题就是:距离近的不一定属于同一类,在阈值半径内的不一定属于同一类。
针对此问题,本文提出一种改进的算法M-DBSCAN。首先实现在线聚类,可以动态调整聚类的数目;之后,通过将数据点到类的平均距离与类内平均距离以及新半径与原半径作比较进行双重判决,确定数据点是否可以加入此类中,以实时调整阈值半径,解决了类划分错误的问题。
改进后整个算法描述如下:
(1)积累一小段时间内的数据,得到相似度矩阵
(2)给定阈值dthr,找出邻域密度的数据点作为个初始类的中心c1,计算S中每行值大于dthr的个数,个数多的行号即为个类的中心,将类中的数据点存放到矩阵S’(n×n+2)的行,每行中的个为类中心,计算类的平均半径r,同时计算此类的平均距离d2,放到两位。
(3)对尚未加入的数据点,计算某一个数据点到类c1中的所有点的平均距离d1,类的平均距离d2;
若d1d2,则判断加入此数据后类的半径是否变大;如果变小,将数据点加入此类,同时改变此类的平均半径;否则寻找下一个聚类,计算同上。
如果不能加入到任何一个已有聚类,则创建一个新的类,将其存入S’中。
部分伪代码:
ClusterM-DBSCAN()
{
InitializeS(n×n),dthr;
Fori=1:n
IfS(i,j)=dthr
sum(i)++;
count(i,j)=j;
j++;
end
end
sort(sum(:));
S’(1,:)=count(,:);
S’(1,n+1)=meanradius;
S’(1,n+2)=meandistance2;
Ifmeandistance1meandistance2
Ifmeanradiusnewmeanradius
AddxjtoS’(1);
S’(1,n+1)=newmeanradius;
Else
Nextclass;
End
Ifnoclass
CreateanewclassS’(2);
End
…
Untilnodatacome
It’sover
OutputS’
}
3算法性能及分析
对M-DBSCAN算法的性能作了测试,并与DBSCAN作了比较。所有的测试都在1台PC机上进行,配置P4,2.0GHzCPU,512MB内存,80GB硬盘,算法用Matlab7.3实现。
首先用构造的模拟数据对聚类结果进行验证。图2为DBSCAN算法在阈值半径为20时得到的结果,明显地将不同的三类作为一类输出,形成了错误的类划分;而在取同样的初始阈值半径时,图3可以看出M-DBSCAN算法得到更好的聚类结果。
从图4中可以看到两种算法在SEQUOIA2000数据库上对不同数据量样本的执行时间的比较。算法M-DBSCAN比算法DBSCAN快得多,且随着数据量的不断增大,这种速度上的差别越来越大。表1为两种算法的错误率比较图,错误率为,N1为算法所得聚类数目,N2为实际聚类数目。表1中可看出,改进的M-DBSCAN算法错误概率普遍要小于DBSCAN的,表明改进后的算法减小了错误率,对处理大样本集有较好的性能。
表2中的测试数据集来自Dr.JSrgSander提供的仿照DBSCAN中DataBase2生成的数据集DB2[8]。由表中可以看出,当数据规模为50000时,虽然SGDO[7]处理噪音点的能力比M-DBSCAN强,但是从错误率和运行时间上M-DBSCAN比前两者都有较大的改善。CURD虽然有较短的运行时间,但是存在大量的噪音点。
本文讨论了一种将DBSCAN聚类算法进行改
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业行业销售工作总结
- 纺织服装行业营业员工作总结
- 科研行业前台工作总结
- 服装行业人才招聘实例总结
- 艺术行业行政后勤工作总结
- 2023年湖南省湘潭市公开招聘警务辅助人员辅警笔试自考题2卷含答案
- 2023年陕西省商洛市公开招聘警务辅助人员辅警笔试自考题2卷含答案
- 2021年云南省玉溪市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 2022年吉林省长春市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 湖南省娄底市(2024年-2025年小学六年级语文)部编版能力评测((上下)学期)试卷及答案
- 酒店员工培训方案(3篇)
- 2024版光伏发电项目承包经营权转让合同范本3篇
- 2024年协会工作计划范例(2篇)
- 内蒙古自治区赤峰市2024-2025学年高三上学期11月期中物理试题(解析版)
- 广州广东广州市海珠区瑞宝街招聘雇员9人笔试历年参考题库频考点试题附带答案详解
- 国家开放大学电大临床药理学形考任务1-3参考答案
- 2024年人教版七年级下册英语期末综合检测试卷及答案
- 2025年高中政治学业水平考试时政考点归纳总结(复习必背)
- 统编版(2024新版)七年级下册道德与法治期末复习背诵知识点提纲
- 房屋市政工程生产安全重大事故隐患判定标准(2024版)宣传画册
- 老旧小区改造工程安全管理体系管理制度及措施
评论
0/150
提交评论