聚类算法:凝聚式聚类与 DBSCAN 详解
1. 凝聚式聚类(Agglomerative Clustering)
凝聚式聚类是一类基于相同原理构建的聚类算法集合。算法初始时,将每个数据点视为一个独立的聚类,随后不断合并最相似的两个聚类,直至满足特定的停止条件。在 scikit - learn 中,停止条件通常设定为聚类的数量,即不断合并相似的聚类,直到剩下指定数量的聚类为止。
1.1 链接准则(Linkage Criteria)
在凝聚式聚类中,有几种不同的链接准则用于衡量“最相似的聚类”,这些准则定义在两个现有聚类之间。scikit - learn 中实现了以下三种:
| 链接准则 | 说明 |
| — | — |
| ward | 默认选择,它会选择合并两个聚类,使得所有聚类内的方差增加最小,通常会得到大小相对均匀的聚类。 |
| average | 平均链接准则会合并所有点之间平均距离最小的两个聚类。 |
| complete | 完全链接准则(也称为最大链接准则)会合并点之间最大距离最小的两个聚类。 |
一般来说,ward 准则适用于大多数数据集。但如果聚类的成员数量差异很大(例如,一个聚类比其他所有聚类都大得多),average 或 complete 准则可能会有更好的效果。
1.2 凝聚式聚类的过程
以下是凝聚式聚类在二维数据集上寻找三个聚类的过程示例:
import mglearn
mglearn.plots.plot_agglomerative_algorithm()
超级会员免费看
订阅专栏 解锁全文
2785

被折叠的 条评论
为什么被折叠?



