K-Means聚类算法小结

1.基本概念

K-Means算法是一种很典型的基于距离的聚类算法,采用距离作为相似性的评价标准,认为两个对象的距离越近,那么相似度就越大。把簇作为距离靠近的对象组成的,最终得到的是紧凑和独立的簇。对于聚类分析来说,用于发现数据对象之间的关系。组内的相似性越大,组间的相似性越小,可以说效果越好。K个初始类聚类中心点的选取对聚类结果具有比较大的影响。在算法的第一步中随机的选取了K个初始聚类的中心,代表了一个簇。在每次迭代的过程中,对数据集中剩余的每个对象。根据每个簇中心的距离将每个对象重新赋给最近的族。

2.算法的基本过程为:

1.首先从N个文档中选取K个文档

2.对剩余的每个文档测量其到质心的距离,并把它归到最近的质心的类。

3.重新计算已经得到的各个类的质心。

4.迭代2~3步直至新的质心与原质心相等或小于指定阈值。

3.工作原理

输入:聚类个数k,以及包含n个数据对象的数据库。

输出:满足方差最小标准的k个聚类。

相关代码:

from numpy import *
import kMeans

def Kmeans(dataSet,k,distMeans=distEclud,createCent = randCent):
    #样本数
    m = shape(dataSet)[0]
    #m*2的矩阵
    clusterAssment = mat(zeros(m,2))
    #初始化k个中心
    centro
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值