文本聚类算法总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/woshiliulei0/article/details/82771355

一、文本聚类算法总结

1.划分法

(partitioning methods):给定一个有N个元组或者纪录的数据集,分裂法将构造K个分组,每一个分组就代表一个聚类,K<N。而且这K个分组满足下列条件:(1) 每一个分组至少包含一个数据纪录;(2)每一个数据纪录属于且仅属于一个分组(注意:这个要求在某些模糊聚类算法中可以放宽);对于给定的K,算法首先给出一个初始的分组方法,以后通过反复迭代的方法改变分组,使得每一次改进之后的分组方案都较前一次好,而所谓好的标准就是:同一分组中的记录越近越好,而不同分组中的纪录越远越好。使用这个基本思想的算法有:K-MEANS算法、K-MEDOIDS算法、CLARANS算法;

2.层次法
2.1层次发的总结

(hierarchical methods):这种方法对给定的数据集进行层次似的分解,直到某种条件满足为止。具体又可分为“自底向上”和“自顶向下”两种方案。例如在“自底向上”方案中,初始时每一个数据纪录都组成一个单独的组,在接下来的迭代中,它把那些相互邻近的组合并成一个组,直到所有的记录组成一个分组或者某个条件满足为止。代表算法有:CANOPY算法、BIRCH算法、CURE算法、CHAMELEON算法等;

2.2层次法的优点

(1).距离和规则的相似度容易定义,限制少
(2).不需要预先定制聚类书
(3).可以发现类的层次关系
(4).可以聚类成其他形状

2.3层次法的缺点

(1).计算复杂度太高
(2).奇异值也能产生很大影响
(3).算法可能聚成链状

3.基于密度的方法

(density-based methods):基于密度的方法与其它方法的一个根本区别是:它不是基于各种各样的距离的,而是基于密度的。这样就能克服基于距离的算法只能发现“类圆形”的聚类的缺点。这个方法的指导思想就是,只要一个区域中的点的密度大过某个阀值,就把它加到与之相近的聚类中去。代表算法有:DBSCAN算法、OPTICS算法、DENCLUE算法等;

4.基于网格的方法

(grid-based methods):这种方法首先将数据空间划分成为有限个单元(cell)的网格结构,所有的处理都是以单个的单元为对象的。这么处理的一个突出的优点就是处理速度很快,通常这是与目标数据库中记录的个数无关的,它只与把数据空间分为多少个单元有关。代表算法有:STING算法、CLIQUE算法、WAVE-CLUSTER算法;

5.基于模型的方法

(model-based methods):基于模型的方法给每一个聚类假定一个模型,然后去寻找一个能很好的满足这个模型的数据集。这样一个模型可能是数据点在空间中的密度分布函数或者其它。它的一个潜在的假定就是:目标数据集是由一系列的概率分布所决定的。通常有两种尝试方向:统计的方案和神经网络的方案

参考:
[1].https://wenku.baidu.com/view/8713cffc581b6bd97e19eaea.html

猜你喜欢

转载自blog.csdn.net/woshiliulei0/article/details/82771355