K-means算法

K-means聚类的目标,是将n个观测数据点按照一定标准划分到k个聚类中,数据点根据相似度划分。每一个聚类有一个质心,质心是对聚类中所有点的位置求平均值得到的点。每个观测点属于距离它最近的质心所代表的聚类。

模型最终会选择n个观测点到所属聚类质心距离平方和(损失函数)最小的聚类方式作为模型输出。K-means聚类分析中,特征变量需要是数值变量,以便于计算距离。

【主要步骤】

第一步:数据归一化、离群点处理后,随机选择k个聚类质心

第二步:所有数据点关联划分到离自己最近的质心,并以此为基础划分聚类

第三步:将质点移动到当前划分聚类包含所有数据点的中心(means);重复第二步、第三步n次,直到所有点到其所属聚类质心的距离平方和最小

【API使用】

sklearn.cluster.KMeans(n_clusters=8)

  • 参数:
    • n_clusters:开始的聚类中心数量
      • 整型,缺省值=8,生成的聚类数,即产生的质心(centroids)数。
  • 方法:
    • estimator.fit(x)
    • estimator.predict(x)
    • estimator.fit_predict(x)
      • 计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)

【k值选择方法】

K-means 常常根据 SSE 和轮廓系数确定 K 值

1. 簇内离差平方和拐点法

TS
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值