k-means聚类与通过强力方法创建组之间的差异

时间:2018-02-03 17:54:53

标签: python r statistics cluster-analysis

我的任务是找到基于数字尺寸的相似零件 - 直径,厚度 - 和分类尺寸 - 材料,热处理等。我有100万个零件的清单。我作为程序员的方法是将所有部件放在一个列表中,弹出第一部分并将其用作新的“集群”,以根据维度比较列表中的其余部分。由于列表中的一部分与分类维度和数字维度匹配 - 在5%以内 - 我将该部分添加到集群并从初始列表中删除。将列表中的所有部分与初始集群部分的维度进行比较后,我将从列表中弹出下一部分并重新开始,填充集群,直到原始列表中没有剩余部分。这是一种程序化方法。我不确定这是否是将零件分类为“集群”的最有效方式,或者k-means集群是否是更好的方法。

1 个答案:

答案 0 :(得分:0)

定义"更好"。

你所做的似乎与"领导者"集群。但这是一种非常原始的聚类形式,通常不会产生竞争结果。但是有100万分,你的选择是有限的,并且kmeans不能很好地处理分类数据。

但是在你决定什么是“更好”之前,可能没有什么“错误”。用你贪婪的方法。

一个明显的优化是首先根据分类属性拆分所有数据(正如您希望它们完全匹配)。这只需要对数据集和哈希表进行一次传递。如果你剩下的部分足够小,你可以尝试kmeans(但你会如何选择k),或者DBSCAN(可能使用你已经拥有的相同阈值)。