Natural Language Processing

DL4J – deploy and train deep learning models

DL4J (Deeplearning4j) is an ecosystem of libraries for developing deep learning applications on the Java Virtual Machine. It provides tools for constructing neural networks, performing numerical computations and preparing data for machine learning workflows.

The ecosystem includes several interconnected projects. Deeplearning4j provides a high-level neural network API, while ND4J supplies multidimensional arrays and numerical operations. SameDiff provides automatic differentiation and graph-based computation, and DataVec handles data transformation and preprocessing.

DL4J is designed for Java developers who need to integrate machine learning into existing JVM applications. Its libraries can also be used from other JVM languages, including Kotlin, Scala and Clojure.

The project is undergoing a substantial architectural transition. Its established high-level API is in maintenance mode, while development is shifting towards model interoperability, numerical computing and more modern deep learning workflows.

This is free and open source software.

Key Features

  • High-level API for constructing and training neural networks using MultiLayerNetwork and ComputationGraph.
  • Supports feedforward, convolutional and recurrent neural network architectures.
  • Allows developers to define custom neural network layers and loss functions.
  • ND4J provides multidimensional arrays and mathematical operations for numerical computing.
  • Supports linear algebra, matrix operations and tensor transformations.
  • Provides CPU and CUDA GPU acceleration through native numerical computing backends.
  • SameDiff offers graph-based computation and automatic differentiation.
  • Supports gradient calculation for training and optimising machine learning models.
  • DataVec provides data transformation, preprocessing and feature extraction facilities.
  • Supports processing structured data, images, audio and other machine learning inputs.
  • Provides facilities for importing compatible Keras models.
  • Includes facilities for importing supported TensorFlow graph models.
  • Python4J enables interaction between JVM applications and embedded Python execution.
  • Provides reusable Java APIs for integrating deep learning into existing applications.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/deeplearning4j/deeplearning4j
Support:
Developer: Eclipse
License: Apache License 2.0

DL4J is written in Java. Learn Java with our recommended free books and free tutorials.


Related Software

Natural Language Processing
PyTorch-TransformersLibrary of state-of-the-art pre-trained models
Natural Language ToolkitSuite of open source Python modules, data sets and tutorials
Stanford CoreNLPExtensible annotation-based NLP pipeline
spaCyIndustrial strength natural language processing
scikit-learnMachine learning library for Python
GensimPython-based vector space modeling and topic modeling toolkit
flairSimple framework for state-of-the-art NLP
Apache OpenNLPMachine learning based toolkit
DL4JDeploy and train deep learning models
Apache LuceneFull-featured information retrieval software library
UIMAImplementation of the UIMA specification
tidytextText mining using dplyr, ggplot2, and other tidy tools
text2vecFramework with API for text analysis and NLP
quantedaR package for Quantitative Analysis of Textual Data
MosesStatistical machine translation system

Read our verdict in the software roundup.

Java Natural Language Processing Tools
CoreNLPAnnotation-based NLP pipeline that provides core natural language analysis
OpenNLPMachine learning based toolkit
DL4JDeploy and train deep learning models
LuceneHigh-performance, full-featured information retrieval software library
UIMAOpen source implementation of the UIMA specification
TikaContent analysis toolkit
MALLETStatistical natural language processing, document classification and more
GATEFull-lifecycle solution for a broad range of NLP tasks
ReVerb Automatically identifies and extracts binary relationships from sentences
NLP4JNLP framework for JVM languages
CogComp-NLPState-of-the-art Natural Language Processing (NLP) tools

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted