딥 러닝 소프트웨어 비교
Comparison of deep learning software다음 표는 딥 러닝을 위한 주목할 만한 소프트웨어 프레임워크, 라이브러리 및 컴퓨터 프로그램을 비교한 것입니다.
이름별 딥 러닝 소프트웨어
소프트웨어 | 크리에이터 | 초기 릴리즈 | 소프트웨어[a] 라이선스 | 오픈 소스 | 플랫폼 | 기입처 | 인터페이스 | OpenMP 지원 | OpenCL 지원 | CUDA 지원 | 자동 차별화[1] | 사전 교육을 받은 모델 보유 | 반복망 | 컨볼루션 네트 | RBM/DBN | 병렬 실행(멀티 노드) | 적극적으로 개발 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
빅DL | Jason Dai (인텔) | 2016 | 아파치 2.0 | 네. | 아파치 스파크 | 스칼라 | 스칼라, 파이썬 | 아니요. | 네. | 네. | 네. | ||||||
카페 | 버클리 비전과 학습 센터 | 2013 | BSD | 네. | Linux, macOS, Windows[2] | C++ | Python, MATLAB, C++ | 네. | 개발[3] 중 | 네. | 네. | 네, 그렇습니다[4]. | 네. | 네. | 아니요. | ? | 아니요[5]. |
체인어 | 우선 네트워크 | 2015 | BSD | 네. | Linux, macOS | 파이썬 | 파이썬 | 아니요. | 아니요. | 네. | 네. | 네. | 네. | 네. | 아니요. | 네. | 아니요[6]. |
딥러닝 4j | Skymind 엔지니어링 팀, Deeplearning4j 커뮤니티, 원래 Adam Gibson | 2014 | 아파치 2.0 | 네. | Linux, macOS, Windows, Android (크로스 플랫폼) | C++, Java | Java, Scala, Clojure, Python(Keras), Kotlin | 네. | 아니요[7]. | 네, 그렇습니다[8][9]. | 계산 그래프 | 네, 그렇습니다[10]. | 네. | 네. | 네. | 네, 그렇습니다[11]. | 네. |
Dlib | 데이비스 킹 | 2002 | 소프트웨어 라이선스 활성화 | 네. | 크로스 플랫폼 | C++ | C++, Python | 네. | 아니요. | 네. | 네. | 네. | 아니요. | 네. | 네. | 네. | |
플럭스 | 마이크 이네스 | 2017 | MIT 라이선스 | 네. | Linux, MacOS, Windows (크로스 플랫폼) | 줄리아. | 줄리아. | 네. | 네. | 네, 그렇습니다[12]. | 네. | 네. | 아니요. | 네. | 네. | ||
인텔(R) 데이터 분석 액셀러레이션 라이브러리 | 인텔(R) | 2015 | Apache 라이센스 2.0 | 네. | 인텔[13] CPU 상의 Linux, macOS, Windows | C++, Python, Java | C++, Python, Java[13] | 네. | 아니요. | 아니요. | 네. | 아니요. | 네. | 네. | |||
인텔 매스 커널 라이브러리 2017 이후 | 인텔(R) | 2017 | 독자 사양 | 아니요. | 인텔[15] CPU 상의 Linux, macOS, Windows | C[16] | 네, 그렇습니다[17]. | 아니요. | 아니요. | 네. | 아니요. | 네, 그렇습니다[18]. | 네, 그렇습니다[18]. | 아니요. | |||
구글 JAX | 구글 | 2018 | Apache 라이센스 2.0 | 네. | Linux, macOS, Windows | 파이썬 | 파이썬 | Linux에서만 | 네. | 아니요. | 네. | 네. | |||||
케라스 | 프랑수아 촐레 | 2015 | MIT 라이선스 | 네. | Linux, macOS, Windows | 파이썬 | Python, R | Therano를 백엔드로 사용하는 경우에만 | Theno, Tensorflow 또는 PlaidML을 백엔드로 사용할 수 있습니다. | 네. | 네. | 네, 그렇습니다[19]. | 네. | 네. | 아니요[20]. | 네, 그렇습니다[21]. | 네. |
MATLAB + Deep Learning Toolbox (공식적으로는 Neural Network Toolbox) | 매스웍스 | 1992 | 독자 사양 | 아니요. | Linux, macOS, Windows | C, C++, Java, MATLAB | 매트랩 | 아니요. | 아니요. | 병렬 컴퓨팅 툴박스를 사용한 트레이닝 및 GPU Coder를[22] 사용한 CUDA 코드 생성 | 네, 그렇습니다[23]. | 네, 그렇습니다[24][25]. | 네, 그렇습니다[24]. | 네, 그렇습니다[24]. | 네. | 병렬 컴퓨팅[26] 도구 상자 사용 | 네. |
Microsoft Cognitive Toolkit (CNTK) | 마이크로소프트 리서치 | 2016 | MIT 라이선스[27] | 네. | Windows, Linux[28] (로드맵의 도커를 통한 macOS) | C++ | Python (Keras), C++, 명령줄,[29] BrainScript[30] (.로드맵[31] 상의 NET) | 네, 그렇습니다[32]. | 아니요. | 네. | 네. | 네, 그렇습니다[33]. | 네, 그렇습니다[34]. | 네, 그렇습니다[34]. | 아니요[35]. | 네, 그렇습니다[36]. | 아니요[37]. |
Apache MXNet | Apache 소프트웨어 재단 | 2015 | 아파치 2.0 | 네. | Linux, macOS, Windows,[38][39] AWS, Android,[40] iOS, JavaScript[41] | 소형 C++ 코어 라이브러리 | C++, Python, Julia, Matlab, JavaScript, Go, R, Scala, Perl, Clojure | 네. | 로드맵상[42] | 네. | 네, 그렇습니다[43]. | 네, 그렇습니다[44]. | 네. | 네. | 네. | 네, 그렇습니다[45]. | 네. |
뉴럴 디자이너 | 예술 소풍 | 2014 | 독자 사양 | 아니요. | Linux, macOS, Windows | C++ | 그래피컬 사용자 인터페이스 | 네. | 아니요. | 네. | 분석적 차별화 | 아니요. | 아니요. | 아니요. | 아니요. | 네. | 네. |
오픈NN | 예술 소풍 | 2003 | GNU LGPL | 네. | 크로스 플랫폼 | C++ | C++ | 네. | 아니요. | 네. | ? | ? | 아니요. | 아니요. | 아니요. | ? | |
플라스틱 | Vertex.AI, 인텔 | 2017 | 아파치 2.0 | 네. | Linux, macOS, Windows | Python, C++, OpenCL | Python, C++ | ? | 일부 OpenCL ICD가 인식되지 않습니다. | 아니요. | 네. | 네. | 네. | 네. | 네. | 네. | |
파이토치 | Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan(페이스북) | 2016 | BSD | 네. | Linux, macOS, Windows, Android[46] | Python, C, C++, CUDA | Python, C++, Julia | 네. | 별도 유지보수[47][48][49] 패키지 경유 | 네. | 네. | 네. | 네. | 네. | 네, 그렇습니다[50]. | 네. | 네. |
아파치 싱가 | Apache 소프트웨어 재단 | 2015 | 아파치 2.0 | 네. | Linux, macOS, Windows | C++ | Python, C++, Java | 아니요. | V1.0에서 지원 | 네. | ? | 네. | 네. | 네. | 네. | 네. | |
텐서플로우 | 구글 브레인 | 2015 | 아파치 2.0 | 네. | Linux, macOS, Windows,[51][52] Android | C++, Python, CUDA | Python (Keras), C/C++, Java, Go, JavaScript, R,[53] Julia, Swift | 아니요. | 로드맵에[54] 기재되어 있으나[55] 이미 SYCL 지원 있음 | 네. | 네, 그렇습니다[56]. | 네, 그렇습니다[57]. | 네. | 네. | 네. | 네. | 네. |
테아노 | 몽트렐 대학교 | 2007 | BSD | 네. | 크로스 플랫폼 | 파이썬 | Python (Keras) | 네. | 개발[58] 중 | 네. | 네, 그렇습니다[59][60]. | 라자냐의 모형[61] 동물원을 통해 | 네. | 네. | 네. | 네, 그렇습니다[62]. | 아니요. |
횃불 | 로난 콜로베르, 코레이 카부쿠오글루, 클레멘트 파라벳 | 2002 | BSD | 네. | Linux, macOS, Windows,[63] Android,[64] iOS | C, Lua | Lua, LuaJIT,[65] C, C++/OpenCL용[66] 유틸리티 라이브러리 | 네. | 서드파티의[67][68] 실장 | 네, 그렇습니다[69][70]. | Twitter의 Autograd를[71] 통해 | 네, 그렇습니다[72]. | 네. | 네. | 네. | 네, 그렇습니다[63]. | 아니요. |
울프람 매스매티카 10[73] 이상 | 울프람 리서치 | 2014 | 독자 사양 | 아니요. | Windows, macOS, Linux, 클라우드 컴퓨팅 | C++, 울프램 언어, CUDA | 울프람어 | 네. | 아니요. | 네. | 네. | 네, 그렇습니다[74]. | 네. | 네. | 네. | 네, 그렇습니다[75]. | 네. |
소프트웨어 | 크리에이터 | 초기 릴리즈 | 소프트웨어[a] 라이선스 | 오픈 소스 | 플랫폼 | 기입처 | 인터페이스 | OpenMP 지원 | OpenCL 지원 | CUDA 지원 | 자동 차별화[1] | 사전 교육을 받은 모델 보유 | 반복망 | 컨볼루션 네트 | RBM/DBN | 병렬 실행(멀티 노드) | 적극적으로 개발 |
머신러닝 모델의 호환성 비교
형식명 | 설계 목표 | 다른 형식과 호환 가능 | 독립형 DNN 모델 | 전처리 및 후처리 | 튜닝 및 교정을 위한 런타임 구성 | DNN 모델 인터커넥트 | 공통 플랫폼 |
---|---|---|---|---|---|---|---|
텐서플로우, 케라스, 카페, 토치, ONNX, | 알고리즘 트레이닝 | 아니요. | 없음 / 대부분의 형식에서 파일 분리 | 아니요. | 아니요. | 아니요. | 네. |
ONNX | 알고리즘 트레이닝 | 네. | 없음 / 대부분의 형식에서 파일 분리 | 아니요. | 아니요. | 아니요. | 네. |
「 」를 참조해 주세요.
레퍼런스
- ^ a b 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. 30 October 2021.
- ^ "Caffe: a fast open framework for deep learning". July 19, 2019 – via GitHub.
- ^ "Caffe Model Zoo". caffe.berkeleyvision.org.
- ^ GitHub - BVLC/caffe: Caffe: a fast open framework for deep learning., Berkeley Vision and Learning Center, 2019-09-25, retrieved 2019-09-25
- ^ Preferred Networks Migrates its Deep Learning Research Platform to PyTorch, 2019-12-05, retrieved 2019-12-27
- ^ "Support for Open CL · Issue #27 · deeplearning4j/nd4j". GitHub.
- ^ "N-Dimensional Scientific Computing for Java".
- ^ "Comparing Top Deep Learning Frameworks". Deeplearning4j. Archived from the original on 2017-11-07. Retrieved 2017-10-31.
- ^ Chris Nicholson; Adam Gibson. "Deeplearning4j Models". Archived from the original on 2017-02-11. Retrieved 2016-03-02.
- ^ Deeplearning4j. "Deeplearning4j on Spark". Deeplearning4j. Archived from the original on 2017-07-13. Retrieved 2016-09-01.
- ^ "Metalhead". FluxML. 29 October 2021.
- ^ a b "Intel® Data Analytics Acceleration Library (Intel® DAAL)". software.intel.com. November 20, 2018.
- ^ "Intel® Math Kernel Library Release Notes and New Features". Intel.
- ^ "Intel® Math Kernel Library (Intel® MKL)". software.intel.com. September 11, 2018.
- ^ "Deep Neural Network Functions". software.intel.com. May 24, 2019.
- ^ "Using Intel® MKL with Threaded Applications". software.intel.com. June 1, 2017.
- ^ a b "Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast". software.intel.com. March 21, 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. Retrieved 13 November 2017.
- ^ "Automatic Differentiation Background - MATLAB & Simulink". MathWorks. September 3, 2019. Retrieved November 19, 2019.
- ^ a b c "Neural Network Toolbox - MATLAB". MathWorks. Retrieved 13 November 2017.
- ^ "Deep Learning Models - MATLAB & Simulink". MathWorks. Retrieved 13 November 2017.
- ^ "Parallel Computing Toolbox - MATLAB". MathWorks. Retrieved 13 November 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 November 2021.
- ^ "Releases · dmlc/mxnet". Github.
- ^ "Installation Guide — mxnet documentation". Readthdocs.
- ^ "MXNet Smart Device". ReadTheDocs. Archived from the original on 2016-09-21. Retrieved 2016-05-19.
- ^ "MXNet.js". Github. 28 October 2021.
- ^ "Support for other Device Types, OpenCL AMD GPU · Issue #621 · dmlc/mxnet". GitHub.
- ^ "— Redirecting to mxnet.io". mxnet.readthedocs.io.
- ^ "Model Gallery". GitHub.
- ^ "Run MXNet on Multiple CPU/GPUs with Data Parallel". GitHub.
- ^ "PyTorch". Dec 17, 2021.
- ^ "OpenCL build of pytorch: (in-progress, not useable) - hughperkins/pytorch-coriander". July 14, 2019 – via GitHub.
- ^ "DLPrimitives/OpenCL out of tree backend for pytorch - artyom-beilis/pytorch_dlprim". Jan 21, 2022 – via GitHub.
- ^ "OpenCL Support · Issue #488 · pytorch/pytorch". GitHub.
- ^ "Restricted Boltzmann Machines (RBMs) in PyTorch". GitHub.
- ^ "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 (2017-05-26), tensorflow: R Interface to TensorFlow, retrieved 2017-06-14
{{citation}}
:first6=
범용명(도움말)이 있습니다. - ^ "tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub". GitHub. January 23, 2017. Retrieved May 21, 2017.
- ^ "OpenCL support · Issue #22 · tensorflow/tensorflow". GitHub.
- ^ "TensorFlow". TensorFlow.
- ^ "Models and examples built with TensorFlow". July 19, 2019 – via GitHub.
- ^ "Using the GPU — Theano 0.8.2 documentation".
- ^ "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.
- ^ a b "torch/torch7". July 18, 2019 – via GitHub.
- ^ "GitHub - soumith/torch-android: Torch-7 for Android". GitHub. 13 October 2021.
- ^ "Torch7: A Matlab-like Environment for Machine Learning" (PDF).
- ^ "GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library". GitHub. 18 November 2020.
- ^ "Cheatsheet". GitHub.
- ^ "cltorch". GitHub.
- ^ "Torch CUDA backend". GitHub.
- ^ "Torch CUDA backend for nn". GitHub.
- ^ "Autograd automatically differentiates native Torch code: twitter/torch-autograd". July 9, 2019 – via 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.