Java machine learning libraries
60 libraries, 23 updated this year
Java's machine learning sits mostly inside data platforms. Spark MLlib trains models across a cluster, Flink and Storm process streams, and Hadoop stores the data underneath. H2O provides distributed gradient boosting and AutoML with a Java core.
60 libraries
Deeplearning4jdeeplearning4j/deeplearning4j
Scalable deep learning for industry with parallel GPUs.
CoreNLPstanfordnlp/CoreNLP
Stanford CoreNLP provides a set of natural language analysis tools which can take raw English language text input and give the base forms of words.
H2Oh2oai/h2o-3
ML engine that supports distributed learning on Hadoop, Spark or your laptop via APIs in R, Python, Scala, REST/JSON.
deepjavalibrary/djldeepjavalibrary/djl
Deep Java Library (DJL) is an open-source, high-level, engine-agnostic Java framework for deep learning, designed to be easy to get started with and simple to use for Java developers.
aerosolveairbnb/aerosolve
A machine learning library by Airbnb designed from the ground up to be human friendly.
CMU Sphinxcmusphinx/pocketsphinx
Open Source Toolkit For Speech Recognition purely based on Java speech recognition library.
Onyxonyx-platform/onyx Archived
Distributed, masterless, high performance, fault tolerant data processing. Written entirely in Clojure.
ORYXoryxproject/oryx Archived
Lambda Architecture Framework using Apache Spark and Apache Kafka with a specialization for real-time large-scale machine learning.
OpenNLPapache/opennlp
A machine learning based toolkit for the processing of natural language text.
Datumboxdatumbox/datumbox-framework
Machine Learning framework for rapid development of Machine Learning and Statistical applications.
MALLETmimno/Mallet
A Java-based package for statistical natural language processing, document classification, clustering, topic modelling, information extraction, and other machine learning applications to text.
ELKIelki-project/elki
Java toolkit for data mining. (unsupervised: clustering, outlier detection etc.)
Encogencog/encog-java-core
An advanced neural network and machine learning framework. Encog contains classes to create a wide variety of networks, as well as support classes to normalize and process data for these neural networks. Encog trainings using multithreaded resilient propagation. Encog can also make use of a GPU to further speed processing time. A GUI based workbench is also provided to help model and train neural networks.
CogcompNLPCogComp/cogcomp-nlp
This project collects a number of core libraries for Natural Language Processing (NLP) developed in the University of Illinois' Cognitive Computation Group, for example illinois-core-utilities which provides a set of NLP-friendly data structures and a number of NLP-related utilities that support writing NLP applications, running experiments, etc, illinois-edison a library for feature extraction from illinois-core-utilities data structures and many other packages.
Hydrosphere MistHydrospheredata/mist
A service for deployment Apache Spark MLLib machine learning models as realtime, batch or reactive web services.
htm.javanumenta/htm.java
General Machine Learning library using Numenta’s Cortical Learning Algorithm.
NLP4Jemorynlp/nlp4j Deprecated
The NLP4J project provides software and resources for natural language processing. The project started at the Center for Computational Language and EducAtion Research, and is currently developed by the Center for Language and Information Research at Emory University.
Apache cTAKESapache/ctakes
Apache Clinical Text Analysis and Knowledge Extraction System (cTAKES) is an open-source natural language processing system for information extraction from electronic medical record clinical free-text.
ClearTKClearTK/cleartk Deprecated
ClearTK provides a framework for developing statistical natural language processing (NLP) components in Java and is built on top of Apache UIMA.
Chips-n-Salsacicirello/Chips-n-Salsa
A Java library for genetic algorithms, evolutionary computation, and stochastic local search, with a focus on self-adaptation / self-tuning, as well as parallel execution.
jSciPyhissain/jscipy
A Java port of SciPy's signal processing module, offering filters, transformations, and other scientific computing utilities.
LBJavaCogComp/lbjava
Learning Based Java is a modelling language for the rapid development of software systems, offers a convenient, declarative syntax for classifier and constraint definition directly in terms of the objects in the programmer's application.
knn-java-libraryfelipexw/knn-java-library
Just a simple implementation of K-Nearest Neighbors algorithm using with a bunch of similarity measures.
Cortical.iocortical.io
Retina: an API performing complex NLP operations (disambiguation, classification, streaming text filtering, etc...) as quickly and intuitively as the brain.
IRIScortical-io/Iris
Cortical.io's FREE NLP, Retina API Analysis Tool (written in JavaFX!) - See the Tutorial Video.
Stanford Parsernlp.stanford.edu
A natural language parser is a program that works out the grammatical structure of sentences.
Stanford Name Entity Recognizernlp.stanford.edu
Stanford NER is a Java implementation of a Named Entity Recognizer.
Stanford Word Segmenternlp.stanford.edu
Tokenization of raw text is a standard pre-processing step for many NLP tasks.
Tregex, Tsurgeon and Semgrexnlp.stanford.edu
Tregex is a utility for matching patterns in trees, based on tree relationships and regular expression matches on nodes (the name is short for "tree regular expressions").
Stanford Phrasal: A Phrase-Based Translation Systemnlp.stanford.edu
Stanford English Tokenizernlp.stanford.edu
Stanford Phrasal is a state-of-the-art statistical phrase-based machine translation system, written in Java.
Stanford Tokens Regexnlp.stanford.edu
A tokenizer divides text into a sequence of tokens, which roughly correspond to "words".
Stanford Temporal Taggernlp.stanford.edu
SUTime is a library for recognizing and normalizing time expressions.
Stanford SPIEDnlp.stanford.edu
Learning entities from unlabeled text starting with seed sets using patterns in an iterative fashion.