Scikit learn 比较并行k-均值批处理与小批处理速度

Scikit learn 比较并行k-均值批处理与小批处理速度,scikit-learn,Scikit Learn,我试图用k-均值聚类1000维250k向量。我正在工作的机器有80个双核 只是确认一下,是否有人比较了k-means默认批处理并行版本和k-means迷你批处理版本的运行时间?关于sklean的文档没有提供太多信息,因为数据集非常小 非常感谢你的帮助 在这方面,认为小批量K-Means对于10000个以上的样本应该更快、更有效。由于您有250000个样本,如果您不想自己测试,您可能应该使用mini-batch 请注意,通过更改此行中的n_样本,可以很容易地将示例更改为5000点、10000点或2

我试图用k-均值聚类1000维250k向量。我正在工作的机器有80个双核

只是确认一下,是否有人比较了k-means默认批处理并行版本和k-means迷你批处理版本的运行时间?关于sklean的文档没有提供太多信息,因为数据集非常小

非常感谢你的帮助

在这方面,

认为
小批量K-Means
对于10000个以上的样本应该更快、更有效。由于您有250000个样本,如果您不想自己测试,您可能应该使用mini-batch

请注意,通过更改此行中的n_样本,可以很容易地将示例更改为5000点、10000点或20000点:

X, labels_true = make_blobs(n_samples=3000, centers=centers, cluster_std=0.7)
我同意,对于1000维向量,这不一定会按相同的比例缩放,但由于您正在构建示例,并且正在使用
k-means
mini-batch k-means
,并且只需一秒钟即可在它们之间切换。。。你应该对你的1000维向量做一个缩放研究,分别是5k,10k,15k,20k样本


理论上,由于向量维度,没有理由认为
Mini-Batch K-Means
的表现不如
K-Means
,我们知道它更适合较大的样本量,因此我会选择Mini-Batch off-the-off-off-off-off,例如对行动研究的偏见。

感谢AN6U5的回复。我要寻找的是k-means批处理的“并行”版本(通过使用n_jobs arg)与mini batch之间的比较。我正在使用这两个版本的不同参数,以查看哪个性能更好。但我仍然在这里发布了这个问题,以反复检查是否有人已经这样做过。我也将分享我的结果。感谢您的澄清,我不知道mini batch没有多线程实现。是的,如果一台80核的共享内存机器无法超越mini batch的单核实例,那将是令人惊讶的。我很想看看你们的强伸缩性研究结果。我正在用这两种方法研究不同的参数,看看哪一种性能更好。但我仍然在这里发布了这个问题,以反复检查是否有人已经这样做过。我也会分享我的结果。