我正在尝试使用k-means聚类1000维,250k向量。我正在使用的机器有80个双核。
只是确认,如果有人比较k-means默认批量并行版本的运行时间与k-means迷你批量版本?由于数据集非常小,因此sklean文档上的example comparison page并未提供太多信息。
非常感谢您的帮助。
此致
答案 0 :(得分:1)
Conventional wisdom认为Mini-Batch K-Means
对于超过10,000个样本应该更快,更有效。由于您有250,000个样本,如果您不想自己测试,则应该使用小批量。
请注意,通过更改此行中的n_samples,可以非常轻松地将example you referenced更改为5000,10,000或20,000点示例:
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
表现不佳,而且我们知道它对于更大的样本量会更好,所以我会选择迷你批量的袖珍,例如对研究采取行动的偏见。