如何处理非层次聚类分析中观察顺序的影响?

机器算法验证 聚类
2022-04-05 21:11:36

进行非层次聚类分析时,数据文件中的观察顺序决定了聚类结果,尤其是在数据集较小(即 5000 个观察值)的情况下。为了解决这个问题,我通常对数据观察进行随机重新排序。我的问题是,如果我重复分析 n 次,获得的结果会有所不同,有时这些差异很大。

我该如何处理这个问题?也许我可以多次运行分析,然后考虑一个观察属于分配了更多时间的组。有人有更好的方法来解决这个问题吗?

曼努埃尔·拉蒙

3个回答

“正确”的答案不能依赖于您正在使用的某些方法的任意顺序。

您需要考虑所有可能的排序(或一些有代表性的样本)并为每种情况估计您的参数。这将为您提供您尝试估计的参数的分布。从这些分布中估计“真实”参数值(这也将为您提供估计器误差的估计值)。

或者使用不引入排序的方法。

您发现的是算法或数据本身存在一定程度的不稳定性。称为“共识”或“集成”聚类的方法是一种处理问题的方法。问题是:给定一个聚类集合,找到一个“共识”聚类,它在某种意义上是聚类的“平均值”。

关于这个主题有相当多的工作,一个好的起点是Strehl 和 Ghosh 的聚类合奏论文

您使用的是哪种平面聚类算法?也可能是不同的结果是因为它可能不是您的数据,而是您的算法本身是不确定的(例如,使用带有随机初始化的 K-means,或者使用基于模型的聚类与 EM 或 MCMC 进行推理随机初始化)?