【问题标题】:K-Means with equal numbers of a binary attribute value in each cluster每个集群中具有相同数量的二进制属性值的 K-Means
【发布时间】:2014-05-09 17:01:32
【问题描述】:

给定某个二元属性,我想确保由 K-means 生成的簇具有相等数量的数据点,其中所述二元属性的值为 1。

我知道上面的句子很罗嗦,所以我会用一个例子来解释。

假设我有一个属性“Asian”,在我的 100 个数据点中,有 40 个的值为“Asian”=1。对于 k = 10,我希望每个集群恰好有 4 个点,“Asian”=1。

有没有一种简单的方法来实现这一点?我已经绞尽脑汁,但始终无法想出一个。请注意,对于聚类问题,我是初学者。

【问题讨论】:

  • 这个怎么样:让P成为任何符合您价值标准的点。如果一个质心聚集超过nPs;开始将Ps 从其当前集群移动到最佳匹配集群(由点与集群质心之间的距离定义)小于nPs?
  • 它肯定不再是 k-means...k-means 在二进制属性上没有多大意义。
  • @Michael 这听起来很有趣。但是,这不会使集群在空间上非常不连贯吗?
  • @Anony-Mousse 是对 k-means 的修改。请记住,其他非二进制属性仍然存在。该约束仅适用于二元属性。
  • @Rabee:我自己没有尝试过,所以我不知道它是否会产生有用的结果。这只是一个想法,因此将其作为评论而不是答案。

标签: cluster-analysis data-mining k-means


【解决方案1】:

这是一个关于如何执行这种 k-means 修改的教程:

http://elki.dbs.ifi.lmu.de/wiki/Tutorial/SameSizeKMeans

这并不是您所需要的,而是一种更接近的 k-means 变体,可以轻松适应您的需求。另外,它是一个演练教程。

【讨论】:

    猜你喜欢
    • 2017-07-28
    • 2019-06-10
    • 2011-11-21
    • 2021-04-19
    • 2017-10-13
    • 2017-03-11
    • 2011-09-04
    • 2018-11-05
    • 2014-09-15
    相关资源
    最近更新 更多