KMeans 算法原理
算法流程图
评价指标
实现
kmeans.py
1 | import numpy as np |
测试
1 | from sklearn.datasets import make_blobs |
1 | # 制作数据集 |
1 | kmeans = KMeans(4) |
调用 sklearn 库
API
重要参数:init
代码
1 | from sklearn.cluster import KMeans |
KMeans 优缺点
优点
- 原理简单,实现容易
- 聚类效果较优
- 只有簇数K需要调参
缺点
- K值得选取不好把握,实际中可以通过轮廓系数画学习曲线,确定最优K值
- 聚类中心得随机初始化对结果影响较大,实际中可以通过 kmeans++ 的改进来初始化
- 对于不是凸的数据集难收敛,可以改用基于密度的聚类算法,比如:DESCAN