繁体   English   中英

sklearn.cluster.KMeans是否适合数据点顺序?

[英]Is sklearn.cluster.KMeans sensative to data point order?

正如在回答注意到这个职位有关功能缩放,KMEANS的某些(所有?)实现是为 特征 的数据点的顺序是敏感的。 根据sklearn.cluster.KMeans 文档n_init仅更改质心的初始位置。 这意味着必须遍历一些 特征 数据点的混洗才能测试这是否是一个问题。 我的问题如下:

  1. scikit-learn实现是否对发布所建议的排序敏感?
  2. n_init会为我照顾吗?
  3. 如果我本人也愿意这样做,我应该根据最小惯量还是最好采用此处建议的平均值?
  4. 是否有一个好的规则来知道基于数据点的数量多少个随机排列是足够的?

更新:该问题最初询问的不是要素(列)顺序。 这是对链接文章中“对象”一词的误解。 它已更新,以询问有关数据点(行)的顺序。

K均值对特征顺序不敏感。

您所引用的帖子是关于规模而非顺序的。

如果查看kmeans方程,显然顺序无关紧要。

有研究(van Luxbourg,如果我没记错的话)本质上说, 如果有良好的kmeans结果,那么必须很容易找到它。 如果多次运行kmeans时得到的结果截然不同,那么结果都不是很好。

有“ n选择k”个可能的初始化。 尽管它们并非全都不好,但n_iter只会尝试其中的极少数。 因此,不能保证找到“最佳”。该函数将返回SSQ最低的那个,但这并不意味着最后这是最有用的结果,除非您只关心SSQ。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM