1. 目标
选择合适的质心,使得在每个簇内样本距质心的距离(欧式距离)尽可能小,即簇内样本具有较高的相似性,可以使用最小化簇内误差平方和SSE作为目标函数,也称为簇惯性。
2. 过程
①从样本中选择K个点作为初始质心;②计算每个样本到各个质心的距离,将样本划分到距离最近的质心所对应的簇中;③计算每个簇内所有样本的均值,并使用该均值更新簇的质心;④重复步骤2、3,直到质心位置变化小于指定阈值或达到最大迭代次数为止。
3. 如何确定K值
K值枚举过程:《K-means 算法中k 值优化问题研究》在查找最优k 值时,应在k 为1~ int(sqr(n))+1范围内查找对应最小L 函数的k 值
3.1 肘部法
随着K的增加,每个簇的聚合程度会逐渐提高,损失函数逐渐减小。纵轴呈下降趋势且最终趋于稳定。当k小于真实聚类数时,由于k的增大会大幅增加每个簇的聚合程度,故SSE的下降幅度会很大,而当k到达真实聚类数时,再增加k所得到的聚合程度回报会迅速变小,所以SSE的下降幅度会骤