Deep Learning

Apache MXNet (Incubating) logo

Apache MXNet (Incubating)

Apache MXNet is an open source multi-language machine learning (ML) library especially to train and deploy deep neural networks, on a wide array of devices. Once embedded in the host language, it blends declarative symbolic expression with imperative tensor computation. It is built on a dynamic dependency scheduler that automatically parallelizes both symbolic and imperative operations on the fly. A graph optimization layer on top of that makes symbolic execution fast and memory efficient.

Read more →
Apache SystemML logo

Apache SystemML

Apache SystemML is a machine learning system with support for Java 8+, Scala 2.11+, Python 2.7/3.5+, Hadoop 2.6+, and Spark 2.1+. It provides a workplace for machine learning using big data. As It runs on top of Apache Spark, it automatically scales data, line by line, determining whether the code should be run on the driver or an Apache Spark cluster. Future releases may include additional deep learning with GPU capabilities such as importing and running neural network architectures and pre-trained models for training.

Read more →


Caffe (Convolutional Architecture for Fast Feature Embedding) is a deep learning framework, originally developed at University of California, Berkeley. Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by Berkeley AI Research (BAIR) and by community contributors. Yangqing Jia created the project during his PhD at UC Berkeley. - Official website Caffe allows switching between CPU and GPU by setting a single flag.

Read more →
Eclipse Deeplearning4j logo

Eclipse Deeplearning4j

Eclipse Deeplearning4j is a deep learning programming library written for Java and Scala and a computing framework with wide support for deep learning algorithms. There are a lot of knobs to turn when you’re training a distributed deep-learning network. We’ve done our best to explain them, so that Eclipse Deeplearning4j can serve as a DIY tool for Java, Scala and Clojure programmers working on Hadoop and other file systems. - Official website See Apache Hadoop.

Read more →
OpenNN logo


OpenNN (Open Neural Networks Library) implements neural networks, a main area of deep learning research. OpenNN implements data mining methods as a bundle of functions. It allows embedding functions in other software tools using an ‘Application Programming Interface (API)’ for the interaction between the software tool and the predictive analytics tasks. A graphical user interface (GUI) is still missing, but some functions can support the integration of specific visualization tools.

Read more →
PyTorch logo


PyTorch is an open-source machine learning library for Python, based on Torch, used for applications such as natural language processing. One can also reuse Python packages such as NumPy, SciPy and Cython to extend PyTorch when needed. PyTorch provides two high-level features: Tensor computation (like NumPy) with strong GPU acceleration Deep neural networks built on a tape-based autodiff system - on GitHub repo Automatic differentiation is done with a tape-based system at both a functional and neural network layer level.

Read more →
TensorFlow logo


TensorFlow is an open source software library for high performance numerical computation. Its flexible architecture allows easy deployment of computation across a variety of platforms (CPUs, GPUs, TPUs), and from desktops to clusters of servers to mobile and edge devices. TensorFlow was originally developed by researchers and engineers from the Google Brain team within Google’s AI organization. It comes with strong support for machine learning and deep learning and the flexible numerical computation core is used across many other scientific domains.

Read more →
The Microsoft Cognitive Toolkit logo

The Microsoft Cognitive Toolkit

The Microsoft Cognitive Toolkit—previously known as CNTK—is an open-source toolkit for commercial-grade distributed deep learning. It describes neural networks as a series of computational steps via a directed graph. The Microsoft Cognitive Toolkit enables to leverage the information within massive data-sets through deep learning by providing scaling, speed, and accuracy with commercial-grade quality and compatibility with the programming languages and algorithms already in use. News I Documentation I FAQ I Blog

Read more →
Torch logo


Torch is a scientific computing framework with support for machine learning algorithms. It provides N-dimensional arrays, with support for routines for indexing, slicing, transposing, etc. Torch puts GPU first. It has an interface to C via LuaJIT, linear algebra & numeric optimization routines, neural network and energy-based models. It is embeddable, with ports to iOS and Android backends. Documentation I Wiki I Mailing list I Gitter chat

Read more →
Weka logo


Weka is a collection of machine learning algorithms for data mining tasks. It contains tools for data preparation, classification, regression, clustering, association rules mining, and visualization. - Official website Weka(Waikato Environment for Knowledge Analysis) provides access to deep learning with WekaDeeplearning4j which uses Deeplearning4j. Blog I New Forum I Old Forum I Documentation I Stack Overflow Q&A I Mailing list I Wiki I FAQ I IRC I SourceForge I Package metadata

Read more →