是否可以预先指定一个集群结构,然后根据R中的通用集群标准合并它?

e0uiprwp  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(99)

假设我有一个数据集,我已经做了一个聚类分析,比如k=9。也许这是从一个k-means或我刚刚做了一个完整的连锁层次聚集或我从散点图目测它,我不认为我如何得到k=9的问题。* 假设现在我想要k=5集群,而不是,但我想继续从我的k=9集群的结果,以获得这些k=5集群。最后,假设我希望合并按照k-均值(如,从k=9合并到k=8使WSS最小化)、完全链接等原则进行。有没有什么方法可以在R中实现?或者我必须写我自己的函数?
从本质上讲,如果我想创建一个层次凝聚结构,而不是从k=N个单例集群开始,会怎么样?我可以在R中做到这一点,而不必编写自己的函数吗?
主要是**,我试图做的是寻找一个解决方案。有人问了一个关于Python的类似问题(amd会接受R的答案),但是only got an answer relevant only sort of relevant to centroid linkage.质心链接有问题,iirc,被称为反转,而且我认为在合并单例之后甚至不会工作(除非我犯了一个可怕的错误,否则合并的新质心不会是两个质心的质心,除非合并的集群具有相同数量的成员)。

  • 在实践中,我有一个相当不稳定的k=5 k均值分割,我生成了一个矩阵,表示1009个分割的不稳定性。然后,我试图创建我想我们可以称之为模态集群的东西,但我的代码有缺陷,因此我试图通过从我有缺陷的代码产生的k=9结构到所需的k=5分割来捏造它。
    **就我的具体问题而言,我还将100%次共定位值的矩阵视为距离对象,并使用它来进行分层聚类。我认为这可以作为我有缺陷的代码的替代方案,但它并不认为它解决了如何预先指定集群结构并从中合并的核心问题。这个“解决方案”是inspired by this answer.,这也是它为我的数据生成的完整链接:

xwbd5t1u

xwbd5t1u1#

所以,我想我明白你想要什么。我关心的是你想定义一组5个质心(或一组5个质心),然后要求R将9个聚类成特定的5个。
这违背了聚类分析的目的。使用集群模型,您可以找出数据中的固有结构。该模型定义的集群不是基于实用性,但内部的数据结构。
如果你只想要5个集群,那么你必须以某种方式指定,并接受你可能没有最佳数量来构建最健壮的集群集。
如果要我猜的话,最终目标是让无监督模型表现得像有监督模型一样..但它不应该这样工作。
你要做一些决定:

  • 使用最佳数目(k=9)稳健地聚类
  • 使用k=5进行不太稳健的聚类
  • 对9个集群和5个集群进行广泛的探索,看看是否出现了有意义的真实世界片段,然后使用您在探索中学到的知识为所有数据创建类和标签,并依赖监督模型作为最终模型,将新的数据点与现有的基于集群的类相关联

我肯定这不是你要找的,但任何强迫质心的企图,都将使模式检测的全部意义无效......以我不太权威的观点。

相关问题