论文部分内容阅读
传统的数据挖掘算法主要是针对于简单的、结构化的数据,这些数据大都是静态的,但是,当前很多大规模数据都是以数据流的形式存在。这样的数据流具有海量的、不间断到达的、快速变化的特点,使得传统的数据挖掘算法无法适用,算法精度难以得到保证,迫切需要一些新的、基于数据流的挖掘算法。同时,在数据挖掘中,聚类又是很重要的一方面算法,在对数据流进行聚类这一问题上,同样具有非常重要的研究价值。本文研究的正是这样一种数据流聚类的算法。很多知名学者对已有的传统聚类方法进行了扩展和改进,提出不同的数据流聚类算法,已经获得了较好的聚类效果。但是,由于参数设置不当或传统算法固有的缺陷,诸多算法仍存在着一些不足之处。针对上述问题,本文在传统聚类算法的基础上,利用网格和密度,对其进行了扩展,使之可应用于数据流聚类问题。该方法结合了基于密度和基于网格两种聚类方法的优势,具有聚类速度较快、精度较高等优点。本文是由D-Stream算法改进得到的,充分发挥其算法优势,并且在其原有算法的基础上,进行了几方面的改进:首先改进了相关参数的设置,使得划分网格疏密程度的参数可以随网格的变化进行动态调整,避免了参数设置需要具有经验知识这一问题。参数设置参考了部分相关文献,借鉴了其思路,并加以修正和优化,使得算法效率得到了保证,同时对于部分复杂的参数设置进行了证明,保证参数的正确性,不会对聚类结果的正确性造成影响。然后,在离线聚类阶段,本文提出了基于并查集和基于广度优先两种算法,在工程实践中具有一定的意义。同时,对原有的D-Stream算法的离线部分也做了一些改进,在聚类阶段也加入了基于并查集和基于广度优先两种算法的相关操作,优化了算法效率。最后,本文使用了KDD99数据集,对本文提出的算法进行了实验验证。首先是对本算法自身进行实验,通过调节实验相关的参数,使算法获得的较好性能;然后通过实验与D-Stream算法和NDD-Stream算法进行了比较,验证了本算法的正确性和高效性。