21

我正在寻找 java 中的轻量级聚类库。我不需要该库中的 100 个聚类算法,只需 5 到 7 个算法对我来说就可以了。

我敢肯定,您会问:“您需要什么样的算法以及用于什么目的”:)。我只需要在聚类的帮助下对我的数据进行分类。例如 K 表示。

PS:我知道 weka 但我不想使用它,因为它不是专门用于集群的。

4

8 回答 8

6

看看Apache 的Commons Math库中的org.apache.commons.math4.ml.clustering.KMeansPlusPlusClusterer 。

于 2012-07-17T18:08:23.997 回答
0

如果 Scala 也适用于您,那么您可能需要在 Scala 中检查此版本的 KMeans:

https://github.com/wspringer/kmeans

相关的博客文章在这里:

http://nxt.flotsam.nl/k-means-clustering.html

于 2012-06-29T08:07:16.587 回答
0

我会看看JUNG。它实现了许多聚类算法,尽管我不确定 K-means 是否是其中之一。

另一种选择可能是看看Knime,一个基于 Eclipse 的工作流编辑器。这包括许多可用作工作流一部分的聚类原语,包括 K-means。

于 2010-01-25T06:31:23.907 回答
0

这里有一些可用的 Java 开源聚类算法,可在 GPL 下获得。需要 Java Colt 库(用于矩阵)。 http://open.trickl.com/

于 2011-12-07T17:03:54.710 回答
0

如果你想要一些Java中的基本聚类算法,你可以查看我的软件:

http://www.philippe-fournier-viger.com/spmf/

它提供了 KMeans 的实现和层次聚类算法。

提供的其他算法用于模式挖掘。总共有 47 种算法。但只有 2 个用于聚类。另一件事:有一个用于启动算法的简单 GUI。

于 2012-07-18T18:18:54.090 回答
0

还有ELKI,一个类似于 WEKA 的开源大学项目,但侧重于聚类分析和异常值检测,而不是机器学习算法。它非常先进,使用索引结构来提高效率,并且至少有十几种聚类算法。

于 2011-12-07T17:06:53.910 回答
-1

Apache Mahout 通过 Hadoop 实现了许多集群算法。对于你想要的东西来说它有点重,但是:http ://cwiki.apache.org/MAHOUT/syntheticcontroldata.html

您还可以从 Mahout 的 TreeClusteringRecommender 类中挖掘和调整用户聚类代码,该类将聚类用于推荐引擎。

于 2010-01-24T23:00:27.500 回答
-1

Cytoscape软件有几个插件可以实现网络和数值数据的聚类算法(Nemo、MCODE、clusterMaker 等)。所有插件都是开源的。

于 2012-01-24T05:13:35.260 回答