有没有可以用来定义集群大小的集群算法(k均值,...)?
我有一大群人,我想将每个人组成9人的集群。
目前,我使用的是same size k-means。但是,对于拥有100多人的数据,代码将变得极其缓慢。
也许可以设置一些参数来定义集群的大小?
答案 0 :(得分:0)
您可以轻松地修改该代码,以在每个群集中恰好使用9个元素(至少数量可以被9整除)。您可能可以通过执行更多交换来进一步优化它,仅重新计算必要的条件,集成许多其他更快的k均值算法(而不是劳埃德算法)的进步,等等。
但是很明显,它无法扩展大量簇。
这不是不是集群问题。您可能正在滥用算法来解决其他问题,因此它无法正常工作。...而实际的问题(可能是背包的一些变体,固定盖板,垃圾箱包装)几乎可以解决NP问题,因此您可以反正有一个很棘手的问题。我会采用快速贪婪的方法,并尝试几次尝试中的最好方法,然后最多进行一点交换优化来微调结果。寻找 optimization 文献,尝试将其表述为ILP或QLP,然后使用ILP表示。 QLP求解器等。