比k均值聚类更准确的方法

时间:2014-03-06 12:05:45

标签: machine-learning neural-network k-means biological-neural-network

在径向基函数网络(RBF网络)中,选择隐藏层中的所有原型(RBF函数的中心向量)。此步骤可以通过多种方式执行:

  • 可以从一组示例中随机抽样中心。
  • 或者,可以使用k-mean聚类确定它们。

智能选择原型的方法之一是在我们的训练集上执行k均值聚类,并使用聚类中心作为原型。 我们都知道k均值聚类的特点是简单(快速),但不是很准确。

这就是为什么我想知道什么是比k均值聚类更准确的另一种方法?

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

存在几种k均值变化:k-medians,分布在Medoids周围,模糊C均值聚类,用期望最大化算法训练的高斯混合模型,k-means ++等。

我使用PAM(Medoid周围的分区),以便在我的数据集包含一些“异常值”(具有与其他值非常不同的值的噪声)时更准确,并且我不希望中心受到影响这个数据。在PAM的情况下,中心被称为Medoid。

答案 1 :(得分:1)

有一种更为统计的聚类分析方法,称为Expectation-Maximization Algorithm。它使用统计分析来确定集群。当您拥有关于群集质心和训练数据的大量数据时,这可能是一种更好的方法。

This链接还列出了其他几种聚类算法。显然,有些比其他更好,这取决于您拥有的数据量和/或您拥有的数据类型。

有一篇关于Udacity,人工智能简介的精彩课程,其中一课专门用于无监督学习,Thrun教授非常详细地解释了一些聚类算法。我强烈推荐这门课程。

我希望这有帮助,

答案 2 :(得分:1)

就K-Means而言,你可以在你的样本上多次运行它(比方说,100),然后选择具有最小K-Means标准输出的聚类(以及由此产生的质心)(总和)每个实体与其各自的质心之间的平方欧几里德距离。)

你也可以使用一些初始化算法(想到智能K-Means,但你也可以google for K-Means ++)。你可以在AK Jain的一篇论文中找到一篇关于K-Means的非常好的评论,称为数据聚类:超越K-means 50年。

您还可以检查分层方法,例如Ward方法。