Python scikit-learn KMeans 在计算轮廓分数时被杀死 (9)

2024-03-14

我目前正在研究一个图像数据集(250 000 张图像,因此与特征向量一样多,每个图像都由 132 个特征组成)并尝试使用 sklearn 提供的 KMeans 函数。

我在 Mac OS X 10.10、Python 2.7 和 sklearn 0.15.2 上运行它,过了一会儿我只得到了:

死亡人数:9

运行这些命令行时出错:

nb_cls = int(raw_input("Number of clusters chosen :"))
clusterer = sklearn.cluster.KMeans(n_clusters=nb_cls)
clusters_labels = clusterer.fit_predict(X)
silhouette = sklearn.metrics.silhouette_score(X, clusters_labels)
print "n clusters =", nb_cls, "/ silhouette_score =", silhouette

请注意,如果不计算轮廓分数,代码不会被杀死

对于较小的数据集(± 2 500 张图像),相同的算法是有效的,并且不存在此类 Python 错误。

我怎样才能避免这个 Killed 9 错误?对于我的笔记本电脑来说,这个计算是否过于雄心勃勃?


这意味着您的脚本被操作系统杀死了。在大多数情况下,这是因为它使用了太多内存。在您的情况下,这似乎是可能的,因为当您仅使用 2 500 个图像时,您的代码工作正常。

如果是内存问题,您将必须获得更多 RAM(在 Mac 上不可能吗?)、使用另一台具有更多 RAM 的计算机或减小数据集的大小。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python scikit-learn KMeans 在计算轮廓分数时被杀死 (9) 的相关文章

随机推荐