【问题标题】:clustering algorithm with minimum number of points具有最少点数的聚类算法
【发布时间】:2018-10-13 05:33:40
【问题描述】:

我正在尝试分离一个数据集,该数据集具有 2 个无论如何都不重叠的集群和一个远离这两个集群的数据点。

当我使用 kmeans() 获取 2 个集群时,它会将其中一个“有效”集群分成两半,并将单个数据点视为一个单独的集群。

有没有办法为此指定最小点数?我正在使用 MATLAB。

【问题讨论】:

    标签: python matlab


    【解决方案1】:

    有几种解决方案:

    1. 简单:尝试使用 3 个集群;
    2. 简单:删除单个数据点(您可以使用任何异常值检测技术将其检测为异常值;
    3. 待尝试:使用 k-medoids 方法而不是 k-means。这有时有助于消除异常值。
    4. 更复杂但肯定有效:执行spectral clustering。这可以帮助您克服 k-means 的主要问题,即粗暴地使用欧几里得距离

    更多关于 k-means 不当行为的解释可以在 Cross Validated 网站上找到(例如,参见 here)。

    【讨论】:

      猜你喜欢
      • 2015-07-18
      • 1970-01-01
      • 2014-12-06
      • 2013-08-03
      • 2014-07-24
      • 2013-06-09
      • 1970-01-01
      • 2021-12-17
      • 2013-08-26
      相关资源
      最近更新 更多