gpt4 book ai didi

python - 集群的计算

转载 作者:太空宇宙 更新时间:2023-11-04 05:31:48 25 4
gpt4 key购买 nike

<分区>

我正在文本文档数据集(以词频为特征)上测试一些聚类算法。运行Scikit Learn Clustering的一些方法一个接一个,下面是他们处理大约 50,000 个文件的时间,每个文件有 26 个特征。每个人收敛所需的时间存在很大差异,我输入的数据越多,收敛时间就越极端;其中一些(例如 MeanShift)在数据集增长到一定大小后就停止工作。

(下面给出的时间是从脚本开始的总时间,即 KMeans 花费了 0.004 分钟,Meanshift 花费了 (2.56 - 0.004) 分钟,等等)

shape of input: (4957, 26)

KMeans: 0.00491824944814
MeanShift: 2.56759268443
AffinityPropagation: 4.04678163528
SpectralClustering: 4.1573699673
DBSCAN: 4.16347868443
Gaussian: 4.16394021908
AgglomerativeClustering: 5.52318491936
Birch: 5.52657626867

我知道一些聚类算法本质上是计算密集型的(例如 here 一章概述了 Kmeans 的需求与数据点的数量成线性关系,而分层模型是 O(m2logm))。所以我想知道

  • 我如何确定这些算法中的每一个可以处理多少个数据点处理;并且输入文件/输入特征的数量相等在这个等式中相关吗?
  • 计算强度在多大程度上取决于聚类设置——例如Kmeans 中的距离度量还是 DBSCAN 中的 e
  • 聚类成功会影响计算时间吗?一些算法比如 DBSCAN 很快就完成了——也许是因为他们找不到数据中的任何聚类; Meanshift 也找不到集群并且仍然需要永远。 (我在这里使用默认设置)。可能一旦他们发现数据中的结构,这种情况就会发生巨大变化?
  • 多少原始计算能力是这些类型的限制因素算法?我能否将 ~ 300,000 个文件与 ~ 30每个功能都在普通台式计算机上吗?还是有意义为这些事情使用计算机集群?

非常感谢任何帮助!测试在 Mac mini、2.6 Ghz、8 GB 上运行。数据输入是 numpy array .

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com