Comparison of deep learning software
The following table compares some of the most popular software frameworks, libraries and computer programs for deep learning.
Deep learning software by name
Software | Creator | Software license[lower-alpha 1] | Open source | Platform | Written in | Interface | OpenMP support | OpenCL support | CUDA support | Automatic differentiation[1] | Has pretrained models | Recurrent nets | Convolutional nets | RBM/DBNs | Parallel execution (multi node) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Apache SINGA | Apache Incubator | Apache 2.0 | Yes | Linux, Mac OS X, Windows | C++ | Python, C++, Java | No | Yes | Yes | ? | Yes | Yes | Yes | Yes | Yes |
Caffe | Berkeley Vision and Learning Center | BSD license | Yes | Linux, Mac OS X, Windows[2] | C++ | Python, MATLAB | Yes | Under development[3] | Yes | Yes | Yes[4] | Yes | Yes | No | ? |
Deeplearning4j | Skymind engineering team; Deeplearning4j community; originally Adam Gibson | Apache 2.0 | Yes | Linux, Mac OS X, Windows, Android (Cross-platform) | java | Java, Scala, Clojure, Python (Keras) | Yes | On roadmap[5] | Yes[6] | Computational Graph | Yes[7] | Yes | Yes | Yes | Yes[8] |
Dlib | Davis King | Boost Software License | Yes | Cross-Platform | C++ | C++ | Yes | No | Yes | Yes | Yes | No | Yes | Yes | Yes |
Keras | François Chollet | MIT license | Yes | Linux, Mac OS X, Windows | Python | Python, R | Only if using Theano as backend | Under development for the Theano backend (and on roadmap for the TensorFlow backend) | Yes | Yes | Yes[9] | Yes | Yes | Yes | Yes[10] |
MatConvNet | Andrea Vedaldi,Karel Lenc | BSD license | Yes | Windows, Linux[11] (OSX via Docker on roadmap) | C++ | MATLAB, C++, | No | No | Yes | Yes | Yes | Yes | Yes | No | Yes |
Microsoft Cognitive Toolkit | Microsoft Research | MIT license[12] | Yes | Windows, Linux[13] (OSX via Docker on roadmap) | C++ | Python, C++, Command line,[14] BrainScript[15] (.NET on roadmap[16]) | Yes[17] | No | Yes | Yes | Yes[18] | Yes[19] | Yes[19] | No[20] | Yes[21] |
MXNet | Distributed (Deep) Machine Learning Community | Apache 2.0 | Yes | Linux, Mac OS X, Windows,[22][23] AWS, Android,[24] iOS, JavaScript[25] | Small C++ core library | C++, Python, Julia, Matlab, JavaScript, Go, R, Scala, Perl | Yes | On roadmap[26] | Yes | Yes[27] | Yes[28] | Yes | Yes | Yes | Yes[29] |
Neural Designer | Artelnics | Proprietary | No | Linux, Mac OS X, Windows | C++ | Graphical user interface | Yes | No | No | ? | ? | No | No | No | ? |
OpenNN | Artelnics | GNU LGPL | Yes | Cross-platform | C++ | C++ | Yes | No | No | ? | ? | No | No | No | ? |
TensorFlow | Google Brain team | Apache 2.0 | Yes | Linux, Mac OS X, Windows[30] | C++, Python | Python (Keras), C/C++, Java, Go, R[31] | No | On roadmap[32][33] | Yes | Yes[34] | Yes[35] | Yes | Yes | Yes | Yes |
Theano | Université de Montréal | BSD license | Yes | Cross-platform | Python | Python | Yes | Under development[36] | Yes | Yes[37][38] | Through Lasagne's model zoo[39] | Yes | Yes | Yes | Yes[40] |
Torch | Ronan Collobert, Koray Kavukcuoglu, Clement Farabet | BSD license | Yes | Linux, Mac OS X, Windows,[41] Android,[42] iOS | C, Lua | Lua, LuaJIT,[43] C, utility library for C++/OpenCL[44] | Yes | Third party implementations[45][46] | Yes[47][48] | Through Twitter's Autograd[49] | Yes[50] | Yes | Yes | Yes | Yes[51] |
Wolfram Mathematica | Wolfram Research | Proprietary | No | Windows, Mac OS X, Linux, Cloud computing | C++ | Wolfram Language | No | No | Yes | Yes | Yes[52] | Yes | Yes | Yes | Yes |
- ↑ Licenses here are a summary, and are not taken to be complete statements of the licenses. Some libraries may use other libraries internally under different licenses
Related software
- Neural Engineering Object (NENGO) – A graphical and scripting software for simulating large-scale neural systems
- Numenta Platform for Intelligent Computing – Numenta's open source implementation of their hierarchical temporal memory model
See also
- Comparison of datasets in machine learning
- Comparison of numerical analysis software
- Comparison of statistical packages
- Deep learning#Software libraries
- List of datasets for machine learning research
- List of numerical analysis software
References
- ↑ Atilim Gunes Baydin; Barak A. Pearlmutter; Alexey Andreyevich Radul; Jeffrey Mark Siskind (20 February 2015). "Automatic differentiation in machine learning: a survey". arXiv:1502.05767 [cs.LG].
- ↑ "Microsoft/caffe". GitHub.
- ↑ "OpenCL Caffe".
- ↑ "Caffe Model Zoo".
- ↑ "Support for Open CL · Issue #27 · deeplearning4j/nd4j". GitHub.
- ↑ "N-Dimensional Scientific Computing for Java".
- ↑ Chris Nicholson; Adam Gibson. "Deeplearning4j Models".
- ↑ Deeplearning4j. "Deeplearning4j on Spark". Deeplearning4j.
- ↑ https://keras.io/applications/
- ↑ Does Keras support using multiple GPUs? · Issue #2436 · fchollet/keras
- ↑ "Setup CNTK on your machine". GitHub.
- ↑ "CNTK/LICENSE.md at master · Microsoft/CNTK · GitHub". GitHub.
- ↑ "Setup CNTK on your machine". GitHub.
- ↑ "CNTK usage overview". GitHub.
- ↑ "BrainScript Network Builder". GitHub.
- ↑ ".NET Support · Issue #960 · Microsoft/CNTK". GitHub.
- ↑ "How to train a model using multiple machines? · Issue #59 · Microsoft/CNTK". GitHub.
- ↑ https://github.com/Microsoft/CNTK/issues/140#issuecomment-186466820
- 1 2 "CNTK - Computational Network Toolkit". Microsoft Corporation.
- ↑ url=https://github.com/Microsoft/CNTK/issues/534
- ↑ "Multiple GPUs and machines". Microsoft Corporation.
- ↑ "Releases · dmlc/mxnet". Github.
- ↑ "Installation Guide — mxnet documentation". Readthdocs.
- ↑ "MXNet Smart Device". ReadTheDocs.
- ↑ "MXNet.js". Github.
- ↑ "Support for other Device Types, OpenCL AMD GPU · Issue #621 · dmlc/mxnet". GitHub.
- ↑ http://mxnet.readthedocs.io/
- ↑ "Model Gallery". GitHub.
- ↑ "Run MXNet on Multiple CPU/GPUs with Data Parallel". GitHub.
- ↑ https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html
- ↑ interface), JJ Allaire (R; RStudio; Eddelbuettel, Dirk; Golding, Nick; Tang, Yuan; Tutorials), Google Inc (Examples and (2017-05-26), tensorflow: R Interface to TensorFlow, retrieved 2017-06-14
- ↑ "tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub". GitHub. January 23, 2017. Retrieved May 21, 2017.
- ↑ "OpenCL support · Issue #22 · tensorflow/tensorflow". GitHub.
- ↑ https://www.tensorflow.org/
- ↑ https://github.com/tensorflow/models
- ↑ "Using the GPU — Theano 0.8.2 documentation".
- ↑ http://deeplearning.net/software/theano/library/gradient.html
- ↑ https://groups.google.com/d/msg/theano-users/mln5g2IuBSU/gespG36Lf_QJ
- ↑ "Recipes/modelzoo at master · Lasagne/Recipes · GitHub". GitHub.
- ↑ Using multiple GPUs — Theano 0.8.2 documentation
- ↑ https://github.com/torch/torch7/wiki/Windows
- ↑ "GitHub - soumith/torch-android: Torch-7 for Android". GitHub.
- ↑ "Torch7: A Matlab-like Environment for Machine Learning" (PDF).
- ↑ "GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library". GitHub.
- ↑ "Cheatsheet". GitHub.
- ↑ "cltorch". GitHub.
- ↑ "Torch CUDA backend". GitHub.
- ↑ "Torch CUDA backend for nn". GitHub.
- ↑ https://github.com/twitter/torch-autograd
- ↑ "ModelZoo". GitHub.
- ↑ https://github.com/torch/torch7/wiki/Cheatsheet#distributed-computing--parallel-processing
- ↑ http://blog.stephenwolfram.com/2017/03/the-rd-pipeline-continues-launching-version-11-1/
This article is issued from
Wikipedia.
The text is licensed under Creative Commons - Attribution - Sharealike.
Additional terms may apply for the media files.