R k均值和heircal聚类需要很长时间才能完成

时间:2015-06-15 11:11:41

标签: r

我有一个数据集(在规范化和预处理之后)包含一个包含5列和133763行的数据框。

我正在尝试应用k均值算法和神秘算法来进行聚类。但是,我的问题是 R studio继续尝试进行计算,然后抛出内存异常,即使我使用 mac bro i 7,16 gb < / p>

我的英雄聚类代码是:

dist.cards<-dist(cardsNorm)

正如我所说,需要永远运行。但是,如果我这样做了

dist.cards<-dist(cardsNorm[1:10])

它工作正常,这是因为我只使用了10行。

表示k,这是我的代码:

cardsKMS<-kmeans(cardsNorm,centers=3,iter.max = 100,nstart = 25)

它工作正常,但是当我尝试使用此代码测量模型时

a <- silhouette(cardsKMS$cluster,dist(cardsNorm))

它需要永远,永远不会完成计算

请帮助

1 个答案:

答案 0 :(得分:1)

n = 133763观察之间创建距离矩阵需要(n^2-n)/2成对比较。鉴于标量数字需要12个字节的RAM,整个矩阵需要大约100 GB。所以很遗憾你没有足够的资源。

基于距离矩阵的算法随着数据集大小的增加而缩放得非常差(因为它们在内存和CPU中本质上是二次的)所以我担心你需要尝试其他一些聚类算法。

相关问题