其他分享
首页 > 其他分享> > Sklearn Kmeans参数混淆?

Sklearn Kmeans参数混淆?

作者:互联网

因此,我可以按以下方式运行sklearn kmeans:

kmeans = KMeans(n_clusters=3,init='random',n_init=10,max_iter=500)

但是我对参数的含义有些困惑

所以n_init说:

Number of time the k-means algorithm will be run with different centroid seeds. The final results will be the best output of n_init consecutive runs in terms of inertia.

max_iter说:

Maximum number of iterations of the k-means algorithm for a single run.

但是我不完全理解那是什么意思.给定初始质心,n_init是质心向点均值靠拢的次数吗?

max_iter是整个算法使用新的初始质心运行的次数吗?

因此,例如,在max_iter = 2,n_init = 15的情况下,kmeans将选择初始质心,然后将这些质心移动15次并得出聚类结果.然后kmeans将再次选择初始质心,将这些质心移动15次,然后停止.然后,它将从两次运行中挑选出最佳的选择吗?

谢谢您的帮助!

[编辑]
还是与我在这里完全相反…?

解决方法:

在max_iter = 2和n_init = 15的情况下,kmeans将选择初始质心15次,并在15次运行中每次向上移动两次.

默认值为n_init = 10和max_iter = 300.这意味着初始质心将被选择10次,并且每次运行最多将使用300次迭代.这10次测试中最好的是最终结果.

标签:scikit-learn,k-means,python
来源: https://codeday.me/bug/20191026/1936771.html