A variety of free deep learning tools and platforms:
Apache MXNet is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to maximize efficiency and productivity. At its core, MXNet contains 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. MXNet is portable and lightweight, scaling effectively to multiple GPUs and multiple machines.
Blocks is a framework that helps you build neural network models on top of Theano.
This product also occurs in the following lists:
5 Free Python Deep Learning Tools
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. Caffe is released under the BSD 2-Clause license.
Chainer supports CUDA computation. It only requires a few lines of code to leverage a GPU. It also runs on multiple GPUs with little effort.
Convnet provides convolutional Neural Networks for Matlab for classification and segmentation, including Invariant Backpropagation (IBP) and Adversarial Training (AT) algorithms. Trained on GPU, require cuDNN v5. The toolbox was written for Matlab and its functions can be called only from Matlab scripts. The toolbox requires a Cuda capable GPU. The toolbox DOES NOT REQUIRE Parallel Computing Toolbox as MatConvNet, but you can import and use pretrained MatConvNet models.
ConvNetJS is a Javascript library for training Deep Learning models (Neural Networks) entirely in your browser. Open a tab and you’re training. No software requirements, no compilers, no installations, no GPUs.
Cuda-convnet is a high-performance C++/CUDA implementation of convolutional neural networks. This is a fast C++/CUDA implementation of convolutional (or more generally, feed-forward) neural networks. It can model arbitrary layer connectivity and network depth. Any directed acyclic graph of layers will do. Training is done using the back-propagation algorithm. Fermi-generation GPU (GTX 4xx, GTX 5xx, or Tesla equivalent) required.
DeepDist provides Lightning-Fast Deep Learning on Spark via parallel stochastic gradient updates. DeepDist implements Downpour-like stochastic gradient descent. It first starts a master model server. Subsequently, on each data node, DeepDist fetches the model from the master and calls gradient(). After computing gradients on the data partitions, gradient updates are sent back the the server. On the server, the master model is updated by descent(). Models can converge faster since gradient updates are constantly synchronized between the nodes.
Deeplearning4j is the first commercial-grade, open-source, distributed deep-learning library written for Java and Scala. Integrated with Hadoop and Spark, DL4J is designed to be used in business environments on distributed GPUs and CPUs.
deepnet deep learning toolkit in R. Implement some deep learning architectures and neural network algorithms, including BP,RBM,DBN,Deep autoencoder and so on.
dl-machine – Scripts to setup a GPU / CUDA-enabled compute server with libraries for deep learning.
Eblearn is an object-oriented C++ library that implements various machine learning models, including energy-based learning, gradient-based learning for machine composed of multiple heterogeneous modules. In particular, the library provides a complete set of tools for building, training, and running convolutional networks.
H2O scales statistics, machine learning and math over Big Data. H2O is extensible and users can build blocks using simple math legos in the core. H2O keeps familiar interfaces like R, Excel & JSON so that big data enthusiasts and experts can explore, munge, model and score data sets using a range of simple to advanced algorithms.
Hebel is a library for deep learning with neural networks in Python using GPU acceleration with CUDA through PyCUDA. It implements the most important types of neural network models and offers a variety of different activation functions and training methods such as momentum, Nesterov momentum, dropout, and early stopping.
This product also occurs in the following lists:
5 Free Python Deep Learning Tools
Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.
This product also occurs in the following lists:
5 Free Python Deep Learning Tools
libdeep is a C library which can be used in deep learning applications. It allows multiple layers to be trained and also includes the dropouts technique to avoid overfitting the data.
Matrix Shadow is a Lightweight CPU/GPU Matrix and Tensor Template Library in C++/CUDA for (Deep) Machine Learning.
n42 is the deep learning module for nodejs.
ND4J is an open-source, distributed deep-learning project in Java. ND4J is distributed under an Apache 2.0 License.
neon is Intel Nervana’s reference deep learning framework. Support for commonly used layers: convolution, RNN, LSTM, GRU, BatchNorm, and more.
NeuralNetworks is a Java implementation of some of the algorithms for training deep neural networks. GPU support is provided via the OpenCL and Aparapi. The architecture is designed with modularity, extensibility and pluggability in mind.
NVIDIA DIGITS simplifies common deep learning tasks such as managing data, designing and training neural networks on multi-GPU systems, monitoring performance in real time with advanced visualizations, and selecting the best performing model from the results browser for deployment. DIGITS is completely interactive so that data scientists can focus on designing and training networks rather than programming and debugging.
OpenDL-The deep learning training library based on Spark framework.
OverFeat is a Convolutional Network-based image features extractor and classifier.
PDNN is a Python deep learning toolkit developed under the Theano environment. PDNN implements a complete set of models. Unsupervised learning (SDAs, RBMs), supervised learning (DNN, CNN) and multi-task learning can be conducted within a single framework.
This product also occurs in the following lists:
5 Free Python Deep Learning Tools
pydeeplearn is a library for deep belief nets and rbms and convolutional neural networks. Provides code for dropout, rmsprop, momentum, rectified linear units, sparsity constraints, weight decay, adversarial training, etc. Runs on GPUs for high performance by using theano. Provides code and a demo for live emotion detection from the webcam.
This product also occurs in the following lists:
5 Free Python Deep Learning Tools
RNNLIB is a recurrent neural network library for sequence learning problems. Applicable to most types of spatiotemporal data, it has proven particularly effective for speech and handwriting recognition.
TensorFlow is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API. TensorFlow was originally developed by researchers and engineers working on the Google Brain Team within Google’s Machine Intelligence research organization for the purposes of conducting machine learning and deep neural networks research, but the system is general enough to be applicable in a wide variety of other domains as well.
Torch is a scientific computing framework with wide support for machine learning algorithms that puts GPUs first. It is easy to use and efficient, thanks to an easy and fast scripting language, LuaJIT, and an underlying C/CUDA implementation.
Veles is a distributed platform for rapid Deep learning application development. Written on Python, uses OpenCL or CUDA, employs Flow-Based Programming, under Apache 2.0.