K-means聚类的目标,是将n个观测数据点按照一定标准划分到k个聚类中,数据点根据相似度划分。每一个聚类有一个质心,质心是对聚类中所有点的位置求平均值得到的点。每个观测点属于距离它最近的质心所代表的聚类。
模型最终会选择n个观测点到所属聚类质心距离平方和(损失函数)最小的聚类方式作为模型输出。K-means聚类分析中,特征变量需要是数值变量,以便于计算距离。
【主要步骤】
第一步:数据归一化、离群点处理后,随机选择k个聚类质心
第二步:所有数据点关联划分到离自己最近的质心,并以此为基础划分聚类
第三步:将质点移动到当前划分聚类包含所有数据点的中心(means);重复第二步、第三步n次,直到所有点到其所属聚类质心的距离平方和最小
【API使用】
sklearn.cluster.KMeans(n_clusters=8)
- 参数:
- n_clusters:开始的聚类中心数量
- 整型,缺省值=8,生成的聚类数,即产生的质心(centroids)数。
- n_clusters:开始的聚类中心数量
- 方法:
- estimator.fit(x)
- estimator.predict(x)
- estimator.fit_predict(x)
- 计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)
【k值选择方法】
K-means 常常根据 SSE 和轮廓系数确定 K 值
1. 簇内离差平方和拐点法
TS

最低0.47元/天 解锁文章
2259

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



