您是否可以通过交叉验证比较没有基本事实的数据集上的不同聚类方法?


12

当前,我正在尝试分析没有基本事实的文本文档数据集。有人告诉我可以使用k倍交叉验证来比较不同的聚类方法。但是,我过去看到的示例使用了基本事实。有没有办法在该数据集上使用k折均值来验证我的结果?

Answers:


12

我所知道的将交叉验证应用于聚类的唯一应用是:

  1. 将样本分为4部分训练集和1部分测试集。

  2. 将您的聚类方法应用于训练集。

  3. 也将其应用于测试集。

  4. 使用步骤2中的结果将测试集中的每个观察值分配给训练集簇(例如,k均值的最近质心)。

  5. 在测试集中,对步骤3中的每个聚类计数该聚类中的观察对数,其中每个对也根据步骤4处于同一聚类中(从而避免了@cbeleites指出的聚类识别问题)。除以每个簇中的对数,得出一个比例。在所有聚类中比例最低的是衡量该方法在预测新样本的聚类成员资格方面的能力。

  6. 从培训和测试集的不同部分重复步骤1,使其达到5倍。

Tibshirani&Walther(2005),“通过预测强度进行聚类验证”,《计算与图形统计杂志》,第14卷,第3页。


您能否进一步解释什么是观察对(为什么我们首先要使用观察对?)?此外,与测试集相比,我们如何定义训练集中的“相同集群”?我看了这篇文章,但没有想到。
Tanguy18年

1
@Tanguy:您考虑所有对-如果观测值是A,B和C,则对是{A,B},{A,C}和&{B,C}-,并且您不要尝试定义“包含测试和测试集的“同一集群” 而是通过查看它们在组合或分离每对成员中达成共识的频率,来比较应用于测试集的两种聚类解决方案(一种是从训练集生成的,另一种是从测试集本身生成的)。
Scortchi-恢复莫妮卡

好了,然后将两个观测值对矩阵(一个在训练集上,一个在测试集上)与相似性度量进行比较?
Tanguy

@Tanguy:不,您只考虑测试集中的成对观测值。
Scortchi-恢复莫妮卡

对不起,我还不够清楚。一个人应该对测试集进行所有观察,从中可以构建一个填充有0和1的矩阵(如果一对观察不在同一集群中,则为0;如果它们不在同一簇中,则为1)。由于我们查看了从训练集和测试集获得的聚类的一对观测值,因此计算了两个矩阵。然后使用某种度量标准来度量这两个矩阵的相似度。我对么?
Tanguy

7

我试图了解如何将交叉验证应用于诸如k均值的聚类方法,因为新的即将到来的数据将改变质心,甚至改变现有聚类上的聚类分布。

关于聚类的无监督验证,您可能需要在重新采样的数据上量化具有不同聚类编号的算法的稳定性。

下图显示了群集稳定性的基本思想:

在此处输入图片说明

您可以观察到,聚类数为2或5,至少有两个不同的聚类结果(请参见图中的虚线),但是聚类数为4时,结果相对稳定。

集群稳定性:Ulrike von Luxburg的概述可能会有所帮助。


7

诸如在(迭代)倍交叉验证期间进行的重采样会生成“新”数据集,这些数据集通过删除一些情况而不同于原始数据集。k

为了便于说明和清楚起见,我将引导集群。

通常,您可以使用这种重新采样的聚类来衡量您的解决方案的稳定性:它几乎没有改变还是完全改变了?

即使您没有基础知识,您当然也可以比较由同一方法的不同运行(重采样)或不同聚类算法的结果引起的聚类,例如通过列表:

km1 <- kmeans (iris [, 1:4], 3)
km2 <- kmeans (iris [, 1:4], 3)
table (km1$cluster, km2$cluster)

#      1  2  3
#   1 96  0  0
#   2  0  0 33
#   3  0 21  0

由于群集是名义上的,因此其顺序可以任意更改。但是,这意味着您可以更改顺序,以使聚类相对应。然后,对角线*元素计算分配给同一群集的个案,非对角线元素显示分配以何种方式改变:

table (km1$cluster, km2$cluster)[c (1, 3, 2), ]

#      1  2  3
#   1 96  0  0
#   3  0 21  0
#   2  0  0 33

我想说重采样是很好的,以便确定每种方法中聚类的稳定性。没有它,将结果与其他方法进行比较就没有太大意义。

*如果结果不同,则也适用于非平方矩阵。然后,我将对齐以使元素具有前对角线的含义。然后,额外的行/列将显示新集群从哪些集群获得了案例。i,i


您没有将k折交叉验证和k均值聚类混在一起,是吗?


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.