K-Means算法:算法原理、流程步骤
K-Means算法是一个经典的聚类算法,它接受输入参数k,然后将n个数据对象划分为k个聚类,使所获得的聚类满足以下两个条件。
1)同一聚类中的对象之间的相似度较高。
2)不同聚类中的对象之间的相似度较小。
其中,“聚类相似度”是利用各聚类中对象的均值来获得一个“中心对象”的方式计算,K-Means算法的基本步骤如图4-2所示。
步骤1,在原始数据集中任意选择k个对象作为“初始聚类中心对象”,如k=2。
步骤2,计算其他对象与初始聚类中心之间的距离,并根据最小距离,将其他结点合并入对应的最小聚类中心结点所在的聚类,形成k=2个“中间聚类结果”。
步骤3,计算每个“中间聚类结果”的均值,在k中间聚类中找出k=2个“新的聚类中心对象”。
步骤4,重新计算每个对象与“新的聚类中心对象”之间的距离,并根据最小距离重新分类,形成k=2个“中间聚类结果”。
图4-2 K-Means算法的基本步骤
步骤5,重复执行步骤3和步骤4。当所有对象的聚类情况不再变化或已经达到规定的循环次数时,结束执行,并得到最终聚类结果。