我有一个协方差矩阵,并希望使用层次聚类将变量划分为个集群(例如,对协方差矩阵进行排序)。
变量之间(即平方协方差矩阵的列/行之间)是否存在典型的距离函数?
或者如果还有更多,关于该主题是否有很好的参考?
我有一个协方差矩阵,并希望使用层次聚类将变量划分为个集群(例如,对协方差矩阵进行排序)。
变量之间(即平方协方差矩阵的列/行之间)是否存在典型的距离函数?
或者如果还有更多,关于该主题是否有很好的参考?
协方差(或相关或余弦)可以通过余弦定律轻松自然地转换为欧几里得距离,因为它是欧几里得空间中的标量积(=基于角度的相似性)。知道两个变量i和j之间的协方差以及它们的方差自动意味着知道变量之间的d:。(即与通常的平方欧几里得距离成正比:如果您使用平方和和叉积和代替方差和协方差,您将获得后者。当然,这两个变量最初都应该居中:谈论“协方差”是考虑去除均值的数据的别名。)
注意,这个公式意味着负协方差比正协方差的距离更大(从几何的角度来看确实是这种情况,即当变量被视为主题空间中的向量时)。如果您不希望协方差的符号发挥作用,请取消负号。忽略负号不是“手动修补”操作,并且在需要时是有保证的:如果cov矩阵是正定的,则 abs(cov)矩阵也将是正定的;因此,通过上述公式获得的距离将是真正的欧式距离(欧式距离是一种特殊的度量距离)。
欧几里得距离在层次聚类方面是通用的:这种聚类的任何方法对于欧几里得或平方欧几里得d都是有效的。但是某些方法,例如平均链接或完全链接,可以用于任何不同或相似(不仅仅是度量距离)。因此,您可以直接将此类方法与cov或abs(cov)矩阵一起使用,或者 - 例如 - 与max(abs(cov))-abs(cov)距离矩阵一起使用。当然,聚类结果确实可能取决于所使用的(不)相似性的确切性质。
为什么不使用相关矩阵进行聚类?假设您的随机变量居中,通过计算变量之间的相关性,您正在计算余弦相似度距离。您的链接中也提到了这个距离。该距离可用于层次聚类。1 - |余弦相似度|越小,变量越相似。