The following table summarizes all of the presented libraries. The table is, by no means, exhaustive—there are many more libraries that cover specific problem domains. This review should serve as an overview of the big names in the Java machine learning world:
Libraries |
Problem domains |
License |
Architecture |
Algorithms |
Weka |
General purpose |
GNU GPL |
Single machine |
Decision trees, Naive Bayes, neural network, random forest, AdaBoost, hierarchical clustering, and so on |
Java-ML |
General purpose |
GNU GPL |
Single machine |
K-means clustering, self-organizing maps, Markov chain clustering, Cobweb, random forest, decision trees, bagging, distance measures, and so on |
Mahout |
Classification, recommendation ... |