数据挖掘中的常用聚类算法

来源:互联网 发布:用python抓鸡赚钱 编辑:程序博客网 时间:2024/05/09 06:58
数据挖掘中的常用聚类算法
2008-12-01 13:50

聚类相关的概念:相似性、距离度量(单连接、全连接、平均、质心、中心)、异常点

算法分类:层次算法、划分算法

层次算法:(凝聚、分裂)、谱系图的概念

简单的凝聚算法——最近邻聚类:自增距离d至阀值、每次合并距离<=d的簇,复杂度0(max(d)*n^2*判连通的复杂度)

基于mst的层次凝聚聚类:从生成的mst上,根据距离合并簇

分裂:基于mst的分裂,与上述mst凝聚相逆

划分算法判定聚类解的优劣:平方误差(点到簇中心点的距离平方和)

1、mst,去k-1条最不一致边,0(n^2)

2、误差平方聚类:随机选k个点入簇,将每个点放入最近的簇,计算机平方误差,产生新的中心点,直到两次迭代产生的平方误差的差小于某一阀值:(分k个簇,n个元组,t次迭代)O(ktn)

3、k均值算法:选k个初始点入簇,计算平均值,然后重新将每个点放入到平均值距离最近的簇,重新计算平均值,直到均值不变或变化小于某一阀值 O(ktn)

4、最邻近算法:初始化某一个点为单独簇,依次计算每一个点到每个簇中心点的距离,选出最近的簇,如果最近距离小于阀值,加入这个最近簇,否则,自己单独成为另外一个簇 最坏时间复杂度 O(n^2)

5、pam算法:选定中心点、利用最近距离将每个点入簇、计算交换中心点与任意个非中心点交换后的距离改变量,并交换距离改变量最小的一对中心点与非中心点,直到改变量非负。复杂度大

扩展到大型数据库:CLARA,CLARANS,基于数据库抽样

6、遗传算法:了解

7、神经网络:了解,自组织的神经网络、自组织映射,kohonen网络、权值调整、竞争

感觉很多划分算法,都是利用不断的迭代进行松弛...

以上不过是一个提纲。


原创粉丝点击