在我想要聚类的对象之间有一组成对距离(在矩阵中)。我目前使用k-均值聚类(计算距离从质心到给定集群的所有成员的平均距离,因为我没有坐标),在一个区间内,k由最佳Davies-Bouldin索引选择。
然而,我有三个单独的度量标准(将来可能会更多)描述数据之间的差异,每个指标在大小和传播方面都有很大的不同。目前,我用欧几里德距离计算三个度量指标之间的距离矩阵,但我相当肯定,这些度量之间的差异正在搞砸它(例如,最大的度量正在压倒其他度量)。
我认为处理这个问题的一个好方法是使用Mahalanobis距离来组合度量。但是,我显然不能计算坐标之间的协方差矩阵,但是我可以为距离度量计算它。这有道理吗?也就是说,如果我得到两个对象之间的距离,i和j之间的距离为:
D(i,j) = sqrt( dt S^-1 d )其中d是i和j之间不同距离度量的3向量,dt是d的转置,S是距离的协方差矩阵,D是一个很好的归一化的聚类度量吗?
我还考虑过规范度量(即减去均值并除以方差),然后简单地保持欧几里德距离(实际上,这似乎本质上就是Mahalanobis距离,至少在某些情况下是这样),或者切换到类似DBSCAN或EM之类的东西,并且没有排除它们(尽管MDS那时的聚类可能有点过分)。作为一名副手,任何能够做到这一切的软件包都将受到极大的感谢。谢谢!
发布于 2014-05-21 07:50:32
考虑使用k-medoid (PAM)代替被黑的k-均值,它可以与任意距离函数一起工作;而k-均值是为了最小化方差,而不是任意距离。
EM也会遇到同样的问题--它需要能够计算有意义的中心。
还可以使用分层链接聚类。它只需要一个距离矩阵。
https://stackoverflow.com/questions/23770279
复制相似问题