为什么不使用Canopy群集而不是与KMeans Mahout结合使用

时间:2014-08-22 13:14:24

标签: machine-learning mahout

问题在于标题 - 如果Canopy可以用于聚类,以及用于确定质心,为什么不将它用于聚类,而不是仅使用它来生成质心作为KMeans聚类的输入?

我正在考虑使用Mahout实现,但我认为这更像是一个概念,与系统没有多大关系。

由于

1 个答案:

答案 0 :(得分:1)

Canout已被Mahout弃用,所以我根本不会使用它。

速度快,所以我的想法就是快速优于随机估计起始质心,以便kmeans更快收敛。

Canopy没有收敛标准,所以你得到的第一个猜测就是它。 Kmeans按照称为梯度下降的算法进行迭代,以找到定义的误差函数的局部最小值。所以它趋向于更好的猜测,但通常你从一个随机质心开始,希望它放好。 Canopy试图更好地放置起始质心,但如果完全比随机更好的话,效果不高。

所以你可以通过Canopy的猜测来计算聚类,并通过遍历所有向量并找出它们最接近的哪个冠层质心,但聚类不会有迭代的好处,并且在交叉验证测试中得分会更差。