Java Clustering Library

Viewed 26139

I am looking for a light weight clustering library in java. I don't need 100s of clustering algo in that library just 5 to 7 algo would be fine for me.

I am sure, you are going to ask: "what kind of algo do you need and for what purpose" :). I just need to do classification of my data with the help of clustering. For example K means.

P.S: I know about weka but I don't want to use it as it is not specifically for clustering only.

8 Answers

I would take a look at JUNG. It has a number of clustering algorithms implemented, although I'm not sure if K-means is one of them.

Another option might be to take a look at Knime, an Eclipse based workflow editor. This includes a number of clustering primitives you can use as part of a workflow, including K-means.

Apache Mahout implements many clustering algorithms, via Hadoop. It's a little heavy for what you want, but: http://cwiki.apache.org/MAHOUT/syntheticcontroldata.html

Also you might be able to dig out and adapt the user clustering code from Mahout's TreeClusteringRecommender class, which uses clustering for recommender engine purposes.

Related