比较通过不同距离和方法获得的分层聚类树状图


28

[最初的标题“用于层次聚类树的相似性的度量”后来被@ttnphns更改,以更好地反映该主题]

我正在对患者记录的数据帧执行许多层次的聚类分析(例如,类似于http://www.biomedcentral.com/1471-2105/5/126/figure/F1?highres=y

我正在尝试不同的距离度量,不同的参数权重和不同的层级方法,以了解它们对树的最终聚类/结构/视图(树状图)的影响。我的问题是,是否存在用于计算不同层次树之间的差异的标准计算/度量,以及如何在R中实现这一点(例如,量化一些树几乎相同,而有些树则完全不同)。

Answers:


44

为了比较两个分层(树状)结构的相似性,使用了基于同义相关思想的度量。但是,进行树状图比较以选择“正确”方法或层次聚类中的距离度量是否正确?

关于层次聚类分析,有一些要点-隐藏的障碍-我认为非常重要

  • 永远不要目视比较通过不同附聚方法获得的树状图(以便选择分配更强的分区的方法)。它不会告诉您哪种方法“更好”。每种方法都有其自己的“原型”树外观:即使数据没有聚类结构或具有随机聚类结构,这些树也将始终如一。(而且我认为不存在可以消除这些内在差异的标准化措施)。但是,您可以比较通过相同方法但使用不同数据产生的结果的树状图外观。马克西姆:直接,不同方法后的树状图外观比较是不可接受的
  • 不要通过查看Ward方法的树状图来确定簇的数量(即在哪里砍树)。在Ward中,树显示的是求和系数的增长,而不是平均数。结果是,由于后面的群集的点数更大,所以后面的群集在树上看起来会误导“更好”。为了适当地标准化Ward的树状图,请用每一步的系数增长除以组合的两个群集中点的总数(尽管这样,标准化的Ward树状图可能很难以图形方式实现)。1个 马克西姆(Maxim):尽管可能,但通过考虑树状图的外观来选择切割级别不是选择分区的最佳方法,并且对于某些方法而言可能会产生误导。建议依赖一些正式的内部聚类标准改用。
  • 尽管没有人可以禁止您使用距离测量或凝聚方法进行“实验”,但最好有意识地选择距离和方法,而不是盲目尝试。距离应该反映出您感兴趣的差异的方面,并且该方法(必须意识到)暗示了簇的特定原型(例如,沃德簇的隐喻是类型;完全链接后的簇将是圆形的(按爱好或情节);单个链接之后的群集将是频谱(链);质心方法之后的群集将是平台的邻近度(政治);平均链接群集在概念上是最不区分的,并且通常是统一类)。
  • 一些方法要求正确的距离度量和/或正确的数据类型。例如,沃德和质心在逻辑上需要欧氏距离(平方),因为这些方法参与了欧氏空间中质心的计算。而且几何质心的计算与例如二进制数据不一致;数据应该是规模/连续的。美心:数据/距离/方法的假设和对应关系非常重要,而不是那么容易的问题。
  • 在距离矩阵的计算之前进行预处理(例如定中心,缩放和变量/特征转换的其他形式)以及进行聚类也是极其重要的问题。它会极大地影响结果。考虑一下什么预处理可能对您有帮助,并且从解释的角度来看将是有意义的。此外,在进行聚类分析之前,请不要害羞以图形方式仔细检查数据。
  • 并非所有的聚集聚类方法都可以等同地视为在哲学基础上为您提供了层次分类。例如,质心方法确实在某种意义上给出了层次结构,因为群集中心是整个群集的出现并定义了群集的特征,并且合并群集是由该功能驱动的。完整的联动,而另一方面,“驳斥”两个子群集时,将它们合并-凭借之中疏远的个人两个对象。因此,完整的链接树状图仅仅是收集的历史,而不是父子分类法Maxim:层次聚集聚类分析通常希望您根据其结果进行分区,而不是将结果视为层次分类法。
  • 分层聚类是典型的贪婪算法,该算法在每个步骤中出现的备选方案中进行最佳选择,以期最终接近最佳解决方案。但是,出现在较高级别的步骤上的“最佳”选择可能该步骤在理论上可能实现的全局最优。通常,步长越大,次优就越大。鉴于我们通常希望很少的集群,最后一步很重要;如前所述,如果步数较高(例如,千分之一步),则预期他们会相对较差。这就是为什么即使程序可以处理这么大的距离矩阵,通常也不建议对大型对象样本(成千上万个对象)进行分层聚类的原因。

如果在采取了上述预防措施后,您仍然认为想要对分层分类之间的相似性进行度量,则可以在“树状图的比较”和“分层分类的比较”上进行搜索。一个最能说明问题的主意可能是基于词法相关性:对于n个对象的同一数据集有两个树状图,X一世Ĵ是一个树状图中每对对象ij之间的合积系数(或者其等级,步数),并且ÿ一世Ĵ在另一个树状图中也相同。计算相关或余弦。


1个 后来更新Wards方法的树状图问题。对于Ward的方法,不同的聚类程序可能会输出不同变换的聚结系数。因此,尽管聚类历史和结果相同,但它们的树状图看起来还是有些不同。例如,SPSS不会从超度量系数中求根,而是将其累加到输出中。另一个传统(例如,在某些R包中找到的)是扎根(所谓的“ Ward-2”实施),而不是累加。再次重复,这种差异仅影响树状图的总体形状/外观,而不影响聚类结果。但是树状图的外观可能会影响您对簇数的决定。道德是完全不使用Ward方法中的树状图是安全的,除非您确切地知道程序中的这些系数是什么以及如何正确解释它们。


5
我几乎可以接受所有这一切。我想补充两点:A)您似乎要做的是某种过度拟合。通过系统地评估度量,权重和方法,很可能最终得出的参数对于您的当前数据是高度特定的,并且可能对其他数据甚至以后的数据毫无用处。B)知道树状图的相似性有什么好处。之后考虑您要对它们进行什么处理,然后尝试评估最终结果。评估中期结果可能会产生误导。
Anony-Mousse 2013年

1
如果您仍然对该主题感兴趣,我想您可能会发现我最近在DS SE上得到的答案很有帮助,特别是因为它涵盖了频繁的贝叶斯的方法,用于分层主题模型(带有嵌入式类信息),尽管有一定的覆盖范围。并选择相似度量
Aleksandr Blekh 2015年

@ttnphns,能否请您更详细地解释如何使用“合数系数”比较两个层次分类?
bassir 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.