聚类

聚类

KMeans([n_clusters, init, ...])

可扩展的 KMeans 用于聚类

SpectralClustering([n_clusters, ...])

应用并行谱聚类

The dask_ml.cluster 模块实现了几种用于聚类无标签数据的算法。

谱聚类

谱聚类在样本间的亲和矩阵上找到一个低维嵌入。然后对嵌入的数据集进行聚类,通常使用KMeans。

通常,谱聚类算法在扩展性方面表现不佳。当样本数量较大时,计算 n_samples×n_samples 亲和矩阵的成本变得过高。为此,已经提出了几种算法来解决这一限制。

dask-ml 中,我们使用 Nyström 方法来近似大型亲和矩阵。这涉及从整个训练集中采样 n_components 行。对于这个子集( n_components×n_components )和这个子集与数据其余部分( n_components×(n_samplesn_components) )之间的亲和度进行精确计算。我们避免了直接计算其余的亲和矩阵。

S 为我们的 nimesn 亲和矩阵。我们可以将其重写为

Sd=[BBTC]

其中 A 是采样的 n_componentsn×n 亲和矩阵,B 是样本与数据集中其余部分之间的 n×(nn_components) 亲和矩阵。我们不直接计算 C,而是用 BTA1B 来近似它。

参见 谱聚类基准测试 ,以了解如何展示 dask_ml.cluster.SpectralClustering 在样本数量上的扩展性。