0

我有一组点,我想从中得到簇。我知道如何做普通的 k-means 算法。但我不想将“k”作为输入。假设如果我有像 1,3,4,50,60,70,1000,10002,10004 这样的点,算法应该将它们聚集成 3 个簇 C1:1,3,4 C2:50,60,70 C3:1000,1002 ,1004 满足簇内元素之间的距离应该是最小的,并且簇间的距离应该是最大的。

4

2 回答 2

0

请参阅how-do-i-determine-k-when-using-k-means-clustering和那里的链接。

于 2011-05-09T14:27:19.480 回答
0

决定 k 是一个在许多聚类算法中重复出现的问题。您可能需要考虑设法缓解该问题的谱聚类(及其各种算法表亲)。然而,许多版本使用 k-means 作为最后一步,让您回到平方(尽管不是全部)。

或者,有很多方法可以找到 k 的最佳值,例如上面 Denis 提供的答案;这可能足以满足您的目的。

于 2011-05-09T16:19:11.087 回答