【问题标题】:Clustering, Large dataset, learning large number vocabulary words聚类、大数据集、学习大量词汇
【发布时间】:2018-12-13 22:53:54
【问题描述】:

我正在尝试从大数据集暗中进行聚类: 行数:140 万 列:900

预计集群数量:10,000 (10k)

问题是:我的数据集大小为 10Gb,而我的 RAM 为 16Gb。我正在尝试在 Matlab 中实现。如果有人能回应它,对我会有很大的帮助。

附:到目前为止,我已经尝试过层次聚类。在一篇论文中,他们建议采用“固定半径增量预聚类”。但我不明白程序。

提前致谢。

【问题讨论】:

  • 我正在尝试在Matlab中实现。为什么python标签?
  • 感谢您的回复。如果我知道算法,那么我相信,我也可以在 python 中实现。
  • 我假设每个数据点占用大约 8 个字节,因为 (1.4E6*900*8)/(10*2^30) 接近 1,但这不足以让我帮助您。你有什么样的数据?文字,数字?你有 140 万个事件的 900 个参数?请澄清您的问题,发布您目前拥有的代码,并发布几行供人们测试他们的答案。

标签: matlab bigdata cluster-analysis


【解决方案1】:

使用一些不需要需要距离矩阵的算法。相反,请选择一个可以索引加速的。

带有距离矩阵的 Anuthing 会超出你的记忆。但即使不需要这个(例如,SLINK 仅使用 O(n) 内存),它仍然可能需要太长时间。索引可以将运行时间减少到 O(n log n),尽管在您的数据上,索引可能有问题。

索引加速算法例如:OPTICS、DBSCAN。

只是不要为这些算法使用非常糟糕的 Matlab 脚本。

【讨论】:

  • 谢谢您的建议。不知何故,我设法做到了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-07
  • 1970-01-01
  • 2023-04-04
  • 2012-12-16
  • 2015-04-02
  • 2020-02-09
相关资源
最近更新 更多