K-Means聚类算法的理解
首先我们先要了解K-Means算法是一种聚类算法,不同于我们之前学过的K-NN分类算法,聚类是一种无监督的学习,因此,在K均值聚类算法中,是没有训练过程的。它将相似的对象归到一个标签中,有点类似于全自动分类的意思。分好的每个类的中心采用类中所含值的均值组成。
1.k-Means的实现流程
初始化:首先,随机的确定K个初始点作为起始的这么一些个中心点,每一个点代表一个Group;
交替更新:确定某种距离计算的方法,我们需要计算每个点到所有中心点的距离,把最近的距离记录下来,把Group赋给当前的点,针对每一个Group的点,计算其平均距离并作为该Group的新中心点,通常情况下,中心点可以代表整个Group的数据来作出决策。
伪代码表示其过程:
创建K个点作为起始的中心点(经常情况下是随机选择)
当任意一个点的Group分配结果发生改变时
对数据集中的每个数据点
对每个中心点
计算中心点和数据点之间的距离
将数据点分配到距离其最近的Group
对于每一个Grou