Software |
Creator |
Initial release |
Software license[a] |
Platform |
Written in |
Interface |
OpenMP support |
OpenCL support |
CUDA support |
Automatic differentiation[2] |
Has pretrained models |
BigDL |
Jason Dai (Intel) |
2016 |
Apache 2.0 |
Yes |
Apache Spark |
Scala |
Scala, Python |
|
|
No |
No |
|
Yes |
Yes |
Yes |
|
|
Yes |
Caffe |
Berkeley Vision and Learning Center |
2013 |
BSD |
Yes |
Linux, macOS, Windows[3] |
C++ |
Python, MATLAB, C++ |
Yes |
Under development[4] |
Yes |
No |
Yes |
Yes[5] |
Yes |
Yes |
No |
? |
No[6] |
Chainer |
Preferred Networks |
2015 |
BSD |
Yes |
Linux, macOS |
Python |
Python |
No |
No |
Yes |
No |
Yes |
Yes |
Yes |
Yes |
No |
Yes |
No[7] |
Deeplearning4j |
Skymind engineering team; Deeplearning4j community; originally Adam Gibson |
2014 |
Apache 2.0 |
Yes |
Linux, macOS, Windows, Android (Cross-platform) |
C++, Java |
Java, Scala, Clojure, Python (Keras), Kotlin |
Yes |
No[8] |
Yes[9][10] |
No |
Computational Graph |
Yes[11] |
Yes |
Yes |
Yes |
Yes[12] |
Yes |
Dlib |
Davis King |
2002 |
Boost Software License |
Yes |
Cross-platform |
C++ |
C++, Python |
Yes |
No |
Yes |
No |
Yes |
Yes |
No |
Yes |
Yes |
Yes |
Yes |
Flux |
Mike Innes |
2017 |
MIT license |
Yes |
Linux, MacOS, Windows (Cross-platform) |
Julia |
Julia |
|
|
Yes |
No |
Yes |
Yes[13] |
Yes |
Yes |
No |
Yes |
Yes |
Intel Data Analytics Acceleration Library |
Intel |
2015 |
Apache 2.0 |
Yes |
Linux, macOS, Windows on Intel CPU[14] |
C++, Python, Java |
C++, Python, Java[14] |
Yes |
No |
No |
No |
Yes |
No |
|
Yes |
|
Yes |
Yes |
Intel Math Kernel Library 2017 [15] and later |
Intel |
2017 |
Proprietary |
No |
Linux, macOS, Windows on Intel CPU[16] |
C/C++, DPC++, Fortran |
C[17] |
Yes[18] |
No |
No |
No |
Yes |
No |
Yes[19] |
Yes[19] |
|
No |
Yes |
Google JAX |
Google |
2018 |
Apache 2.0 |
Yes |
Linux, macOS, Windows |
Python |
Python |
|
|
Only on Linux |
No |
Yes |
No |
|
|
|
Yes |
Yes |
Keras |
François Chollet |
2015 |
MIT license |
Yes |
Linux, macOS, Windows |
Python |
Python, R |
Only if using Theano as backend |
Can use Theano, Tensorflow or PlaidML as backends |
Yes |
No |
Yes |
Yes[20] |
Yes |
Yes |
No[21] |
Yes[22] |
Yes |
MATLAB + Deep Learning Toolbox (formally Neural Network Toolbox) |
MathWorks |
1992 |
Proprietary |
No |
Linux, macOS, Windows |
C, C++, Java, MATLAB |
MATLAB |
No |
No |
Train with Parallel Computing Toolbox and generate CUDA code with GPU Coder[23] |
No |
Yes[24] |
Yes[25][26] |
Yes[25] |
Yes[25] |
Yes |
With Parallel Computing Toolbox[27] |
Yes |
Microsoft Cognitive Toolkit (CNTK) |
Microsoft Research |
2016 |
MIT license[28] |
Yes |
Windows, Linux[29] (macOS via Docker on roadmap) |
C++ |
Python (Keras), C++, Command line,[30] BrainScript[31] (.NET on roadmap[32]) |
Yes[33] |
No |
Yes |
No |
Yes |
Yes[34] |
Yes[35] |
Yes[35] |
No[36] |
Yes[37] |
No[38] |
MindSpore |
Huawei |
2020 |
Apache 2.0 |
Yes |
Linux, Windows, macOS, EulerOS, openEuler, OpenHarmony, Oniro OS, HarmonyOS, Android |
C++, Rust, Julia, Python, ArkTS, Cangjie, Java (Lite) |
|
|
|
|
|
|
|
|
|
|
|
|
ML.NET |
Microsoft |
2018 |
MIT license |
Yes |
Windows, Linux, macOS |
C#, C++ |
C#, F# |
|
|
|
|
|
|
|
|
|
|
Yes |
Apache MXNet |
Apache Software Foundation |
2015 |
Apache 2.0 |
Yes |
Linux, macOS, Windows,[39][40] AWS, Android,[41] iOS, JavaScript[42] |
Small C++ core library |
C++, Python, Julia, MATLAB, JavaScript, Go, R, Scala, Perl, Clojure |
Yes |
No |
Yes |
No |
Yes[43] |
Yes[44] |
Yes |
Yes |
Yes |
Yes[45] |
No |
Neural Designer |
Artelnics |
2014 |
Proprietary |
No |
Linux, macOS, Windows |
C++ |
Graphical user interface |
Yes |
No |
Yes |
No |
Analytical differentiation |
No |
No |
No |
No |
Yes |
Yes |
OpenNN |
Artelnics |
2003 |
GNU LGPL |
Yes |
Cross-platform |
C++ |
C++ |
Yes |
No |
Yes |
No |
? |
Yes[46] |
No |
No |
No |
? |
Yes |
PlaidML |
Vertex.AI, Intel |
2017 |
Apache 2.0 |
Yes |
Linux, macOS, Windows |
Python, C++, OpenCL |
Python, C++ |
? |
Some OpenCL ICDs are not recognized |
No |
No |
Yes |
Yes |
Yes |
Yes |
|
Yes |
Yes |
PyTorch |
Meta AI |
2016 |
BSD |
Yes |
Linux, macOS, Windows, Android[47] |
Python, C, C++, CUDA |
Python, C++, Julia, R[48] |
Yes |
Via separately maintained package[49][50][51] |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes[52] |
Yes |
Yes |
Apache SINGA |
Apache Software Foundation |
2015 |
Apache 2.0 |
Yes |
Linux, macOS, Windows |
C++ |
Python, C++, Java |
No |
Supported in V1.0 |
Yes |
No |
? |
Yes |
Yes |
Yes |
Yes |
Yes |
Yes |
TensorFlow |
Google Brain |
2015 |
Apache 2.0 |
Yes |
Linux, macOS, Windows,[53][54] Android |
C++, Python, CUDA |
Python (Keras), C/C++, Java, Go, JavaScript, R,[55] Julia, Swift |
No |
On roadmap[56] but already with SYCL[57] support |
Yes |
Yes |
Yes[58] |
Yes[59] |
Yes |
Yes |
Yes |
Yes |
Yes |
Theano |
Université de Montréal |
2007 |
BSD |
Yes |
Cross-platform |
Python |
Python (Keras) |
Yes |
Under development[60] |
Yes |
No |
Yes[61][62] |
Through Lasagne's model zoo[63] |
Yes |
Yes |
Yes |
Yes[64] |
No |
Torch |
Ronan Collobert, Koray Kavukcuoglu, Clement Farabet |
2002 |
BSD |
Yes |
Linux, macOS, Windows,[65] Android,[66] iOS |
C, Lua |
Lua, LuaJIT,[67] C, utility library for C++/OpenCL[68] |
Yes |
Third party implementations[69][70] |
Yes[71][72] |
No |
Through Twitter's Autograd[73] |
Yes[74] |
Yes |
Yes |
Yes |
Yes[65] |
No |
Wolfram Mathematica 10[75] and later |
Wolfram Research |
2014 |
Proprietary |
No |
Windows, macOS, Linux, Cloud computing |
C++, Wolfram Language, CUDA |
Wolfram Language |
Yes |
No |
Yes |
No |
Yes |
Yes[76] |
Yes |
Yes |
Yes |
Yes[77] |
Yes |
Software |
Creator |
Initial release |
Software license[a] |
Platform |
Written in |
Interface |
OpenMP support |
OpenCL support |
CUDA support |
Automatic differentiation[2] |
Has pretrained models |