SNN算法总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“推荐系统算法总结”。
Levent Ertoz等人提出了一种基于共享型邻居聚类算法SNN。该算法的基本思想为:先构造相似度矩阵,再进行最近k邻居的稀疏处理,并以此构造出最近邻居图,使得具有较强联系的样本间才有链接。然后统计出所有样本点的链接力度,以此确立聚类中心和噪声数据,将噪声数据从样本点中排除出来,并再次对图中的链接进行一次过滤。最后依据确定的聚类中心和剩下的最近邻居图来进行聚类处理。
该算法有效地实现了对交通时空数据集的聚类,并具有很高的可伸缩性和处理噪音的能力,同时也具有对输入样本的顺序不敏感、输入参数的领域知识最小化等特点,但也存在以下不足之处:
(1)孤立点的预处理不够,导致计算增多。
SNN算法对于孤立点的处理非常有限,必须直到对所有样本点建立了SNN图,并计算了所有样本点的链接力度之后才开始判断是否孤立点。经过算法的复杂度分析,计算相似度矩阵和构造SNN图所需的复杂度最大,都是O(M)。因此,对孤立点的预处理不足,直接导致了过多的无谓计算。
(2)用来确定代表点、孤立点、以及用于过滤链接力度的阈值没有明确定义。
虽然经过对样本数据的统计,能得出用于确定代表点、孤立点等的阈值,但由于统计步骤本身具有较大的时空复杂度,这无疑额外增加了整个算法的复杂度。
(3)代表点的确定过程不够全面。直接通过阈值来确定代表点的方法,存在一个问题:确定出来的代表点极有可能同属于或者部分同属于同一聚类中。也就是说,几个代表点可能处于同一稠密区域内。但对后期聚类来说,代表点最好能分散一点。
DBSCAN算法是一种基于密度的聚类算法,算法思想为:用户指定扫描半径eps和核心点阈值minpts,对于数据集中的任一个点a,计算该点与其他点的距离,计算距离的方法采用欧氏距离,如果在扫描半径范围内(以a为中心)点的个数超过minpts则该点为核心点,领域向该点a聚类。其中a的邻域是指与a的距离不超过eps的点的集合。DBSCAN算法适用于低维度的数据集,对于netflow这样多特征的数据类型,采用欧式距离显然不合适。因为对于多维数据很可能存在距离较近但完全不相关的情况,比如(3,0,0,0,0,0,0,0)和(0,0,0,0,0,0,0,4)欧式距离为5,但没有相同的特征,如果聚类在一起则对结果分析产生误导。因此对于多维数据不能将距离作为聚类的依据。
SNN算法适合多维数据的聚类,SNN算法是JP算法和DBSCAN算法的结合体,JP算法提供聚类的依据即SNN密度,DBCAN算法则根据SNN密度聚类。SNN算法流程为:数据集→相似度矩阵→KNN算法稀疏矩阵→构造SNN图→计算SNN密度→DBSCAN聚类
算法分块总结为备战2005年11月4日成都一战,特将已经做过的题目按算法分块做一个全面详细的总结,主要突出算法思路,尽量选取有代表性的题目,尽量做到算法的全面性,不漏任何ACM可......
算法分析与设计总结报告71110415 钱玉明在计算机软件专业中,算法分析与设计是一门非常重要的课程,很多人为它如痴如醉。很多问题的解决,程序的编写都要依赖它,在软件还是面向过......
算法总结1.穷举法穷举法,又称暴力算法,即列举问题解空间所有可能情况,并逐个测试,从而找出符合问题条件的解。这份通常是一种费时算法,人工手动求解困难,但计算机的出现使得穷举法......
abs(x):y 取x的绝对值,x与 y可为整型或实型。* frac(x):y 取x的小数部分,x 与 y均为实型。* int(x):y 取x的整数部分,x 与 y均为实型,常写成 trunc(int(x)). * random(x):y......
算法! High low methodp62 Inventory control level p123 Formal of EOQp125 Formal of EBQp127 Efficiency,capacity and production volume ratios p140 Remuneration......