Difference between revisions of "Libraries & Frameworks"

From
Jump to: navigation, search
Line 25: Line 25:
 
* [http://en.wikipedia.org/wiki/RapidMiner  RapidMiner], an environment for machine learning and [[data mining]], now developed commercially.
 
* [http://en.wikipedia.org/wiki/RapidMiner  RapidMiner], an environment for machine learning and [[data mining]], now developed commercially.
 
* [http://en.wikipedia.org/wiki/Weka  Weka], a free implementation of many machine learning algorithms in Java.
 
* [http://en.wikipedia.org/wiki/Weka  Weka], a free implementation of many machine learning algorithms in Java.
 +
 +
==Deep learning software by name==
 +
{| class="wikitable sortable" style="text-align: center; font-size: 85%; width: auto; table-layout: fixed;"
 +
|-
 +
! style="width: 12em" | Software
 +
! Creator
 +
! Software license{{efn|name="license"|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}}
 +
! Open source
 +
! Platform
 +
! Written in
 +
! Interface
 +
! [[OpenMP]] support
 +
! [[OpenCL]] support
 +
! [[CUDA]] support
 +
!Parallel execution (multi node)
 +
! [[Automatic differentiation]]<ref>{{cite arXiv |author1=Atilim Gunes Baydin |author2=Barak A. Pearlmutter |author3=Alexey Andreyevich Radul |author4=Jeffrey Mark Siskind |eprint=1502.05767 |title=Automatic differentiation in machine learning: a survey |class=cs.LG |date=20 February 2015}}</ref>
 +
! Has pretrained models
 +
! [[Recurrent neural network|Recurrent net]]s
 +
! [[Convolutional neural network|Convolutional nets]]
 +
! [[Restricted Boltzmann machine|RBM]]/[[deep belief network|DBNs]]
 +
![[Metal (API)|Metal]] support
 +
|-
 +
|[https://roNNie.ai roNNie.ai]
 +
|Kevin Lok
 +
|[[MIT]]
 +
|{{Yes}}
 +
|Linux, macOS, Windows
 +
|Python
 +
|Python
 +
|
 +
|
 +
|{{Yes}}
 +
|
 +
|
 +
|{{Yes}}
 +
|{{Yes}}
 +
|{{Yes}}
 +
|
 +
|
 +
|-
 +
|[[BigDL]]
 +
|Jason Dai
 +
|[[Apache License|Apache 2.0]]
 +
|Yes
 +
|Apache Spark
 +
|Scala
 +
|Scala, Python
 +
|
 +
|
 +
| {{No}}
 +
|
 +
|
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|
 +
|-
 +
| [[Caffe (software)|Caffe]]
 +
| Berkeley Vision and Learning Center
 +
| {{Free|[[BSD licenses|BSD license]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]<ref>{{cite web|url=https://github.com/Microsoft/caffe|title=Microsoft/caffe|work=GitHub}}</ref>
 +
| [[C++]]
 +
| [[Python (programming language)|Python]], [[MATLAB]], [[C++]]
 +
| {{Yes}}
 +
| {{Depends|Under development<ref>{{cite web|url=https://github.com/BVLC/caffe/tree/opencl|title=OpenCL Caffe}}</ref>}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>{{cite web|url=http://caffe.berkeleyvision.org/model_zoo.html|title=Caffe Model Zoo}}</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{No}}
 +
| {{Dunno}}
 +
|
 +
|-
 +
| [[Deeplearning4j]]
 +
| Skymind engineering team; Deeplearning4j community; originally [[Adam Gibson (computer scientist)|Adam Gibson]]
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]], [[Android (operating system)|Android]] ([[Cross-platform]])
 +
| [[C++]], [[Java (programming language)|Java]]
 +
| [[Java (programming language)|Java]], [[Scala (programming language)|Scala]], [[Clojure (programming language)|Clojure]], [[Python (programming language)|Python]] ([[Keras]]), [[Kotlin (programming language)|Kotlin]]
 +
| {{Yes}}
 +
| {{Depends|On roadmap}}<ref>{{cite web|url=https://github.com/deeplearning4j/nd4j/issues/27|title=Support for Open CL · Issue #27 · deeplearning4j/nd4j|work=GitHub}}</ref>
 +
| {{Yes}}<ref>{{cite web|url=http://nd4j.org/gpu_native_backends.html|title=N-Dimensional Scientific Computing for Java|publisher=}}</ref><ref>{{cite web|url=https://deeplearning4j.org/compare-dl4j-tensorflow-pytorch|title=Comparing Top Deep Learning Frameworks|publisher=Deeplearning4j}}</ref>
 +
| {{Yes|Computational Graph}}
 +
| {{Yes}}<ref>{{cite web|url=http://deeplearning4j.org/model-zoo|title=Deeplearning4j Models|author1=Chris Nicholson|author2= Adam Gibson|publisher=}}</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>{{cite web|url=http://deeplearning4j.org/spark|title=Deeplearning4j on Spark|author=Deeplearning4j|publisher=Deeplearning4j}}</ref>
 +
|
 +
|-
 +
|[[Chainer]]
 +
|Preferred Networks
 +
| {{Free|[[MIT license]]}}
 +
| {{Yes}}
 +
|[[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
|
 +
|Python
 +
| {{No}}
 +
| {{No}}<ref>https://github.com/chainer/chainer/pull/2717</ref><ref>https://github.com/chainer/chainer/issues/99</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|
 +
|
 +
|-
 +
|Darknet
 +
|Joseph Redmon
 +
| {{Free|[[Public Domain]]}}
 +
| {{Yes}}
 +
| [[Cross-platform|Cross-Platform]]
 +
| [[C (programming language)|C]]
 +
| [[C (programming language)|C]], [[Python (programming language)|Python]]
 +
| {{Yes}}
 +
| {{No}}<ref>https://github.com/pjreddie/darknet/issues/127</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|-
 +
|[[Dlib]]
 +
|Davis King
 +
| {{Free|[[Boost Software License]]}}
 +
| {{Yes}}
 +
|[[Cross-platform|Cross-Platform]]
 +
|[[C++]]
 +
|[[C++]]
 +
| {{Yes}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|-
 +
|[[DataMelt]] (DMelt)
 +
| S.Chekanov
 +
| {{Free|[[Freemium]]}}
 +
| {{Yes}}
 +
|[[Cross-platform|Cross-Platform]]
 +
| [[Java (programming language)|Java]]
 +
| [[Java (programming language)|Java]]
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
|
 +
|-
 +
|DyNet
 +
|Carnegie Mellon University
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
|[[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
|
 +
|[[C++]], [[Python (programming language)|Python]]
 +
|
 +
| {{No}}<ref>https://github.com/clab/dynet/issues/405</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|-
 +
| Intel [[Data Analytics Acceleration Library]]
 +
| Intel
 +
| {{Free|[[Apache License 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] on [[Intel]] [[Central processing unit|CPU]]<ref name="intel-daal">[https://software.intel.com/intel-daal Intel® Data Analytics Acceleration Library (Intel® DAAL) | Intel® Software]</ref>
 +
| [[C++]], [[Python (programming language)|Python]], [[Java]]
 +
| [[C++]], [[Python (programming language)|Python]], [[Java]]<ref name="intel-daal"/>
 +
| {{Yes}}
 +
| {{No}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{No}}
 +
|
 +
| {{Yes}}
 +
|
 +
| {{Yes}}
 +
|
 +
|-
 +
| Intel [[Math Kernel Library]]
 +
| Intel
 +
| {{Proprietary}}
 +
| {{No}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] on [[Intel]] [[Central processing unit|CPU]]<ref>[https://software.intel.com/mkl Intel® Math Kernel Library (Intel® MKL) | Intel® Software]</ref>
 +
|
 +
| [[C (programming language)|C]]<ref>[https://software.intel.com/en-us/mkl-developer-reference-c-deep-neural-network-functions Deep Neural Network Functions]</ref>
 +
| {{Yes}}<ref>[https://software.intel.com/en-us/articles/intel-math-kernel-library-intel-mkl-using-intel-mkl-with-threaded-applications Using Intel® MKL with Threaded Applications | Intel® Software]</ref>
 +
| {{No}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{No}}
 +
| {{Yes}}<ref name="intel-benchmark">[https://software.intel.com/en-us/articles/intel-xeon-phi-delivers-competitive-performance-for-deep-learning-and-getting-better-fast Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast | Intel® Software]</ref>
 +
| {{Yes}}<ref name="intel-benchmark"/>
 +
|
 +
| {{No}}
 +
|
 +
|-
 +
| [[Keras]]
 +
| François Chollet
 +
| {{Free|[[MIT license]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
| [[Python (programming language)|Python]]
 +
| [[Python (programming language)|Python]], [[R (programming language)|R]]
 +
| {{Depends|Only if using Theano as backend}}
 +
| {{Depends|Under development for the Theano backend (and on roadmap for the TensorFlow backend)}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://keras.io/applications/</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>[https://github.com/fchollet/keras/issues/2436 Does Keras support using multiple GPUs? · Issue #2436 · fchollet/keras]</ref>
 +
|
 +
|-
 +
| [[MATLAB]] + Neural Network Toolbox
 +
| [[MathWorks]]
 +
| {{Proprietary}}
 +
| {{No}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
| [[C (programming language)|C]], [[C++]], [[Java (programming language)|Java]], [[MATLAB]]
 +
| [[MATLAB]]
 +
| {{No}}
 +
| {{No}}
 +
| {{Yes|Train with Parallel Computing Toolbox and generate CUDA code with GPU Coder}}<ref>{{cite web|title=GPU Coder - MATLAB & Simulink|url=https://www.mathworks.com/products/gpu-coder.html|website=MathWorks|accessdate=13 November 2017}}</ref>
 +
| {{No}}
 +
| {{Yes}}<ref name="NNT">{{cite web|title=Neural Network Toolbox - MATLAB|url=https://www.mathworks.com/products/neural-network.html|website=MathWorks|accessdate=13 November 2017}}</ref><ref>{{cite web|title=Deep Learning Models - MATLAB & Simulink|url=https://www.mathworks.com/solutions/deep-learning/models.html|website=MathWorks|accessdate=13 November 2017}}</ref>
 +
| {{Yes}}<ref name="NNT"/>
 +
| {{Yes}}<ref name="NNT"/>
 +
| {{Yes}}<ref name="NNT"/>
 +
| {{Yes|With Parallel Computing Toolbox}}<ref>{{cite web|title=Parallel Computing Toolbox - MATLAB|url=https://www.mathworks.com/products/parallel-computing.html|website=MathWorks|accessdate=13 November 2017}}</ref>
 +
|
 +
|-
 +
| [[Microsoft Cognitive Toolkit]]
 +
| [[Microsoft Research]]
 +
| {{Free|[[MIT license]]}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/blob/master/LICENSE.md|title=CNTK/LICENSE.md at master · Microsoft/CNTK · GitHub|work=GitHub}}</ref>
 +
| {{Yes}}
 +
| [[Microsoft Windows|Windows]], [[Linux]]<ref name="Setup CNTK on your machine">{{cite web|url=https://github.com/Microsoft/CNTK/wiki/Setup-CNTK-on-your-machine|title=Setup CNTK on your machine|work=GitHub}}</ref> ([[macOS]] via Docker on roadmap)
 +
| [[C++]]
 +
| [[Python (programming language)|Python (]][[Keras]]), [[C++]],  [[Command line]],<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/CNTK-usage-overview|title=CNTK usage overview|work=GitHub}}</ref> BrainScript<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/BrainScript-Network-Builder|title=BrainScript Network Builder|work=GitHub}}</ref> ([[.NET Framework|.NET]] on roadmap<ref>{{cite web|url=https://github.com/Microsoft/CNTK/issues/960|title=.NET Support · Issue #960 · Microsoft/CNTK|work=GitHub}}</ref>)
 +
| {{Yes}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/issues/59#issuecomment-178104505|title=How to train a model using multiple machines? · Issue #59 · Microsoft/CNTK|work=GitHub}}</ref>
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://github.com/Microsoft/CNTK/issues/140#issuecomment-186466820</ref>
 +
| {{Yes}}<ref name="cntk.ai">{{cite web|url=http://www.cntk.ai/|title=CNTK - Computational Network Toolkit|publisher=Microsoft Corporation}}</ref>
 +
| {{Yes}}<ref name="cntk.ai" />
 +
| {{Yes}}
 +
| {{Yes}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/Multiple-GPUs-and-machines|title=Multiple GPUs and machines|publisher=Microsoft Corporation}}</ref>
 +
|
 +
|-
 +
| Apache [[MXNet]]
 +
| Apache Software Foundation
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>{{cite web|url=https://github.com/dmlc/mxnet/releases|title=Releases · dmlc/mxnet|work=Github}}</ref><ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/build.html#building-on-windows|title=Installation Guide — mxnet documentation|work=Readthdocs}}</ref> [[Amazon Web Services|AWS]], [[Android (operating system)|Android]],<ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/smart_device.html|title=MXNet Smart Device|work=ReadTheDocs}}</ref> [[iOS]], [[File manager|JavaScript]]<ref>{{cite web|url=https://github.com/dmlc/mxnet.js|title=MXNet.js|work=Github}}</ref>
 +
| Small [[C++]] core library
 +
| [[C++]], [[Python (programming language)|Python]], [[Julia (programming language)|Julia]], [[Matlab]], [[JavaScript]], [[Go (programming language)|Go]], [[R (programming language)|R]], [[Scala (programming language)|Scala]], [[Perl (programming language)|Perl]]
 +
| {{Yes}}
 +
| {{Depends|On roadmap}}<ref>{{cite web|url=https://github.com/dmlc/mxnet/issues/621|title=Support for other Device Types, OpenCL AMD GPU · Issue #621 · dmlc/mxnet|work=GitHub}}</ref>
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://mxnet.readthedocs.io/</ref>
 +
| {{Yes}}<ref>{{cite web|url=https://github.com/dmlc/mxnet-model-gallery|title=Model Gallery|work=GitHub}}</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/multi_devices.html|title=Run MXNet on Multiple CPU/GPUs with Data Parallel|work=GitHub}}</ref>
 +
|
 +
|-
 +
| [[Neural Designer]]
 +
| Artelnics
 +
| {{Proprietary}}
 +
| {{No}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
| [[C++]]
 +
| [[Graphical user interface]]
 +
| {{Yes}}
 +
| {{No}}
 +
| {{No}}
 +
| {{Dunno}}
 +
| {{Dunno}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{Dunno}}
 +
|
 +
|-
 +
| [[OpenNN]]
 +
| Artelnics
 +
| {{Free|[[GNU Lesser General Public License|GNU LGPL]]}}
 +
| {{Yes}}
 +
| [[Cross-platform]]
 +
| [[C++]]
 +
| [[C++]]
 +
| {{Yes}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Dunno}}
 +
| {{Dunno}}
 +
| {{No}}
 +
| {{No}}
 +
| {{No}}
 +
| {{Dunno}}
 +
|
 +
|-
 +
|[https://github.com/plaidml/plaidml PlaidML]
 +
|[http://vertex.ai Vertex.AI]
 +
|[[AGPL 3|AGPL3]]
 +
| {{Yes}}
 +
|[[Linux]], [[macOS]], [[Windows]]
 +
|[[C++]], [[Python (programming language)|Python]]
 +
|Keras, Python, C++, C
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Dunno}}
 +
| {{Yes}}
 +
|-
 +
| [[PyTorch]]
 +
| Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan
 +
| {{Free|[[BSD licenses|BSD license]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Windows]]
 +
| [[Python (programming language)|Python]], [[C (programming language)|C]], [[CUDA]]
 +
| [[Python (programming language)|Python]]
 +
| {{Yes}}
 +
| {{Depends|Via separately maintained package}}<ref>https://github.com/hughperkins/pytorch-coriander</ref><ref>https://github.com/pytorch/pytorch/issues/488</ref><ref>https://github.com/pytorch/pytorch/issues/488#issuecomment-273626736</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
| {{Yes}}
 +
|
 +
|-
 +
| [[Apache SINGA]]
 +
| [[Apache Incubator]]
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]
 +
| [[C++]]
 +
| [[Python (programming language)|Python]], [[C++]], [[Java (programming language)|Java]]
 +
| {{No}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Dunno}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|-
 +
| [[TensorFlow]]
 +
| [[Google Brain]] team
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> [[Android (operating system)|Android]]
 +
| [[C++]], [[Python (programming language)|Python]], [[CUDA]]
 +
| [[Python (programming language)|Python]] ([[Keras]]), [[C (programming language)|C]]/[[C++]], [[Java (programming language)|Java]], [[Go (programming language)|Go]], [[R (programming language)|R]]<ref>{{Citation|last=interface)|first=JJ Allaire (R|title=tensorflow: R Interface to TensorFlow|date=2017-05-26|url=https://cran.r-project.org/web/packages/tensorflow/index.html|last2=RStudio|last3=Eddelbuettel|last4=Golding|last5=Tang|last6=Tutorials)|first3=Dirk|first4=Nick|first5=Yuan|first6=Google Inc (Examples and|accessdate=2017-06-14}}</ref>, [[Julia (programming language)|Julia]]
 +
| {{No}}
 +
| {{Depends|On roadmap}}<ref name="tensorflow-roadmap">{{cite web|url=https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/about/roadmap.md|title=tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub | work=GitHub | date=January 23, 2017 | access-date=May 21, 2017}}</ref> but already with [[SYCL]]<ref name="GitHub">{{cite web|url=https://github.com/tensorflow/tensorflow/issues/22|title=OpenCL support · Issue #22 · tensorflow/tensorflow|work=GitHub}}</ref> support
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://www.tensorflow.org/</ref>
 +
| {{Yes}}<ref>https://github.com/tensorflow/models</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|-
 +
| [[TensorLayer]]
 +
| Hao Dong
 +
| {{Free|[[Apache 2.0]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> [[Android (operating system)|Android]]
 +
| [[C++]], [[Python (programming language)|Python]],
 +
| [[Python (programming language)|Python]]
 +
| {{No}}
 +
| {{Depends|On roadmap}}<ref name="tensorflow-roadmap">{{cite web|url=https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/about/roadmap.md|title=tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub | work=GitHub | date=January 23, 2017 | access-date=May 21, 2017}}</ref> but already with [[SYCL]]<ref name="GitHub">{{cite web|url=https://github.com/tensorflow/tensorflow/issues/22|title=OpenCL support · Issue #22 · tensorflow/tensorflow|work=GitHub}}</ref> support
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://www.tensorflow.org/</ref>
 +
| {{Yes}}<ref>https://github.com/tensorflow/models</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|-
 +
| [[Theano (software)|Theano]]
 +
| [[Université de Montréal]]
 +
| {{Free|[[BSD licenses|BSD license]]}}
 +
| {{Yes}}
 +
| [[Cross-platform]]
 +
| [[Python (programming language)|Python]]
 +
| [[Python (programming language)|Python]] ([[Keras]])
 +
| {{Yes}}
 +
| {{Depends|Under development<ref>{{cite web|url=http://deeplearning.net/software/theano/tutorial/using_gpu.html|title=Using the GPU — Theano 0.8.2 documentation|publisher=}}</ref>}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>http://deeplearning.net/software/theano/library/gradient.html</ref><ref>https://groups.google.com/d/msg/theano-users/mln5g2IuBSU/gespG36Lf_QJ</ref>
 +
| {{Depends|Through Lasagne's model zoo<ref>{{cite web|url=https://github.com/Lasagne/Recipes/tree/master/modelzoo|title=Recipes/modelzoo at master · Lasagne/Recipes · GitHub|work=GitHub}}</ref>}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>[http://deeplearning.net/software/theano/tutorial/using_multi_gpu.html Using multiple GPUs — Theano 0.8.2 documentation]</ref>
 +
|
 +
|-
 +
| [[Torch (machine learning)|Torch]]
 +
| Ronan Collobert, Koray Kavukcuoglu, Clement Farabet
 +
| {{Free|[[BSD licenses|BSD license]]}}
 +
| {{Yes}}
 +
| [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://github.com/torch/torch7/wiki/Windows</ref> [[Android (operating system)|Android]],<ref>{{cite web|url=https://github.com/soumith/torch-android|title=GitHub - soumith/torch-android: Torch-7 for Android|work=GitHub}}</ref> [[iOS]]
 +
| [[C (programming language)|C]], [[Lua (programming language)|Lua]]
 +
| [[Lua (programming language)|Lua]], [[Lua (programming language)|LuaJIT]],<ref>{{cite web|url=http://ronan.collobert.com/pub/matos/2011_torch7_nipsw.pdf|title=Torch7: A Matlab-like Environment for Machine Learning}}</ref> [[C (programming language)|C]], utility library for [[C++]]/[[OpenCL]]<ref name=jtorch>{{cite web|url=https://github.com/jonathantompson/jtorch|title=GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library|work=GitHub}}</ref>
 +
| {{Yes}}
 +
| {{Depends|Third party implementations<ref>{{cite web|url=https://github.com/torch/torch7/wiki/Cheatsheet#opencl|title=Cheatsheet|work=GitHub}}</ref><ref>{{cite web|url=https://github.com/hughperkins/distro-cl|title=cltorch|work=GitHub}}</ref>}}
 +
| {{Yes}}<ref>{{cite web|url=https://github.com/torch/cutorch|title=Torch CUDA backend|work=GitHub}}</ref><ref>{{cite web|url=https://github.com/torch/cunn|title=Torch CUDA backend for nn|work=GitHub}}</ref>
 +
| {{Yes|Through [[Twitter]]'s Autograd<ref>https://github.com/twitter/torch-autograd</ref>}}
 +
| {{Yes}}<ref>{{cite web|url=https://github.com/torch/torch7/wiki/ModelZoo|title=ModelZoo|work=GitHub}}</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>https://github.com/torch/torch7/wiki/Cheatsheet#distributed-computing--parallel-processing</ref>
 +
|
 +
|-
 +
| [[Wolfram Mathematica]]
 +
| [[Wolfram Research]]
 +
| {{Proprietary}}
 +
| {{No}}
 +
| [[Microsoft Windows|Windows]], [[macOS]], [[Linux]], [[Cloud computing]]
 +
| [[C++]], [[Wolfram Language]], [[CUDA]]
 +
| [[Wolfram Language]]
 +
| {{Yes}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}<ref>http://resources.wolframcloud.com/NeuralNetRepository</ref>
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Depends|Under Development}}
 +
|
 +
|-
 +
|[https://ver.ai VerAI]
 +
|VerAI
 +
| {{Proprietary}}
 +
| {{No}}
 +
|[[Linux]], [[Web application|Web-based]]
 +
|[[C++]],[[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Angular (application platform)|Angular]]
 +
|[[Graphical user interface]], [[Command-line interface|cli]]
 +
| {{No}}
 +
| {{No}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
| {{Yes}}
 +
|
 +
|}

Revision as of 14:48, 15 July 2018

Libraries

GUI frameworks

Deep learning software by name

Software Creator Software licenseTemplate:Efn Open source Platform Written in Interface OpenMP support OpenCL support CUDA support Parallel execution (multi node) Automatic differentiation<ref>Template:Cite arXiv</ref> Has pretrained models Recurrent nets Convolutional nets RBM/DBNs Metal support
roNNie.ai Kevin Lok MIT Template:Yes Linux, macOS, Windows Python Python Template:Yes Template:Yes Template:Yes Template:Yes
BigDL Jason Dai Apache 2.0 Yes Apache Spark Scala Scala, Python Template:No Template:Yes Template:Yes Template:Yes
Caffe Berkeley Vision and Learning Center Template:Free Template:Yes Linux, macOS, Windows<ref>Template:Cite web</ref> C++ Python, MATLAB, C++ Template:Yes Template:Depends Template:Yes Template:Yes Template:Yes<ref>Template:Cite web</ref> Template:Yes Template:Yes Template:No Template:Dunno
Deeplearning4j Skymind engineering team; Deeplearning4j community; originally Adam Gibson Template:Free Template:Yes Linux, macOS, Windows, Android (Cross-platform) C++, Java Java, Scala, Clojure, Python (Keras), Kotlin Template:Yes Template:Depends<ref>Template:Cite web</ref> Template:Yes<ref>Template:Cite web</ref><ref>Template:Cite web</ref> Template:Yes Template:Yes<ref>Template:Cite web</ref> Template:Yes Template:Yes Template:Yes Template:Yes<ref>Template:Cite web</ref>
Chainer Preferred Networks Template:Free Template:Yes Linux, macOS, Windows Python Template:No Template:No<ref>https://github.com/chainer/chainer/pull/2717</ref><ref>https://github.com/chainer/chainer/issues/99</ref> Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
Darknet Joseph Redmon Template:Free Template:Yes Cross-Platform C C, Python Template:Yes Template:No<ref>https://github.com/pjreddie/darknet/issues/127</ref> Template:Yes Template:Yes
Dlib Davis King Template:Free Template:Yes Cross-Platform C++ C++ Template:Yes Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
DataMelt (DMelt) S.Chekanov Template:Free Template:Yes Cross-Platform Java Java Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No Template:No
DyNet Carnegie Mellon University Template:Free Template:Yes Linux, macOS, Windows C++, Python Template:No<ref>https://github.com/clab/dynet/issues/405</ref> Template:Yes Template:Yes Template:Yes
Intel Data Analytics Acceleration Library Intel Template:Free Template:Yes Linux, macOS, Windows on Intel CPU<ref name="intel-daal">Intel® Data Analytics Acceleration Library (Intel® DAAL) | Intel® Software</ref> C++, Python, Java C++, Python, Java<ref name="intel-daal"/> Template:Yes Template:No Template:No Template:Yes Template:No Template:Yes Template:Yes
Intel Math Kernel Library Intel Template:Proprietary Template:No Linux, macOS, Windows on Intel CPU<ref>Intel® Math Kernel Library (Intel® MKL) | Intel® Software</ref> C<ref>Deep Neural Network Functions</ref> Template:Yes<ref>Using Intel® MKL with Threaded Applications | Intel® Software</ref> Template:No Template:No Template:Yes Template:No Template:Yes<ref name="intel-benchmark">Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast | Intel® Software</ref> Template:Yes<ref name="intel-benchmark"/> Template:No
Keras François Chollet Template:Free Template:Yes Linux, macOS, Windows Python Python, R Template:Depends Template:Depends Template:Yes Template:Yes Template:Yes<ref>https://keras.io/applications/</ref> Template:Yes Template:Yes Template:Yes Template:Yes<ref>Does Keras support using multiple GPUs? · Issue #2436 · fchollet/keras</ref>
MATLAB + Neural Network Toolbox MathWorks Template:Proprietary Template:No Linux, macOS, Windows C, C++, Java, MATLAB MATLAB Template:No Template:No Template:Yes<ref>Template:Cite web</ref> Template:No Template:Yes<ref name="NNT">Template:Cite web</ref><ref>Template:Cite web</ref> Template:Yes<ref name="NNT"/> Template:Yes<ref name="NNT"/> Template:Yes<ref name="NNT"/> Template:Yes<ref>Template:Cite web</ref>
Microsoft Cognitive Toolkit Microsoft Research Template:Free<ref>Template:Cite web</ref> Template:Yes Windows, Linux<ref name="Setup CNTK on your machine">Template:Cite web</ref> (macOS via Docker on roadmap) C++ Python (Keras), C++, Command line,<ref>Template:Cite web</ref> BrainScript<ref>Template:Cite web</ref> (.NET on roadmap<ref>Template:Cite web</ref>) Template:Yes<ref>Template:Cite web</ref> Template:No Template:Yes Template:Yes Template:Yes<ref>https://github.com/Microsoft/CNTK/issues/140#issuecomment-186466820</ref> Template:Yes<ref name="cntk.ai">Template:Cite web</ref> Template:Yes<ref name="cntk.ai" /> Template:Yes Template:Yes<ref>Template:Cite web</ref>
Apache MXNet Apache Software Foundation Template:Free Template:Yes Linux, macOS, Windows,<ref>Template:Cite web</ref><ref>Template:Cite web</ref> AWS, Android,<ref>Template:Cite web</ref> iOS, JavaScript<ref>Template:Cite web</ref> Small C++ core library C++, Python, Julia, Matlab, JavaScript, Go, R, Scala, Perl Template:Yes Template:Depends<ref>Template:Cite web</ref> Template:Yes Template:Yes<ref>https://mxnet.readthedocs.io/</ref> Template:Yes<ref>Template:Cite web</ref> Template:Yes Template:Yes Template:Yes Template:Yes<ref>Template:Cite web</ref>
Neural Designer Artelnics Template:Proprietary Template:No Linux, macOS, Windows C++ Graphical user interface Template:Yes Template:No Template:No Template:Dunno Template:Dunno Template:No Template:No Template:No Template:Dunno
OpenNN Artelnics Template:Free Template:Yes Cross-platform C++ C++ Template:Yes Template:No Template:Yes Template:Dunno Template:Dunno Template:No Template:No Template:No Template:Dunno
PlaidML Vertex.AI AGPL3 Template:Yes Linux, macOS, Windows C++, Python Keras, Python, C++, C Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Dunno Template:Yes
PyTorch Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan Template:Free Template:Yes Linux, macOS, Windows Python, C, CUDA Python Template:Yes Template:Depends<ref>https://github.com/hughperkins/pytorch-coriander</ref><ref>https://github.com/pytorch/pytorch/issues/488</ref><ref>https://github.com/pytorch/pytorch/issues/488#issuecomment-273626736</ref> Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
Apache SINGA Apache Incubator Template:Free Template:Yes Linux, macOS, Windows C++ Python, C++, Java Template:No Template:No Template:Yes Template:Dunno Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
TensorFlow Google Brain team Template:Free Template:Yes Linux, macOS, Windows,<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> Android C++, Python, CUDA Python (Keras), C/C++, Java, Go, R<ref>Template:Citation</ref>, Julia Template:No Template:Depends<ref name="tensorflow-roadmap">Template:Cite web</ref> but already with SYCL<ref name="GitHub">Template:Cite web</ref> support Template:Yes Template:Yes<ref>https://www.tensorflow.org/</ref> Template:Yes<ref>https://github.com/tensorflow/models</ref> Template:Yes Template:Yes Template:Yes Template:Yes
TensorLayer Hao Dong Template:Free Template:Yes Linux, macOS, Windows,<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> Android C++, Python, Python Template:No Template:Depends<ref name="tensorflow-roadmap">Template:Cite web</ref> but already with SYCL<ref name="GitHub">Template:Cite web</ref> support Template:Yes Template:Yes<ref>https://www.tensorflow.org/</ref> Template:Yes<ref>https://github.com/tensorflow/models</ref> Template:Yes Template:Yes Template:Yes Template:Yes
Theano Université de Montréal Template:Free Template:Yes Cross-platform Python Python (Keras) Template:Yes Template:Depends Template:Yes Template:Yes<ref>http://deeplearning.net/software/theano/library/gradient.html</ref><ref>https://groups.google.com/d/msg/theano-users/mln5g2IuBSU/gespG36Lf_QJ</ref> Template:Depends Template:Yes Template:Yes Template:Yes Template:Yes<ref>Using multiple GPUs — Theano 0.8.2 documentation</ref>
Torch Ronan Collobert, Koray Kavukcuoglu, Clement Farabet Template:Free Template:Yes Linux, macOS, Windows,<ref>https://github.com/torch/torch7/wiki/Windows</ref> Android,<ref>Template:Cite web</ref> iOS C, Lua Lua, LuaJIT,<ref>Template:Cite web</ref> C, utility library for C++/OpenCL<ref name=jtorch>Template:Cite web</ref> Template:Yes Template:Depends Template:Yes<ref>Template:Cite web</ref><ref>Template:Cite web</ref> Template:Yes Template:Yes<ref>Template:Cite web</ref> Template:Yes Template:Yes Template:Yes Template:Yes<ref>https://github.com/torch/torch7/wiki/Cheatsheet#distributed-computing--parallel-processing</ref>
Wolfram Mathematica Wolfram Research Template:Proprietary Template:No Windows, macOS, Linux, Cloud computing C++, Wolfram Language, CUDA Wolfram Language Template:Yes Template:No Template:Yes Template:Yes Template:Yes<ref>http://resources.wolframcloud.com/NeuralNetRepository</ref> Template:Yes Template:Yes Template:Yes Template:Depends
VerAI VerAI Template:Proprietary Template:No Linux, Web-based C++,Python, Go, Angular Graphical user interface, cli Template:No Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes