So sánh các phần mềm học sâu Bảng dưới đây so sánh một số framework phần mềm , thư viện và các chương trình máy tính phổ biến nhất dành cho học sâu .
Phần mềm học sâu sắp xếp theo tên
Phần mềm
Nhà sáng tạo
Phát hành
Giấy phép[ a]
Nguồn mở
Nền tảng
Viết bằng
Giao diện
Hỗ trợ OpenMP
Hỗ trợ OpenCL
Hỗ trợ CUDA
Hỗ trợ ROCm [ 1]
Vi phân tự động [ 2]
Được đào tạo trước
Mạng hồi quy
Mạng tích chập
RBM /DBNs
Thực thi song song (đa nút)
Đang phát triển
BigDL
Jason Dai (Intel)
2016
Apache 2.0
Có
Apache Spark
Scala
Scala , Python
Không
Không
Có
Có
Có
Caffe
Trung tâm Tầm nhìn và Học tập Berkeley
2013
BSD
Có
Linux , macOS , Windows [ 3]
C++
Python , MATLAB , C++
Có
Đang phát triển[ 4]
Có
Không
Có
Có[ 5]
Có
Có
Không
?
Không[ 6]
Chainer
Preferred Networks
2015
BSD
Có
Linux , macOS
Python
Python
Không
Không
Có
Không
Có
Có
Có
Có
Không
Có
Không[ 7]
Deeplearning4j
Đội kỹ sư Skymind; Cộng đồng Deeplearning4j; ban đầu là Adam Gibson
2014
Apache 2.0
Có
Linux , macOS , Windows , Android (đa nền tảng )
C++ , Java
Java , Scala , Clojure , Python (Keras ), Kotlin
Có
Không[ 8]
Có[ 9] [ 10]
Không
Đồ thị tính toán
Có[ 11]
Có
Có
Có
Có[ 12]
Có
Dlib
Davis King
2002
Giấy phép phần mềm Boost
Có
Đa nền tảng
C++
C++ , Python
Có
Không
Có
Không
Có
Có
Không
Có
Có
Có
Flux
Mike Innes
2017
Giấy phép MIT
Có
Linux , MacOS , Windows (đa nền tảng )
Julia
Julia
Có
Không
Có
Có[ 13]
Có
Có
Không
Có
Có
Thư viện phân tích dữ liệu Intel
Intel
2015
Apache 2.0
Có
Linux , macOS , Windows cho CPU Intel [ 14]
C++ , Python , Java
C++ , Python , Java [ 14]
Có
Không
Không
Không
Có
Không
Có
Có
Thư viện Toán học Kernel Intel 2017 [ 15] và sau đó
Intel
2017
Độc quyền
Không
Linux , macOS , Windows cho CPU Intel [ 16]
C [ 17]
Có[ 18]
Không
Không
Không
Có
Không
Có[ 19]
Có[ 19]
Không
Google JAX
Google
2018
Apache 2.0
Có
Linux , macOS , Windows
Python
Python
Chỉ trên Linux
Không
Có
Không
Có
Có
Keras
François Chollet
2015
Giấy phép MIT
Có
Linux , macOS , Windows
Python
Python , R
Chỉ khi sử dụng Theano làm backend
Có thể sử dụng Theano, Tensorflow hoặc PlaidML làm backend
Có
Không
Có
Có[ 20]
Có
Có
Không[ 21]
Có[ 22]
Có
MATLAB + Deep Learning Toolbox (tên chính thức là Neural Network Toolbox)
MathWorks
1992
Độc quyền
Không
Linux , macOS , Windows
C , C++ , Java , MATLAB
MATLAB
Không
Không
Huấn luyện với Parallel Computing Toolbox và tạo mã CUDA bằng GPU Coder[ 23]
Không
Có[ 24]
Có[ 25] [ 26]
Có[ 25]
Có[ 25]
Có
Với Parallel Computing Toolbox[ 27]
Có
Microsoft Cognitive Toolkit (CNTK)
Microsoft Research
2016
Giấy phép MIT [ 28]
Có
Windows , Linux [ 29] (macOS thông qua Docker trên lộ trình)
C++
Python (Keras ), C++ , Dòng lệnh ,[ 30] BrainScript[ 31] (.NET trên lộ trình[ 32] )
Có[ 33]
Không
Có
Không
Có
Có[ 34]
Có[ 35]
Có[ 35]
Không[ 36]
Có[ 37]
Không[ 38]
Apache MXNet
Tổ chức phần mềm Apache
2015
Apache 2.0
Có
Linux , macOS , Windows ,[ 39] [ 40] AWS , Android ,[ 41] iOS , JavaScript [ 42]
Thư viện tiểu lõi C++
C++ , Python , Julia , MATLAB , JavaScript , Go , R , Scala , Perl , Clojure
Có
Trên lộ trình[ 43]
Có
Không
Có[ 44]
Có[ 45]
Có
Có
Có
Có[ 46]
Có
Neural Designer
Artelnics
2014
Độc quyền
Không
Linux , macOS , Windows
C++
Giao diện đồ họa người dùng
Có
Không
Có
Không
Vi phân phân tích
Không
Không
Không
Không
Có
Có
OpenNN
Artelnics
2003
GNU LGPL
Có
Đa nền tảng
C++
C++
Có
Không
Có
Không
?
?
Không
Không
Không
?
PlaidML
Vertex.AI , Intel
2017
Apache 2.0
Có
Linux , macOS , Windows
Python , C++ , OpenCL
Python , C++
?
Một số ICD OpenCL không được công nhận
Không
Không
Có
Có
Có
Có
Có
Có
PyTorch
Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan (Facebook)
2016
BSD
Có
Linux , macOS , Windows , Android [ 47]
Python , C , C++ , CUDA
Python , C++ , Julia
Có
Thông qua gói duy trì riêng biệt[ 48] [ 49] [ 50]
Có
Có
Có
Có
Có
Có
Có[ 51]
Có
Có
Apache SINGA
Tổ chức phần mềm Apache
2015
Apache 2.0
Có
Linux , macOS , Windows
C++
Python , C++ , Java
Không
Hỗ trợ bản V1.0
Có
Không
?
Có
Có
Có
Có
Có
TensorFlow
Google Brain
2015
Apache 2.0
Có
Linux , macOS , Windows ,[ 52] [ 53] Android
C++ , Python , CUDA
Python (Keras ), C /C++ , Java , Go , JavaScript , R ,[ 54] Julia , Swift
Không
Trên lộ trình[ 55] nhưng đã hỗ trợ SYCL [ 56]
Có
Có
Có[ 57]
Có[ 58]
Có
Có
Có
Có
Có
Theano
Đại học Montreal
2007
BSD
Có
Đa nền tảng
Python
Python (Keras )
Có
Đang phát triển[ 59]
Có
Không
Có[ 60] [ 61]
Qua model zoo của Lasagne[ 62]
Có
Có
Có
Có[ 63]
Không
Torch
Ronan Collobert, Koray Kavukcuoglu, Clement Farabet
2002
BSD
Có
Linux , macOS , Windows ,[ 64] Android ,[ 65] iOS
C , Lua
Lua , LuaJIT ,[ 66] C , thư viện tiện ích cho C++ /OpenCL [ 67]
Có
Thực thi bên thứ ba[ 68] [ 69]
Có[ 70] [ 71]
Không
Qua Autograd của Twitter [ 72]
Có[ 73]
Có
Có
Có
Có[ 64]
Không
Wolfram Mathematica 10[ 74] và sau đó
Wolfram Research
2014
Độc quyền
Không
Windows , macOS , Linux , Điện toán đám mây
C++ , Ngôn ngữ Wolfram , CUDA
Ngôn ngữ Wolfram
Có
Không
Có
Không
Có
Có[ 75]
Có
Có
Có
Có[ 76]
Có
Phần mềm
Nhà sáng tạo
Phát hành
Giấy phép[ a]
Nguồn mở
Nền tảng
Viết bằng
Giao diện
Hỗ trợ OpenMP
Hỗ trợ OpenCL
Hỗ trợ CUDA
Hỗ trợ ROCm [ 77]
Vi phân tự động [ 2]
Được đào tạo trước
Mạng hồi quy
Mạng tích chập
RBM /DBNs
Thực thi song song (đa nút)
Đang phát triển
^ a b Giấy phép ở đây là một bản tóm tắt và không được coi là giấy phép chuẩn. Một số thư viện có thể sử dụng các thư viện khác trong nội bộ theo các giấy phép khác nhau
Phần mềm liên quan
Xem thêm
Tham khảo
^ “Deep Learning — ROCm 4.5.0 documentation” . Bản gốc lưu trữ ngày 5 tháng 12 năm 2022. Truy cập ngày 7 tháng 12 năm 2022 .
^ a b Atilim Gunes Baydin; Barak A. Pearlmutter; Alexey Andreyevich Radul; Jeffrey Mark Siskind (20 February 2015). "Automatic differentiation in machine learning: a survey". arΧiv :1502.05767 [cs.LG].
^ “Microsoft/caffe” . GitHub . 30 tháng 10 năm 2021.
^ “Caffe: a fast open framework for deep learning” . 19 tháng 7 năm 2019 – qua GitHub.
^ “Caffe | Model Zoo” . caffe.berkeleyvision.org .
^ GitHub - BVLC/caffe: Caffe: a fast open framework for deep learning. , Berkeley Vision and Learning Center, 25 tháng 9 năm 2019, truy cập ngày 25 tháng 9 năm 2019
^ Preferred Networks Migrates its Deep Learning Research Platform to PyTorch , 5 tháng 12 năm 2019, truy cập ngày 27 tháng 12 năm 2019
^ “Support for Open CL · Issue #27 · deeplearning4j/nd4j” . GitHub .
^ “N-Dimensional Scientific Computing for Java” . Bản gốc lưu trữ ngày 16 tháng 10 năm 2016. Truy cập ngày 7 tháng 12 năm 2022 .
^ “Comparing Top Deep Learning Frameworks” . Deeplearning4j. Bản gốc lưu trữ ngày 7 tháng 11 năm 2017. Truy cập ngày 31 tháng 10 năm 2017 .
^ Chris Nicholson; Adam Gibson. “Deeplearning4j Models” . Bản gốc lưu trữ ngày 11 tháng 2 năm 2017. Truy cập ngày 2 tháng 3 năm 2016 .
^ Deeplearning4j. “Deeplearning4j on Spark” . Deeplearning4j. Bản gốc lưu trữ ngày 13 tháng 7 năm 2017. Truy cập ngày 1 tháng 9 năm 2016 .
^ “Metalhead” . FluxML. 29 tháng 10 năm 2021.
^ a b “Intel® Data Analytics Acceleration Library (Intel® DAAL)” . software.intel.com . 20 tháng 11 năm 2018.
^ “Intel® Math Kernel Library Release Notes and New Features” . Intel .
^ “Intel® Math Kernel Library (Intel® MKL)” . software.intel.com . 11 tháng 9 năm 2018.
^ “Deep Neural Network Functions” . software.intel.com . 24 tháng 5 năm 2019.
^ “Using Intel® MKL with Threaded Applications” . software.intel.com . 1 tháng 6 năm 2017.
^ a b “Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast” . software.intel.com . 21 tháng 3 năm 2019.
^ “Applications - Keras Documentation” . keras.io .
^ “Is there RBM in Keras? · Issue #461 · keras-team/keras” . GitHub .
^ “Does Keras support using multiple GPUs? · Issue #2436 · keras-team/keras” . GitHub .
^ “GPU Coder - MATLAB & Simulink” . MathWorks . Truy cập ngày 13 tháng 11 năm 2017 .
^ “Automatic Differentiation Background - MATLAB & Simulink” . MathWorks . 3 tháng 9 năm 2019. Truy cập ngày 19 tháng 11 năm 2019 .
^ a b c “Neural Network Toolbox - MATLAB” . MathWorks . Truy cập ngày 13 tháng 11 năm 2017 .
^ “Deep Learning Models - MATLAB & Simulink” . MathWorks . Truy cập ngày 13 tháng 11 năm 2017 .
^ “Parallel Computing Toolbox - MATLAB” . MathWorks . Truy cập ngày 13 tháng 11 năm 2017 .
^ “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 .
^ “Prebuilt models for image classification · Issue #140 · microsoft/CNTK” . GitHub .
^ a b “CNTK - Computational Network Toolkit” . Microsoft Corporation.
^ url=https://github.com/Microsoft/CNTK/issues/534
^ “Multiple GPUs and machines” . Microsoft Corporation.
^ “Disclaimer” . CNTK TEAM. 6 tháng 11 năm 2021.
^ “Releases · dmlc/mxnet” . Github .
^ “Installation Guide — mxnet documentation” . Readthdocs .
^ “MXNet Smart Device” . ReadTheDocs . Bản gốc lưu trữ ngày 21 tháng 9 năm 2016. Truy cập ngày 19 tháng 5 năm 2016 .
^ “MXNet.js” . Github . 28 tháng 10 năm 2021.
^ “Support for other Device Types, OpenCL AMD GPU · Issue #621 · dmlc/mxnet” . GitHub .
^ “— Redirecting to mxnet.io” . mxnet.readthedocs.io .
^ “Model Gallery” . GitHub . 29 tháng 10 năm 2022.
^ “Run MXNet on Multiple CPU/GPUs with Data Parallel” . GitHub .
^ “PyTorch” . 17 tháng 12 năm 2021.
^ “OpenCL build of pytorch: (in-progress, not useable) - hughperkins/pytorch-coriander” . 14 tháng 7 năm 2019 – qua GitHub.
^ “DLPrimitives/OpenCL out of tree backend for pytorch - artyom-beilis/pytorch_dlprim” . 21 tháng 1 năm 2022 – qua GitHub.
^ “OpenCL Support · Issue #488 · pytorch/pytorch” . GitHub .
^ “Restricted Boltzmann Machines (RBMs) in PyTorch” . GitHub . 14 tháng 11 năm 2022.
^ “Install TensorFlow with pip” .
^ “TensorFlow 0.12 adds support for Windows” .
^ interface), JJ Allaire (R; RStudio; Eddelbuettel, Dirk; Golding, Nick; Tang, Yuan; Tutorials), Google Inc (Examples and (26 tháng 5 năm 2017), tensorflow: R Interface to TensorFlow , truy cập ngày 14 tháng 6 năm 2017
^ “tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub” . GitHub . 23 tháng 1 năm 2017. Truy cập ngày 21 tháng 5 năm 2017 .
^ “OpenCL support · Issue #22 · tensorflow/tensorflow” . GitHub .
^ “TensorFlow” . TensorFlow .
^ “Models and examples built with TensorFlow” . 19 tháng 7 năm 2019 – qua GitHub.
^ “Using the GPU — Theano 0.8.2 documentation” . Bản gốc lưu trữ ngày 1 tháng 4 năm 2017. Truy cập ngày 7 tháng 12 năm 2022 .
^ “gradient – Symbolic Differentiation — Theano 1.0.0 documentation” . deeplearning.net .
^ “Automatic vs. Symbolic differentiation” .
^ “Recipes/modelzoo at master · Lasagne/Recipes · GitHub” . GitHub .
^ “Using multiple GPUs — Theano 1.0.0 documentation” . deeplearning.net . Bản gốc lưu trữ ngày 4 tháng 5 năm 2017. Truy cập ngày 7 tháng 12 năm 2022 .
^ a b “torch/torch7” . 18 tháng 7 năm 2019 – qua GitHub.
^ “GitHub - soumith/torch-android: Torch-7 for Android” . GitHub . 13 tháng 10 năm 2021.
^ “Torch7: A Matlab-like Environment for Machine Learning” (PDF) .
^ “GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library” . GitHub . 18 tháng 11 năm 2020.
^ “Cheatsheet” . GitHub .
^ “cltorch” . GitHub .
^ “Torch CUDA backend” . GitHub .
^ “Torch CUDA backend for nn” . GitHub .
^ “Autograd automatically differentiates native Torch code: twitter/torch-autograd” . 9 tháng 7 năm 2019 – qua GitHub.
^ “ModelZoo” . GitHub .
^ “Launching Mathematica 10” . Wolfram .
^ “Wolfram Neural Net Repository of Neural Network Models” . resources.wolframcloud.com .
^ “Parallel Computing—Wolfram Language Documentation” . reference.wolfram.com .
^ “Deep Learning — ROCm 4.5.0 documentation” . Bản gốc lưu trữ ngày 5 tháng 12 năm 2022. Truy cập ngày 7 tháng 12 năm 2022 .