聚类高维稀疏二进制数据

机器算法验证 r 聚类 数据挖掘 交叉验证 聚集标准错误
2022-04-12 19:59:10

我正在尝试根据他们的喜好对 Facebook 用户进行聚类。

我有两个问题:首先,由于 Facebook 中没有不喜欢,我所拥有的只是对某些项目有喜欢 (1),但对于其余项目,该值是未知的,不一定为零(对应于不喜欢)。如果使用 0 表示未知数,那么我认为我的集群会有偏差。有什么建议吗?

其次,假设我将 0 分配给未知项目并对它们进行聚类,使用层次聚类方法使用二元测量距离,例如 Jaccard、Tanimoto、...

如何评估聚类结果?内部和外部 SSE 不适用于二进制数据。如果我使用中位数中心,恐怕它们中的大多数都会为零,因为我有一个稀疏的特征矩阵。那么评估集群的好方法是什么?

2个回答

考虑使用基于图的方法。

尝试找到一个阈值来定义用户何时“有些相似”。它可能非常低。构建这些有点相似的用户的图表。

然后使用 Clique 检测方法在此图中查找组。

我建议进行聚类分析。Joachim Bacher 在他的关于聚类分析的脚本中深入讨论了不同的相异系数,特别是治疗没有零食的效果。例如:当两个项目都显示为零时,两个项目是否相关?我记得他还使用调查研究中的一个多重响应示例,该示例与您的问题很接近。

该脚本可以从以下网址下载:http: //www.clusteranalysis.net/sonstiges/zaspringseminar2002/

高温超滤