KMeans算法K值的确定方法有哪些【详细讲解】

今天爱分享给大家带来KMeans算法K值的确定方法有哪些【详细讲解】,希望能够帮助到大家。
《大数据》中提到:给定一个合适的类簇指标,比如平均半径或直径,只要我们假设的类簇的数目等于或者高于真实的类簇的数目时,该指标上升会很缓慢,而一旦试图得到少于真实数目的类簇时,该指标会急剧上升。

类簇的直径是指类簇内任意两点之间的最大距离。

类簇的半径是指类簇内所有点到类簇中心距离的最大值。

废话少说,上图。下图是当K的取值从2到9时,聚类效果和类簇指标的效果图:

左图是K取值从2到7时的聚类效果,右图是K取值从2到9时的类簇指标的变化曲线,此处我选择类簇指标是K个类簇的平均质心距离的加权平均值。从上图中可以明显看到,当K取值5时,类簇指标的下降趋势最快,所以K的正确取值应该是5.

补充:
k-means++算法

k-means++算法选择初始seeds的基本思想就是:初始的聚类中心之间的相互距离要尽可能的远。
1. 从输入的数据点集合中随机选择一个点作为第一个聚类中心
2. 对于数据集中的每一个点x,计算它与最近聚类中心(指已选择的聚类中心)的距离D(x)
3. 选择一个新的数据点作为新的聚类中心,选择的原则是:D(x)较大的点,被选取作为聚类中心的概率较大
4. 重复2和3直到k个聚类中心被选出来
5. 利用这k个初始的聚类中心来运行标准的k-means算法

人已赞赏
Python

KMeans算法确定K个初始类簇中心点方法有哪些【详细讲解】

2020-12-24 18:47:36

Python

对偶的概念是什么【详细讲解】

2020-12-24 18:49:20

'); })();