聚类算法详解:k-means、层次聚类和DBSCAN
文章目录
-
- kmeans算法
-
- 一、基础K-means算法
-
- 1. 核心原理
- 2. 核心步骤(4步迭代)
- 3. 优缺点
- 二、核心改进算法(解决基础版痛点)
-
- 1. K-means++:解决“初始中心随机”问题
- 2. 肘部法则(Elbow Method):解决“K值难定”问题
- 3. 加权K-means(Weighted K-means):解决“异常值敏感”问题
- 三、其他常见改进方向
- 四、算法选择建议
- 层次聚类法
-
- 一、核心定义与分类
- 二、聚合式层次聚类(AGNES)核心步骤
- 三、关键参数:簇间相似度度量
-
- 1. 单链接(Single Linkage)
- 2. 全链接(Complete Linkage)
- 3. 平均链接(Average Linkage)
- 四、优缺点分析
-
- 优点
- 缺点
- 五、适用场景与使用建议
- DBSCAN算法
-
- 一、核心定义:基于“密度”的聚类逻辑
- 二、核心步骤:4步完成密度聚类
- 三、关键参数:ε和MinPts的选择
-
- 1. MinPts(最小样本数):先定MinPts,再选ε
- 2. ε(邻域半径):用“K距离图”找拐点
- 四、优缺点分析
-
- 优点
- 缺点
- 五、适用场景与使用建议
kmeans算法
一、基础K-means算法
1. 核心原理
K-means通过“划分”思想实现聚类,核心是最小化簇内平方和(SSE),即每个数据点到其所属簇中心的欧式距离平方和。
2. 核心步骤(4步迭代)
- 确定K值:人工指定要划分的簇数量K(这是K-means的核心痛点之一)。
- 初始化中心:随机从数据集中选择K个样本作为初始簇中心。
- 分配样本:计算每个样本到K个簇中心的距离,将样本归到距离最近的簇。
- 更新中心:重新计算每个簇的所有样本的均值,将其作为新的簇中心。
- 迭代终止:重复步骤3和4,直到簇中心位置不再变化,或达到预设的迭代次数。
3. 优缺点
优点 | 缺点 |
---|---|
原理简单,易于实现和解释 | 需人工指定K值,对结果影响大 |
计算速度 |