- 1、K-means(K-means and its variants)
- 2、凝聚层次聚类(Hierarchical clustering)
- 2.1 层次聚类的dendrogram树
- 2.2 层次聚类流程
- 2.3 linkage算法的参数调优
- 3、DBSCAN(Density-based clustering) 基于密度的噪声应用空间聚类
- DBSCAN优缺点
- 4. 凝聚度 分离度(加和为常数)
- 5 邻近度矩阵(相似度矩阵)
1、K-means(K-means and its variants)
2、凝聚层次聚类(Hierarchical clustering)
2.1 层次聚类的dendrogram树
scipy.cluster.hierarchy.linkage #进行层次聚类的时候
scipy.cluster.hierarchy.dendrogram #对层次聚类画图
画出来的是一颗二叉树,画的时候让子树的高度表示它两个后代相互之间的距离大小。(下左图) ;切割dendrogram树 (下右图)
2.2 层次聚类流程
2.3 linkage算法的参数调优
method=’single’: 最短线段
method=’complete’: 最长线段
method=’average’: 6条线段的平均值
method=’ward’:
层次聚类:可以分出簇类的小簇,分的更加细致 但是计算复杂度高
缺点:
1,缺乏全局目标函数
2,处理不同大小簇的能力
3,合并簇后不撤销
3、DBSCAN(Density-based clustering) 基于密度的噪声应用空间聚类
核心点(core point):该点给定邻域的点个数超过用户给定阈值 MinPts(Eps为用户定义的距离)。A点。
边界点(border point):不是核心点,它落在某个核心点邻域。B点。
噪声点(noise point):即非核心点也非边界点。
在这个图中,MimPTS=4。A点和其他的红点是核心点,
因为这些区域ε半径中的点至少包含4点(包括点本身)。因为它们都是从一个可以到达的另外,它们形成一个单一的簇。
点B和C不是核心点,而是从A(通过其他核心点)到达,因此也属于集群。点N是一个既不是一个噪声点。核心点也不能直接到达。
DBSCAN优缺点
1)可以对任意形状的稠密数据集进行聚类,相对的,K-Means之类的聚类算法一般只适用于凸数据集。
2)可以在聚类的同时发现异常点,对数据集中的异常点不敏感。
3)聚类结果没有偏倚,相对的,K-Means之类的聚类算法初始值对聚类结果有很大影响。
4)对初始点选取位置影响不大。
DBSCAN的主要缺点有:
1)如果样本集的密度不均匀、聚类间距差相差很大时,聚类质量较差,这时用DBSCAN聚类一般不适合。
2) 如果样本集较大时,聚类收敛时间较长,此时可以对搜索最近邻时建立的KD树或者球树进行规模限制来改进。
3) 调参相对于传统的K-Means之类的聚类算法稍复杂,主要需要对距离阈值,邻域样本数阈值MinPts联合调参,不同的参数组合对最后的聚类效果有较大影响。
4. 凝聚度 分离度(加和为常数)
5 邻近度矩阵(相似度矩阵)