在稀疏数据上使用DBSCAN和骰子度量进行聚类

时间:2014-07-16 09:51:01

标签: python machine-learning scikit-learn

我正在使用scikit-learn来聚集大量数据。我有一个大的稀疏矩阵(44104乘755144个元素,其中大多数是0)。我想使用DBSCAN进行聚类,因为它对我的问题有意义,因为它允许我不指定聚类的数量。

似乎可以将DBSCAN与稀疏数据一起使用,这也在这里讨论In scikit-learn, can DBSCAN use sparse matrix?

但是,如果我要使用dice metric,似乎存在一些问题。在实现DBSCAN的dbscan_.py中,我可以删除该行:

X = np.asarray(X)

这对我的稀疏矩阵不起作用,但后来我遇到了问题:

neighbors_model = NearestNeighbors(radius=eps, algorithm=algorithm,
                                           leaf_size=leaf_size,
                                           metric=metric, p=p)
neighbors_model.fit(X)

我收到错误:

ValueError: metric 'dice' not valid for sparse input

有没有充分的理由说骰子指标对于稀疏输入无效,还是我可以自己实现的?

0 个答案:

没有答案