【问题标题】:More accurate approach than k-mean clustering比 k-mean 聚类更准确的方法
【发布时间】:2014-03-06 12:05:45
【问题描述】:

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

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

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

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

任何帮助将不胜感激。

【问题讨论】:

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


    【解决方案1】:

    存在几种 k-means 变体:k-median、围绕 Medoids 分区、模糊 C-Means 聚类、使用期望最大化算法训练的高斯混合模型、k-means++ 等。

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

    【讨论】:

    • 请您给我您使用的matlab代码吗? :D
    • 而且我认为 PAM 在实现方面非常接近 k-mean 聚类。这是真的吗?
    • 我不知道实现的细节,但我认为这是真的,因为它基于与k-means相同的原理。我不使用 Matlab,我使用 R,它是 implemented into R
    【解决方案2】:

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

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

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

    希望对你有帮助,

    【讨论】:

      【解决方案3】:

      就 K-Means 而言,您可以在样本上运行它多次(例如 100 次),然后选择具有最小 K-Means 标准输出(总和每个实体与其各自质心之间的平方欧几里得距离)。

      您还可以使用一些初始化算法(想到智能 K-Means,但您也可以在 Google 上搜索 K-Means++)。您可以在 AK Jain 的一篇名为 Data clustering: 50 years beyond K-means 的论文中找到对 K-Means 的非常好的评论。

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

      【讨论】:

        猜你喜欢
        • 2020-04-22
        • 1970-01-01
        • 2017-06-30
        • 2013-03-23
        • 2017-09-12
        • 2017-07-17
        • 2015-07-29
        • 2018-08-12
        • 2018-12-21
        相关资源
        最近更新 更多